ジムへ向かう途中の車内で収録された今回のポッドキャスト。仕事中にメモを取る習慣について竹内(@rikson_en)が切り出したところから、エンジニアリングの細かな技術論から、AI 時代のエンジニアの未来まで、話題は大きく広がっていった。
竹内が仕事中に気づいたことをメモしているという話を聞いて、僕も「それやろうかな」と思った。竹内は溜めていたメモをブログ記事として公開し始めており、今朝も「async/await ばかり使わずに、Promise チェーンもたまには使おうぜ」という記事を投稿したそうだ。ただ、時間が経つと当時の熱が冷めてしまい、「面倒くせえな」という気持ちになってしまうという。これは確かにわかる。アイデアは鮮度が命だ。
次に投稿予定の記事は、TypeScript での定数定義について。enum を使うべきか、オブジェクトリテラルを使うべきかという議論だ。僕が「オブジェクトリテラルってどういうもの?」と聞くと、竹内は「as const みたいな形で書ける」と説明してくれた。enum は型安全性の問題で上書きできてしまうという欠点があるが、竹内は「なかなか enum を上書きするって、いたずらしようという意図がなければやらない気がする」と擁護する。一方で、オブジェクトリテラルは型定義を確認するときに展開されず見づらいという。DB 接続情報のようにネストした定数を扱う場合は、単純な const では不便だという点も納得できる。
話題は徐々に大きな視点へと移っていく。竹内が「今って細かい技術を知ってることの価値がどこまであるのか」と疑問を投げかけると、AI 時代のエンジニアについての議論が始まった。中島聡氏の意見を引用しながら、学習能力や抽象的な能力の重要性について話し合った。僕は「お金がなくてもそこそこ生活できるようになって、お金のために行動するんじゃなくて、自分がやりたいとか社会に承認されるような、そのために行動する」という未来像を語ったが、竹内は現実的にベーシックインカムへの移行は難しく、格差社会が進むだけではないかと指摘した。
特に印象的だったのは、ジュニアエンジニアの需要についての話だ。AI 研究者が「はしごがなくなっちゃった」と表現したように、ベテランエンジニアになるまでの階段が見えなくなっているという。しかし竹内は、周りのジュニアエンジニアが AI を使いこなして生産性を上げており、需要がなくなっている感覚はないと反論した。
UI の未来についても興味深い議論が展開された。僕が「自然言語で UI を操作できるようになったら、特殊な UI は必要ない」と提案すると、竹内は YouTube を例に挙げて反論した。チャット GPT で「面白い動画を見つけて再生して」と言うより、YouTube の UI でおすすめコンテンツを選ぶ方がユーザー体験が高いというのだ。確かに、GUI なしでは複雑な操作は難しい。ボイスアシスタントについても、「エアコンつけて」「テレビ消して」といちいち言うのがだるいという点で意見が一致した。
後半では、ポッドキャストの運営についても話が及んだ。Spotify のアナリティクスを見ると、男性だけだったリスナーに女性も少し加わってきたらしい。50 回記念に向けてお便りを募集することにしたが、「多分ないんで自作自演で作りましょうか」という竹内の言葉に思わず笑ってしまった。
技術的な話題では、Cursor の挙動が不安定になったという話や、複数の Claude を TMAX で連動させる手法についても触れた。僕が WebRTC のファイル転送ツールを Go から Rust に書き換えようと Claude に作らせた経験を話すと、竹内は GitHub のリポジトリからプロンプトを生成するツールの有用性を認めてくれた。
最後に竹内が「Vim やめようかな」と言い出したのには驚いた。LSP 周りの設定が大変で、週末の Vim メンテナンスのモチベーションもないという。VS Code をベースにして Neovim を部分的に使う運用を検討しているそうだ。
今回の収録を通じて感じたのは、技術の進化とともにエンジニアの役割も大きく変わりつつあるということだ。細かい技術知識の価値が揺らぐ中で、何を学び、どう成長していくべきか。その答えはまだ見えないが、こうして竹内と語り合いながら、一緒に模索していけることが心強い。