Whenever I write about Web applications, I get a number of responses that reflect a variety of myths and misunderstandings about Web applications and the cloud. Given that it looks like we’ve reached the event horizon on Web applications, it’s time to clear up some of the most persistent myths about Web applications.
1: “Web” and “cloud” have to mean “third-party host”
People see words like “Web application” and “cloud-based” and immediately assume the service must be located outside the firewall, with the usual issues like offline access, security, and latency. This is simply a matter of architecture. Yes, many Web applications are only available on the software-as-a-service (SaaS) model, requiring you to pay a third party to host the application. But many Web applications, especially enterprise class applications, can be deployed to your Web servers internally. More and more vendors are even providing pre-configured virtual machines that you can drop into your data center and run with. And for building your own application, you can deploy to your own server.
The same is true for cloud. When folks hear cloud, they assume third party. The power of cloud is not that it is third party; the power is the idea that you have abstracted and virtualized the resources to the point where no one knows or cares how many physical or virtual servers are involved, and that the resources can dynamically expand and contract as the load requires. There are many private cloud options (third party and in house) that allow you to have the benefits of the cloud without requiring that your data be anywhere near anyone else’s or that IP traffic outside your organization can even touch it.
2: No Internet access = broken application
3: Web UIs are clunky
It is historically true that HTML was not so hot at UIs. HTML5 has helped, by introducing elements that have many more capabilities and are data-type aware. This allows developers to do things that were previously only possible with plugins (which may not be universally available) or with a ton of effort, and it also allows browsers to display elements with data type-appropriate input models. Add on top of this the components from companies like Telerik and frameworks such as jQuery, and the Web UI model does not look so shabby.
5: “Standards” and browser differences
Without a doubt, the big eyesore in Web development is Internet Explorer, and there is a dark place in most developers’ hearts for IE6. Fortunately, IE6 is ancient history except for a small number of big companies that are hung up on it, and folks who have such an old copy of Windows XP or Windows 2000 that Windows Update is turned off.
More recent versions of IE have made great strides towards playing nicely with standards, and the upcoming IE10 looks extremely promising on this front. When IE’s compatibility mode was introduced, it gave Microsoft the much-needed freedom to stop maintaining IE’s worst habits going forwards.
Most importantly, HTML5 will be the first version of HTML that will be truly testable, where the spec is specific enough that you can verify whether a browser is standards compliant. With these tests and renewed effort from vendors (particularly Microsoft) to get their browsers into shape, the days of the standards wars are drawing to an end.