Writing software on a human scale
The more I design software, the more I find myself wanting to create systems that operate on a human scale. Ultimately, software must work for people; not the other way around! To create a useful tool, the user’s desires must be the primary concern whenever possible. In the real world, technical hurdles and budget constraints sometimes force us to compromise. If the user’s ideal solution isn’t viable, the compromise must be just that–a compromise.
A solution should be crafted that finds the closest fit to the user’s ideal rather than the easiest for the developer. People want to ride Space Mountain, not the Mike Fink Keel Boats. Herding people where they don’t want to go may address overcrowding. But the rides exist for the riders, not the other way around.
In this blog, I’ll be tossing out thoughts about how to write software that operates on a human scale. Please post your own thoughts and comments. There are as many ways to solve software problems as there are users. The more conversation we get going, the more we’ll all benefit. And the more our users will benefit.
Incidentally, if you happen to be a great lover of Mike Fink Keel Boats, please accept my apology for my flippant disregard. Ride them to your heart’s content. That means one less person in front of me at Space Mountain.