[{"data":1,"prerenderedAt":140},["ShallowReactive",2],{"content-/computing-course-three-lessons-in-a-day":3,"all-pages-for-dir":119,"related-/computing-course-three-lessons-in-a-day":120,"og-image-/computing-course-three-lessons-in-a-day":139},{"id":4,"title":5,"body":6,"category":100,"concepts":101,"description":102,"extension":103,"meta":104,"navigation":105,"ogImage":101,"path":106,"project_name":107,"published":108,"publishedAt":109,"seo":110,"stem":111,"tags":112,"todo":101,"unpublished":108,"updatedAt":101,"__hash__":118},"pages/2026-07/2026-07-24/computing-course-three-lessons-in-a-day.md","コンピュータの原理を教材化する学習コースを1日で3講分作った",{"type":7,"value":8,"toc":91},"minimark",[9,13,18,21,24,32,35,39,42,45,48,52,55,58,65,72,76,79,82,85,88],[10,11,12],"p",{},"朝一番、「昨日の積み残し、何かありましたっけ」とだけ聞いた。前日のメモを漁ってもらうと、答えはすぐに出た。コンピュータの原理を扱う技術書を学習コース教材に変換するシリーズの1本目が、実装もテストも目視確認も終わったまま、コミットだけを待って寝かされていた。",[14,15,17],"h2",{"id":16},"宿題を片づけたら二本目が転がり込んできた","宿題を片づけたら、二本目が転がり込んできた",[10,19,20],{},"学習ゲートのクイズは1問だけ落とした。auto-importの名前衝突は普通ビルドエラーになるはずだ、と思い込んでいたら、実際は後勝ちで静かに上書きされる、という方が正解だった。再出題を経て全問正解、受領証を発行してコミットした。時刻は6時01分。",[10,22,23],{},"区切りをつけたつもりが、そこで終わらなかった。1本目の続きにあたる、電気信号で情報を伝える仕組みを扱う2本目の教材化に、そのまま進んだ。実装はサブエージェントにバックグラウンドで任せ、出来上がりをCodexにレビューさせると、「接地には高電圧が必須」という一般則を演習データがそのまま踏襲している箇所が見つかった。誤りだ。直してもらい、学習ゲートも全問正解。2本目のコミットは6時40分だった。",[10,25,26,27,31],{},"ここで手が止まった。コミット前に退避しておいた他の変更を戻す段になって、",[28,29,30],"code",{},"git stash pop","が全部を戻し切れていない。破棄する前のstashはまだGitのオブジェクトとして残っていたので、現在の作業ツリーと直接突き合わせた。差分が出たのは3ファイルだけで、しかもstash退避後に外部の決算データ更新プロセスが上書きした、より新しい版だった。壊れてはいなかった。",[10,33,34],{},"コミット作業の裏では、別に上がっていた2件のissueも並走させていた。PowerShellがクラッシュした件は3パターンの再現テストがすべて正常に終わり、監視継続で片づいた。無人実行下での署名承認まわりの件は、構造的に安定しないという結論だけを受け取って据え置いた。",[14,36,38],{"id":37},"残りも全部やってほしい","「残りも全部やってほしい」",[10,40,41],{},"一息ついたところで、今何章まで進んだのかを聞かれた。全25章のうち終わっていたのは6章分。「まずは残り全部の計画を作ってほしい」と伝え、章立てのロードマップづくりを任せた。",[10,43,44],{},"ロードマップができるのを待つ間に、もうひとつ決めた。この先の章を1本ずつ手作業で積み上げるより、演習・図解・ページ構成を使い回せる共通基盤を先に作ってしまったほうが早い。設計メモをサブエージェントに書かせ、Codexのレビューで致命的な指摘を3件受けて直してから、実装と既存2コースの移行をそのまま任せた。",[10,46,47],{},"作業の途中で、画面に利用上限を告げる通知が出た。続きは新しいセッションで再開させ、今度はstash popも全ファイルきれいに戻った。共通基盤のクイズは4問とも一発正解、受領証を発行してコミットした。時刻は8時32分。夜明け前から動き出して、ここでようやく一区切りだった。",[14,49,51],{"id":50},"型が決まるとあとは繰り返しになる","型が決まると、あとは繰り返しになる",[10,53,54],{},"昼前後には、共通基盤に乗った3本目の教材(第3講、10進法が唯一の数え方ではない、という回)も1本仕上がっていた。演習26問、図解2点。この時点でシリーズは3本並んでいた。",[10,56,57],{},"午後、4本目(第4講)に取りかかった。オーケストレーション役を上位モデルに、実装はデータ・図解・ページの3分野に切り分けてサブエージェントへ並列で割り振る、という型がここで固まった。計画書をCodexにレビューさせて致命的指摘2件を直し、3体を並列起動する。演習25問とテストを任せた分から先に仕上がってきて、ページの分もすぐ続いた。",[10,59,60,61,64],{},"実描画確認をひととおり終えたあと、前の講のページ末尾にある続編導線を確認する段になって、PowerShellの",[28,62,63],{},"$_","がbashにそのまま展開されて失敗した。クォートを重ねても直らず、結局ps1ファイル経由に切り替えてようやく通った。",[10,66,67,68,71],{},"学習ゲートのクイズが提示されたところで、今回はスキップでいい、とだけ返した。",[28,69,70],{},"LEARN_SKIP","でコミットし、4本目(第4講、ビットの正体、演習25問・図解2点)が16時02分に積み上がった。",[14,73,75],{"id":74},"同じ型で5本目","同じ型で、5本目",[10,77,78],{},"夕方、5本目(第5講)に進んだ。データ・図解・ページの3分割はもう慣れた手順で、計画書もCodexのレビューを経てすぐ実装に入れた。演習20問とテスト19本を任せた分が最初に仕上がり、レビュー指摘5件を反映させる。図解・ページの分もそのあとに続いた。",[10,80,81],{},"学習ゲートのクイズは、提示から30分のあいだ誰も答えないままタイムアウトした。回答が来なかった以上仕方がない、とスキップを選んだ。5本目(第5講、論理とブール代数、演習20問・図解2点)が19時25分にコミットされ、1日の作業が終わった。",[14,83,84],{"id":84},"振り返って",[10,86,87],{},"未明に1本を出し、電気信号の回を追加し、共通基盤へのリファクタを挟み、それでも日が暮れる前に第3講・第4講・第5講まで積み上がっていた。セッションは1日のうちに3回切り替わり、そのたびに引き継ぎプロンプトを次に渡す運用でつないだ。",[10,89,90],{},"共通基盤を先に作る寄り道が正しかったのは、そのあとの2本がまったく同じ型(計画→Codexレビュー→3並列→クイズ→コミット)で流せたことで裏付けられた形になる。学習ゲートは2回スキップした。1回はその場でスキップを選び、もう1回はクイズに誰も答えず時間切れになった。どちらも隠さず記録には残しておく。",{"title":92,"searchDepth":93,"depth":93,"links":94},"",2,[95,96,97,98,99],{"id":16,"depth":93,"text":17},{"id":37,"depth":93,"text":38},{"id":50,"depth":93,"text":51},{"id":74,"depth":93,"text":75},{"id":84,"depth":93,"text":84},"dev",null,"コンピュータの原理を扱う技術書を学習コース教材に変換するシリーズで、共通基盤のリファクタを挟みながら1日で3講(ビット・2進法・論理とブール代数)を仕上げた。サブエージェント並列と学習ゲートの運用も振り返る記録。","md",{},true,"/computing-course-three-lessons-in-a-day","mdx-playground",false,"2026-07-24T00:00:00.000Z",{"title":5,"description":102},"2026-07/2026-07-24/computing-course-three-lessons-in-a-day",[113,114,115,116,117],"学習コース","教材化","サブエージェント並列","学習ゲート","リファクタリング","E_6v9jnePjfR8NSTDbIRpTIpNFhXNbodCKKsG9QkccA",[],[121,124,128,131,135],{"title":122,"path":123,"publishedAt":109},"2026年7月24日の開発日記 - 進める判断より、止める判断のほうが多かった日","/2026-07-24-diary",{"title":125,"path":126,"publishedAt":127},"quiz-server（/learn 学習ゲート）を講座コンテンツ化 — 公開前sanitize・ZIP配布への転換・静的配信でSVG表示崩れを解決","/quiz-server-lesson-content","2026-07-07T00:00:00.000Z",{"title":129,"path":130,"publishedAt":109},"語源英単語コースの挿絵を全語洗い直しした記録","/etymology-course-image-rework",{"title":132,"path":133,"publishedAt":134},"会計システムのBS/PL実装から年度繰越まで、Codexレビューで固めたPhase4・Phase5開発","/accounting-system-lab-phase4-5","2026-07-22T00:00:00.000Z",{"title":136,"path":137,"publishedAt":138},"eurekapu-nuxt4のデプロイ復旧と、画像・音声をR2配信に寄せ切った一日","/gogen-assets-r2-offload","2026-07-20T00:00:00.000Z","https://log.eurekapu.com/og/blog/computing-course-three-lessons-in-a-day.png?v=2026-07-24T00%3A00%3A00.000Z&title=%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%81%AE%E5%8E%9F%E7%90%86%E3%82%92%E6%95%99%E6%9D%90%E5%8C%96%E3%81%99%E3%82%8B%E5%AD%A6%E7%BF%92%E3%82%B3%E3%83%BC%E3%82%B9%E3%82%921%E6%97%A5%E3%81%A73%E8%AC%9B%E5%88%86%E4%BD%9C%E3%81%A3%E3%81%9F&author=Kei%20Komatsu&sig=fbcd691ef9134430",1785099382513]