プログラミングは今でもひどい
(stvn.sh)- テック業界の実際の仕事は、整った計画や完璧な生産プロセスではなく、進路を失った船と燃える機材、失われた知識、役に立たない自動化が入り混じった姿に近い
- 組織はAIを生産性向上の証拠のように掲げ、人員削減と判断の外注化を正当化し、ジュニアがシニアへ育つ徒弟的なパイプラインまで断ち切ってしまう
- Goodhart’s Law、速度指標、ストーリーポイント、テストカバレッジ、DORA指標は実際の品質や判断を代替できず、エラーを見つける人が押し出されればコードベースは脆弱になる
- 2016年から毎日午前3時に動くcron jobと
# DO NOT CHANGE!!! Ask Benのような運用知識はSaraのような人が支えているが、組織はその事実すら知らない - 中核の問題はAIではなく強欲であり、Saraがいなくなれば3万人規模の会社の給与支払いを支えていた見えないシステムも一緒に崩れるかもしれない
AIがもたらした変化より先に崩れたソフトウェア組織
- 誕生日パーティーでは「AIに仕事を奪われるのが心配じゃないのか」という質問が繰り返されるが、テック業界の仕事はもともと外から想像されるような整った計画と完璧な生産プロセスではなかった
- 実際の仕事は、進路を失った船、燃える機材、仕組みを知る人が消えたシステム、役に立たない自動化が入り混じった姿に近い
- CEOはAIで友人Jaredのチームの生産性が上がり半分を解雇できたという話を持ち込むが、現場ではその言葉が自慢なのか脅しなのか判別しにくい圧力として作用する
- 「AIが仕事を奪う」という恐怖より大きな問題は、組織がAIを口実に人員削減と判断の外注化を正当化していることにある
解雇されたのは現在の成果物ではなく未来の熟練度
- かつてエンジニアだったリーダーたちは、なぜコードレビューが必要だったのか、ジュニアの最初のPRがシニアに厳しくレビューされながらも学びにつながっていた過程を知っていた
- 2024年になって突然コードレビューと徒弟的な成長をなくすと決めたのではなく、滑走路が短くなり、CFOのスプレッドシートとCEOのAIデモへの信頼が組織の意思決定を押し進めた
- CEOはオフサイトで「エージェントが14分で機能全体を書くデモ」を見て、Q2までにエンジニアリング組織を30%削減できると取締役会に語る
- リーダーたちは、ジュニアは適応して再教育され他の場所に収まり、シニアが抜けた穴は吸収され、エージェントが空白を埋めるのだと自分たちを納得させる
- しかしジュニアの価値は目先の生産量ではなく、のちに「どこに死体が埋まっているか」を知るシニアエンジニアになることにあった
- 産出量の最適化は徒弟的な成長を消し去り、数年後にシニアが不足したとき、その原因を覚えている者は誰もいないだろう
指標とツールは判断を代替できない
- 過去に単純な解答を売ってきたリーダーたちの後始末をしてきたエンジニアなら、数字が実際の品質を保証しないことをすでに知っていた
- Goodhart’s Lawは、速度指標やストーリーポイント、テストカバレッジのように、非エンジニアへ「仕事がうまくいっている」証拠として渡される数字を壊してきた
- DORA指標でも、判断よりツール追加が先行するとデプロイの安定性がどう揺らぐかはすでに明らかになっていた
- エラーを見つける人たちが押し出されるか、あるいはエラーを見つける仕事をやめる方法を学べば、コードベースは脆弱になる
- それでも人々は名簿に署名した。代わりの選択肢は職を失うことであり、仕事は住宅ローン、学費、ビザ、そして後で直せると信じている自分自身につながっていた
- 「後で」は来ないし、誰もがそのことを知っていた
見えない運用知識が会社を支えている
- インフラのどこかには、2016年から毎日午前3時に動くcron jobがあり、それが正確に何をしているのか分からないままでも重要な仕事をしている
- ファイル先頭のコメントには
# DO NOT CHANGE!!! Ask Benと書かれているが、Benにはもう連絡できない - この4年間、ロードマップ策定のたびに「レガシーcronのモダナイズ」が候補に上がったが一度も選ばれず、その項目は直接2回削除されたこともある
- その仕事を実際に生かしているのはSaraであり、組織はSaraがその仕事をしていることすら知らない
- Saraは50代半ばで、本社から3ブロック離れた小さなオフィスで働いていたが、コスト削減でオフィスが閉鎖された後は、船腹の下の区画で机とネットワーク接続を見つけて働くようになった
- Saraは1998年からBenにメンタリングを受け、Benが亡くなった後にはその葬儀にも出たが、組織はそれも知らない
- ジョブが定期的に止まるとSaraに電話が入り、彼女が問題を確認してから再投入し、再試行できるようにする
- そのジョブは時の中に失われたモジュールに依存しているが、SaraはBenの机で見つけたUSBスティックにそのコピーを持っている
- どんなエージェントもそのモジュールには手を付けておらず、これからも手を付けられないだろう
Saraは代替不可能なパイプラインの最後の形
- Saraは単に無事な人なのではなく、組織の移行過程で削除された組織知が55歳の身体で歩いている姿そのものだ
- SaraはBen、1998年、USBスティックへと連なる徒弟的成長の結果であり、やがて人を育てるパイプラインそのものだった
- Saraがいなくなるとき、Saraのような人を生み出していたシステムはすでに3年前に死んでいるため、代わりを採用することはできない
- cron jobは給与を支払っているが、組織はこの事実すら知らない
- Saraがいなくなりcron jobが死ねば、3万人規模の会社は全員に給与を支払う方法をあらためて探さなければならない
- そのとき必要なのは「スプーンを持った人」を雇うことだが、組織はすでにそういう人を生み出せないようにしてしまった
結論はAIではなく強欲
- パーティーでの質問への答えは「AIが私たちの仕事を奪った」ではなく、強欲が奪ったということだ
- その強欲は工場をバングラデシュへ移し、コンゴのコバルト鉱山に奴隷を残してきたのと同じ強欲で、今回はAIという新しい仮面をかぶっている
- Shopifyストアを作っているおいには、別の仕事をしろと言えという結論につながる
- 別の仕事をしても救われるわけではないが、少なくとも自分の人生を壊しているものがロボットだと装う必要は少し減る
- Saraだけは例外のように残っている。彼女は下の甲板でUSBスティックを持っており、組織は彼女がそこにいることを知らないから、まだ彼女を見つけていない
- ほかの人たちは上の甲板でひっくり返ったマストと燃える人形を見ながら、何がどう動いているのか分からないまま立っている
1件のコメント
Hacker Newsのコメント
「AIが私たちの仕事を奪ったのではなく、強欲が奪った」という一文が強く刺さった
工場をBangladeshに移し、Congoのコバルト鉱山で奴隷労働を維持してきた、その強欲が新しい仮面をかぶっただけだという表現がよかったし、甥にはむしろ別の仕事を勧めろというくだりも強烈だった
この文章は芸術作品のようで、一晩寝て朝にもう一度読み返したい
プログラミングは好きだし、かなり得意でもあるけれど、この業界は汚物入れみたいだ
すでに学校に戻って、いわゆる「本当の」職業に就くことに決めたし、社会破壊に血眼になっている業界で働くことに疲れた
そんなお金を受け取れてきたのは素晴らしいことだが、運と状況のおかげだと思う
ロボットが私の仕事を奪うなら別の仕事を探すし、邪悪な金持ちや別の怪物を責めるつもりはない
もしそうした需要がなかったか、人々が「その値段ではだめだ」と言っていたなら、道徳的責任が産業資本家だけにあるとは言えず、そうした鉱山も存在しなかったはずだ
洗濯機があるから人々は金をもらって手洗い洗濯をしなくなり、ニュースがデジタルで届くから新聞配達員の必要も減った
AIも同じで、「もし」何かの仕事が自動化できる、あるいはもっと効率化できるなら、そうなるだろう
個人にとって利益でないことがあっても、社会全体には利益になりうる
ここでAIやLLMが実際にその仕事をこなせると主張しているわけではなく、「できるなら」そうなると言っているだけだ
強欲は必要ない
「技術業界で働くことは昔からずっとひどく、みんなが思っていたような仕事ではなかった」というのは事実ではない
1988年から2000年まで、少なくとも13年間は技術業界で働くことは私にとって本当に素晴らしかったし、その後もしばらくはかなりよかったはずだ
ひどくなり始めた主な理由は技術ではなくビジネス、とりわけ企業の買収や合併だった
良い会社で面白い問題を解き、意味のあるソフトウェアを作り、満足した顧客がいる環境は、技術者にとって天国だった
ひどくなったのは、突然ひどくなったからではなく、私たちがそれに気づき始めたからだ
技術そのものが悪いのではなく、技術産業が悪い
それは昔からある人たちにはずっと悪かったし、今ではただ皆に対してあからさまに悪く見えるようになっただけだ
この記事の結論すべてに同意するわけではないが、HNの記事を最後まで読んでもAI共著のつやを感じずに済んだのはよかった
著者をけなす意図はまったくなく、思慮深い文章だと思うが、私はAI共著のつやを感じた
自分がLLM生成だと見抜けなかった文章を、これまでどれだけ読んできたのだろうと考えさせられる
ある程度の勘はあると思うが完璧ではなく、偽陰性も偽陽性もあるだろう
その違いをもう見分けられなくなったら、それは何を意味するのだろうか?
もう少し考えてみると、この記事の主題を考えれば、著者が私の言葉を侮辱だと受け取らないでほしいと思う
早朝だったせいかもしれないし、私の判断が間違っていた可能性は高い
だからこそ、上の問いがなおさら気になる
職場で人々が長いダッシュを入れ、いかにもAIらしい文体で文章を書くのを見すぎて、もううんざりしている
少し侮辱のようにも感じるが、結局のところ私たち全員がこの茶番に加担しているのだと思い出させられる
いわゆるAIによる雇用減少はAIのせいではない
そうでないと主張する人はいないと思う
1年以内に、たぶんもっと早くソフトウェアシステムが崩れ始めるだろうし、実際そうなるはずだ
そうなれば技術職の採用は急増する
むしろAIの欠陥を埋めるのに、世界中の開発者の数では足りないと思う
計算は明白だ
人間が生成されたすべてのソフトウェアシステムの1%だけに触るとしても、現状と今後の規制を考えればそれすら現実的ではないが、世界の4,700万人の開発者ではまったく足りない
仕事は戻り、報酬もよくなるだろうが、プログラミングはさらにひどく苦しいものになり、誰にでも向く仕事ではなくなるだろう
絡み合った混沌を逆向きに掘り進めるのが好きな人でなければ向かないかもしれない
AIがすべてで、AIがソフトウェアなら、あらゆるものがソフトウェアになり、誰もがそのソフトウェアの一部を欲しがることになる
この記事の情緒は正確だ
4年前に引退したが、その時点ですでに10年以上下り坂だった
ただ一つ付け加えるなら、プログラミングはまだ楽しくありうる
職業としてのプログラミングはひどいが、個人プロジェクトのためにプログラミングしてみれば、今でも楽しいとわかる
それでも離れて本当によかった
キャリア末期、同僚とApple Parkで昼食を取っていたとき、「公園」の中央にある植物や木を世話する庭師をぼんやり眺めていた記憶がある
同僚がその庭師について話し出そうとした瞬間、彼も私と同じことを考えていて、次に何を言うかすぐにわかった
文章が本当によかった
「Iranに核を撃ち込むかどうかのような、もっと軽い話題に移ろう」や、「ジュニアはもういない。2024年に彼らの葬式はあったが、誰も来なかった」、「AIが私たちの仕事を奪ったのではなく、強欲が奪った」といった一文がよかった
シニカルな経験を込めた風刺がよく効いている
プログラミングは昔からずっとひどかった
今変わったのは、そのひどい仕事を代わりにやってくれるAIエージェントが現れたことだが、なぜかすべてがもっと悪くなった
今では、自分で書いたわけでもなく、完全に理解しているわけでもなく、コードレビューでまともに説明することもできないコードをデバッグしなければならない
美しい文章だった
Peter Welchのこの文章の精神的な先祖ともいえる文章へのバックリンクもうれしかったし、どうやって見つけるのか忘れていたので、また読める楽しみがあった
「プログラミングはひどい」という記事が、おそらく静的生成ブログなのにHNトラフィックで窒息しているのは、ちょっと皮肉ではないか?
ISRにするのが面倒でCloudflareの無料プランを使っていたし、こんなトラフィックが来るとはまったく予想していなかった
本当によかったし、戻って「Programming Sucks」も読んだ
あちらにもこういう楽しい一文がたくさんあった
「コーダーのコンピューターが非コーダーのコンピューターよりうまく動く唯一の理由は、コーダーがコンピューターを自己免疫疾患を抱えた統合失調症の子どものような存在だと知っていて、調子が悪いからといって殴らないからだ」