Since this is likely to be the first question posed at the upcoming “Future of Web Applications” panel at TechEd NZ, I thought I’d do a bit of digging and discovered it’s not as clear as I perhaps thought.

Here’s a sample of what I found.

About.com define web applications in the context of browsers,

A web application is any application that uses a web browser as a client.

Back in 2000, Dave Winer took this further and defined a two different sorts of web applications,

Simply, there are two kinds of Web sites, those that behave like magazines, places where you read stuff; and sites that behave like software, places where you go to do stuff.

Dave also defines web applications as being entirely defined in the context of a web browser. He makes the good distinction between web sites that primarily provide access to information – sometimes called brochureware sites – and applications that deliver functionality and with which you interact more than simply browsing – good examples of this include Xero (disclaimer – cheap, but relevant, plug for the company I’m working for), Gmail, Google Docs and heaps of others.

In fact, ever more interactive web applications have taken off in recent years. With the power of javascript libraries such as jQuery and Sencha and technologies like Ajax it’s now possible to build incredibly rich web applications that work across a multiple browsers and platforms.

But I think we’ve come to the point where we need to broaden this definition.

Wikipedia takes a more general definition and also one that reflects more recent advances in web applications.

A web application is an application that is accessed over a network such as the Internet or an intranet.

However, reading the rest of the article it’s clear Wikipedia still assumes that web applications are always delivered via a web browser. But technologies such as Silverlight, Flash Air have changed the way I’ve looked at web applications.

I’ve written earlier about how the convergence of Silverlight, Silverlight Out-of-Browser and WPF applications is making it more difficult to define exactly what a web application is. I use Silverlight applications that were initially accessed over the internet from a browser but are now only ever accessed from an icon on my desktop and run, in many ways, like a traditional desktop application. They still access services and data over the internet but make use of local processing power to drive the user interface and application logic. Are they web applications?

Perhaps we are seeing the technology cycle in action and are returning to the days of client-server or even mainframe applications where the internet and cloud provide the data/services for an increasingly rich set of applications – are the days of the thin client numbered?

I think I’ve managed to confuse myself – so what is a web application now?