The 10 Keys to a Successful Web App
Join the DZone community and get the full member experience.Join For Free
Check out this 8-step guide to see how you can increase your productivity by skipping slow application redeploys and by implementing application profiling, as you code! Brought to you in partnership with ZeroTurnaround.
This is the most important feature, Wilson says. If your application is slow, most users will get frustrated and move on. Applications must be designed with speed in mind. This will help its utility become immediately clear. Tools like Pingdom can help you keep track of your web app's speed.
Unless you're the next Facebook or LinkedIn, no one is going to want to spend an hour trying to configure a service, enter data, and import contacts. Web applications should be friendly to social media sites like Facebook and Twitter, and they should allow users to import data from their existing social data stores. "These days, social media is as important as search" in matters of visibility, Wilson said.
Just like TV, Books, and Movies, Software is a form of media. Your app needs personality because a genuine, original personality can endear users to your app. Wilson says the cute "failwhale" on Twitter is a perfect example.
Less is More
'Start simple' is a good mantra for the web developer. Sure there are popular sites that have become a total mess (I'm looking at you, Facebook), but back in 2004 Facebook was simple too. Wilson's venture capital firm invested in Delicious because it was powerful, yet simple. It did one thing really really well. As long as your app does that, it can be successful.
Open Source is an important concept in the world of development. By making your application open to programming modifications, you give others the chance to build on your application and make it richer and more successful. Don't launch your app without a read/write API ready.
This principle is not about conveying your own personality (that was "Voice"). Instead "Personal" means you should facilitate the end user's desire to add their own personality into the mix. Let users customize liberally. This gives users the feeling of co-ownership: a belief that they also helped make this application great. Just don't let them have too much control, otherwise you'll have anarchy.
Twitter lists is a great example here. Anything that helps keep your application URLs clean and concise is worth implementing. This makes your app's namespace more memorable and portable. Wilson says that LinkedIn doesn't do a very good job in this area.
"A new Web app is a needle in a haystack," said Wilson. You don't need to a marketing professional, you just need to understand SEO (Search Engine Optimization) so that Google and the other major search engines can index your application and its content. It must also be discoverable by social media. For startups that are strapped for cash, "guerrilla" or viral marketing can be effective because it's powerful and authentic if done right.
An overly complicated or unintuitive page can smother your app in the cradle. The layout needs to be "clean" with plenty of empty space and large fonts. Wilson says Tumblr's login is a perfect example.
Finally, a web application must be engaging, and nothing is more engaging than good old fashioned fun. Wilson says your applications should have a "game dynamic" that can turn your app into a pleasant little diversion. "The ability to play in an application is really important," Wilson said. It will keep your users coming back for more.