A few announcements were made recently regarding HTML, the language that websites are built of.
First, the w3c (the organization that develops standards for the internet) released a Working Draft of the Differences between HTML 4 and HTML 5. I am rather excited by the design of HTML 5 as it currently stands. Starting with HTML 4 (in which this website is written), the philosophy is to separate the content from the style of a document, using the notion of Cascading Style Sheets, otherwise known as CSS. Basically the idea is that one should group similar elements in the document into display classes, and define how the different classes will be presented (whether the fonts are large or small, bold or italic; the color, the background, etc.) in a separate style sheet. This makes for more logical authoring, as it more closely adheres to the model for book publishing: the author is only responsible for manuscripts, and the publishers responsible for typesetting the document and presenting it in a way that looks good. It is also the philosophy on which the LaTeX typesetting system is based.
For the current environs of desktop publishing and blogging, the HTML 5 model succeeds in that it brings the authoring language closer to that philosophy. The HTML 4 Box Model of presentation is being replaced by the more semantical model of HTML 5 which introduces the section, article, aside, header, footer, and nav elements (this will also make a tranlation process such as latex2html more logical). Looking at the working draft, I think I will be more than willing to re-code blogOhm to adopt the HTML 5 specs as soon as it is released.
On the other hand, Microsoft wants to introduce yet another DOCTYPE. DOCTYPE was a hack. It was introduced around HTML 3.2 because there are webpages that do not adhere to the HTML standard, which depend on some quirky programming in Internet Explorer to function properly. However, those quirky programming will also break webpages that were coded correctly. (Basically, Microsoft made a mistake in their rendering engine to start with. Then people starting depending on that mistake for the webpage to render correctly. So if Microsoft tries to just fix the mistake, many webpages will break. But if Microsoft doesn't fix the mistake, it will not render standard-conforming webpages correctly.) In this "darned if I do, darned if I don't" situation, the ingenious hack of DOCTYPE was introduced: it tells the web-browsers whether it is strictly conforming to the standards, and thus tells the web browsers whether to use the old and broken rendering engine to display the webpage or to use the new and improved rendering engine for standards-conforming code.
Normally, in a slightly-less-than-idealized world (since a mistake was made, it can't be completely idealized), this would be the end of it. Except Microsoft screwed up in their new and improved rendering engine. Internet Explorer 6 and Internet Explorer 7 were not strictly standards conforming: they implement the majority of things correctly, but there are just a few small things here and there that they did not support properly. The problem is that they still call that "standards mode", so many amateur web designers just assumed that the behaviour they see on the internet explorer brand web browsers represented what standards should be like, and so they now declare that their code is standards conforming in their DOCTYPE when their intent is for it to work with a non-standard-conforming rendering engine.
Well, unfortunately, Microsoft is about to release Internet Explorer 8 which, much to their credit, were actually made to be completely standard-conforming. Does any of this look familiar? So now Microsoft is trying to introduce yet another switch in the HTML code that will tell their web engine whether to render it in completely stupid mode of old browsers or we made our best try mode of IE 6 and 7 or honest, we finally got it right this time mode of IE 8.
I look forward to when HTML 5 is introduced.