(apply-generic op . args)

教育者, 将軍, 栄養士, 心理学者, 親はプログラムする. 軍隊, 学生, 一部の社会はプログラムされる. - 計算機プログラムの構造と解釈 序文

ソフトウェア開発における練習する大切さ

最近しみじみとプログラミングというのは練習が大事だなぁ、と感慨深い想いでございます。

チャド・ファウラーが情熱プログラマーで「ミュージシャンはライブでしか楽器を演奏しないなんてあり得ない、ライブの時間以上に練習している。プログラマーもそうであるべきだ」みたいな事を言っていましたが、あれは本当にそうだなぁと身に染みる事が多々あります。

達人プログラマーだったか、リファクタリング・ウェットウェアだたったか、はたまた別の本なのか忘れましたが、不思議の国のアリス(だったかな?)の絵と共にIT業界(ってなんだっけ?)の変化の速さとを、全力で走ることでやっと「置いていかれない」と説明している文章がありますが、あれも本当にそう思います。

「新しいことは仕事をしながら覚える(から、自発的にプライベートの時間でお勉強なんてしないよ!)」って人が僕の周りには実は結構います。こういう人達は学生時代なのか何年前なのか解りませんが、昔勉強した事を強みに今も仕事をしているのですね。で、その部分についてはやはり凄いなーと思うことが多々あるのですが、「え、流石に今時それはなくない?」ってことがあるので、どんどんとその人にとって不味いことになっていくのではないかなぁ、と。

ちなみに強み以外の部分、得てして実際のソースコードは僕程度の人間からみてもorzestってなることが多いです。

「プログラムを書く」という行為でお金を貰い続けたいのなら、一生勉強し続けないと自分の給料が低くなっていって、その内「プログラムを書く」ということが業務では許されなくなっちゃうんじゃないかなーと思いました。新しくて面白い仕事が出来ない、とか。

ただ、幸運なことにソフトウェア開発に関する技術を磨く(学ぶ)のはとても楽しいのですね。いや、人によりますが僕はそうです。どんどんと仕事のやり方や質は変化していくのでしょうが、生涯エンジニアとして食べて行けたらなぁ、行きたいなぁと思うので生涯学び続けようと改めて思いました。

※偉そうなこと言ってますが、僕も自分自身で全然自分の技術力に納得行ってないです。これはある意味、自分が上述したようなエンジニアにならない為の戒め。または無自覚にそこに陥っているのなら、抜け出す為の決意。