My inspiration for this thought happened somewhere while listening to this podcast about malleable software with Geoffrey Litt.
He brought up one unique insight from the HCI research about Excel. Excel (& VisiCalc etc.) and its influence on society serves as a great analogy provider for the current LLM revolution. Excel enabled non-programmers to write algorithms. But not only that, it enabled non-technical people to customize the software to their needs. For the first time, it was easy to manipulate a computer to work in the workflow that you need. And everyone can set it up. This simplicity to tailor it and use its freedom also yields the same issues as LLM programming. They disregard a lot of technical and artistic prerequisites and end up in a local optimum. For LLMs, this is sometimes called AI Slop. For Excel this is how all corporations are run.
And this brings us to the first great acknowledgement: For a lot of use cases it is okay to be a little bit shitty. It is pareto efficient maybe? Computers amplify human capability tremendously. When people can customize how they work—even with limited technical knowledge—the resulting creativity and independence unleashed across humanity is beyond imagination. The technical community should support such an inevitable move and yes, we sometimes need to clean up the shiny trash like with Excel files that run big companies :)
The second interesting point is the distribution of malleable software. Everyone working in a typical office needs to know the basics of Excel and can edit them. However every company also has its Excel expert. They can do the extraordinary tasks that might require a deeper technical expertise. They are usually not an educated engineer, they are self-taught and have no affiliation to Microsoft. But they are necessary for a lot of companies to have Excel as a core fabric. Given how we use LLMs these days and how customizable software in the future will change, it might be that regular people need to be able to customize the UI. However the expert in the company can tweak minor changes in the business model or the logic. However all companies need to learn how to enable the technically inclined people to do the stuff they want.
When we build customizable software, we need to educate. As I am sure, most software will become more and more user customizable, software developers will be confronted to educate users about a lot of unintuitive constraints and technical details that need to be easy for non-cs people. We need to enable the every-day nerd.
In the end, we’ll adapt to whatever interface pattern makes sense to the human brain—even if it’s technically suboptimal. File systems won out over Bill Gates’ preferred SQL databases, desktop environments beat command lines for most users, and Excel became the world’s most popular programming language. The pattern repeats: accessibility trumps perfection.