/note/tech

Software Engineering Is Cool, But Is It Interesting?

要約:

■ 1. 外から見たソフトウェア開発

  • 外部からの称賛:
    • ソフトウェア開発者だと名乗ると、技術に縁のない相手からは小さな称賛が返ってくる
    • 黒い画面に緑の文字が流れ、衛星に侵入する姿を相手は想像している
  • 自分自身の過去の認識:
    • 長い間、自分もこのイメージのある種の変奏を信じていた

■ 2. 格好よさと面白さの区別

  • 年数とともに薄れる格好よさ:
    • ソフトウェアの世界で働く年数が長くなるほど、実際の仕事は格好よく感じられなくなる
  • 職業としての価値は否定しない:
    • ソフトウェアは依然として優れた職業
    • 業界の外の人間には説明しづらい種類の難しさがある
    • 二十年上達を重ねてもなお、初心者に戻った気にさせる発見が定期的に訪れる
  • 主張の焦点:
    • この仕事が簡単だと言っているのではない
    • 他のいくつかの職業と比べたとき、それほど面白いとは思えないという点が主張

■ 3. 会話が尽きる技術的境界

  • パーティでの典型的な問い:
    • 何を作るのか、どの言語を使うのか、ハッキングはできるのか
    • 意欲的な相手はAIに仕事を奪われるのかと尋ねる
  • 誠実に答えた瞬間の断絶:
    • データベース、API、並行処理、分散システムへと話が進む
    • 相手の魂がゆっくり体から抜け出していく様子が見える
  • 境界を越えるということ:
    • 退屈な人間になったのではなく、技術的な国境を越えただけ
    • 越えた先では、誠実な回答のたびに五分の説明が追加で必要になる

■ 4. 医師との対比

  • 救急医への尽きない質問:
    • 見た中で最も奇妙なもの、負傷の経緯についての嘘を即座に見抜いた経験
    • 家族同士が患者の扱いで対立したときの顛末
    • 助からないと思った相手を救った経験、今も記憶に残る最も悲しい症例
    • こうした問いなら何時間でも続けられる
  • 理由は仕事が人で満ちていること:
    • 患者は必ず自分の人生を伴って現れる
    • 家族も、性格も、犯した過ちも、見舞われた不運もそれぞれ異なる
  • 患者の物語への参加:
    • 医師は二十分だけその人の物語の一部になることもある
    • 数か月にわたることもあり、その物語が生涯残ることもある

■ 5. ソフトウェアの物語と平凡な日常

  • ソフトウェアにも物語は存在する:
    • 本番環境の惨事、崩壊する企業、ひどい管理職、優秀なエンジニア、不可能な納期
    • 金曜午後に誤って削除されるデータベース
    • スキャンダル、失敗、奇怪な顧客、英雄的なデバッグの一夜
    • 個人的な危機のさなかに書かれたとしか思えないコードベース
  • 大半の日は火曜日:
    • そうした日々はほとんど訪れず、大半の日はただの火曜日
  • 典型的な一日の流れ:
    • ノートパソコンを開き、Slackを確認し、会議に参加し、チケットを別の列へ動かす
    • 四十分かけて原因が一行のコードだと突き止め、それを直す
    • 再びSlackを開き、昼食をとり、もう一つの会議に出る
    • 誰かが「これは後で個別に話そう」と言い、実際に個別で話されることはない
    • 一日が終わり、翌日も驚くほど似た出来事で構成される
  • 反復自体はどの職業にもある:
    • 外科医とて毎週水曜に新しい臓器を発見するわけではない
    • ただしソフトウェアは、互いに溶け合って区別のつかない日々を生むことに異常に長けている

■ 6. タクシー運転手やマフィアとの対比

  • 話を聞きたい相手はタクシー運転手:
    • 経験を積んだ運転手、とりわけ夜勤を二十年続けた人物の話を本心から聞いてみたい
  • 後部座席で起きてきたこと:
    • 酔客、泥棒、セックスワーカー、言い争う恋人たち
    • 葬儀へ向かう人、結婚式から帰る人
    • 人生最良の知らせを受け取った人、最悪の知らせを受け取った人
    • 一言だけ奇妙な文を残し、十五年後も運転手の記憶に残り続ける乗客
  • 平均的な一週間を語り比べた場合:
    • 自分とその運転手が同じ席で平均的な一週間を語るなら、どちらの話を先に聞きたいかは明白
  • マフィアという極端な例:
    • 本物のマフィア構成員に好きなだけ質問できる状況を想像する
    • 本物のギャングの普通の一日を知りたくない者はいない
    • 質問し尽くす頃には太平洋の底に沈められているだろう
    • プログラマーの話など知ったことではない

■ 7. 例外としての語れるベテラン

  • 数十年続けてきた開発者:
    • 奇妙なシステムに携わり、崩壊寸前の企業を生き延びてきた
    • 今日の腕時計より遅い計算機の時代に製品を出荷した
    • 技術が登場し、流行し、嫌われ、消え、十五年後に新しい名前で戻る過程を見てきた
  • 最も重要な条件は語りの技術:
    • そうした人物は物語の語り方を知っている
  • 例外が成立する瞬間:
    • そのような相手に会うと、ここまで書いたことはすべて成り立たなくなる
    • 誰も自分たちをその席から引き離せず、朝まで座り続けられる