As the founder of a growing startup, I use an unusually high number of software products every day. Some of these products are critical to running our business, while others make me more productive. But out of all these products, there are only a few that I absolutely love using, even if they are more expensive than their alternatives — as compared to others that I wouldn’t mind replacing with a better, cheaper substitute.
So I tried to answer what makes the products I absolutely love different from the others that I still use but don’t care about a lot. I realized that all the products in the first category invariably have some bit of magic, while the others, remarkably, didn’t have any.
This post will explore what makes a product magical and replicate it in a product you are building yourself.
To understand what characterizes a magical product, let’s first define what magic is. This will help us put a framework on how we can think about our product.
Let’s take the example of the Hat-trick. It’s one of the most simple, classical magic tricks where the magician produces an object (traditionally a rabbit or a bouquet) out of an apparently empty top hat. What is the essence of this trick that makes it magical?
When you’re sitting in the crowd, and the magician performs this trick in front of you. The magician pulls a rabbit out of their hat. Assuming that you already don’t know how this trick works, since, well, it’s not really magic, you are amazed. "Whoa! How did that happen?!"
The essence of this magic trick is the following two parts:
- Preconception: When you came into the theater, your existing knowledge that you came in with didn’t allow for a rabbit to be pulled out of an arbitrary hat. That’s not how Physics works, after all. Reality doesn’t allow for objects to appear out of thin air. You’ve learned this from living your life in the real world so far.
- Stupefaction: At the beginning of the magic trick, you probably didn’t expect this to happen, assuming this is the first time you’re watching the trick. The magician didn’t announce that they are going to pull a rabbit out of the hat. They just did it.
If the above two properties — preconception and stupefaction, don’t hold valid for the trick, it won’t be a magic trick anymore.
A computer mouse! Yes, people like you and me who grew up with the mouse as the primary way of interacting with a computer probably never thought of the mouse as magical. But Andy Warhol did. The first time that the famous pop art icon used the mouse in the paint program on one of the first Macs, he exclaimed, "I drew a circle!". Magical, don’t you think? Preconception, as in Andy didn’t imagine something like that was possible in the physical world — and stupefaction when he could use something like that to create an actual circle on the screen.
I’ll take another example that’s easy to relate to. Superhuman, the popular email client. The first time I used the Send later feature, it was magical.
Preconception: I didn’t imagine that the software would interpret saying "tomorrow 10am in san francisco" correctly.
Stupefaction: It actually worked!
Magical product experiences, as opposed to purely aesthetic design mumbo-jumbo, don’t just delight users. They also simplify the product for them. This is worthy enough to chase because users prefer simple products that just work rather than complex products.
So, how do we build magical product experiences anyway?
When thinking about a new product feature, set aside technological constraints for a moment and first think about what the ideal end state looks like for the user. If you leave aside any technological constraints and solely focus on this, you’d end up with what your magic trick achieves.
The rabbit should appear from the hat.
In Superhuman’s example, the Send later feature's final destination is that the software should correctly guess the time in the correct timezone that the email should be sent at.
If you’re able to establish the destination well, you will fulfill stupefaction — the second part of our magic trick. The user will probably not expect this outcome from the product, even if they have a fair idea of the end goal.
Once the destination has been clearly defined, think about guiding the user to that destination via a path of least cognitive effort.
If a rabbit has to appear from the hat, the easiest way of making that happen is to, well, pull the rabbit out of the hat. The simplest way for the user to tell the software what time the email should be scheduled is to write it in plain English. What makes the Send later experience magical is that the user can write in half-complete phrases, and still, the software guesses the precise time and the timezone.
Conversely, think about a dropdown menu next to the text box to choose the timezone. While the destination is the same, the experience isn’t magical at all. The path to the destination is too complex.
Simplicity is magical.
Beware, for we’re talking about simplicity for the user — and not for implementation, which would invariably be more complex than usual if you’re optimizing for simplicity for the user.
A magical product experience simplifies things for the user but makes the technological implementation more complex by multiple orders of magnitude. A text box and dropdown would take far less time to implement than a full-blown natural-language processing engine that parses “tomorrow at 10am in san fran” to the correct time in the correct timezone based on the city’s name. (obligatory XKCD)