抽象的UI論ぶつぶつ(CUI、CLI、GUI、VUI)
次世代UIパラダイムとして「声」のUI、つまりVUIを探究したい。ぼくはCLIがけっこう好きなので、要するに「キーボードを使わないCLI」という矛盾した要求を満たすものとしてVUIを見ている。(もちろんGUIでもCLI的な体系は作れるのだが)
ドメイン特化型VUI
Siriのような「万能の人工知能」っぽい方向ではなく、「アプリ固有のコマンド&アウトプット」のために声を使うVUIの体系を考えてみたい。例えば、レシピを読み上げさせたり、声で操作したり。
ボイスUIパラダイムの、現時点の代表的な技術は、TwillioやVoiceMLなどだろうか。それをもっと抽象的に、未来的に考えると、どうなるだろうか。
理念的にはDSL(ドメイン特化言語)やOO(オブジェクト指向)の領域と接続できる。ボイスUIはDSLだし、CLIにも似てる。
どういうことか?
CUI、CLI、GUI、VUI
VUIのセマンティクスが「ナラティブ」(談話的)である点が重要だ。
という分類の境界線は、曖昧だ。MS-DOSのCUI表計算アプリは、限りなくGUIに近いというか、もはやGUIだろう。画面には確かに「表」が視覚的(graphical)に表現されているのだから。
というわけで、CUIとGUIの区分は曖昧だ。OSがWindowsかMacかという話でもない。
さらに言えば、西欧人にはおそらく理解しづらい議論だが、漢字は象形文字だ。漢字はグラフィカル(図画的)である。このように、文字(エクリチュール)には物質性と記号性の両面性があることを確認しておく。
その上で考えると、我々が「GUI」と呼ぶものも、大部分が文字(character)で構成されている。これはほとんど「CUI」ではないか。単に「視覚的にリッチなCUI」と言っても差し支えない。もちろんPhotoshopのようなアプリは純粋なGUIだが。
このような整理をしてきたのを踏まえて、重要な指摘をしてみる。
VUIは、CUIでもなければ、GUIでもない
前述の完璧に(MECEに)思えた分類は、破綻している。VUIは、CUIでもなければ、GUIでもないからだ。
こうも言える。
VUIは、ほとんどCLIである
VUIは「グラフィカル」(図画的)ではない。「ナラティブ」(談話的)だ。それはCLIにも共通している。CLIは英語を母体とした構文になっている。
CLIのコマンドラインを声に出して読めば、ほとんど英語に聞こえる場合がある。例えば make all
や which ls
のように。これは偶然ではないだろう。プログラマーはCLIを「ナラティブな体系」とみなしてきた、と分析できる。
VUIは「ナラティブ」(談話的)なUI体系を持つ。それがCLIとの共通点だと言える。
口語と文語
同じく「ナラティブ」(談話的)であっても、CLIとVUIは異なる。文語(書き言葉)と口語(話し言葉)の違いに対応している。VUIは「バーバル」(口語的)だ。一方、CLIは「リテラル」(文字的)で、文字(character)に関するUIだから、CUIと呼ばれる。
ひと区切り
こういった基礎的な分析に立脚して、VUIの可能性を考えていきたい。
(つづく、かも)