The letter S in a light blue, stylized speech bubble followed by SpeakBits
SpeakBitsThe letter S in a light blue, stylized speech bubble followed by SpeakBits
Trending
Top
New
Controversial
Search
Groups

Enjoying SpeakBits?

Support the development of it by donating to Patreon or Ko-Fi.
About
Rules
Terms
Privacy
EULA
Cookies
Blog
Have feedback? We'd love to hear it!

Malleable software in the age of LLMs

geoffreylitt.com
submitted
a year ago
bykaiserseahorsetoprogramming

Summary

All computer users may soon have the ability to author small bits of code. What structural changes does this imply for the production and distribution of software? It’s been a wild few weeks for large language models. OpenAI released GPT-4, which shows impressive gains on a variety of capabilities including coding.

In this series of posts, I’ll explore the potential changes LLMs might enable in the creation and distribution of software. I‘ll start with a basic question: how will user interaction models evolve in the LLM era. Then I”ll discuss hybrid interaction models where LLMs help us construct UIs. And at the end, we’ve arrived at a point in the design space I find intriguing: open-ended computational media, directly learnable and moldable by users.

Programming bottlenecks are less of a limiting factor with LLMs. Turning a natural language specification into web scraping code or a little spreadsheet formula is exactly the kind of code synthesis that current LLMs can already achieve. We can imagine specific, targeted roles for LLMs that help empower users to build software.

In general, GPT-4 feels like a junior developer who is very fast at typing and knows a lot of libraries, but is careless and easily confused. It’s not hard to find impressive examples. In my experience, G PT-4 gets confused when solving relatively simple algorithms problems.

Chat is an essentially limited interaction mode, regardless of the quality of the bot. Chat will never feel like driving a car, no matter how good the bot is. When we use a good tool, we become one with the tool in a subconscious way. We can enter a flow state, apply muscle memory, achieve fine control.

If you want to get some metrics about your business, maybe a sales forecast, how do you do it? One approach is to ask your skilled team of business analysts. Another is to use a self-serve analytics platform where you can click around in some dashboards. When this works, it’s way faster and cheaper than bothering the analysts.

In a spreadsheet, you can edit numbers in the spreadsheet, but you can also edit formulas, which edits the tool. A spreadsheet isn’t just an “app” focused on a specific task; it’s closer to a general computational medium. Most teams have a mix of domain experts and technical experts, who work together to put together a spreadsheet.

Buzz adds small, more advanced pieces of code to Betty’s original work. Non-programmers can be responsible for most of the work of a spreadsheet. This is an important shift in the role of the ‘local developers’ who provide another outer layer of iteration.

LLMs seem to offer a promising way to more flexibly turn natural language into code. What kinds of powerful computational media might be a good fit for this new situation? Demos of on-the-fly UI Update 3/31: I found a few neat demos on Twitter from people exploring ideas in this space.

 desktop computer breastplate aegis egis comic book screen CRT screen-0
16

2 Comments

2
practicalmagic
a year ago
It would be crazy to have software that one considers malleable and have everything tailored to what they need
1
kaiserseahorseOP
a year ago
I personally feel that's the goal as a developer, something that tailors itself to a user to get the job done