Only Trolls wear Martian Headsets

I wasn’t going to comment on Joel Spolsky’s Martian Headsets ramble for two reasons: it was an obvious troll-bait, and people much smarter than me already pounded it into the ground. But alas, the Spolsky FUD seems to have infected one of the less known blogs that I really enjoy. I don’t blame Shamus though – he is a good man. It’s just that well written FUD is contagious like brain rot. And Spolsky went all out – he even has pretty pictures all over that article. So I kinda feel that I must counter measure this until it spreads any further.

Joel is essentially trying to tell us that W3C standards are bad because there is no 100% compliant implementation in existence. Therefore he advocates completely ignoring them, and and claims that the efforts make IE8 default to standards mode are ill conceived.

Only he is missing the forest of the trees here. If there is no standards, how can we even strive for interoperability between browsers? Joel doesn’t care because he only uses IE and he is convinced that 98% of the universe does the same (which is gross exaggeration). In the real world however, the standards give us an ideal towards which we can strive for. Different platforms will implement things in different ways, and by comparing implementations we can slowly improve and creep toward that ideal. Sooner or later everyone will be roughly on the same page, and the differences in implementations will be small enough to be negligible. Stefano Mazzocchi does a much better job of describing this process, so take a look on his post on the topic.

In a way this has already happened. Most of the major browsers out there including Firefox, Opera and Safari are perfectly happy displaying the same pages in very similar ways. The standards problem only becomes apparent when IE enters the equation – it has always been a problem. If we bring IE8 into the manifold, then this inter operation and compability issue will slowly phase itself out of existence. I think Sam Ruby hit he nail on the head when he said:

Web pages like Google Maps work on other browsers. Not because of a mythical, platonic “standard” in scare quotes. But because of standards that are actually implemented compatibly. And because in standards mode, these other browsers don’t implement the non-standard IE only Javascript objects that Google Maps checks for.

After reading Joel’s long winded rant, one might come to the conclusion that these “standards” are some truly arcane mysterious texts. But they are not. Granted, they are not simple and straightforward, but it’s not like there is no existing body of knowledge, and interpretations out there. Volumes of text have been written on the nuances of these standards, and there are groups and communities out there completely devoted to pouring over these documents and interpreting them. There are people who specialize in this stuff and will actually hire them to consult you on any and all standards related questions and concerns. But Joel conveniently ignores this fact. He goes on to say:

The precise problem here is that you’re pretending that there’s one standard, but since nobody has a way to test against the standard, it’s not a real standard.

Mark Pilgrim, whose post on this topic is hilarious, eloquently sums with one short sentence:

I have never heard of test suites.

There are test suites, applications and comparison tables you can use. And if anything else fails, you can go straight to the source and hit up the W3C mailing lists. But Joel is not done, he goes on this weird tangent – just bear with me while I quote it in it’s entirety:

If you’ve ever visited the ultra-orthodox Jewish communities of Jerusalem, all of whom agree in complete and utter adherence to every iota of Jewish law, you will discover that despite general agreement on what constitutes kosher food, that you will not find a rabbi from one ultra-orthodox community who is willing to eat at the home of a rabbi from a different ultra-orthodox community. And the web designers are discovering what the Jews of Mea Shearim have known for decades: just because you all agree to follow one book doesn’t ensure compatibility, because the laws are so complex and complicated and convoluted that it’s almost impossible to understand them all well enough to avoid traps and landmines, and you’re safer just asking for the fruit plate.

WTF in hell? I actually laughed as I was reading this. I hope you find this funny too, because this whole big paragraph shows exactly where Joel is coming from, and how far he is of the mark. They are nothing like religious orthodoxy. The interpretation of religious scriptures accepted by the Mea Shearim Jews is pretty much set in stone. In 50 years they will probably be using the same interpretation – perhaps slightly adjusted to account for advances in technology and changing lifestyles. Implementations of web standards are not meant to be religious orthodoxies. If MS doesn’t make IE default to standards mode now, then they will be in the exact same situation in a year or two when they are ready to release IE9. If we keep defaulting to quirks mode, and continue rendering web pages in the same half assed IE6-7 mode, then why even bother implementing the standards? Why even make any changes to the rendering engine? Let’s freeze the code at IE7 stage and only improve the browser by adding UI features from now on. That seems to be what Joel is implicitly suggesting.

Gordon Weakilem makes a very good point when he says:

I mean, really, after Joel harping on about “smart, gets things done”, would Joel accept “Those documents are super confusing” as an excuse in an interview, or for why a developer doesn’t understand something like operator precedence? Really, is there an excuse for ignorant or lazy?

Indeed my friends. Joel’s whole rant is about how difficult, confusing and impossible to implement the standards are. I guess we ought to give up then, right? A mark of a good software developer is that he simply abandons a project at the first sign of trouble. :P

But the best part is that even Joels summary near the end of his lengthy triad contains a hidden contradiction:

98% of the world will install IE8 and say, “It has bugs and I can’t see my sites.” They don’t give a flicking flick about your stupid religious enthusiasm for making web browsers which conform to some mythical, platonic “standard” that is not actually implemented anywhere. They don’t want to hear your stories about messy hacks. They want web browsers that work with actual web sites.

Let’s for a minute assume that 98% of the world does use Windows, and that they will all install IE. If my website doesn’t work in IE8 on the release date, guess who is going to get publicly flogged and then castrated by the upper management? If you guessed it was me, you are right. My boss is not going to give a flying fuck that the IE changed the way it is rendering pages. The people who will notice this change the most will be web developers who will have to fix hundreds of web pages, not the customers. No major company will allow their page to remain broken once IE8 release is imminent.

Here is what I secretly think will happen – IE8 will get released, and end users will blog at length about all the new features in the browser. Most of them won’t even notice the standards thing. Few legacy applications, and poorly maintained pages will break, but Google, Yahoo, Myspace, Facebook and all the other big and popular sites will work like they always did, or better.

Sure, few people here and there will blame IE8. Are they going to install Firefox? Yeah, right. The people who know about Firefox either don’t like it, or are already using it. IE8 breaking won’t push people towards alternative browsers. And surely it won’t make them abandon windows altogether. That would be the day! Worst that will happen is that they will downgrade back to IE7 – if they can figure out how to do it. Most of the clueless users from Joel’s example will simply shrug it off and learn to live with it.

You don’t even want to know hoe many times I heard my users complain about “the new Microsoft” (IE7 in luser speak) that got installed on their computers. When I offered to downgrade them back to IE6 almost all responded with a surprised “you can actually do that?”. Users will survive – they are already used to Microsoft breaking their shit.

So there. This is my Spolsky headsets rant. Regrettably, that’s another link to Joels page, and probably few dozen page views (considering my click through rates) and few extra dollars in his adsense account. Maybe I should take cue from Mr. Spolski and post some horribly inflamatory, nonsense every once in a while and then just sit back and rake in the cash. Unfortunately, while I’m shameless and blunt at times I have that thing… I think they call it integrity or something like that. Oh well… Now that it’s over with, let’s get back to usual craziness.

[tags]martian headsets, joel spolski, mark pilgrim, web standards, ie8, internet explorer 8, standards mode[/tags]

This entry was posted in programming and tagged , . Bookmark the permalink.



8 Responses to Only Trolls wear Martian Headsets

  1. Ian Clifton UNITED STATES Mozilla Firefox Ubuntu Linux says:

    I’m really fortunate that the designer of the first Martian headset decided to ditch all standards. Now no one has any standard to strive for so each company just makes proprietary software/hardware. I mean, I can’t use my headset to listen to music from 95% of the artists out there, because they use a different format, but standards are stupid. I think some people might find it slightly inconvenient to not be able to talk to their friends or family by using a phone, because each friend and family member has a different carrier with a different “non-spec” to continually change, but interoperability is stupid.

    Instead of having a standard that developers strive for, we should definitely have each company come up with its own interpretation of how a user would want any piece of information displayed. We could all have 50 browsers installed as end users so that we can just switch to the ones we want. That’s way better than having developers do it for us with just a few browsers since the non-Trident browsers are pretty damned good at displaying things in a similar manner; why would developers want to test in order to conform to some difficult standard that we might call a “goal.” Goals are stupid! When you’re down by two points at the end of a basketball game, don’t bother trying to throw the ball in, just accept that you probably won’t make it and give up. The Internet was way better when no one followed any specs and just threw elements all over the place and IE and Netscape were creating proprietary methods of doing things in order to vie for end users and “98%” of the world started using IE and all ended up with spyware.

    BTW, Joel, a “mortal designer who attaches a DOCTYPE to [his/her] web page” is actually saying, “I did my best to conform to X standard. Render my page as closely to that standard as you can.” No wait, what the hell am I thinking? Let’s also ditch headers that define content types and we can all disagree on whether 0 means true or false and perhaps we can get rid of any fuel standards for our cars so yours can be powered by gas and mine will be powered by oranges–but only Florida oranges, because the others aren’t up to the “non-spec” of Florida oranges.

    Hmm, and what the hell am I doing speaking English just because other people do it. Screw the dictionary. I’m going to use letters and words the way I want! Aoidsf8& 7w fsdkhf-(SD hfiwh7 BSDf lamf0f3w24 rnfsd 7ghdfg 34qngekjngl;0 a92i3094 nfjgh h96hg fswlsp487t!!@?

    Reply  |  Quote
  2. Luke Maciak UNITED STATES Mozilla Firefox Ubuntu Linux Terminalist says:

    LOL

    Speaking of which, I love how Spolksy rags on standards for 10 pages but on the other hand he actually hired Dave Shea to design the UI for his company’s website and products to make sure they are designed with accordance to these very same “standards” he dislakes so much.

    Reply  |  Quote
  3. Adam Kahtava CANADA Safari Windows says:

    My gag reflex wouldn’t let me read through Spolsky’s article. After skimming it I concluded that Joel must have eaten a disagreeable cheese dog earlier that day – he’s loosing his clarity, he’d wasted his time writing the article, he’s belittling his reader. I passed his article off as just another example of how disconnected Spolsky is from web development.

    Web developers understand the importance of standards, most people outside the web world DO NOT AND NEVER will understand the pain that the lack standards present. Troll bait of not, Spolsky needs a reality check, and web developers need action, not rants on how standards are broken, or who said what about standards.

    Reply  |  Quote
  4. Shannon ISRAEL Mozilla Firefox Windows says:

    Standards are the core issue here and it is stupid to think otherwise if not nothing would have worked with anything.

    Reply  |  Quote
  5. Douglas T UNITED STATES Mozilla Firefox Windows says:

    Hmm, and what the hell am I doing speaking English just because other people do it. Screw the dictionary. I’m going to use letters and words the way I want! Aoidsf8& 7w fsdkhf-(SD hfiwh7 BSDf lamf0f3w24 rnfsd 7ghdfg 34qngekjngl;0 a92i3094 nfjgh h96hg fswlsp487t!!@?

    My thoughts exactly. If you don’t believe in web standards, why use any standards at all. Why not complain that when you plug you toaster into your TV, your web page doesn’t load properly. (It’s probably one of those evil Linux toasters anyway)

    My person favorite was “8 billion existing web pages be damned.” Apparently IE8 is going to fail on “8 billion” pages if we don’t let Microsoft rule our lives. The part left unsaid was that instead, we should add “Yo! I’m tested with IE 8!” tags to all 8 billion pages. That sounds reasonable… doesn’t it?

    34qngekjngl;0 a92i3094 nfjgh h96hg!

    Reply  |  Quote
  6. Luke Maciak UNITED STATES Mozilla Firefox Ubuntu Linux Terminalist says:

    @Adam – speaking of reality check, here is yet another great reaction to the article: Reality Distortion Field.

    That article claims that while Joel might live in MS centric micro-universe, a lot users out there never actually touch that damn browser. My whole family is IE free, and most of my co-workers have been trained in proper browsing protocols. Once you show them the spell-check feature and enable sessions they never want to switch back. ;)

    So while Joel thinks that there is only one true platform out there, there are in fact two. And Microsoft is posed to loose it’s position as a major platform if they don’t fix their browsers. Already most of web developers code to standards and then introduce “legacy hacks” so that it work on IE7 and IE6.

    @Douglas – here is the thing though – 8 million pages would not be broken. I would suspect that only 20-30% of pages that could break would actually remain broken at the launch date. Any competent web designer, and any company that cares about their customers would fix these issues ahead of time. I mean it’s not like MS is not putting beta versions out there that could be used by developers to test their pages.

    Reply  |  Quote
  7. Douglas T UNITED STATES Mozilla Firefox Windows says:

    I know. It just seemed like such a Microsoft moment when the solution to the problem is for everyone to add code to the pages that do work.

    Reply  |  Quote
  8. I know PLENTY of designers who refuse to make their code IE functional. Actually, if their client requires it.. they charge more.

    Personally I don’t understand it enough to care… I just try to make my page look good on what I am coding it in… so as long as I am happy with the results I really don’t care :D

    Reply  |  Quote

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>