I think it was at least 10 years ago that I bought a book concerning HTML. The thing I remember most of this little book was that is contained a warning concerning the use frames in websites. Not a warning that you are probably completely clueless and you should not have a keyboard when you are planning implement frames in a site, but a warning for the fact that not all the browsers were supporting frames at that very moment of writing.
It was indeed a rather old book, however I fell in love with markup. Markup is the solid base of websites, all the other things (CSS, Flash, Silverlight, other plug ins etc) are just some fancy paint on the solid building. Off course the paint is important, however without a building there is not much to paint. Building buildings is more interesting to me than doing some paint jobs with fancy shiny paint.
Currently my markup loves is reviving since HTML5 is being specified. HTML5 does contain so much good elements, functionalities and other technologies that were missing since the introduction of HTML4 (almost 10 years ago in December 1999). I will give you five good reasons why you too should be in love with HTML5 and why you should use it:
- Clearer structure
HTML5 will offer you a clearer structure to create a page with. Instead of ending op in a severe case diveritus (use the div element for nearly everything with caring about semantics) you could use elements like Section, Article, Aside, Nav, Figure, Header and Footer. Your page will become far more semantic using the elements.
- Video, Audio
Video is on great demand (every hour 13 hours of video is uploaded on Youtube). HTML didn’t had native support for playing video and audio in sites. There was the object tag, however it still required a plug in to get things to work. Another great thing is that you can easily offer alternative formats for e.g. video’s and that can you style the video tag as you can with any other element.
- Offline web applications
With a native implementation you are no longer dependent on one vendor based plug ins (Google Gears), which is great, since more vendors result quite often in more innovation. And innovation is good for HTML as long as it is using open standards and is not proprietary. It really opens a new way of working (Gears is currently paving the path), you can now work when you want, where you want independent of connection.
- User interaction
Isn’t it a great idea that you can edit browser pages without the need of rich text editors like tinyMCE of FCK editor? Isn’t it even greater that you have some elements that will enable a track changes functionality in webpages? Off course it is nice that you can drag and drop items in web pages, however the nicest option is the native Undo functionality (for someone with my typing skills it is really great). Again a standarized functionality that currently implemented via many plug ins (that have a hard time to manage cross browser functioning).
One of the limitation of e.g. AJAX is that it is by default single domain (with some tweaks in a browser you could make it multiple domain). However HTML5 offers by default cross-document messaging, which is great and offers again a great set of opportunities. Besides that also server-sent events, Web sockets, and channel messaging are great new features.
I bet you are also in love now with HTML5, it is only a pity we have to wait another 14 years before it is a real recommendation. However in the meanwhile we can flirt with it in several browsers.