In May 1995, Bill Gates wrote a now famous memo to Microsoft employees, outlining his vision of the coming “Internet tidal wave” and the emergence of a dangerous new competitive threat, the Netscape web browser.
These so-called web applications – designed and built using tools crafted specifically for the web – are now an increasingly valuable component of a business’s software arsenal, allowing for rapid development, crowd-pleasing user experiences and flexible access.
But what is a web application? Today, there is scarcely any part of the enterprise application stack that cannot run over the HTTP web protocol, from SAP graphical user interfaces to software-as-a-service applications, says Michael Allen, director of IT service management solutions at tools vendor Compuware. “So in some sense, every enterprise application is a web application,” he says.
There is, however, still a large chunk of the stack that is not built on web-based technology, says Colleen Smith, vice president of software-as-a-service at software vendor Progress Software. That chunk is not likely to be swapped out any time soon, she adds, as few IT chiefs have the need, motivation or indeed the budget to do so.
Web-based languages, standards and development methodologies come into their own when they are used to draw
the information from within that stack into usable, accessible and lightweight end-user interfaces.
Popular web services such as Google, Facebook and Twitter demonstrate how web applications can support highly personalised user experiences at lightning speeds, on top of systems that process eye-watering volumes of data.
According to James Governor, an analyst at market watcher RedMonk, speed of development is one of the defining characteristics of web applications. They can be built in a fraction of the time it takes to write traditional enterprise applications and because developers often do the testing themselves, he says, the quality of the code can be higher.
Progress Software’s Smith says this chimes with the demands of business users, who want new functionality faster, and cheaper, than they have done in the past. Application development approaches that require hours of hand-coding for every minor modification are therefore becoming unviable, she says, and web applications are one way to provide the business with the functionality it needs at an acceptable cost.
There are many different ways to build web applications. The number of web application development languages and frameworks available can be bewildering for the uninitiated. They include Python, PHP, Java, J2EE, .NET, C#, ASP, Ruby on Rails, Perl, and ColdFusion, to name but a few.
“There is a whole fragmented ecosystem of development platforms that are geared towards building applications that run over the Internet,” explains Michael Azoff, principal analyst at research group Ovum. Many of these web development platforms now include the type of features an enterprise would expect of an application toolset, he adds, from robust data stores to integrated messaging services and security.
One consequence of this varied ecosystem is a fragmentation of the market for web application development skills. According to online job site Indeed.com, developers with .NET and Java programming skills are the most in demand, but between them they represent less than 10% of the job market. The remaining 90% is divided among a large number of alternatives.
The skills that conventional IT departments already have available may inform their choice of web application development platform, explains Ovum’s Azoff. “If you’re already a large Microsoft shop, you are far more likely to consider the .NET framework,” he says.
But if your developers happen to have experience in one of the more esoteric platforms, there is no reason to discourage them. It should not affect the outcome – web applications are designed to work on any platform – and adopting the development methodology your developers are most comfortable with will be cheaper in the long run, RedMonk’s Governor argues. “The net effect of this technological fragmentation has been to drive down development costs for enterprises,” he adds.
But can the wrong choice of framework backfire for a business? In a recent blog post, Byrne Reese, previously a project manager at Six Apart, the company behind enterprise blogging tool Movable Type, contemplated why his company’s web technology lost out to rival WordPress. One chief factor, he concluded, was Movable Type’s decision to develop in Perl.
“People simply feel more comfortable working with PHP,” he wrote. “Perl is just too scary.”
Next>> Raising users’ expectations
Page 2 of 2
One of the drawbacks of a successful technology implementation is that it heightens the expectations of users. Call it the curse of the BlackBerry, says RedMonk’s Governor.
“With BlackBerrys, we learnt that we could access email anywhere and everywhere we wanted to, whenever we wanted to,” he says. “Now users expect the same from every business application.”
That means that just as enterprise IT shops have come to terms with web applications, they are now being called on to support mobile applications.
Basildon and Thurrock University Hospitals NHS Foundation Trust is a case in point. As part of its drive to support electronic patient records, the trust uses Adobe’s ‘rich Internet application’ client Air to provide web access to core medical systems. This allows clinicians to access appointments, patient records and healthcare workflows through the web.
Now, though, that desktop-based web application is being extended so that it can work on tablets and smartphones. In situations like this, says Governor, users rarely appreciate the technical complexity of porting web applications to mobile devices. They see little reason why an application with a neat and responsive interface on their office PC should not perform just as smoothly when accessed via a smartphone.
For this reason, says Governor, web applications should be conceived as mobile web applications from the start. That means considerations about how an application will appear, what functionality can be included and how it will perform on mobile devices need to be made at the outset. “We’re seeing developers design for mobile first,” he says.
Building applications using web development techniques allows functionality to be delivered to all manner of devices. The trade off, however, is the degree of control that the IT department has over how the applications are used.
This means web applications can cause headaches for the IT department. “The end-user isn’t going to think about what browser, what client, what connection they have,” says James Peel, product manager at application monitoring vendor Opsview.
“All they’ll see is an application that’s not responding quickly enough and get on the phone to IT.”
It is a familiar burden for website designers, but now application developers too must think about how their software will perform in different browsers and on different devices. Traditionally, IT was able to dictate what employees used, but today attitudes are more relaxed, and there is an increasing acceptance that staff will want to access applications using any number of devices. In some instances, the users’ choice of browser might affect whether or not they can fill out a particular form, says Compuware’s Allen. But in others, that choice can have a monumental impact on IT.
“The same application running on Internet Explorer (IE) 8 can make twice as many connections to the back-end database as IE7,” he says. “If you have a large shift in the number of users moving to IE8, you could take a very big hit on your data centre.”
And it is not just performance overheads that can surprise IT chiefs, warns Allen. Because many of today’s web applications use components developed by third parties outside of the organisation, IT leaders do not always understand the provenance of those components.
For example, Compuware recently analysed 3,500 web applications that it was monitoring on behalf of its clients. It discovered that 38% had elements, often transactional components, that were hosted in Amazon’s EC2 cloud.
“We often hear the question, ‘Is the enterprise ready for the cloud?’,” says Allen. “In fact, many of them are already there – they just haven’t realised.”