Spinach Forest

March, 2026

/ 宿題の世話の愚痴   / Jujitsu   / Walmart Plus   / 脊髄反射記 #7   / 冴えないバイリンガル脳   / スキルと筋肉・再訪   / 考えられなさ   / 脊髄反射記 #6   / ... 

宿題の世話の愚痴

先日小学三年生の project based learning の愚痴を書いたが、その続き。

地元 Mountain View の歴史のうち、ダウンタウンの名前になっている Castro family の土地について調べ、まとめるという課題が与えられていた。Mountain View へのインパクトを説明しないといけないらしい。

がしかし、リンク先を見ればわかるように物事はさほどシンプルではない。メキシコ人である Castro 一族は、メキシコ独立戦争の結果としてメキシコ政府から土地を授与された。しかしアメリカ・メキシコ戦争の敗戦にともない California Land Act という言いがかり法案を論拠に土地を巻き上げられた。それでも土地を持っていた時期にストリートに家族由来の名前をつけ、自分が住んでいるアパートのある通りも Castro 一族命名のものである。栄枯盛衰ですね。みたいなストーリー。

なので Castro family も彼らが受け取った土地も、Mountain View には大したインパクトがない。なぜなら戦勝国アメリカが土地を巻き上げ、Mountain View を作ったのはそこに乗り込んできたアメリカ人だからである。

メキシコ人も(スペイン経由で)その土地を原住民から巻き上げたんだけどさ、だからって他人から土地をぶんどっていい理由にはなんねーよな?と思うがしかし、そういう生々しい話は Wikipedia はともかく学校推薦のサイトには書かれていない。Wikipedia の記述にしても小学三年生にわかる展開ではない。これどうリサーチさせろってんだよ。子がページをみて内容を理解しないままコピペのワードサラダを作っているのを「理解しろ」とかいいながら読ませているが、読んでもわかんねーんじゃサラダ作るしかないじゃん?なんなのこの無理ゲー?「もらった土地を取られちゃった話だよね」と説明しているものの、PC 的に角が立たないか心配。

アメリカの野蛮さにうんざりしている昨今に塩を塗るように野蛮さを隠して歴史を語ろうとする態度に辟易してしまい、もう宿題やだ、という気分です。はい。日本の三年生の社会の教科書を読むと福岡の名産「あまおう」とかの話で、心が洗われます。

Jujitsu

ここしばらく仕事で Jujitsu (JJ) という VCS を使っている。

JJ は Google が開発している新しいオープンソースの VCS. バックエンドが交換可能なので Git repo をいじるのにも使えるし、プロプリエタリな VCS もインテグレートできる。自分が使っているのは後者である。つまり Google monorepo のフロントエンドとして使っている。

割と気に入っており、もう従来の Mercurial に戻る気はない。(Mercurial も pluggable backend に対応しており、Google は monorepo をバックエンドとした魔改造 Mercurial を使っていた。というか今も使っている。) Git のフロントエンドに使うとどのくらい便利なのかは知らないが、自分の用途には良い。

自分が仕事でやっているワークフローに JJ はよく合っている。どういうワークフローかというと:

  • PR を master にマージするのではなくコミットを一個ずつ HEAD に submit していく。
  • コードレビューもブランチではなくコミット単位である。レビューが LGTM になったら、そのコミットを HEAD に submit する。
  • コードレビューは、しばしば picky である。
  • submit していないコミットをいくつも積み上げることはよくある。

雰囲気としては、まずババーっと 2-3 のコミットを重ねてやりがいことができるか確認する。それができたら、コミットを一個ずつコードレビューに送っていく(レビュアは先のコミットを見ることもできる)。レビューを待ちながら重ねたコミットを直したり、新しいコミットを書いたりする。レビューを受けて積んだコミットを直す。レビューが LG されたらそのコミットを submit し、残りのコミットを HEAD に rebase し、以下繰り返し。こういう submit 前ブランチが複数ある。

jj edit

「コードレビューを受けて直す」という flow で威力を発揮するコマンドが jj edit. このコマンドで編集したいコミットのリビジョンを指定すると、そのあとのコードの編集が自動的にそのリビジョンに直接反映される。git commit とかしなくていい。これだけ聞くと意味がわからないかもしれないが、イメージとしては背後で jj のデーモンがチェックアウトのファイル編集を見張っていて、変更があったらコミットをアップデートしていく。

コードを mess up したら困るんじゃね?という心配はあるがしかし: 1) 現実にコードレビューの反映で mess up することは少ない。 2) mess up しそうな時はだいたい事前にわかるので、そういう時は jj edit ではなく jj new という別のコマンドを使う 3) mess up した時にも、事前のスナップショットに戻すコマンドはある。

いちいちコミットしなくていい事実に最初は正気を疑ったが、慣れると快適すぎてもはや never look back となった。

jj edit のもう一つ興味深いところは、編集後も子のコミットがそのまま子にぶらさがっていること。 r1 -> r2 -> r3 とコミットしたあと r1 を 編集しても、r2 と r3 は引き続き子のままである。rebase しなくていい。

First class conflict

でも r1 への編集が r2 とコンフリクトしたらどうすんの?という疑問がある。答えは「どうもしない」である。

JJ はコンフリクトが first class citizen である。Git や Mercurial では、rebase したコミットの conflict はなんとかして解決するか、ダメなら abort しないといけない。一方で jj のコミットは、コンフリクトしてもそのままコミットとして存在しつづけている。ただし「コンフリクトしてるよ」とマークされ、そのコミットをチェックアウト (jj edit) すると conflict marker のついたファイルが現れる。そしてコンフリクトを直しマーカを消すと、自動的にコンフリクトステータスも解消される。

これは、便利。コードレビューの結果をうけ r1 をガチャガチャいじった結果 r2 がコンフリクトすることはよくある。その r1 をコミットしたあと rebase しないでおくと r2 以下の存在を忘れたりしがちだし、一方で rebase するとコンフリクトの解決という認知負荷の高い作業をすぐにやらないといけない。JJ はコンフリクトした子を見失うことなく、しかし解決を後回しにできるので目先のレビュー対応に集中できる。ちょー便利。


他にも色々おもしろコマンドがあるが、まだ使いこなしているとはいえないので割愛する。コマンドの種類だけでなく diff とか log とかの表示も、後発だけあって洗練されている。

今すぐ使わないと missing out する、という感じではないが、新しいパラダイムを試すのは面白い体験なので、未だにエーアイに任せず手でコード書いてる原始人同志におかれましては試して頂けるといいのではないでしょうか。こういうパズル遊びは手書き固有の楽しみだと思うので。

Walmart Plus

最近 grocery delivery に Walmart Plus を使い始めた。

COVID 時代に契約して以来、これまで五年くらいは Imperfect Foods を使ってきた。ただ野菜の品質にばらつきが大きいという従来の不満に加え、最近はベーシックな食材すら確実に買えない謎の在庫不足が目に付き、諦めた。牛乳が lactose free milk しかないとか勘弁してくれ。

Walmart Plus は注文した品を近所の店舗から届けてくれるというモデル。Walmart なので今の所ベーシックな品揃えに不満はない。

費用は $13/m の会費に加え、送料のチップが 10% かかる。(チップ率は選べるが、メンタルモデル的に税金なのでデフォルトにしている。)送料は高く感じるが、Walmart は商品が根本的に安めなのでトータルでは Imperfect Foods と大差ない感じ。

週に二回ぐらい配達してもらっている。数ではなく価格に比例した費用(チップ)なので、バッチにまとめる動機がない。ただし配達無料の最低ラインが $35 で、このラインがバッチ化の基準になっている。Imperfect Foods は配達が週に一回で、これはバッチ化のサイクルを保ちやすい良さがあった一方、週の後半は野菜がなくなりがちだった。

商品は grocery の紙袋に入れて配達され、保冷剤とかはない。自分のかわりに買い物して届けてくれるだけ。受け取り時に在宅である必要はあるが、かさばる保冷剤がないのは良い。配達ウィンドウは二時間単位で選べる。

Walmart Plus の配達モデルは便利だけど、効率は悪いなと思う。Imperfect Foods や日本の生協みたいに決まった日に地域を巡回して配達する方が、配達側のバッチ化がはかどり環境負荷も低いし人件費も安く、個人的には好ましい。もっとも日本の「ネットスーパー」も Walmart と似たような仕組みらしいので、日本の生協が特別なのかもしれない。アメリカの co-op は前に Seattle で観たことがあるけれどうちの近所にはない。それに宅配もなさそうな雰囲気。Imperfect Foods がもうちょっと在庫を頑張ってくれればよかったのだが。

なぜかオマケで動画ストリーミングを Peacock と Paramount のどちらかから選んで観られるらしい。Amazon Prime と戦うためにつけたオマケなのだろう。自分は使ってない。使わないつながりでいうと Burger King とも提携しているらしい。しかし近くに店舗がない。

脊髄反射記 #7

冴えないバイリンガル脳

ふと思い立ち、バイリンガルや日本語の英語教育に関する本を何冊か冷やかした。

バイリンガル教育の方法 / 新版 世界で活躍する子の<英語力>の育て方 / ほんとうに頭がよくなる 世界最高の子ども英語

子の実情と照らし合わせてなにか書こうかとも思ったが当人のプライバシーを踏まえて思いとどまり、かわりに我が身に思いを馳せる。

自分は、先の本にあるような教育は一切うけず、そもそも英語は好きでなく、高校生の頃とか発音にも一切興味がなくローマ字読みで綴りを覚えるような有様だった。ただソフトウェアの世界があまりにも英語なので大学生活の後半くらいから徐々に英語コンテンツ(主にインターネットの活字や技術書)を摂取するようになり、しかし中二病なので「英語の勉強」をすることはなかった。(自分の中で英語は「そこそこできる」ことになっていた。客観的には事実でない。)

その後社会人になり、米資企業に転職した友人の影響で英語勉強法を真似するも根性がなくて続かず、ただコンテンツの摂取はなんとなく続けた。あるとき弾みで自分も米資企業に転職し、おかげで必要に迫られ慌てて勉強し少しはマシになり、別の弾みで今度は沿岸地区に転勤して⋯しかし英語の勉強はあまりしなかった。すればよかったけれど好きじゃないんだよね多分。シャドウイングとか発音とか、ちょっとだけやったかな。

ただコンテンツ摂取はより活発になり、現地の文化等を理解したい意図もあって新聞とかも少しは読むようになり、あと移動時間などを活かせる podcast や audiobook は、特に子供が生まれたあとはかなり聴くようになり、今日に至っている。 (最近は NYT の記事も耳で聴くことが増えてきた。いつからか登場した自動音声の品質がめちゃ高いので。どこの TTS なのだろう。)

こうしてみると、自分に足りなかったのは根性だと思う。特にコーチをつけて人間相手に発音や議論の練習をしたり、仕事場やそれ以外のコミュニティに参加するなど、苦手意識克服修行をしなかった。このサボりは自分の喋れなさ、発音の悪さに直結している。

一方で、根性レベルが低いなりに低負荷でこなしたコンテンツ摂取はそれなりの成果があった気がする。語彙やスループットがある程度鍛えられた。総じて滑舌のいい人気 Podcast を聞いていても現実世界人相手の聞き取りには必ずしも直結しない。それでも第二外国語話者として「ネイティブの速度」にはまあまあ慣れた。(真の上級者は podcast とか 2x 以上で消化できるらしいけど、それはそれ。)

先に読んだ子供向け英語教育の本はどれも大量のコンテンツ消費(読書と映像 = 多聴多読)を強く推しており、子供に文法や単語の勉強はムダとしている。自分のコンテンツ消費は、たまたまこれに整合している。

そのほかの勧めとしては phonics を挙げている。自分は phonics はきちんとやったことはないけれど American Accent の教科書でちょっと読んだ気はする。(なお米国小学校も一時期 phonics を暗記的と忌避する傾向があったが、結果として識字率を下げてしまったため “science of reading” という旗印の下ここ数年で復活したらしい。子の学校も二年前にカリキュラム改定を知らされた。)

子供向け英語教育ではやらないことになっている単語帳、自分は iKnow やら Anki やらを転職後の一時期結構やった。そして効果は感じられた。こうした spaced repetition は根性ないなりに進められるし時間費用対効果が最強すぎる。これは日本語スキルが完成している大人ならではのショートカットと言えるだろう。


子供向け英語教育が多読多聴を推す理由の一つは、頭の中で英語を日本語に翻訳せず英語のまま理解するためだとしている。量を流し込み翻訳の暇を与えない。振り返ると、自分はこの「脳内翻訳」に突き進んでしまった時期があまりなかった気がする。なぜだろうね。始発点の中二マインドが「自分はそこそこ英語ができる」と勘違いしていたのがよかったのかもしれない。

この「直接英語理解」方式は、レイテンシが少ないのはいいけれど必ずしも自分の「英語脳」(メンタルモデルとして単純化された脳の機能のサブセット。LLM でいう MoE の activation みたいなもんです。)が賢いことを意味しない。つまりしょぼい「英語脳」を介した理解は浅いし、意見は幼稚だったりツメが甘かったりニュアンスがなかったりする。

昔の自分はこの知的劣化がかなり顕著だった。昔よりマシとはいえ、今でも仕事中は自分の認知能力のサブセットしか使ってない感じがある。

自分のしょぼい「英語脳」は、ロジックは扱えるけれど感情やウィットのようなリッチさがない。この未熟な英語だけで考えると物事がすごくドライになる。たとえば仕事で計画をたてるとき、自分の感情や直感を無視しがちなので後から逆火することがある。だから仕事の考え事で言語化できない不穏な気配を腹のあたりに感じたら、一旦ラップトップを持って席を離れ、日本語で気分をぶっちゃけた braindump をして自分の感情・腹感覚を確認し、それと整合性をとるように仕事を見直すことがある。

たとえば日本語を介して、必要だとはわかっているがメンドクセーみたいな作業を適当に言い訳して優先度をさげたり、上司はやれというが重要性をいまいち信じられない作業をやんわりと押し返したり、必要性は微妙だが精神衛生のためにやりたいリファクタリングをそれとなく織り込んだり、苦手な人と一緒に仕事をしないといけなそうなタスクをスルーしたり、といった本音に気づく。

「メンドクセー」「いまいち信じられない」「精神衛生」「苦手な人」みたいな概念は仕事の design doc, charter, one pager などには存在せず、テック・ビジネス・ジコケーハツに溢れる自分の摂取コンテンツでもあまり存在感がなく、したがって自分の「英語脳」が上手に扱えない。つまり本音が上手く扱えない(!)。同様に、人を説得する文章、面白い文章のためのメンタルモデルもない。これは個人の感情よりだいぶ高度なスキルなので並べるのが適切なのかはわからないが、自分にない点では共通している。

話を戻すと:子供向け英語教育の推す多読多聴は、英語を「ネイティブに」つまり翻訳レイヤなしで処理する能力を鍛える効果はあるように感じられる。ただしその「ネイティブ脳」の品質は、このままだとザルである。それをザルでない知性まで鍛えるには、自分の関心だけを頼りにした多読多聴以外の各種要根性アクティビティや、多読多聴にしてもジャンルの多様性が必要なのだろう。LLM でいうと多読多聴は pre-training, 要根性訓練は post-training みたいなかんじだろうか。

自分は、英語嫌いの中二病だったおかげで日本の伝統的な英語学習による歪みが(発音以外では)あまりなく、インターネット中毒者だったのと米国中心の情報産業従事や転職転勤からくるわかりやすい動機のおかげで多読多聴もジャンルの偏りこそあれ一定程度できた。おかげで「ネイティブ英語脳」の胚芽は、根性がないなりに獲得できた。ただそこから先は根性不足、訓練不足が祟り、未熟な英語脳を成熟させることができなかった。「英語を頭で翻訳してしまう」みたいな歪みはない一方、仕事で英語話者とガチ議論するような高い英語力は今もない。

回り道はない。根性もない。なので「こうすればよかった」という反省もない。

今まではさておき、今から要根性の post-training をやりたいか。やるならなにがいいのか。わからない。

少し前から妻が英語の ESL の学校に通いはじめ、宿題が忙しいといいつつ楽しそうなのを見て自分もなにかやりたいかもな・・・と思ったのがこの文章のきっかけの一つだった。特に結論はでなかった。

スキルと筋肉・再訪

子の学校の課題・宿題で、Mountain View の歴史(のある側面)をリサーチしてなんか書く、というものがあった。半分くらいはチームで話し合い、最終的には個々人がテキストを出すらしい。

授業の時間だけでは終わらないので宿題として持って返ってくるわけだが・・・これできんの?親の手伝いが期待されている旨の連絡をうけ、どうしたものか困ってしまう。

リサーチというのは、学校貸与の Chromebook で Google Search することである。しかしサーチしたところで出てくるのは Wikipedia や .gov サイトであり、子供向けには書かれていない。読ませても語彙が足りず理解できていない。いや native English speaker の親でないので子の語彙も平均以下かもしんないけどさ、そうでなくとも三年生にこれは厳しくね?

子のサーチの様子も興味深い。キーワードマッチではなく質問箱として Google を使っている。たとえば “why xxx is important to mountain view” とか検索する。わー CM みたい。AI Overview は無効化されてるっぽいし、そんなん答えらんえーだろ・・・と思いきや、何らかの意図を汲み取り何らかの snippet を表示してくる。子は、それをコピペし、提出物のテンプレートにあわせて書き直し、出来上がり。本文読みやしない。ページを click through しても引用箇所がハイライトされるので、Wikipedia の長い本文から自分の質問の答えを探す必要がない。生成こそしていないが LLM チャットの体験に限りなく近い。最近はみな embedding based search だろうからある意味 LLM だとはいえ・・・。

これは「リサーチ」の勉強・練習・訓練になっているのか?日常のヌルい「リサーチ」には近いかもしれないが、そういうのを学校で鍛えたいの?本文スキャンして semantic linear match-and-rank する脳細胞鍛えなくていいの? Google Search のスキルも Goolge Docs のフォントの変え方もわかんなくていいでしょ今?

自分は HOWTO としての「スキル」をあまり信じていないのかもしれない。それよりも目を泳がせず複雑なタスクを遂行できる脳の筋肉(比喩的な意味で)を鍛えてほしいと思っている。この宿題の筋トレ成分は薄い。

LLM でいうなら context engineerring や harness construction は学校、特に小学校でやらなくていいと思う。必要なのは pretraining じゃん? あと pure reasoning RL じゃん? コンテクストいじりじゃなく backprop でパラメタ鍛えてだんだん context window 広くしてやってくれよ学校!頼むよ!!うちの子の computing (brain) resource を docs の font 変えるとかの computer use overhead で浪費しないでくれよ(本題から逸れた)!!!

コンピューターリテラシーはタイピングまででいいし、インターネットリテラシーはなくていいと思うんですけどね小学生。小学生の脳なんて attention brokering な今日の商業インターネットなんてまだ処理できないと思わん?保守的過ぎ?


そんな話を百年前に書いたのを思い出したのでリンクしときます: 第5回 体力vs.スキル | gihyo.jp

考えられなさ

最近、ものを考えられない。以前からたびたびブログを書けないという話をしているが、その延長、というより要因としてこの頭の働かなさがある。なんとかしたい。

考えられない理由を考えてみる。

プライバシー。一つには、インターネットに書きたくはないプライベートな事情に影響をされる事柄が身の回りに多くなっているせいで、それについては書けない。そして書けないことはあまり時間をかけて考えない傾向がある。オフラインに書けばいいのかもしれないが・・・。

単なる筋力の低下。書かないでいると、書くための話題を記録しておいたり、そうした話題についてぼんやりと考えを巡らす、ということをしなくなる。すると書くこと、考えることがなくなる。潜在的に書きうること、考えうることに気づかなくなる。

メディア依存。本来ものを考えるのに使える時間を podcast とか YouTube とか、その他のインターネットで融かしている。とりえず YT app は disable したが他も取り締まったほうがいいのだろうか。

エーアイ。ふと気になることが合った時、以前は調べて書いたりしていたが、チャットに聞いて気が済んで終わり、みたいのが増えた。最近はちょっとした愚痴とかもエーアイに吐き出しがちである。ヤベーな(※語彙のなさの露呈)。

運動。最近、勤務日の昼休みは脂肪燃焼のために歩いていることが多い。そうすると本来書くのに使えた時間がなくなる。書くだけでなく読む時間もなくなる。

退屈さ。仕事して通勤して家事して寝る、という暮らしだと、書く題材となりうる活動を何もしてないので、書くことがない。以前はそれなりに仕事のことを書いていたが、最近は仕事についてなにか書きたい気持ちが無い。下手に書いても悪口ばかりになりそうだし。

不穏さ。プライバシーと関連し、あまり書かない方が良さそうな不穏ことを考える傾向がある。これは別に今始まったことではないかもしれないが、傾向は強まっている気がする。あとインターネット全体の不穏度が高まっているので、なにかを書いて公開したい気分が盛り上がりにくい面もある。


こうして買いだしてみると Podcast 聞きすぎが重症疑惑だな。基本的に通勤中プラス散歩中しか聞いていないが、「しか」といいつつ二時間くらいあるからね毎日。

ブログを書いていた頃は歩きながら考え事をして、それを書くことが出来た。それが今できないのは・・・筋力の低下ですかね。ただ「退屈さ」ファクターにも不安はあり、つまり時間を開けたところで、何か書くことはあるのだろうか。見通しがない。

まずは公開しない日記的なものを書くことでリハビリといいのかもしれない。

脊髄反射記 #6