March 29th, 2008

Wordpress 2.5 has released, including the bad markup generated with the Gallery option. If you serve your pages up as XHTML, the gallery won't work for you. You will get invalid markup errors, the page will fail to load. Whether this can be fixed with a plug-in or not, I don't know.

I've been told that if I don't like the code, shut up, and *fix it myself. Leaving aside the "shut up" part, the issue isn't just one problem in one piece of code–it has to do with a mindset. Last time I looked, you can't submit a bug patch to change a mindset.

I did turn in a bug about the Gallery markup, and really did expect it to be fixed. Two people involved in Wordpress 2.5, Jeffrey Zeldman and Matt Mullenweg have professionally benefited by their association with WaSP and the standards movement. If I seemed harsh in my previous writing on this, it is because I really did expect better from both Jeffrey and Matt. I think, though, my expectations don't match today's reality. Today's reality is XHTML is out, HTML5 is in. HTML5 is much more marketable. HTML5 is sexy, HTML5 is hot, HTML5 sells.

I know many of my readers are tired of me bringing up standards and XHTML. On and on–I have become dull with repetition. Heck, I've just become dull. Several people have pointed out the draconian error handling of XHTML, how HTML5 is friendlier, and will "make things better". HTML5 will make the web more "semantic". HTML5 is the way of the future.

How can the web be better, though, when people who do know how to create valid web pages, choose to not do so because frankly they just can't be bothered? How can HTML5 make the web more meaningful, when it can't even guarantee something as simple as accuracy of syntax? As the spec is now, HTML5 is also a closed box, with no way to add something new, something different. With XHTML, I can add SVG, or RDF, or NextBigVocabulary, or ShelleysSecretSauceVocab, and it works, out of the box. You can't do that with HTML5. Is HTML5 really a way forward? Or just a way for application developers to continue dishing out crap–but gee wiz, look, you can store data on the client now. And if you make a mistake, you won't kill kittens, because goodness knows, every time Firefox displays the Yellow Screen of Death, God kills a kitten.

Firefox's YSOD kills kittens

I once before referred to today's attitude about standards as being a race to the bottom. I made this statement because standards support is seemingly a thing of the past, a quaint relic of a previous web generation. The new web, the 3.0 web, the semantic web can't be bothered with the old, the measured, and the fusty, when now is a time of quick ideas and even quicker implementations. Open Social! Open Data! Microformats! All you need now, is an idea and an audience. It doesn't have to be a good idea, either, but it does have to have a big audience.

It is what it is, and I don't have enough audience to impact much beyond my immediate vicinity. Thankfully for the riders of tomorrow's web, when they do reach the bottom, HTML5 will be there, waiting for them. And who knows, I could very well be all wrong about all of this. Rather than a race for the bottom, perhaps this is a race for a baseline, and I just perceive the baseline to be less than what I think it can be. Perhaps I do reflect an era that is dead and gone and either I should adapt to move with the tide, or get out of the boat.

Well, I've not been particularly good at floating with the current in the past, so the only option for me is get out of the boat–or at a minimum, go find my own boat to row. I am going to do the Wordpress folks a huge favor: I won't continue using Wordpress, no matter how pretty the new look, or how cool the new features. The Wordpress developers have made too many decisions about how I should run my site, including HTML5 over XHTML, microformats over RDF, the canvas element over SVG, and so on. I find I just don't want to follow the course they've deemed appropriate for the future. Or, to continue my nautical metaphor, we've reached an equatorial point, and Wordpress wants one horizon and I want another and now, regretfully, we must part.

I am not unmindful of how much I owe the Wordpress team for an application I've benefited from for several years. To the Wordpress team, my sincere thanks for the use of your application, and your hard work in the past. Wordpress has been both fun, and useful. Good luck with your future voyages.

*If you want to use the Gallery yourself and you serve your pages up as XHTML, you can fix the gallery page so that it doesn't break in the browser with this PHP file. Just rename it to media.php and overlay the one in wp-includes. You'll also have to turn off automatic entry formatting, too, because Wordpress will insert paragraph elements erroneously. The Text Control plug-in will help you with turning off auto formatting, and it works with WP 2.5. The generated layout also plays havoc with IE8, at least with my layout. Your mileage may vary.

The generated markup still isn't valid because of adding a stylesheet into the gallery within the page body, but with the changes I just detailed, at least it doesn't kill a kitten.

March 5th, 2008

Update Oops! Available now. For those continuing to click the download button, IE8 will be available at 2pm PST, which is 4pm CST, by my SVG clock. More later, but we can confirm that IE8 does not support the XHTML MIME type. My opinion, based on what I'm reading and seeing, Microsoft will never directly support application/xhtml+xml. Or SVG. Or MathML. And will probably cherry pick on what to support for HTML5.

I guess IE8 beta will be available this week to the public. Anne pointed to the IE8 "Readiness" page at Microsoft, though the download links aren't active. I imagine they'll be active after today's MIX08 kickoff keynote.

Speaking of which, Neowin has links to the keynote video stream. They keynote is at 9:30am Pacific time, which is 11:30am my time. Check my SVG clock–if you're using a browser that supports SVG that is.

I might as well give a heads up that I may not be a particularly good mood later in the day.

February 24th, 2008

Jeff has been adding SVG annotation, as well as objects to his weblog design. When using SVG, the first issue that arises is serving up XHTML in order for the SVG to be processed correctly. This also means serving up your Atom feeds, accordingly.

In Jeff's case, he's using the object element to incorporate SVG annotating the post type. If he inlined his SVG, and wanted it processed correctly in feed readers (both big 'ifs'–stripping out the SVG is also an acceptable response), two things need to be modified.

First, there's an html_type option value that needs to be adjusted. The only want to do this at this time is to manually update it in the database. I had thought there was a modification made to Wordpress to add this as an Administration option, but I couldn't find it in the checked in code.

I hard coded my feed for this weblog to XHTML, and made the appropriate adjustments, removing the CDATA section and adding a wrapping DIV element (source for feed and comments feed).

To ensure the two feed files don't get overwritten, I have a plug-in that I use to override the location of the atom feed files, pointing the location to files in my theme directory.

This is only a temporary fix, though. The real fix would be to provide an option to set the html_type in the admin page, which then serves the weblog pages up accordingly, as well as being used to set the type in the feeds. The value should also be used to determine the output of the content in the feeds.

All of this could be done in plug-ins. What can't, is handling input from readers when serving up XHTML pages. Input from readers enters Wordpress in several different places in the code, most of which do not have hooks allowing us to override the code to provide our own. The only way Wordpress will be able to effectively do XHTML is through a commitment to make this a change in the underlying base code.

Since the Wordpress developers have not shown any interest in supporting XHTML, and since I haven't seen a lot of interest in XHTML support in Wordpress from my own explorations and published posts, this is just not a challenge I've been eager to take on.

The real question is will Microsoft support the XHTML MIME type in IE8? Not having support for XHTML is one of the major browsers is probably the biggest hold up on more widespread support for XHTML. Otherwise, I would think that the increasing interest in SVG would start generating enough movement towards XHTML to finally trickle it's way into the Wordpress community, regardless of the aversion to XHTML of the development team.

PS I would appreciate help testing my current XHTML validation in my comments. You can't hurt anything with the way the comments are now currently moderated.