実在する,ある開発者の話だ。彼は,およそ10年前に大学を卒業し,とあるシステムハウスに入社した。大学は文系でコンピュータの経験はほとんどなかったが,これからはコンピュータの時代だと思ったからだ。

 その会社は,いわゆる派遣型のシステム開発も請け負っており,彼は某金融系企業に出向くことになった。そこで,ホスト・コンピュータを使った営業支援システムの開発/更新チームに組み入れられた。新人研修で約1カ月,みっちりCOBOLプログラミングを仕込まれた後,すぐに現場で働き始めた。

 それから約10年。転勤や異動もなく,ずっと同じ派遣先で,COBOLによるシステム開発を続けてきた。ダウンサイジング,オープン化,.NET,Web 2.0といったIT界の動向は,はたで見聞きするだけで,仕事には無縁だった。10年間COBOLだけという自分のキャリアは,今どきのSE/プログラマとしては少数派かもしれないとは思う。だが,同じ職場にはCOBOL一筋20年といったベテランもいる。自分が不遇などと思うことなく,ひたすら働き続けた。

 仕事は,半期ごとに忙しさのピークを迎える。昨年(2006年)の3月も,どういうわけか一人で三人ぶんぐらいの仕事を抱えることになり,目まぐるしく働いていた。腹部に痛みを感じていたが,ピークを乗り切れば治まるだろうと,痛みをこらえつつ仕事を続けていた。

 しかし,痛みはどんどん増してきた。ついには耐えきれなくなり,歩くことさえままならない状態になった。結局,職場から救急車で病院に運ばれた。診断の結果,腸に穴が空いていることがわかり,すぐに緊急手術を受けることになった。酒はほとんど飲まないし,暴食するタイプではない。過去に一度もそうした病気にかかったことはない。明らかに過労によるストレスが原因だった。

 全身麻酔から目覚めたとき,窮地を脱した安心感と同時に,「こんなになるまで働いて,一体自分は何を手に入れようとしているのか?」と心の底から考えた。なぜ自分はこんな仕事をしているのか?──退院するまでの一週間は,もっぱら自分を見つめ直す時間になった。

 退院後,ふと思い立って,自分が新人のころに書いた業務日誌を探し出した。入社後,新人研修を経て現場で働き始めた数カ月の間,上司に指示されて書き続けていた日誌だった。この仕事を始めた頃に,自分は何を考えていたのか,そこに先の疑問の答えがあるような気がしたからだ。

「プログラムを組むのが楽しい」
「同僚や後輩に夢を与えられるようなSEになりたい」
「この世界で仕事を続ける意義を見いだしていきたい」
「僕はきっとのし上がってみせる!」
 ……

 顔から火が出そうなくらい,気恥ずかしいことがいっぱい書いてあった。しかしそこには,毎日プログラミングについて何かを身に付けていくことが楽しくてしようがなかった自分がいた。10年の間にすっかり忘れていたものを思い出すと同時に,自分は今夢を与えられるようなSEになったのか,と深く反省した。

 仕事に復帰するときに決意した。基本的に自分は仕事が好きだ,プログラミングが好きだ。そこに揺るぎはない。これからは仕事以外に自分の“柱”をもう一つ持とう。他人に喜んでもらえるようなものを作ろう。

 いろいろ考えた結果,仕事とは無縁で,新しさという点で対局にあるWebアプリケーション開発にチャレンジすることにした。ただ,新しいことを覚えることが目的ではダメだ。何かを作ることを目的にしなければならない。

 こうして彼(=quill3氏)は,それまでまったく知らなかったRubyとWeb APIに取り組み,RetroTubeの開発に乗り出した(関連記事)。

 楽しかったはずのプログラミングも,仕事で続けていると,いつの間にか苦痛になる。それはある面で仕方がないことかもしれない。また,プログラミングから引き離されて,マネジメントやその他の仕事に就かされることも,楽しくなくなる理由かもしれない。

 しかし,本当につらくてイヤになったときは,思い出してほしい。プログラミングが楽しかったことを。そのためには,自分がまだ知らないことにチャレンジすることが有効だ。

 quill3氏は筆者にこう語った。「自分は,ずっとCOBOLばかりやっていたことが逆に良かったのかもしれない。いろいろなものをやってきた他の開発者と違って,新しいことを身に付けねばならないといった危機感や,COBOL以外のことを知りたいという飢餓感が強かったのだと思う。だから,RetroTubeの開発にのめり込むことができた」。

 幸いなことに,ソフト開発のための言語やツール,フレームワークなどはこの世にごまんとある。すべてを知っているという開発者はいないはずだ。自分にとって,未知だけれども興味を引かれるといったものがきっとあるだろう。チャレンジする価値はあるはずだ。

 また,マッシュアップの基盤となる優れたWeb APIも次々に登場している。今や,Web全体が開発プラットフォームと化しつつある。ちょっとした工夫とアイディアで,他人に喜んでもらえるWebアプリケーションが作れるのだ。

 お金をかけずに,プログラミングを楽しむ環境は十分に整っている。仕事に疲弊して倒れてしまう前に,ぜひ思い出して欲しい,プログラミングが楽しいことであることを。