Paul Gubbay is vice president of engineering for design and web at Adobe. He has spent the past 25 years working in the software industry with a specialized focus on creative and web professional tooling and solutions.
There’s been a lot of
talk lately about
HTML5 and confusion about what it is, what can be done with it today, the best way to learn it, etc.
With so much hype in the marketplace, I wanted to tackle the questions we hear most from creative professionals who want to take advantage of HTML5 but are unsure about how to get started.
1. What is HTML5?
In its simplest form, HTML5 is the evolution of HTML. Interestingly, it has become a “catch all” term for many technologies that can move the web forward, including CSS3, SVG and Canvas. What it offers most web professionals is a new set of functionality for creating richer interactivity for websites and applications across multiple screens. Due to the adoption of
WebKit on mobile devices, HTML5 is gaining a lot of traction around smartphone and tablet development. In its early days, HTML5 will feel incremental in terms of how users can take advantage of it. But as the ecosystem evolves, frameworks and tooling will enable web professionals to create a new world of interesting experiences including applications that are accessible on a variety of devices.
2. Can I Use HTML5 Even if Users Have Outdated Browsers?
Although HTML5 is still in its infancy, there are several ways users can employ new language elements while ensuring that content degrades gracefully on unsupported browsers. There are plenty of articles on the web that discuss these techniques. For example:
- Developers can work conceptually with new structural elements such as Header or Footer by creating classes with the same name and attaching them to divs within a user’s page.
- You can take it a step further by using the new HTML5 elements today with a combination of JavaScript and some CSS to ensure compatibility with older browsers.
- Developers can leverage JavaScript libraries such as Modernizr that take advantage of emerging technologies (HTML5, CSS3) while providing control over older browsers that may not support this functionality.
- Developers can use HTML5 forms with new Input elements and types to provide richer functionality on modern browsers that support them with no penalty on older browsers where they will degrade gracefully to text inputs.
Of course if you are just targeting mobile browsers, you can take advantage of many more HTML5/CSS3 features. The mobile browsers that are primarily based on WebKit provide a lot more support, although there are still some inconsistencies across different implementations.
3. What Should Designers and Developers Learn First?
Developers should start incrementally by expanding their skills with technologies they already understand. Leveraging new functionality in CSS3 is a great place to begin. I also recommend following blogs to stay on top of what’s going on and keeping an eye on the different JavaScript frameworks that are springing up. There is a lot of innovation happening around mobile frameworks and runtimes right now. Some good resources to watch include:
Developers should also make sure they keep in mind the platforms they are building for, because the gating factor right now is browser support.
4. Am I Behind the Times?
Hype about a particular technology can often lead to designers and developers feeling like they’re behind the curve, but that just isn’t true with HTML5. While there are some
really cool examples out there today, in reality it is a much smaller subset of web developers that can create them, and the content works on an even smaller subset of devices.
There are significant hurdles to face when developing for devices, in addition to the typical cross-browser desktop compatibility issues everybody experiences. How do you take advantage of hardware acceleration? How do you take advantage of device APIs (e.g. touch, geolocation, offline cache, etc.)? What do you do when device APIs are not consistently accessible through the browser implementations?
Look for JavaScript frameworks and tools that can abstract across these differences and provide a set of building blocks that work consistently across the devices you are targeting. While there are many exciting capabilities being made available, most users will need to be pragmatic in their approach.
5. Why the Wait?
The gating factors right now for the widespread adoption of HTML5 are the browser vendors and the HTML5/CSS3 specification. Similar to the browser wars in the early days of the web, there is a significant amount of innovation happening within the browsers themselves. WebKit is becoming the predominant browser for mobile devices, but there are multiple implementations.
Firefox and
Chrome continue to push the boundaries on the desktop, with
IE9 now joining the race with deeper support for HTML5/CSS3. While fast innovation is good news for web pros, it also creates inconsistency. This is where the
Spec comes into play. The Spec drives the standard that all browsers need to adhere to. However, the Spec will not be ratified for many years.
Most web pros will be well served by standardizing on frameworks and tooling that can help them take advantage of the new functionality while degrading gracefully on the browsers that are still behind. Sites such as
HTML5 Readiness can give users insight into what is and isn’t supported across Browsers.
What Is Adobe’s Stance on HTML5?
This is a question we get a lot at Adobe. As the current landscape continues to evolve rapidly, we believe people will benefit from implementing a hybrid strategy where Flash and HTML5 technologies are both utilized depending on the business need. For instance, if you are building an enterprise RIA with a multi-function team that needs a strong development framework, ubiquity across devices, and one vendor behind the technology, then Flash makes a lot of sense. If you are building a dynamic website that targets desktop, tablet and mobile, then HTML5/CSS3 is likely the right technology. In short, there will be places where HTML5 makes the most sense and provides basic interactivity, but there will always be a place for richer interaction and guaranteed consistency, and that’s where Adobe feels that Flash technology excels.
Conclusion
There’s no question that designers and developers should familiarize themselves with HTML5, learn what capabilities are currently supported, and, most importantly, where those capabilities are available based on the audiences they’re trying to target. Users shouldn’t make the mistake of falling in love with a particular site element and charging ahead only to find out that it doesn’t work at all in a browser that matters to their customer.
These are exciting times for designers and developers. We have some great challenges and opportunities in front of us that will have a huge impact on the future of the web. I can’t wait.
source: http://bit.ly/acsPF6