Make Sure To Code My Site in HTML5Tuesday March 15th, 2011
The vast amount of information available on the Internet and the increasing tech-savvy of today’s business owners is fostering a new understanding of web design, application development, social media, and more. But with all the information out there, make sure you separate the facts from the buzzwords.
Everyone Knows It’s All About HTML5, Right?
The vast amount of information available on the Internet and the increasing tech-savvy of today’s business owners is fostering a new understanding of web design, application development, social media, and more. At Brolik, we love an informed consumer and really love an informed client. Recently, though, we’ve been getting asked a very interesting question and may have a surprising answer. I’ve heard other developers complain about the question, and I’ve heard business development folks explain the answer incorrectly. Do you know what it means to ask: “Can you please code my new website in HTML5?”
HTML and HTML5… Defined
There are a few reasons why asking someone to code “in HTML5” is not exactly correct. First and foremost, HTML5 is not a new coding language or a new framework to build websites on. HTML, or HyperText Markup Language, is a coding language that’s universal for the web. All web browsers read and interpret it. HTML5, for all intents and purposes, is a slang term for some new standards in HTML. There are some new tags (what’s a tag?) that are specific to HTML5, but the language is still the same HTML.
Before I give a few examples of the new features that HTML5 allows, let’s make sure we’re on the same page with how this stuff works. HTML code is always the same. It’s a programming language, and much like Spanish or French, it has its own structure, syntax, organization, etc. Once you deploy a website, it’s up to the web browsers to interpret the HTML code and display it to the user. The different browsers– Internet Explorer, Safari, Chrome, Firefox, Opera, etc– all interpret HTML in their own way, which is to say, however they please. So when a developer writes a webpage in HTML and views it in Microsoft Internet Explorer, it may look completely different than viewing it in Google Chrome. Independent organizations like the World Wide Web Consortium (the W3C) compile and write standards for how browsers should interpret code, but there’s certainly no law that requires browsers to follow any standards. This is especially frustrating for developers, as it forces us to test the same line of code in every browser we can think of, including different versions of the same browser. If you’ve ever heard a developer or Internet nerd complain about IE 6, this is why. Beautifully written code won’t necessarily render correctly in IE 6… it’s just the way it is.
Understanding that there are code standards is a good start to understanding some of what HTML5 means. Since the demand for standardization is greater now than it ever has been, companies that make web browsers (Microsoft, Apple, Google, Mozilla) are doing their best to stick to standards. HTML5 offers up a new set of standard tags and information about how they should output and what they need to do. The new tags include better and more compatible video embedding (without Flash), more in-depth form tags, and location-based features that come into play a lot with mobile web. For example, before HTML5’s video tag, embedding a video was an iffy experience. The code to do so (without HTML5) is not well supported across different browsers, and developers are forced to add “catches” into their code so that a browser that’s confused by an “embed” tag will revert to something else that it can understand. Even Flash video players (the current standard) require coding a couple different “versions” to make sure all browsers display the content correctly. HTML5’s video tag now makes sure that one universal tag always works and always degrades in older browsers. It’s that type of standardization that separates HTML5 from other HTML.
When And Where It’s Safe to Use HTML5 Now
HTML5 was unofficially “released” (or at least made popular) in April 2010 when Steve Jobs brought it to mainstream attention. But that in no way meant that all browsers were ready to read and interpret the new features and functionality that HTML5 offers. Currently, in March of 2011, as HTML5 is really starting to take hold, there are more and more places where it’s 100% acceptable to use the new tags. The most prominent place is mobile web. New smartphones that have full Internet browsing capabilities are almost all up to standards when it comes to their browsers. There’s no such thing (yet) as an outdated phone browser because the mobile phone web browsers are so new. Coding a mobile web application or a mobile web site is very easy compared to the untamed wild of desktop browsers and desktop browser versions. But aside from the mobile web, the new or new-ish versions of Safari, Chrome, and Firefox are all ready to take advantage of the new capabilities. Internet Explorer 9, recently released, will supposedly follow Internet standards better than any previous version of Internet Explorer. Here is some info on how it performs out of the gate.
But Back to the Question at Hand
Hopefully I haven’t insulted anyone who’s ever asked a developer to code their site in HTML5 because I truly love the interest in the web and in technology in general. My intention here is to clarify the little distinctions so that there’s no confusion down the road. A more appropriate question could be: “Can we (and should we) take advantage of the new features and technology offered by HTML5?” But don’t forget to follow that up with: “Will it still work in IE 6 on Windows XP, though?” Because of course: “My office only uses IE 6 and we can’t upgrade. I’m sure most of my clients are the same way, too.”
*Mass sigh from developers everywhere*