思ったことという発言をたまに聞く。設計書だけおこしていた人たちがよく言っている。その人たちの過去の全てを知っているわけではないが、ネット上の様々な噂や過去のわりと壮絶なエピソードを聞くと、そういう発言に至るのは理解できなくはない。聞くたびに違和感を覚える。あたりまえだけど*1、エンジニアの仕事はコードを書くことだけではない。ウォータフォール開発をしようがアジャイル開発をしようが、データサイエンティストとしてレポーティングしようが、ドキュメントを書くし他者を説得したり妥協点を模索したりする。その仕事の様々な工程のごくごく一部に「コードを書く」、言い換えればソフトウェアなどを実装するという工程も含まれているにすぎない。その割合がいくばくのものか、というのはプロのエンジニアであればご存じだろう*2。コードを書く時間が0かそうでないかで大差がないとかそんなことを言いたいわけではもちろんない。なんとなく一切コードを書かない日が何日も続いたら、わたしもそれなりに不快な毎日を過ごす気がする。0とそれ以外をささいな差であるということはわたしにはできない。わたしが言いたいのは、「コードを書く」ことをやたらと特別視するのはおかしいのではないかということだ。直接的に言うとカドが立つが、(観測範囲と主観に基づいて言葉を選ばずに書くと)良いコードを書く気がない人、コードにこだわりがない人たちに限って、コードを書くことをやけに神聖視し、そこに喜びを感じている気がする。コーディングは確かに楽しい、かもしれない。わたしは自分しか使わない、雑なコードでうわべだけを書いているから楽しいのだと思っている。実際の業務では既存のクラスとの協調や実装が無駄な多重化をしないように脳内のスタックに詰め込んだ既存の関数を目の前のコードに適用していく各種API連携のため様々なドキュメント(たいていは英語)を読み込むドキュメントが信用できない/存在しないのでREPLで叩いて挙動を推測するといった工程が入ってくる。楽しさというより大変さのほうが勝るし、帰宅するころにはヘトヘトになっている。彼らの「コードが書けるだけで幸せだ」というのは(わたしが家で書いているような)ゆるふわなコードを書いてお金がもらえるから幸せだ、という意味にわたしには聞こえる。言えば、ゆるふわなコードで許されているのは要するにその仕事のコアバリューがコード(ひいてはソフトウェア、プロダクト)ではないからだ。そのプロジェクトで稼いでいる(お金が発生している)コアバリューは別にある。業務においては誰がどんなコードを書くかなんかよりも、コアバリューの質を担保することの方がはるかに大切な仕事だ。極端なことを言えば、コードを書かずに安く早く済ませる方法があるならそちらを利用するべきだ。そんな業務に従事している人が「コードを書けるだけで幸せだ」と言っているのを聞くと、そもそも自分の業務内容についてちゃんと把握できているのだろうかという疑念を持つことがある。あなたが「コードを書く」かどうかはその業務の成功にも失敗にもあまり寄与しないのだが。なんか、ただの悪口みたいになってしまった。いや、実際悪口なのだろう。見る*1:このブログは当たり前の話しかしない。*2:わたしの感覚では業務時間のうち半分もコードを書いた日は書きすぎである。だいたい4分の1、せいぜい3分の1くらいだろうか。Meetup行ってきた結果OSS活動の一歩を踏み出した久々にブログっぽいこと書きます。今日はライブに行ってきた。(1)POPULARHISTORYスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。