Channels ▼
RSS

Open Source

HTML 5 Starts Looking Real


Back To HTML 5

Companies know all these things, but they can build incredibly powerful rich Internet applications today with Flash and Silverlight. So how does HTML 5 have a chance? Why do some see HTML 5 spelling doom for proprietary solutions? It all comes back to the openness issue. To build front-end applications in HTML, JavaScript, and CSS, all you need is a browser and text editor. Additionally, it's easy to pick apart existing examples online using the browser's View Source features.

HTML 5 already is being built into browsers and used today, even though it isn't fully defined. The W3C hopes to have a "last call" on HTML 5 by October, when it will be fairly feature-complete. Some browsers, particularly Internet Explorer, don't support many HTML 5 features. To pick up the pace, Google created a plug-in called Gears to bring advanced features to browsers that don't support the newer features. Yes, there's plenty of irony in a plug-in solution to a non-plug-in problem.

It's a fairly telling decision on Microsoft's part that it's implementing its upcoming online versions of Office using JavaScript, HTML, and CSS, not Silverlight. Finally, one just has to look to the mobile Web to see HTML 5 taking off, where entire applications are being built for iPhone, Palm Pre, and Android handsets. These often use HTML 5 features such as offline storage to deal with less-persistent connections and demonstrate the incredible potential.

This all leaves companies doing Web development with a choice: Embrace open standards, or stick with proprietary platforms.

CIOs, developers, and ultimately end users face three possible directions:

  • Wait for the market to declare a winner in what amounts to a competition of HTML 5 versus Flash, Silverlight, and JavaFX.
  • Use a proprietary approach now; hope to not be locked out in the future.
  • Bet on the promise of a still-evolving Open Web and yet-to-come HTML 5.

Like most emerging technology decisions, there aren't easy answers. Flash and Silverlight do things natively that must be built from scratch with HTML 5 technologies. For instance, rich, dynamic animations and transformations that Flash and Silverlight can perform must be created by hand using HTML 5's Canvas element. However, both Silverlight and Flash get those results by running in a sandboxed environment that, while powerful, has yet to lead to truly mass-market adoption in terms of Web sites that make use of Flash or Silverlight, and it limits a site's ability to exist in an open manner. Closed platforms, with their unique toolsets, also may present steep learning curves for developers. Contrast that with the ease of adoption offered by the ubiquitous and simple View Source and HTML in the browser.

Where To Start

So what should you do? You can begin to use HTML 5 today by switching out the HTML 4 and XHTML 1 Doctypes in your code to the HTML 5 Doctype. From there, it's an evolutionary process, as the rich features of HTML 5 become more widely adopted. Should you select a plug-in-based solution, it should be a measured and carefully thought-out process, not an arbitrary decision. Factors that favor open standards approach include:

  • Search Engine Optimization: Google is now implementing indexing of Flash-based content, but it's touch and go at best. Open Web standards are relatively easy to implement in an SEO-friendly manner.
  • Learning curve: Can your staff handle new languages such as XAML and MXML? These are new markup languages that require an integrated development environment (in some cases, multiple tools) and an understanding of new APIs and formatting commands.
  • Budget: Can you afford the software required to develop in the platform? The Open Web approach only requires a text editor.
  • Mobile access: Flash and Silverlight can be crippled in the mobile space.
  • Maintainability: Consider the cost and complexity of maintaining and adding more robust features over time.
  • Accessibility: Plug-in-based technologies can have serious accessibility issues, while open standards come baked in with exceptional accessibility features.

Major considerations for a proprietary, plug-in-based approach include:

  • Selective or mixed implementations: You might be able to implement a plug-in-based solution side-by-side with a mostly Open Web-based solution.
  • Development staff: If you already have a significant investment in truly expert .Net or ActionScript developers, they'll be honest about the limitations and advantages.
  • Controlled audience: If users are coming to you on an intranet, extranet, or other controlled environment, you can more easily require that plug-ins are installed.
  • Multimedia and animation: Exceptionally rich media and interactivity is still better served by Silverlight or Flash than browser-based animation, unless you invest in Canvas compatibility layers (check out processingjs.org).

The Web started with developers turning to View Source in the browser to learn about HTML. That trend continues. Thanks in part to its being an open environment, HTML and its related browser-based technologies have always lowered the barrier to entry for developers and users. HTML 5 shows the technology maturing, providing an outlook that's never been better. Still, if you have the staff with the right skills, a controlled environment, or the need for a high-end media experience, Flash and Silverlight are strong options -- for now, anyway.


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 

Video