「プログラマ」とは別に「バインダー」という職種名を思いついたのだけど

よくアルゴリズムの話とかすると「アルゴリズムとか業務で使わないから。ライブラリあるから」みたいな話が出ますね。今日もTwitterでkumagiさんが「競技プログラミングが業務で役に立たないって言ってる人は・・・」って話してたわけです。
でもまあ、アルゴリズムの勉強ってのは、実装したい問題をいかに効率のいいプログラムに落とすかっていう話なんで、プログラムを組むっていう業務をしていたら必要ないとは思わないはずなんで、「アルゴリズムいらない」っていう人がやってる業務はプログラミングじゃないんじゃないのかと思ったりするわけです。


で、noritunaさんが「コーダー」を挙げてて、こういう文脈でよく出るんだけど、これはちょっと違和感あって、「コーダー」は誰かが書いたプログラムをコンピュータに入力するだけくらいの語感で、別に「プログラマ」という職種が必要になるサポート的業種で、でも実際は「プログラマ」がそういった場にいるわけでもなく、やはりそれ相応にはノウハウも要るし頭も使ってるはずです。
あと、「コーダー」ってもう、一枚絵をHTMLに落とす人っていう別の独立した職業を表すようになっているので、使いにくい。


じゃあ、アルゴリズムいらないって人が日々なにをやっているかというと、だいたいは画面とデータベースの項目の結びつけなんですね。
HTTPのリクエストで渡されてきた各項目をデータベースにつっこんで、データベースの各項目をHTMLにはめ込んで、という、データのバインディングを主にやっている。
ここで必要になるのは、扱ってるUIツールキットと、データベースの扱い、言語や実行環境のクセといった特定分野特定製品の知識や経験で、理論はそこまで求められなくて、もちろんアルゴリズムも定番アルゴリズムの名前とライブラリのありかくらい知ってればいいんで、それじゃ、テクニシャンじゃないか。*1


ということで、テクニシャンつまり技術者じゃなくて技能者ってことで、日々の業務であるデータのバインディングをする人という意味で「バインダー」という職種名を考えたのだけどどうか。
で、データのバインディングについて研鑽する、と。
たとえばこの本なんかは、入力をいかに出力に対応づけるかという話をマイケルジャクソン先生のJSPという手法を使って説明したりしてます。

ずっと受けたかったソフトウェア設計の授業

ずっと受けたかったソフトウェア設計の授業

この本にも、JSPアルゴリズムの設計を扱わず、現場の工夫か外部のライブラリで対応するというスタンスだと書いてあるので、「バインダー」向けの理論です。


ところで、このところずっとデータを右から左に受け流すバインダーばっかりやってるので、早くプログラマになりたい。