Coleman McCormick

Conversational Interfaces

May 12, 2025 • #

Julian Lehr wrote an interesting post recently on the problems with conversational interfaces, with the fitting title “The case against conversational interfaces”. Here’s Julian:

We keep telling ourselves that previous voice interfaces like Alexa or Siri didn’t succeed because the underlying AI wasn’t smart enough, but that’s only half of the story. The core problem was never the quality of the output function, but the inconvenience of the input function: A natural language prompt like “Hey Google, what’s the weather in San Francisco today?” just takes 10x longer than simply tapping the weather app on your homescreen.

Voice works so well in human-to-human communication because it’s enormously flexible on both ends — for speaker and listener. Through speech we can both communicate and understand just about any idea using the same framework of 26 letters and a couple thousand words.

The speaker can walk up to anyone fluent in the language and fairly effectively communicate just about anything — commands, requests, thoughts, ideas, emotions — and have the listener comprehend.

But conversation is slow. The “bitrate” for conversational speech is peanuts compared to what you can do with hand signals or ideograms or jpegs. A set of hand signals could convey a message much faster, but at the expense of loss of range, and easier misinterpretation. Spoken language trades bandwidth and information density for flexibility, nuance, and error tolerance. All major utilities when talking with a stranger, but not with our computers.

We keep chasing conversational interfaces in computing because of ease-of-access and the promise of flexibility. But in commanding the computer, the loss of compression, low bandwidth, and ambiguity are annoyances rather than assets. When we have a conversation with a clerk at the store, these are features. When it’s with our computers, they feel like bugs.

Julian goes on to talk about how we might think more creatively with fitting LLMs into this picture:

We spend too much time thinking about AI as a substitute (for interfaces, workflows, and jobs) and too little time about AI as a complement. Progress rarely follows a simple path of replacement. It unlocks new, previously unimaginable things rather than merely displacing what came before.

As AI seeps in everywhere, we need to think positive-sum in how it helps the human-computer interaction problem. It holds the potential to generate background threads of activity as we’re using our slow-but-flexible inputs like speech or typing: retrieving information and summarizing and performing interstitial actions while we’re in the middle of other tasks.

✦

Brain-Computer Interfaces

April 23, 2025 • #

When we think about brain-computer interfaces, why do we always jump to the chip-in-the-head? Or the wire dongle with an antenna behind our ear? The Larry Niven “wirehead”?

Maybe it’s just a bandwidth thing.

Aren’t our phones a low-bandwidth version of a BCI? Certainly phones and social media and other modern tech modify our brains in similar ways.

Or perhaps it’s both the high-bandwidth abilities enabling so much more combined with the idea that they’re uncontrollable in some way. A piece of hardware pinging electrical signals inside our heads that we can’t be consciously aware of. We don’t know what they’re doing, and “unplugging” doesn’t give the airgap of leaving your phone at home when going for a walk.

There’s probably also a visceral feeling it gives us of an inhuman piece of inorganic matter being embedded in our heads. And our heads are our “selves”. The brain barrier is a special one to us, even though it’s technically no different than another organ, in terms of its make-up.

✦

Essay Architecture

April 18, 2025 • #

I just watched this excellent interview with Michael Dean on the How I Write podcast.

Michael is an architect and writer, and his writing project is fascinating.

He’s built a framework for thinking about writing that adapts Christopher Alexander’s concept of pattern languages to writing.

If you’re unfamiliar, Alexander created a way of thinking about design and functionality that gave us a modular, nested framework for how to build spaces — from whole cities down to features within rooms. A “pattern” is a loose and modifiable guideline for how a component of a system should work. More defined than a rule-of-thumb, but less rigid than a rule. So patterns can be refined and adjusted to adapt to different settings.

A diagram of the pattern language framework for writing

Thinking about writing this way is interesting. Language has similarities to other complex systems: letters, words, sentences, phrases, paragraphs, stories, narratives. It’s made of modular components that nest together in a hierarchy, where ideas (“wholes”) emerge from the interactions between parts, even at different levels in the hierarchy.

Michael’s system gets more abstract than the simple physical form of the words and sentences, into things like voice and tone, cohesion, motifs, stakes, rhythm, and repetition.

Need to spend some more time with these ideas.

✦

Exploiting Locality

April 11, 2025 • #

I recently wrote about the tendency of creators to keep messy versus clean workspaces.

While sometimes the mess is a certifiable inefficient disaster resulting from laziness, the “organized chaoos” messy space acts like a mental buffer.

Here’s computer scientist Jim Gray on the purpose of buffering in a programming context, from his book Transaction Processing:

The main idea behind buffering is to exploit locality. Everybody employs it without even thinking about it. A desk should serve as a buffer of the things one needs to perform the current tasks.

Keeping things “in the buffer” redounds to productivity (and ideally, creativity). If something is closer at hand, it lowers the transaction costs of retrieval.

Memorization works this way, too. People question the benefits of rote memorization in school, but this is a useful metaphor for understanding its value. Memorizing reusable data keeps it “in RAM” for faster retrieval.

Faster retrieval reduces friction, which means faster feedback loops, faster learning.

✦

The Gradient of User Value

April 10, 2025 • #

Saw this from John Carmack today on X:

Feedback beats planning.

My plea at Meta was “No grand plans, follow the gradient of user value”.

I love this. If you just keep persistently pushing up the gradient toward more value, it’s winning in the long term. Durable and sustainable success is that which happens gradually.

This reminds of a conversation I was just having earlier today about Fulcrum and our positive net retention. Our product fit was good enough that no one ever left. That didn’t mean infinite growth or hockey-stick revenue, but it created a durable foundation from which to grow gradually.

Gradient of value

With the bottom-up adoption model, the continuous shipping of new features, and modest evolution of pricing and packaging with time, that combo enabled a gradual climb up the gradient.

You don’t always need that comprehensive 5-year strategy doc or holistic product redesign or earth-shaking press release. You just need that next nugget of feedback on the adjacent missing links in the value chain that you can iterate toward solving.

Keep climbing the gradient, and success will follow.

✦

Past, Present, and Future

April 10, 2025 • #

Here’s a useful way of thinking about the domains of our three branches of government, from Yuval Levin’s American Covenant:

It is only a slight exaggeration to say that the Congress is expected to frame for the future, the president is expected to act in the present, and the courts are expected to assess the past. These boundaries are not perfectly clean, of course.

How distinct this delineation of roles is between the branches of government is up for debate, but this is a useful way to think about the Framers’ intention in designing the balanced separation of powers.

  • Legislators frame laws for the future
  • The president acts on them today
  • Judges compare what’s happening today and planned for tomorrow against precedents set in the past

We tend to run into trouble when any of the branches strays outside its primary domain.

When the executive is designing Big Plans for the future, or when the judiciary is issuing punishments in the present, or (in what I’d say is our worst problem today) the legislative isn’t doing anything, we get into fraught territory.

While each of these has its primary focus on a particular time horizon, they aren’t the sole arbiters of decision making with respect to their domain. Our complex array of checks allows each to assert influence over other areas. I just find this a useful compression of the general model of the system.

✦

Dana Gioia on Writing

March 3, 2025 • #

This is a phenomenal extended (3 hour!) interview with Dana Gioia on his background, poetry, his writing process, and the habits he’s curated that make him into a prolific and interesting writer.

✦
✦

Also check out my newsletter, Res Extensa: