CSSで計算できても、人間が楽になるとは限らない

CSS Turing demoとGUI操作のしんどさから、できることと使いやすいことの差を考える。

CSS がチューリング完全だ、という話があります。正確には、HTML の状態と CSS セレクタと人間の操作を組み合わせると、Rule 110 のような計算モデルをエンコードできる、という話です。

おもしろいです。変です。好きな種類の変さです。

ただ、そこから「CSS はプログラミング言語として実用的だ」と言うと、たぶん話が飛びすぎています。チェックボックスをセルの状態にして、:target やフォーカスをカーソルのように扱い、人間が手で次の状態へ進める。できることはできる。でも、それは気持ちよく使える道具ではありません。

この話を調べていた時期に、GUI 操作をエージェントに任せる話もしていました。ブラウザを読ませる、クリックさせる、フォームに入れさせる。これも、できるかどうかだけならだいぶ見えてきています。

でも、自分が本当に欲しいのは「ブラウザを操作できるエージェント」だけではなさそうです。欲しいのは、画面を読む負荷、クリック先を探す負荷、何度も同じ確認をする負荷を減らしつつ、最後の判断は自分に残る作業面です。

CSS の Rule 110 デモと Computer Use の話は、別の話に見えて同じところに引っかかっています。能力と使いやすさは別です。計算できることと、道具として使えることは違う。操作できることと、自分の作業が軽くなることも違う。

UNIX っぽい小さい道具は、説明しやすくて好きです。コマンドに入力を渡すと、出力が返る。ログも残る。ただ、GUI のしんどさはそれだけでは消えません。人間が見ている画面と、道具が扱うテキストの間に、まだ距離があるからです。

だから、このへんのエージェント UI は「なんでも自動化する」より、「人間がどこで疲れているか」を先に見たほうがよさそうです。少なくとも自分の場合、問題は判断力よりも、画面を行ったり来たりする細かい負荷にあります。

CSS で計算ができることは楽しい。エージェントが GUI を触れることも便利です。ただ、それだけでは足りない。使える道具にするには、できることの証明とは別に、人間側の摩擦をちゃんと見る必要があります。