noUI()

// Written by // // Read it in about 5 minutes // RE: AI

This post is brought to you by Clerk. Add secure, native iOS authentication in minutes with Clerk’s pre-built SwiftUI components.

Lately, I’ve been thinking a lot about the concept of a user interface. Like, weirdo, existential stuff. Why did we even make them in the first place?

Remember the good old days of Microsoft DOS? Just an inviting plain terminal, complete with a blinking green cursor inviting you to press enter, and a list of options.

Microsoft(R) MS-DOS Version 6.22 (C) Copyright Microsoft Corp 1981-1994.   C:\>NOUI   SWIFTJECTIVE-C AGENT HARNESS ----------------------------------------   Select option:

I guess the idea of a user interface is to help people get something done, perform a certain task, accomplish whatever it is they have in mind. And the easiest way to do that, is…well, visually.

Though recently, I’ve started to have a weird realization that maybe the best UI in this world of agents is sometimes… not having one at all. In fact, I dictated this post all in Codex’s mac app (yes, I know — which is a UI! Hang with me though):

A screenshot of writing a blog post in Codex for Mac.

Here are few things I would’ve made an admin dashboard, custom interface, or any interface at all for about a year ago:

  1. Customizing a server driven “Event” in a bespoke upcoming app.
  2. Reviewing feature requests for Elite Hoops.
  3. Managing blog posts for the company blog at Superwall.

Of course, in all three instances, I realized each of these things are agent driven processes. So why bother? I just tell the agent what I need. The only UI, at any stage, is the harness running the agent.

So I’m curious — is this a prominent direction the world is headed? I don’t think it’ll go so far to where we get to a place of “An ad-hoc agent and your prompt is the app for the given task”, as some people tend to think. I am, naturally, using an agent, without an extra UI in the target “thing” I’m working on, to produce some sort of output for an existing app.

Buuuuuut, it is also a little bit more in that direction than I would’ve thought. For me, a prompt can have the verisimilitude of an app: it’s a place to express intent, then I make revisions, and finally end up with the thing I wanted. Or maybe DOS had it right all along?

Until next time ✌️

···

Spot an issue, anything to add?

Reach Out.