Ten Golden Principles for a Successful Web App

For the past few years we have seen a growing movement of applications - from traditional desktop applications (like Microsoft Word and Excel) to full-blown applications that "live" on the Web (like Google Docs). Now companies can easily create their applications in the cloud and deploy them to millions of users.

However, due to some of the inherent characteristics of the Web, many Web apps are mediocre at best, or downright terrible.

Here are 10 principles for creating a Web app for the best chances of success:

1. Useful-This one is a no-brainer: give users value by making a useful app. That value can be anything, depending on your service: managing travel plans like TripIt does, connecting people like Facebook or finding the best seat on a plane like Seatguru. Whatever the value, it will be the driving force to get users to come back to your app and maybe even pay for it.

2. Fast - Your app must be lightning fast. Users are accustomed to getting immediate responses with zero latency. One of the main reasons that native iPhone apps are so popular is because the response is immediate.

If you have heavy content or functionality that slows your app, at least give the illusion that your app is fast by displaying something on screen as soon as possible. Entertain users at each step. If you can enable some of the functionality while the rest loads in the background, even better.

3. Modern and Sleek - How many successful Web apps do you know that looked exactly the same five years ago as they do today? You could have the best application in the world but if the graphics look old, users will think that it's out of date. Look at similar apps in your space and see what design styles they are using; it could be small things like adding shading or rounded corners to buttons and text boxes or complete, frequent redesigns. Simple elements can make a big difference, if used correctly. Notice how many iPhone apps change their icon, just a bit, when they release a new version. The updated icon gives users a feeling that they're getting something shiny and new, even if the new version is just some minor bug fixes.

4. Surprise/overdeliver - The first time I received a voicemail in my Google Voice account I was pleased to see that the message was also transcribed so that I could read it by email. Google took a standard service the extra mile to surprise and impress their users. Even my new Canon digital camera has a smile detection setting that I would have never imagined (it takes a picture only when the people in the frame are smiling). By giving users more than they expect, you create a positive overall experience with your service and give users the feeling that you are thinking about them and working hard to give them whatever they need - and maybe what they don't yet know they need.

5. Easy to use - Your app should be as easy to use as possible. As Arun Gupta put it: "The ease of use of your website needs to be at least inversely proportional to the amount of value you are adding. If your service is providing marginal benefit, then it better be extremely easy to use. Conversely, if you are providing something the user cannot live without, you can get away with making them jump through some hoops."

Users are bombarded by information and don't have the patience to read a lot of content, go through a long sign-up process or learn how your system works. If your app is not easy to use and requires a steep learning curve, users will quickly lose interest and move on. Make sure your users are able to experience the value of your app with as few clicks as possible. Advanced functionality can come later for those users motivated to dive in and get more.

6. Notifications - It doesn't matter whether it's an email, a Chrome extension that displays a badge or an iPhone app with push notifications - your app should reach out to users and remind them, Hey, cool stuff is going on here, don't forget about me. Quora, for example, lets users "follow" a question and pings them when somebody adds an answer. The Groupon Browser App notifies users when a new deal is available in their area. These notifications ensure that users don't miss interesting items and further engages them with the service. The trick is in finding the right mechanism and frequency to make notifications valuable, not intrusive.

7. Fun - Businesses of all types recognize that fun equals engagement. Flickr is a great example of taking a simple photo-sharing service and making it fun. MailChimp is in the boring email business but when you use their service you find email fun to use.

Adding even a little fun or whimsy to your app can add greatly to the overall experience. Fun can be communicated in many ways - from the voice of your application (the text and tone used throughout the app), to cartoons, hidden items, fun colors or anything that adds an element of surprise to the experience.

8. Great service/experience - We all have stories about great service we received from a clerk in a store or phone representatives who went out of their way to help us. Those experiences always reflect positively on the brand. Giving users great service makes them happy; which drives them back to your app and gets them to tell their friends about it. Zappos is the best at this and it's an integral part of their company DNA. Great service is especially important when you want users to pay for your service.

9. Listen to users and constantly update - The beauty of the Web is that you don't have to wait for long release cycles and deployment. You can release updates, collect feedback and pivot accordingly. Make changes, and the next time users open your app they get the latest version. Just keep listening and updating. Once you have more resources, you can even deploy A/B testing to optimize and customize certain experiences in your service for different segments.

Some of the tools you can use to monitor what people are saying about your brand are Google Alerts, Tweet-Beep.com and TweetDeck. You might also consider adding a feedback/comment feature to your app that allows users to make suggestions.

10. Monetize your app - Even though Web apps are usually free, you still need to make a living. If your app is costing you money, you won't be able to continue giving great service to your users. There are numerous established and emerging models for generating revenue that can work for your business. Consider a freemium subscription model (like Flickr's model), advertising, donations, SMS, market intelligence, affiliate marketing, selling virtual goods/currency, a combination of any of those or any crazy idea you may come up with. Whatever works for your users is legit.

Whether your Web app is a game played by millions or a niche service intended for a small audience, keeping the 10 golden principles in mind can help you create an app that is valuable and successful.

About the Author: Guy Malachi has been developing Web apps for more than 11 years. He has served in a variety of roles at Conduit since it was founded, most recently as Head of Product. In his new role as Conduit's Chief Geek, he is responsible for growing Conduit's developer community. https://twitter.com/guy