What Makes a Good Web App?

I’ve been a web developer for about 10 years now, which aside from making me feel old in my mid-twenties, means I’ve put a lot of thought into developing websites and web applications. I’ve developed tons of sites, had a litany of ideas and side projects, and I’m a user with a sometimes too critical eye. I also review apps for the Appstorm network; in short, I have a few things I look for (or look to accomplish) when it comes to web apps and apps in general.

It’s About Idea & Execution

The first thing I want to say is that when coming up with an app (no matter the platform) is it can’t just be a good idea. You need to execute properly as well. I’ve heard developers say things like “I could have made Facebook [or Twitter or YouTube].” And maybe it’s true that they could have developed similar functionality. Hey, I have developed sites similar to Twitter and made a basic social network for sharing book reviews. But I didn’t develop Twitter or Facebook because of the execution. I didn’t know how to promote my app, there were probably some security flaws, and it definitely wasn’t built to handle a ton of traffic. Even if one of my sites back then did gain a lot of popularity, it would have failed. There are certain things I didn’t consider back in 2004, 2005, 2006 when creating a website because I didn’t have the experience. Here’s what I know now.

User Experience

This one seems like a no-brainer, but I’ve seen too many apps where the developers do not understand how people will use their app. This likely stems from the fact they themselves don’t use it. I’ve been guilty of it too. I make an app based on my assumptions, test for the cases I know will work, and deploy it. As developers, we need to work harder than that.

When you develop an app, try using it for a week like a normal user and take notes on your experience. You may be surprised at what you find; a lot of times we’ll program something one way, and it’s not all that user-friendly or intuitive. That will fast track an app to an untimely death.

Use Cases

To help define the flow of your app, create some use cases. That is, define a user of your site and the steps that user would take to do something. For example if I have a book swapping site, a user case would be “Logged in User.” They might swap a book by clicking “View books” then Selecting a Book, then Choosing a Book from their Library, then Proposing the Trade. Doing this for most of, or all of, your use cases will help you story board your app and give you a clear picture of the flow of information. This will dramatically improve the UX.

Look and Feel

Design is obviously another important part of a webapp. A poorly designed one can send users packing before they even try it out. The design of the app needs to project the message you’re trying to send to users who would use it.

Basecamp's landing page is clean and clear, like Basecamp itself.

The landing page is just as much a marketing tool as it is a log-in page. It should be inviting and there should be an obvious action to take (hopefully that action is “Sign Up”). Once the user has signed up, he or she should be able to start using the app immediately. Core functionality should not be hidden, nor should the interface overwhelm the user. Helpful hints or guides are usually welcomed at this point.

Basecamp encourages its users to explore a sample project.

WordPress offers helpful tips to new users.

The look and feel can go a long way in making a user feel comfortable enough to continue on.

Users!

Everything up until this point has focused on making the user feel comfortable while using a webapp. Users are the most important part of any application or website that you write; without them, a webapp is nothing. They are what make Facebook better than any other social network, Instagram the best photo sharing app, and WordPress the best blogging platform/CMS. If you can’t get people to use the app, you don’t have a good webapp, no matter how good you think it is. This was a lesson I learned the hard way.

Getting Users

Getting users is always a tough task. Gone are the days of “if you build it, they will come.” You need to promote, sell, and prove yourself. There should also be a need/want for it. Cloning an already existing and popular webapp doesn’t usually work because people are already on a platform and are reluctant to switch. That’s probably why Google+ hasn’t taken off. Building something unique that people will use might not be easy, but it works. The best thing to do is look at what you need; if there isn’t something that exists to fulfill your needs, try building it. I’m willing to bet it’s something other people would want too.

Final Thoughts

I think the moral of the story here is the number one thing that makes a good webapp is its users. Those are the people that will help make your app thrive through improvement, enlist more people to use it, and hopefully make the webapp take off. In order to get users a webapp needs to fulfill a need, be designed well, and be intuitive. That’s what I look for when I review apps, and that’s what I think about web developing my own.

Leave a Reply

Your email address will not be published. Required fields are marked *