Software takes itself too seriously. It's time to have some fun. For far too long, software has been designed and created around one single metric - revenue. And often, increasing revenue creates negative behaviour for us - the humans. Designs are created to maximize clicks and to be more addictive than nicotine. We are constantly bombarded with notifications and alerts, and we are forced to make decisions in a split second. On top of this, building software has never been more complex. Although we have a wonderful array of technology at our disposal to scale an application to millions of people, it's also incredibly complex to build and maintain.
We cannot abandon these metrics. Ultimately, it keeps the world turning. But we should introduce some "whimsey".
| whimsical wim-zi-kal | definition: playfully quaint or fanciful behaviour or humour.
We should be able to build software that is fun to use, that makes us smile, and that makes us feel good about ourselves.
Enter Whimsical Software.
The Whimsical Software Manifesto
- Be playful. Discard the boring blues and greys. Use bright colours, delightful interactions, playful sounds and animations. Software should be like a playground, not a prison. In some cases, people perhaps spend more time using your software than they do with their family. So, it should be an enjoyable place that allows them to do their job.
- Be kind. Most revenue generation from software arises from hoovering up masses of data. Whimsical software should be kind, capturing only what data is needed to deliver a better experience. It should be kind to the environment, running on efficient architectures (e.g. serverless) and using minimal resources. And it should encourage us get the task done, and then log off.
- Be helpful. How many times have you wondered what an error message was, how a particular edge case function could be done or how to use a particular feature? Whimsical software should be helpful, providing guidance when needed. And automating as much as possible.
Whimsical software is not a particular aesthetic or technology. It's a way of building tools to empower people, not to enslave them. You could have an old school terminal interface, or a modern web application. It doesn't matter. What matters is that it's fun to use, and that it makes you smile.