Web applications are becoming increasingly common. Due a number of a factors such as the proliferation of high-speed broadband, more capable browsers and better standards, it's easier than ever to make software that resides on the web. And easier can also mean cheaper... depending how much your developer likes you, of course :)
When I mention web applications, you'd probably think of something like Google Documents and Spreadsheets first. The most common web apps are those that replace existing desktop apps — generic software that everyone can use. But custom software is making its way onto the web as well.
I work with many small to medium businesses who have commissioned their own custom web apps. There are a couple of reasons why they can, and should. Let me enlighten you:
Ease of use
Web applications are constrained by their platform — they run within a web browser. But this constraint has many benefits. One of the major benefits is that users become accustomed to the interface far quicker. Most users are familiar with the web already, and have probably used web applications without even realising — Hotmail, anyone? And because a web app is limited to the set of controls a browser provides, there is a limit to how much it can do differently. Most web apps can be reduced to lists and forms — how different can they be?
The flip side to this constraint is that web browsers provide a far richer set of tools to style a page than desktop applications can provide. Desktop apps are constrained by the operating system. Consequently, the majority of custom apps come out looking like this:
Attractive. In all fairness though, there's only so much you can do with MS Access.
But a web application is more likely to look (something) like this:
Coghead's custom web application interface. Prettier.
With a web app, users are more likely to be able to pick up the gist without being overwhelmed.
Accessible from anywhere
When you can access your software by typing a web address into Firefox, there's much less to worry about. The application never needs to be installed — you needn't worry about what version of Windows your end-user is running, or even if it's Windows at all. So if there's a new update to the software, it gets applied remotely — nothing to download, the next time a user logs in they're using the latest version. There is only ever one copy of your application, so it's always up to date.
And of course a user can access the application from anywhere — all you need is a computer with a browser and an Internet connection.
Another major benefit is a centralised database. If you want to share data between locations, the easiest way is to keep the data all in one place and let users access it through the browser. Downer EDI Works chose this approach for their lab testing software, which means they can run national reports with a minimum of fuss.
Really, it's no more expensive to develop a web application than it is to develop a desktop application, and don't let anyone tell you otherwise.
I use open source technologies, which among other things means I don't have to pay licensing fees for the programming software I use, the database I use, or the web server I host on. The costs of developing are greatly reduced, so you only pay for important things, like my time. :)
There is an ongoing cost in terms of hosting and licensing, but the per-user license may not apply, as there's no software to install. And it's a lot easier to scale a web application — if more people need to use it, just set them up an account.
There are always some negatives, but to me these seem relatively minor:
- Your data isn't with you, it's on a server somewhere - it's probably more secure than existing on hundreds of employees' computers, though.
- You need an Internet connection for access — if you're in the office, this isn't a big deal. If you really need to get a report off your laptop, and you're driving through the middle of nowhere, this could be a problem.
- Speed issues — if you have dialup, a web app is probably not a good idea. Data needs to be downloaded to your computer, so using the application is not instantaneous like a program installed on your computer.
- Ongoing costs — you can't avoid paying hosting costs every year. If one of your employees knocked something up in Access though, then there's probably only that one off cost.
Web apps are the future (it's my job to say so)
More and more businesses are moving their operations online, and desktop applications are increasingly becoming superceded by more attractive, user-friendly, location-independent web applications. If you're in the market for some custom software, you have nothing to lose.To top