“作る”ということは“育てる”ということ

へっぽこエンジニアの端くれとして書いてみる。

前にもちょろっと書いたのだけども、エンジニアの役割って、モノを“生み出し”、“育て”、“看取る”ことだと思っている。

システム開発って3つのお仕事があって、1つ目は想像するお仕事、2つ目は実際に作るお仕事、そして3つ目がそのシステムが天命を全うするまで見守るのがお仕事だと思う。


えがちゃんに一言もの申す - ここではないどこか

この例はシステム開発の現場に限った話じゃない。
例えば橋づくり。大きな建造物になればなるほどそこにつぎ込まれる予算と思考時間は膨大になる。もちろんその予算や時間に見合うだけの長い間、利用者や市民に慕われ利用され続ける。そして代替となるサービスと引き換えに役目を終える。

海外で思いつく例を挙げると、


写真1:ガール(フランス)のポン・デゥ・ガール

歴史が古く、保守・改修が繰り返されながらもいまだに使われ続けている建造物だってある。

日本だと、役目を終えても市民に愛され続けてる建造物の例だと、北海道タウシュベツのアーチ橋(旧国鉄士幌線コンクリートアーチ橋梁群)とかいろいろある。*1

写真2:北海道タウシュベツのアーチ橋(旧国鉄士幌線コンクリートアーチ橋梁群)

こうやって所謂“使用期間”が終わった後でも残されるようなものが作れることって、エンジニアとしてはすごいことだと思うわけだ。
使う人のことを思って、お客のことを思って、より良い品質のものを、より綺麗なもの(ソースコード)を作り上げるというのは至極当然に思う。


もちろんここに書いたことはあくまで理想論。それが全て成立できるとは思っていない。だけど“作ること”はそれも踏まえての“エンジニアリング”なんだと思う。

ものづくりは科学。教科書どおりにすべてが思い通りにうまくいくはずがない。けどそれが面白いんだ。
考えて考えて考えて最適な方向へ導こうとする。技術屋ってそういうもんや。

この話を聴いたのは学生の時、とある高齢の技術者の方から。
むちゃくちゃおっさん臭くて、古臭い考え方で、人によってはプギャーするかもしれない。*2
でも自分は、一技術屋としてこの言葉に深く感銘を受けたし、今もプログラミングをする時、Excelで資料を作る時、Powerpointを作る時、何かを作る時は心に置くようにしている。


話が大きく脱線してしまったけど、

場当たり的な対応で工数が少なくてすみ、影響範囲も少ないが、コードは汚くなるという案と影響範囲が広いし工数も掛かりそうだが、コードは綺麗になるという案があるとき、僕は、よほどの差でない限り、コードが綺麗になるほうを選ぶ。


安全策が後手後手を生む - 山本大@クロノスの日記

こういう技術に対する一つ一つの本気の積み重ねが、次の世代をかたちづくる技術になっていけばいいなぁと切に思う。

プログラマの誇りを減衰しないためには、システムを常に進化させて圧倒的に現実を変えていくことが、僕は必要不可欠であると強く思っています。


進化を諦めた保守などありえない - GoTheDistance

エンジニア…つまり技術屋が技術を売りにして生きる限りは、その生業となる技術を疎かにしてほしくない。
その技術で最高のものを産みだし育てていってほしいと思う。そして自分自身、技術屋としてそうありたいと思う。

*1:もちろん他にもたくさんあるけど。

*2:そもそもそんな他人を馬鹿にする思考の人は技術屋なんかじゃない気もするけど