Web developers have previously devised ways to keep browsers and servers in constant communication, but Galbraith describes the techniques as “ingenious hacks” that are complicated to execute and don’t scale well. Web Sockets, he says, promises an easy way for developers to create Web pages that change in real time–increasingly important with the proliferation of more sources of real-time data, such as instant status updates from social networking users. Users can expect to see Web applications with real-time feeds running more smoothly and with fewer errors.
HTML5 could also help Web applications work better when devices are disconnected from the Internet or intermittently connected, as is common with smart phones, says Alon Salant, who owns Carbon Five, a San Francisco-based company that specializes in building Web applications. A feature called Web Storage lets Web applications store more data inside the browser, retrieve it more intelligently, and control how browsers save parts of pages for faster reloading.
Galbraith is also excited about several features of the newest version of CSS that are designed to work with HTML5. These features will make Web pages more responsive to user input and allow for higher-quality graphics– things that Web pages aren’t normally good at. HTML5 allows developers to embed windows of animation onto a page, but Galbraith says new CSS functionality would perform better.
Chris Blizzard, Mozilla’s director of evangelism, points to the significance of the HTML5 parser. A browser’s parser reads the markup used to build a page and figures out how to display it. Blizzard says this is one of the most significant parts of the specification. It’s meant to make browsers more interoperable, particularly in the way they handle badly written code. Instead of letting each browser maker decide how to handle imperfect code, the parser specifies what responses to errors should be. This should give users a more consistent experience, regardless of the browser they’re using, he says.
While HTML5 seems to present a long list of big changes, Lawson says, the main purpose is to provide simpler ways to do what developers were already doing, making it less likely that they will make errors. Lawson says, “The greater the simplicity, the greater the robustness and therefore the greater the experience for the end user–that’s the take I’ve got.”