WalkingCoding
What's this?

Walking Codingとは?

Walking Codingとは、「人の手でコーディングすること」を意味する言葉です。 AIエージェントによるコーディングが登場し、従来の「人の手によって」コードを書く行為が相対化された今、その意義を問い直すことで生まれたレトロニムです。

AIエージェントは、目的地を伝えるだけでその場所まで連れて行ってくれます。それはタクシーに乗っているような気持ちです。あるいはCursorのように、Tabキーを押すだけで次々とコードが出現するエディターでのコーディングは、ドライブのようでもあります。

そうしたコーディングに対して従来のコーディングは、速さの点では下位互換に位置付けられます。しかしビジュアルコーディングのように、「何を作るのか」がはっきりとしない中で手を動かし、偶然現れた振る舞いやリズムに美的価値を見出すような活動には、AIエージェントには代替できないものがあります。この観点から、「人の手でコーディングすること」を「徒歩での移動(=walking)」のアナロジーを用いて捉え、コーディングが創作に与える影響や意義について再考します。

このWebサイトでは、日課として、あえてAIを使わないでコードを書き、その過程での試行錯誤や感想を日記として残します。このとき日記は、なぜそのコードを書くことになったのかを説明する「コードのコード」になるような気がするし、そうならないかもしれません。

重要なのは、コーディングという行為を日常の近くに引き寄せておくことであって、継続する気持ちを萎縮させるような決まりごとは設けないようにしています(下記、Code of walkingを参照)。

Background

コードを書かなくなった。

要件定義をGeminiに依頼して、実装をClaudeに依頼する。大枠のレイアウトをIllustratorで組んだら、スクリーンショットを撮ってレイアウトを起こしてもらう。「spring-layout」「convex hull」と言うだけで、期待のアルゴリズムが実装される。

コードが手元を離れていく。些細なバグですら向き合うのが面倒になり、AIに「なんとかして」もらう場面が増えてくる。

悲観はしていない。AIエージェントが行っていることはすでに「代替」を超えていて、私たちはより速く、より遠くを目指せるようになったのだから。システム構築という長い道のりを「徒歩」でしか移動できなかったところに、「自動車」のような移動手段が加わった。そう考えれば、それまでとは全く異なる質を期待して良いはずだ。

ただ、「自動車」でしか辿り着けない場所があるのと同様に、「徒歩」でしか辿り着けない場所もある。コーディングをしていると、この定数をいたずらに大きくしたら?とか、乱数にしたらどうなる?とか、「寄り道」のような操作をすることがある。特にビジュアルコーディングのような、目的地が作り手にとっても曖昧で、何が正解で失敗とも言えない中、目の前に現れたものに美的価値を見出す作業こそ、「寄り道」は大切なことのように思う。

だから「walking」する。今のところプロンプトに記述できるのは、いわば「首都」や「観光地」のような、誰かがすでに訪ねて、一定の価値を見出している場所だ。 そこへまっすぐに向かうのではなく、脇道に外れたり、目的を持たずに散歩するように、自己目的的な移動の中で何かを見出すプロセスの価値を確かめたい。

Code of Walking

「日記」には、コードから読み解くことのできない試行錯誤の過程や制作者の衝動を書くことが推奨されますが、そうでなくても構いません。今日起こった嬉しかったこと、最近考えていること、3日と続かない連載企画を勝手に始めることも許容します。

この取り組みは、探索フェーズ、分析フェーズ、研究フェーズの3つのフェーズに分けて進めます。 初期の探索フェーズは、自身の興味関心を探索することを目的と据えて、過度に分析やルールづくりをしないように進めます。

分析フェーズでは、探索フェーズで得られた知見をもとに、より深い理解を目指します。

このプロジェクトはAIの使用自体は禁止しません。例えば、実装に行き詰まりを感じた場合や次のステップに向けた構想を練る際に、AIを使用をすることがあります。ただし最低限のルールとして、AIにコーディング作業自体を依頼することは禁止します。コードの提案を受けた場合であっても、それを「写経する」ようにします。

このプロジェクトでは、体系的に進めるようなことをしません。昨日と言っていることが違う、という状況を許容しますし、むしろ尊重します。