📘 A Small Matter of Programming: Perspectives on End User Computing
Back in the ’90s, people were already doing what we’re more or less trying to do now at Fibery. Unfortunately, the arrival of the internet practically froze all progress in the field of no-code solutions (tools where users solve their own problems by creating custom apps—think Excel, AutoCAD, etc.).
Almost every chapter in the book is excellent. In particular, you can find answers to questions like:
Why are voice interfaces unlikely to become mainstream?
Because for many tasks, they’re simply too slow.
Why shouldn’t we underestimate the intelligence of users?
Most people are focused on solving a specific problem in their own domain. Programming, as an intellectual game, doesn’t interest them at all. But many still manage to do surprisingly complex things with their tools—building incredible spreadsheets full of formulas or writing macros.
Why are general-purpose languages bad for end users?
Because the learning curve is too steep, and they’re too far removed from the user’s actual domain. Advanced users need task-specific languages—in other words, DSLs.
What are the possible approaches to creating applications?
Visual programming, form-based programming, programming by modifying examples, automatic app generation. And why none of these approaches really work on their own—because only a healthy mix of different techniques can deliver the right level of abstraction for different problems.
Why did HyperCard (long ago) and Eve (more recently) fail?
Because they were too generic as app development environments, which created a high barrier for curious end users. And programmers had no interest in them at all—they already had IDEs and Java.
For anyone building no-code platforms, this is a fascinating book, full of examples and deep insights. I found it especially interesting to realize how much of what we’re doing at Fibery mirrors the authors’ ideas—reinventing wheels from 25 years ago. But what can you do? On the web, we’re forced to invent those wheels all over again…