If you still tend to think of games, be they analogue or digital, as traditional distractions and playthings, then you've not been paying attention to how they've completely transformed daily life. Everywhere you look, software is vying for your attention, and the ones that usually get it are those that borrow some of the simplest, yet most fundamental, aspects of game design. There's a reason why some people can't stop playing Candy Crush and others yearn to dive back into the latest big fantasy world when knocking off from work: these apps are designed that way. So, how can you incorporate some of these lessons into making your software more desirable to use?
The good thing is that you've likely already heard of some of the ways to do this, especially if you're familiar with the term "Gamification". But the truth is that not every piece of software, or, by extension, every type of business, lends itself to this philosophy. Not everything needs to be a progress bar or loyalty program, but there are simple tricks in the way those systems are visually and mechanically designed to entice users to continue using the product. And those tools can be applied to pretty much any piece of software you develop.
Throughout my years developing both video games and corporate software, I've attempted to combine the two types of thinking into one. Not just because it makes software design far more interesting and challenging, but also because trying to understand how a user derives fun out of any piece of software is often how good software gets developed. There's nothing more frustrating than using a software tool that is both a chore and boring to use, and it's likely easy to think of programs that are the exact opposite. These four tips will hopefully help you fall into the latter category and help make your users happy with the time they're spending with your software.
Interactive Learning
There is nothing worse than being greeted with a long, word-heavy tutorial when starting with a new piece of software. Video games have known this for so long that it's been decades since they were shipped with printed instruction manuals. Instead, today, they incorporate learning as part of their interactive introduction. Tutorials and prologues have become one and the same in games, introducing players to crucial mechanics and the means to perform them within the confines of playing the game itself. It doesn't feel like required learning because it's interactive and fun.
Getting started with a new piece of software, from a simple app to a powerful accounting website (like Syft) should be the same. You might be enticed to run your new user through everything that your software can offer, but it will certainly be overwhelming (and incredibly off-putting) to force the users to sit through pages of tooltips and hints to get there. Even guided tours can be too long for their own good, ripping away control from the user until they've hit "next" on every tutorial screen that pops up.
Instead, the briefest of introductions should greet your new users, and from there learning should be interactive and dynamic.
Pro tip 💡: Your software should be designed in a way that intelligently detects when a user is accessing a feature for the first time, prompting only then with any prerequisite tips that they can access optionally.
Although it might be tempting, users should never be forced through this process– it's their software to use – and, even when opted into, your tutorials should be brief and interactive, guiding the users through the steps of the process rather than just showing them what to do through text or a video.
Accentuate Progress
There are few things better than the satisfying dopamine hit of knowing you're making progress. In games, this is crucial to keeping players engaged. Whether it's driving a story forward or making a player feel more powerful, the constant affirmation that you're progressing is part of the reason why you struggle to stop playing. It's why people boast about what level they've reached in a game like Candy Crush, or take pride in completing a particularly challenging game, like one designed by From Software. It's the satisfaction attributed to knowing your time was well spent.
That should be true for most applications being designed for users, although not always to the same extent as in games. Countless companies have adopted gamification to reward consistent use of their products, through loyalty programs and cash-back rewards that incentivize you to open their app or website on a frequent basis. It's smart design, because, in doing so, you're consistently being exposed to new offers or changes that the company has introduced, further engaging you with their product.
But not every piece of software needs to feel intrusive. Instead, small actions can produce the same effect. Something as simple as animated graphs will entice a user more than ones that are static, especially if they represent something important like the growth of a particular investment or the performance of a company.
Being reminded of progress over time not only motivates you to perform better in the future, but also forms a connection between you and the platform that is providing that context. You're far more likely to continue using software that affirms your belief in the time you're investing into it as opposed to one that doesn't.
A Clear Design Language
If there's one aspect of games that can be extremely overwhelming, it's the introduction of a whole host of new information with which you need to quickly become familiar. As such, it's common for games to employ intelligently designed iconography and color schemes to turn each of their frames into a visual language: one simple enough that users can quickly learn and use to discern important information.
Enemy health bars, for example, are generally styled in red, while ones communicating your own health are typically green. This small design lets you quickly determine which type of health information you're currently analyzing, saving you the time of reading a player's name to determine if they're friend or foe.
This is a small and trivial example, but it shows how powerful small style changes can be.
A website with a clear focus on the visual style or important buttons, such as the "Buy Now" on Amazon or "Tweet" on Twitter, creates a visual language that users become familiar with over time. This empowers them to navigate your website with ease while also identifying similar feature behavior in similarly styled elements. It's not easy to create a strong visual language for your users, but it’s an investment that may well be crucial to website success.
Giving Users Just Enough Control
When it comes to video games, control is everything. There's nothing more frustrating than having a character not respond to your input as expected or being limited unreasonably in what actions they can perform. With any software, the user experience is important to creating a pleasing experience, but it's important to also practice some restraint.
Software always has limitations in terms of how you can interact with it. Many developers hide these limitations behind smart validation checks and designs that don't overtly signal to a user that they're trying to do something they aren't allowed to. Your website should give a user the flexibility to edit things like layouts, smaller design elements (font sizes, colors for accessibility reasons, and more), but also constrain these changes to keep a cohesive and logical flow to the overall design.
The truth is that users know what they want to an extent, and often too many options can be just as frustrating as too few.
It's also important that your customization options don't interfere with your overall brand identity as that can be entirely lost when giving too many options for users to change. An example of this is letting users change a website's font, which can drastically change the overall look of your site. Ensure that your default one is legible and pleasing, and rather make a site-wide change if users disagree with your choice as opposed to leaving them with that responsibility.
These are just a couple of ways you can learn from your next engrossing gaming experience and utilize its design lesson in your own software design. It's a market that is constantly iterating in exciting ways, giving you an infinite resource to continually source ideas from and use to enhance software that you hope people will use every day.
About the author
Alessandro Barbosa is an experienced software developer working at Syft Analytics. He has work experience in both video game development and enterprise software architecture. He's also a passionate writer involved in video game journalism in a freelance capacity, with nearly a decade experience.