I’ve gotten weirdly obsessed with command line interfaces (CLIs) lately. I’ve always liked the speed and precision of them, and I have a strange love affair with plain text (markdown 4 life, yo…).
In the last couple days, I wrote a CLI for Staffbase user management. There’s a video below, if you’re interested. It’s just kind of a POC (meaning, a solution in search of a problem…), but it’s got me thinking about CLIs and how they relate to AI, from a user interface perspective.
(Also, I watched the original “Tron” for some reason the other day. Turns out there were lots of command lines in 1982. Don’t get me started on the philosophical implications of text being converted into anthropomorphic homunculi inside the machine that sort of resemble how we perceive LLMs…)
With the current state of AI, we’ve almost reverted to a CLI orientation. We type, something types back, we type again, etc. The only difference is that the syntax is more relaxed and the capabilities are far more vast. But the type/reply model is still there.
And we eventually fall into patterns – at least I did. When I want a word defined, I type “define [word]”. This is awfully similar to the command/argument model of a CLI. When I get coding error, and the conversation has context to what I’m doing, I just type “error [paste the error text].”
Browsers did the same thing: the address bar is another CLI. In some browser I used (Firefox?), I would type “!w [term]” to have it just pass the search to Wikipedia. Decades back, I remember being amazed at being able to type “showtimes sioux falls” into Google and get back movie listings. That’s basically a CLI.
How long until we wear “channels” into AI engines by using CLI-ish shorthand so much that it comes to expect that, and we all kind of accidentally, collectively define a syntax for common operations just from using them so much?
The Grand Canyon represents millions of years of erosion – the Earth eventually adapted to the incessant “usage patterns” of water. Will our usage of AI eventually “erode” our way to some common input language? What will that look like?
And, in the end, are we just walking in a big circle back to the command line?