Sirsha.com

Sometimes I like to think about...  stuff... .. .
Welcome to Sirsha.com Sign in | Join | Help
in Search

Sirsha Development Resources Blog

because everyone always wants more documentation...

Why We Need Web Standards

Robert Scoble and Dave Winer recently brought up the subject of Rich Text Editing in browsers as an example of features they'd rather have than W3C standards support. Robert also threw the usual kitchen sink arguments (meaning he brought up anything he could think of that could possibly be seen as a reason for why IE doesn't need to support standards), but I'll stick to just 2 of his points: Rich Text Editing and What Users Want.

Rich Text Editing in the browser first came around 2000, when MS released IE 5.5 (if I remember correctly). Netscape 4 was slowly rotting and IE had stepped up and become the browser of choice because of superior standards support. This support grew with IE 6.0 and Netscape was effectively dead (for a while, anyway). Why? Because Netscape made things harder for the people that really count: [cue Steve Balmer] Developers, developers, developers, developers. When IE's editable HTML capability was released, it was the developers who first saw it and toyed with it and eventually created web sites and apps that allowed users to finally get to join in the fun. And when developers grew fond of IE, Netscape quickly faded from the limelight. The all-important users and their preferences made the decision to use IE, but any cool features in IE that weren't available in other browsers would have never made their way to a single user if the developers hadn't decided to use them months earlier. You see, users don't just decide they want something and then it appears in front of them. Developers decide what to build and then users get to choose from the developers' output.

Microsoft's innovation helped developers choose IE over Netscape, but IE actually had less proprietary junk (layer tags, anyone?) than Netscape and stuck closer to the standard and that was what empowered developers and won so many of us over.

After the release of IE 6, the web didn't stop growing, maturing, and mutating. IE did stop growing, though, in a manner frighteningly reminiscent of Netscape's demise a few years ago. Users have grown used to better, smarter, faster sites and developers have continued to push the envelope in significant ways using HTML, XHTML, CSS, RSS, XML, ETC, and just as IE came to the rescue as the 1990s came to an end, Mozilla Firefox has come to our rescue in the last couple years. Firefox has listened to developers, read the specs, and taken the good from IE, and dropped as much of the bad as possible. Even Microsoft's own non-IE releases (such as IIS 6) have offered features that IE doesn't fully support.

Developers have progressed. Users have progressed. Standards have (very slightly) progressed. IIS has progressed. And every browser in use has progressed except one: Internet Explorer.

Why is that really so bad? Well, if you're a web developer, you know why this is so bad: because we are in the exact same situation we hated so much 6 years ago. We now have a fading browser that was once the king and suddenly decided to no longer care about us but that has such a large install base that we must support it. That means we have to do twice the work. That is why standards are so important, because it makes everyone's work so much easier. When we want to add a cool feature or section to a web site or web application, we would be able to do it with less work, less time, and less code. That work, time, and code would then be spent doing something much more important and groundbreaking than trying to get IE to correctly pad a float:left div. We could spend that extra time adding features like better rich text editors.

Which brings me to Dave's wish: better editing in the browser. Editable html areas in IE are the perfect example of how Microsoft has let us developers down. When IE first introduced the concept, it was amazing... for a while. And then the world kept turning and the feature (in IE) stayed the same. Firefox has supported editable content areas for a while now and, to no great surprise, it is superior to MS's version. Not because of the browser itself but because of the utter crap that MS's MSHTML component produces. For example, if you want to add a simple <br /> tag, by the time you save it in IE, you'll have <BR< instead. That was perfectly acceptable 5 years ago but not 2 years ago. So when MS released Visual Studio.NET and web devs everywhere began screaming about how that component was turning their html into some uppercased catastrophe if the design view was used, did MS correct the problem with Visual Studio.NET 2003? Nope. Visual Studio.NET 2003 still pumps out utter trash if you ever use the design view. Visual Studio 2005 is supposed to correct this problem, but if Microsoft can't even give us developers an ASP.NET IDE with good enough html editing, expecting that feature in the browser is little more than wishful thinking.

But that's not to say it isn't happening, just that Microsoft isn't making it happen. There are ASP.NET web sites that validate, my pet project Sleepless In Charlotte is valid xhtml 1.0 transistional most of the time but it wasn't easy to get it that way. I haven't seen the design view in Visual Studio for almost a year and have had a lot of help from others with the same problems. Free Text Box is an ASP.NET component that allows the user to edit HTML via the browser and then can convert it to XHTML. There are others that have been cross-browser longer, but Free Text Box is built for ASP.NET so it suits my needs more than any other component. The makers of these components stepped to the plate and brought us crossbrowser content editing that produces valid markup, something Microsoft doesn't seem to want to do. But if MSHTML produced better HTML, imagine how much easier those 3rd party components would have been to produce and how much faster and more advanced they would be. That is why standards are important. Because Microsoft doesn't need to add all those features, but if the solid foundation is there, other developers will be able to build on that platform.

Asking for great HTML editing instead of standards support is just silly. How would it be a great html editor until it produces great html? That is like asking for a big rear spoiler on a car that is missing the trunk lid. It just can't work. Why try to add a turbo charger to a car that is up on blocks?

Web development is like every other kind of development: there must be a solid foundation to build on. Once the foundation is there, amazing things can happen. If that foundation is not there, you have a temporary structure that will impress for a while but will not hold without continuous work. Unless IE7 builds on the solid foundation of the web, I don't see anything good coming out of it, except for those web devs who get paid by the hour while doing twice as much work for the same results.

Published Thursday, March 17, 2005 11:49 PM by sjh
Filed under: ,

Comments

No Comments
New Comments to this post are disabled
Powered by Community Server, by Telligent Systems