Fred Wilson’s 10 Golden Principles of a Great Web App
What makes a great web app?
You know it when you see it, its function is clear, and it makes intuitive sense to the users. It’s beautiful, and it runs smoothly with few bugs.
But plenty of apps are built that fail to meet these requirements, and they land quickly in the web app graveyard, or never get the love and attention they need from developers to make things right.
That’s why we turn to experts like Fred Wilson, whose company invests in apps that have a certain set of characteristics. These ten points, when put together, make for a great product, that people want to use. At the Future of Web Apps Miami conference in 2010, he laid out these principle. We recently ran across them again, and found them just as meaningful now as three years ago.
You can watch the entire presentation on Vimeo here.
It’s first, and for a reason. It’s the most important feature of a great web app. If you application is slow, people won’t use it. Yes, your power-user base will be more patient. But mainstream, personal users have no patience for slow apps, and will abandon them in favor of faster, more reliable apps. There is empirical evidence pointing to a direct correlation between speed and an app’s user base. Evidence shows when you app gets bogged down and slows, user growth also slows.
A great app provides a service that is instantly useful to the user. If the user has to spend an hour configuring the service, setting it up, importing contacts, many will grow weary and quit before they’ve even begun. Provide instant utility first. Then, go from there. Apps that pull information and connect with other apps have been highly successful in getting users set up quickly, and providing an app experience that is exciting right when they first start.
Consider this: when Google first launched Google Video, around the same time as YouTube, you could upload a video, but then a message appeared informing you to return to that page in about a week to see your upload and get your embed code. YouTube nestled itself right into this vacuum, providing users with instant uploads and embed codes. We know who won that one. People like instant.
Today, software is media. It is consumed just the same way as other forms of entertainment, particularly consumer software. People will approach your product the same way they approach a magazine, television show, or newspaper and, like the New York Times or The Walking Dead, your software needs to have a particular voice, a perspective, a unique feel. Successful web apps have a personality. The Twitter Fail Whale is a distinctive way to present the crowded server problem. It’s a bland problem, but it is presented with clever attitude.
Less is More
This is especially early on in the lifetime of your app. You can always grow, expand on the basic functions of your software. Facebook is highly complex now, but was a very simple service when it launched. Wilson’s company invested in Delicious, which had a very simple function, but the potential for what you could eventually do was a powerful draw. There is also merit in services that do only little thing — status updates, for example — but is enticing enough that users may want to do that one thing very often. This also encourages people to get their friends on this app.
Make it possible for others to build on top of or connect to, your web application. Allow people to add value, in some way, to your app. That means APIs, that means read-write APIs. When people can add value to your application, they are effectively adding energy to it, bringing more users to it, and bringing more richness and more data to your application as a whole. It’s all good stuff. You want people invested in what you deliver, and when they have contributed, that relationship is natural.
This reflects in a lot of ways to the previous quality. You want third party developers to infuse your application with energy. You also want your app to be infused with your users’ energy: the more data, personality, and interaction your users pour into your app, the more ownership they feel of it. They become far more likely to advocate for it, and become your marketing force. A good app sells itself. It’s simple things: allow people to add an avatar, change their background, contribute personal data, and give feedback.
He uses this term here not for its regular meaning in development. Instead here, Wilson argues your entire application everything in it, should have a URL, and ideally, a very clean, comprehensible one. This allows people to remember your URL, and also makes it crawlable for search engines. Give the web deep access to your app.
Your little app is a needle in an SEO haystack. You have to understand the basics, and optimize for Google and social media. The product itself must be able to push itself into the web and social media structures. Make sure people can find your app among the masses.
The application cannot be busy on the page. A great web app utilizes its negative space — whether dark or light — and does not present too much functionality on any one page. It should be inviting, and clear, so people know exactly what yo do right away. The user experience should be simple and seamless. Make it make sense. The Tumblr home page is a simple pair of fields to log in: username and password.
The ability to play in an application is really important. The game dynamic is what you can use to get users to do what you want. Something like Weight Watchers is designed entirely with gamification. You establish goals, report against those goals, receive rewards, and share with others. This is the same approach you can take with your web app — this is what Foursquare is built around. Apps need to be playful for two reasons. First, users will have more fun using your application. Second, with gamification, you can create the incentives for the kind of behavior you want in your application.
The Other Principles
There are certainly a lot more traits that you could argue should be in this list. Wilson acknowledges a few (like privacy, brand, and ease of use) and also opens it up for the rest of us to contribute our own. Many programmers have voiced their own thoughts on the list. This is by no means the end-all list, but it definitely points to a lot of success stories, and has shaped the world of web apps development since 2010, when he gave this presentation.
Which would you say have become more or less important in the last few years? Agree or disagree with this list? Post your thoughts.