Today marks the one-year anniversary of HTML5’s standardization, and since then it has quickly become a preferred solution for Web development. It was a long and hard road for HTML5 to reach that status, and not many thought it would make it this far.

“My perception at the time eight years ago was that it would just be another tool to add interactive features to your website and Web applications,” said Gautam Agrawal, senior director of product management at Sencha. “Coming to a point where HTML5 is the mainstream language for building entire applications was something I never expected.”

(Related: Transforming the Web with HTML5)

As Agrawal continued his career in software development, he eventually had no choice but to get involved in HTML5 and Web development in order to build “2.0 applications” his company at the time demanded.


We sat down with him to talk about how he has seen the landscape change since he started working in Web development, and what he expects in the future.

SD Times: What is the big hype around HTML5 today?
Agrawal: A few factors: No. 1 is the business drivers have realized that native solutions are way too expensive. It is not like you shouldn’t do native, but the conversation in the industry around native vs. Web, that sort of war is over now. People have settled down. There is a place for native, and there is a place for Web.

What really drives this is affordability. If you can afford to build native applications, good for you, but the issue is that businesses are seeing an increased demand for faster delivery cycles. Being a native platform doesn’t give them the edge to cater to the fragmented browser and device landscape we see around us.

If you start with native development to meet your business goals, you will spend a lot of money and you will spend a lot of time. HTML5 provides that edge over those kinds of development.

Secondly, because of this drive toward HTML5—and more or less the ease of use—there is a big pool of developers that are able to build applications, so resource requirements are faster than native for a cheaper cost. You don’t have to have a really deep experience or hard programming background to pick up HTML5. With native, you really need to have a hardcore background to go that route.

So what caused the debate between native and HTML5 to settle down?
It has been the new enhancements. For starters, standardization has occurred. There is an HTML5 standard that most browsers adhere to, devices have matured, browsers have matured, and the performance issues that were seen as the key problems are for the most part addressed.

Unless you are building something really sophisticated, like a gaming application, you can build a really high-performing application with HTML5, which was not the case three or four years ago. The main reason for that was it was not performing, so if you built an application using HTML5, your user experience would be horrible. In that sense, HTML5 itself has matured as well as the target devices and browsers.

What are the biggest obstacles HTML5 has overcome since its inception?
A few of them are related to the browsers. Essentially the modern browsers have implemented those standards. Now, having an HTML5 spec and having the capability to do it within the framework that you are using does not necessarily mean that you will have a high-performing application running in a browser, because it is dependent on the browser. At the end of the day, the browser has to understand that, render it, and make sure it adheres to what it was designed for. What we have seen recently is most browsers have become more and more capable of handling those issues and also have standardized on the specs, so that is the main driver behind adoption.

What are some recent advancements that have been made over the past year?
If you want to build an application, you don’t really have to write everything from scratch. If you need a drop-down feature some place in your application, or a combo box, panel, grid or window, you don’t have to write raw JavaScript, HTML or CSS from scratch. The ecosystem is providing so many choices that you can take stuff off the shelf and you can assemble your application just like you would assemble Lego boxes to create your own toy.

So how have these advancements impacted Web development?
It has brought agility to the market because now there is a capability to do things faster. Businesses are turning around, and they have been more demanding by saying, “Let’s take this application that was only on desktop, and mobilize that application to deliver it on a mobile device so I can engage with my customer in a better way and be more interactive.”

So the productivity increase has actually resulted in more demand from one perspective, because if you see a capability, you try to stretch yourself. If you know that there are technological limitations, you will settle with what is available.

The entire business ecosystem is focused on becoming mobile first. People want to either build their applications on a mobile device first, or they want to modernize and mobilize that application.

Looking forward, what features or improvements can developers expect from HTML5?
One is tooling. Since JavaScript is maturing as a first-class language for application development, the IDEs and the development tools that were essentially built for Java and .NET and core programming languages are becoming more open to adopt JavaScript as one of the first-class languages. We are seeing a lot of improvements and tooling available, which of course results in further improvements and productivity.

Also the language itself is now evolving. One of the new advancements that is coming along is called ECMAScript. ECMAScript is essentially a superscript of JavaScript. Once ECMAScript is adopted by the browser vendors, you will see even more productivity of the language for HTML5 development.

I have heard rumors about HTML6. Is this something that we can look forward to?
There is a 5.1 on the horizon.

Version 5.1 is going to drive and embrace mobility. One of the differences between the desktop side vs. the mobile side is that mobile devices come with a lot of device features. You have a camera, you have a GPS, accelerometer, and all other sorts of device and hardware features that are available to be applied to your application.

Since HTML5 evolved from the other direction, it is still catching up with how you standardize the usage of device space and features on a mobile platform. I believe that is going to become more and more standard, so you don’t have to write specific device feature code outside of HTML5.