„natural language“ als Interface – return of the shell?
Da die Unix-Shell gerade so ein Thema war, kann ich gleich ein paar Gedanken hinterherschieben, die ich mir schon länger gemacht habe. In letzter Zeit gibt es nämlich so einige Dienste und Programme, die als eine Bedienmöglichkeit wieder auf Sprachbefehle setzen. Die webbasierte Zeiterfassung mite etwa kann man unter anderem mit Befehlen und Kürzeln über jabber mit Zeiteingaben füttern, die Aufgabenverwaltung Remember the Milk (kurz rtm) nimmt über twitter und E-mail Aufgaben entgegen, die man mit Kürzeln wie „d“ für „due date“, „u“ für einen dazugehörigen Link usw. spezifizieren kann. (Ich stelle gerade fest, daß das bei rtm ein Problem ist: Optionen und Kürzel sind bei E-Mail, Twitter-Schnittstelle und Webinterface – denn auch das läßt sich sehr geschmeidig mit Tastenküzeln bedienen – nicht einheitlich. Kein Wunder, daß ich mit der e-mail-Dropbox nie so hundertprozentig warm geworden bin.) Und beinahe schon so etwas wie eine shell fürs Web ist das Firefox-Plugin Ubiquity. Das Video von den mozilla labs erklärt das Prinzip sehr viel besser, als ich es könnte:
Ist natürliche Sprache also „the next big thing“ im Interface Design? Haben wir eine Rückkehr der Shell with a twist? Ich denke: Selbst wenn, dann wird sich das nicht für die breite Masse durchsetzen, die ja heute grafische Oberflächen als komfortabler empfindet. Ich finde es schwierig, mir jeweils die Syntax zu merken, denn jedes Projekt hat ja eine eigene. Vor allem beim mite-jabber-Interface wollten die Kürzel mir nicht im Kopf bleiben, ich mußte immer wieder auf der Website nachschauen und wenn ich die eh ständig offen hatte, dann konnte ich ja auch gleich das Webinterface nutzen. Darüber hinaus sind viele Dienste noch auf Englisch fokussiert, hier bestehen also noch Sprachbarrieren. Ubiquity löst das ziemlich gut, indem zu jedem Befehl Vorschläge gemacht werden und man die Syntax immer mit angezeigt bekommt. (Einige Bookmarks, die ich über ubiquity abgespeichert habe, landeten trotzdem als Kraut und Rüben in meinem delicious, das habe ich zum Glück rechtzeitig gemerkt und dann auch manuell korrigiert.) Auch das Webinterface von rtm zeigt einem die zugehörigen Tasten an und läßt sich damit sehr schnell und flüssig fast ohne Maus bedienen. Was auf jeden Fall hilfreich ist, ist sofortiges Feedback. mite etwa nimmt nicht nur die Einträge entgegen, sondern sagt einem auch sofort, was es angelegt hat – so kann man Fehler gleich korrigieren. Schicke ich dagegen was per twitter oder email an rtm, muß ich mich auf das verlassen, was dort ankommt.
Bestimmt werden eyecandy-süchtige Mausschubser solche Interfaces eher nicht nutzen. Sie sind wohl eher etwas für die produktivitätsversessene Codeschubserin, die sich freut, wenn sie nicht noch ein zusätzliches Programm oder firefox-plugin braucht, sondern etwas per jabber, twitter oder so erledigen kann, also über einen Dienst, den sie eh schon nutzt. Und nostalgische Geeks können sogar sogar ihr Blog mit einem Command Line Interface ausstatten, das WordPress CLI Theme (gefunden auf t.geekheim.de) macht’s möglich.
Ich sehe schon kommen, daß die legendäre vi-Referenz-Tasse als Geschwister vielleicht die ubiquity-Referenz-Tasse bekommt – die dann aber schnell veraltet, weil ja jeder seine eigenen ubiquity-kommandos schreiben kann – oder die mite-Referenz-Tasse (hey, mite-Entwickler: wäre das nicht cooles Merchandising?). Wobei die custom made Ubiquity-Referenz-Tasse, auf die man sich seine Lieblingsbefehle drucken lassen kann, sicher auch ein nettes Gadget wäre.
Aber mal im Ernst: Was haltet Ihr von Sprachbefehlen als Interface außerhalb der shell? Ich leier gleich mal eine Umfrage dazu an, Ihr könnt Euren Senf natürlich auch gerne in den Kommentaren hinterlassen 🙂