Monday, March 22, 2010

HTML 5

The Web has changed a great deal since Tim Berners-Lee first created it as a way to share documents in a physics laboratory. What once started as a network of documents has became a main driver of the modern information based economies. Nevertheless, one of the core technologies that the web was built on, Hypertext Markup Language (HTML) has not always been able to keep up to date with the times.
Probably no other standard in the modern computing has been abused, misunderstood, ignored but still thrived in despite of all this like HTML did. After Sir Tim-Berners Lee created the Web and the technology took off like nobody could have expected; the rate of adoption and people's demands from it were so great that the browser vendors completely sidestepped the governing body of HTML, W3C.
All vendors, be it Microsoft with their Internet Explorer or Mosaic folks with their early Mosaic browser and then the commercial version called Netscape and other implemented their proprietary features which to dismay of many became de-facto standards.
Nevertheless, W3C plans to take the matters into their own hands again with HTML5, the latest iteration of the HTML standard. Although currently in draft stage with an estimated time of arrival of few years, it is already making rounds in the modern browsers; most latest versions of all major browsers implement a few of those nifty HTML5 features. But what are those features?
The main idea behind HTML5 is that things need to be simpler and more standardized. What this means is that HTML should provide ways to handle the common tasks web developers need built-in rather than forcing them to create their own implementations. This philosophy cascades into every bit of HTML5, starting from the type declaration to the new tags implemented.
One rather controversial change HTML5 proposes is more semantic markups. HTML was designed as a way to represent information without making any assumptions about the nature of the information presented. It could be anything; be it a document showing physics experiments or a blog that features nothing but ramblings of a teenager. The notion was the HTML would have generic container for the information presented and it was the developer's job to come up ways to annotate the data and then make it presentable.
HTML5, however, provides convenient ways to annotate certain parts of a web page with standardized markup. Given most websites have a header section, a navigation section and etc, it has tools to create such sections more cleanly; it has specific tags for headers, footers, article sections, navigation sections and such.
Such a drastic change came with its fair share of dissenters, however. Many pundits in the field argued that HTML should be a pure mark-up language that's suitable for any kind of information, not just designed around the most common type of information found online. It must however be noted that the changes to the HTML specification made in the HTML5 draft are mere additions and there's no reason why the developers have to use those structures.
Another controversial addition to the HTML specification with HTML5 is the addition of native video controls rather than relying on third party technologies such as Flash. With the growth of online video (and audio), it has become clear to Web developers (and browser developers such as Opera who has initially suggested the video tag) that HTML should ways to play video by itself and be able to control the playback better without having to resort to Flash (which is developed by a commercial company with commercial interests).
The issue with the HTML5 video however has been the default codec, the technology by which videos are stored and compressed. Although there are successful and well adopted codecs such as the H.264, they are also encumbered by patents and thus cannot be recommended as the official codec of the HTML5 specification. Moreover, browser vendors such Mozilla (makers of Firefox) advocated that they will not be natively supporting the H.264 codec as it is not a "free" software.
HTML5 has thousands of more additions to the existing specification; some interesting ones include native support for email, date, and search input fields as well many other mark-up structures such as progress, mark, details, command to help the web developers create more semantic mark-up where the mark-up hints what kind of information it contains rather than just arranging it.
HTML5 will not be finalized any time soon and a well adopted implementation across browsers will probably take more even longer. Nevertheless, it marks a big step in a new direction HTML is taking. Rather than being retroactive, the creators and the official maintainers of the standard are now trying to stay ahead of the curve.

No comments:

Post a Comment