8/7(木) 睡眠時間6時間
クーラー1割か団扇9割の比率で稼働していた我が家にとうとう扇風機がやってきた。
白一色に「amazon basics」というロゴが付いただけの何とも味気ない子だが、安くて性能は十分。そして何より、組み立てが軽い!!
実家の扇風機を兄妹2人がかりで組み立てていた初夏の思い出が嘘のように、サクサクと片手で持ち上げて組んだ。20年でモーターは軽くなったのだろうし、一部の部品は3Dプリンターで作って低コスト化している。物理エンジニアリングの発展よ、万歳!
一人暮らしのために部屋の温度を下げるのも気が引けていたから、この夏はこのままこいつと乗り切りたいところ。
やったこと
100カノ223話:2話前の詩人ぱっつん回に引き続き、野澤先生の腕が活かされる回だった。匂い好き×アホの子×探偵キャラ属性だった端須蓮葉のように、属性かけ算彼女がこれから増えてくるだろうと思っていたのだが、ツインテールという属性一択だけでキャラとする彼女は強いな。
あくまでクジャク36話:珍しく、阿加埜ちゃんが生物学の知識で優勢に立ってる!!
そして5巻が8/12(火)に発売なのがとても楽しみ。
仕事
今日の仕事はRails関連をしつつ、寄り道が多め。
新しく担当となったサイトの事を覚えるために、たまにログの巡回をしているのだが、検証環境でやけに多くの警告ログが出力されていることが気になる。警告の内容をよく読むと、社内用にホストされているツールを少し触るだけで直せそうなものであった。
あとは著作権を気にせず使える画像があればいいのだが、生成AIを使うとそれはそれでややこしいし、サイトはもちろん会社の持ち物だからフリーアイコンを引っ張ってくるのも権利の確認がめんどくさい。
結局「自分で書けばいいじゃん!」という解決法に思い至り、ペイントツールで大きくテストとだけ書いて、代用の画像とした。著作権は私、一番安心!
今考えると、白紙の画像を用意するなり、安心の「いらすとや」を使用するという手もあったな…。会社の検証環境にデジタルタトゥー刻んじゃった。
手伝い
さかむけのような問題を片付けて仕事をしていると、後ろの席から困っている後輩と、それを助けようとするフロントエンドの人の会話が聞こえてきた。
Slackのtimesで、「ギブ」と半分拗ねたようにつぶやく後輩の様子は数分前に見ていたのだが、「勝手に拗ねるな! 先輩に質問する方向へ動くんだ!」と思い静観していた。それを見かねてか、フロント側の人が寄りそうも、専門外ということもあってなかなか苦心していそう。結局見かねて、私も声をかけてしまった。
「何の問題が起こっているの?」というところから聞き、「その問題なら、見るべきところが違うよね?」と一つずつ問題の糸を解いていく。多機能で便利なIDEの機能を使っているようだが、コードを順番に追っていくということはまだ苦手なようだ。
「ここの関数は何の引数を受け取って、何の型を返しているか分かる?」
「この言葉の意味って説明できる?」
と聞いてみると、予想よりも理解が甘い状況だったことに気づく。テキストではそれっぽく仕事をしているように見えたが、会話を重ねないからエンジニアらしい振る舞いが出来るか分からなかったのか。
一問一答で教えながらも、問題のコードまでたどり着いて、「あとは何を調べればいいかわかるね?」と投げてみた。ここまでお膳立てすれば大丈夫だろうと思いつつ席に戻ろうとしたが、生成AIが提案する頓珍漢な修正をそのまま実行しようとしている。「ちょい待て、君今まで何見てきたんだっけ!?」と思わず突っ込んでしまった。
解決したが、現状を知ってしまった後では、今後の進め方がかなり不安である。
今回の手伝いで一番怖かったのは、後輩の”コンテキストウィンドウ”の小ささ。「ここまでこういう仮定を積んできたよね?」というのはお互いに認識していると思っていたが、彼は直前の1つを覚えているかも怪しく、問題の全体像を掴みかねているようだった。これが彼単体の知識量による問題なのか、生成AIによるコード生成を重ねたせいなのかは分からないが…*1。
本気で同僚として育てるなら、ペアプロを毎日数時間して、仕事の振る舞いを覚えこませる必要があるのかなぁ。
「考えずに課題を提出する」ということができるようになってしまった現代では、「とりあえずこれを進めてくれる?」という放任主義の教育システムは仕事でも成り立たないのかもしれない*2。
Googleのソフトウェアエンジニアリング
帰宅して、ちょっとPixiv見すぎたり、昨日の日記を書いたり。
一通り終えたところで、もう23時。半分寝たい気持ちはあるが、今日も読書はしたい。睡眠欲と活字欲の間を逡巡していたが、デスクにある600ページを超える辞書のごとき本に目が向いた。全25章、天下のGoogle所属者たちの振る舞いについて調べた本である。

一章のタイトルは「ソフトウェアエンジニアリングとは何か」。
簡単に捉えると、「たまたま動く」はまだプログラミングだが、「保守性がある」、何年も動き続ける、他のソフトウェアエンジニアに見られること前提に作るような行為を「ソフトウェアエンジニアリング」と呼ぶようだ。
『人間の神話』では、プログラミングをシステムにするには9倍の労力を必要と試算されていたように、この差は大きい。
そして、Googleほどの大きなシステムを運用・管理するために行う「ソフトウェアエンジニアリング」の一つがスケール化。利用者が10人増えたからって、プログラマーを10人雇うわけにはいかないため、自動化を駆使してプログラマー1人で出来ることの範囲を広げていくことが重要になってくる。
面白かったのは、「Beyoncéルール*3」と呼ばれるもの。専門用語を省くと、「自動で行うテストで問題が表面化しなかったのならば、変更に落ち度はない」というもの。
システム障害が起こった際に、「そんな変更をするなら、担当者に教えてくれよ」と怒られるのではなく、「そんなに好きな(システムな)らテスト付けときゃよかったのに」というルールである。
Googleほど巨大な組織になったときに、毎度担当者に確認してテストをするなんてやってられないだろう。そのことを端的に言い表したルール名が好き。
一気通貫のストーリーというよりは、Google文化エッセイ集と言えるような読み物。何かのレビューでも「気になったときに好きな場所を少しずつ読めばいい」と見たように、気合入れて読み通すものではないのかもしれない。
それじゃあ、次に読むのは「チームリーダー入門」かなぁ…。
ごはん
朝食:菓子パン
昼食:(中食)ざるそば+おにぎり
夕食:お好み焼き+合鴨パストラミ
たまに、胡椒がふんだんに効いた鴨肉が食べたくなる時ってあるよね。