Now blogging at dkeithrobinson.com | Good Stuff: Web Hosting by Dreamhost

Battle Royale : Web Standards vs. Legacy Code

June 03, 2003 | Comments 7 Comments

Today I picked up a copy of Jeffrey Zeldman’s Designing With Web Standards. I’m sure it’ll be a great read.

From the back of the book:

You build only to rebuild.  You focus on making your site compatible with almost every browser or wireless device ever put out there. Then along comes a new device or a new browser, and you start all over again. You can get off the merry-go-round.

He’s right.  Don’t I wish it were that simple.  If it were I’d just jump right off!  No, that little pink ceramic horsey, FrontPage, has my left foot in his mouth and he won’t let go!  I can’t even tell you what that chrome-plated filly, Non-Breaking Space, is doing to me. She’s not going up against Funny Cide in the Belmont, that’s for sure. She’s a “special character.” Anyway.
I began to flip through the various sections, including 99.9% of Websites are Obsolete, which got me to thinking about how I use (or don’t use) Web standards on a daily basis.  Which got me to thinking about the whole practicality of Web standards in general and how hard it is at times to take that step forward that will, theoretically, get you off the merry-go-round.  In my mind it’ll be a long time before we see the benefit of Web standards, and I hope it’s not too late.

Today I spent about four hours making updates to our Intranet.  These should have been routine content publishing actions, but, as it usually does, it quickly turned into a bug fixing exercise.  You can take the statement “99.9% of Websites are Obsolete” and translate that to “99.9% of my Intranet is Broken”.  Had everything been originally coded with Web standards,  wait, hell, not even Web standards, just better would be nice, these problems would not be there for the most part.  Web standards could have been the best thing ever for our Intranet — 4 or 5 years ago.

It’s obvious there is a lot of fixing to be done, but who has the time? The updates themselves take up too much of my time as it is.  If we did make the move to fix things, Web standard code would be the goal, but there would be a very, very long road to get there.  In many cases it’s just not worth it.  With this Intranet, it’s essentially impossible to implement Web standards, at least with legacy pages they are so bad. I’ll not even bother bringing up things like Word or CMS generated HTML. That’s a whole other can of worms.  In the four hours I spent on it today I came across the following:

  • Java Applets used for simple navigation
  • FrontPage Bots
  • Tables used to make a bulleted list
  • Innumerable font tags
  • Word generated inline styles and that XML crap (ok I did bring it up)
  • Bad file names, lots of %20.
  • Improperly nested tags, you know five inter-nested bold tags to emphasize one short phrase. Seen that one?
  • Oh yeah, and a “blink” tag. I shit you not!

The list goes on.  Those are just what I saw in the markup, and that excluded plain old bugs, like bad links and the like.  It would take for-ev-er to fix all of that, let alone bring it up to Web standards.  Part of me really wishes we could blow it up and start all over again.  Even then it can be a significant challenge.

I’m currently working on a project that will take a rich informational site that has been largely untouched, with the exception of a fairly large yearly content update, since 1998 and redesigning it.  The goal of this project was not only to give the site a new look and feel, make it more usable and more accessible, but to make it easier to maintain.  It also has many of the problems listed above.

I’ve been working on this site for about two weeks now and it’s been quite a beast.  I was able to start from scratch as far as the design and coding was concerned, and the template was pretty easy. If you still think CSS based designs are hard, I urge you to learn more, once you begin to understand it, implementation can be very quick and easy.

No, what has been hard has been the migration of legacy content from the old site to the new.  That code is a nightmare. So bad in some cases that there are a few pages that I’m just not going to put forth the effort it would take to bring them up to Web Standards. I’m just cutting the bad spaghetti code into my nice XHTML template and calling it good. Kind of the opposite of what I did with our CMS where I put good Standards based content code within their awful Cold Fusion generated template.

This is what I call Practical Web Standards.  You weigh the benefits of Web standards vs. the effort needed to bring the code up to snuff and go from there. Taking care of what makes sense and leaving what doesn’t.  I imagine there are many, many cases (perhaps more often than not) that it’s just not worth the effort.

Having said all that, I have a request for every Web designer and developer reading this:

Code with Web standards in mind from now on, will you?!?

No, really, I know it can be hard, and I’m not saying you should do everything with Web standards, but give it a shot. Read Zeldman’s book, start practicing Practical Web Standards at the least, and plan for a future without that damn merry-go-round.

Filed under: Web Development

Comments

1. Nollind Whachell said:

First off, I agree with everything you said. However, it is funny that you mention your frustration in converting or upgrading non-standard sites to standards compliant ones. Why is this funny? Because in my opinion, the number one reason that web developers don’t fully utilize standards today is because of the frustrations in coding with it.

I know more than a few friends of mine who are web developers and they’ve approached me regarding utilizing standards (XHTML/CSS), as I’m the only one of them who is seriously trying to tackle it. Remember these are professional developers who are fully versed in building sites utilizing HTML 4 with tables for positioning and CSS for font types. They know compatibility issues between IE and Netscape inside and out and usually code by hand utilizing HomeSite as well. No newbie WYSIWYG coding here in Microsoft FrontPage.

And yet, when they start experimenting with standards, utilizing XHTML and CSS for full positioning without tables, they approach me saying “Am I doing something wrong?”. In otherwords, they feel like they are complete idiots trying to build their first website again. Can you guess why they feel this way?

It is because they follow books or manuals on how to utilize these standards but when they view their site it doesn’t render properly. Why doesn’t it render properly? Because most of the browsers today all render XHTML/CSS differently or only support certain elements of CSS. Actually it almost feels as though they all decided upon a different section of CSS to support, so that no two browsers would support the same tags. I know this is an exaggeration but sometimes it feels this way.

So what do you have to do to get around these limitations? Utilize hacks. Hmmm, sounds like the old days of utilizing hacks to alleviate compatibility issues between Netscape and IE? Well, to some people it seems even worse than those days. They try to do some hacking but just get so frustrated that they go back to HTML 4 with tables and CSS. Why? Because it is “simple” and “easy” because they know the ups and downs of it already. Therefore, until standards development gets as easy as everyone “says” it is, people won’t migrate to it. Unfortunately, I don’t think that is going to happen until more browsers render the standards similarly. This is why the response from people who get frustrated with standards development is usually “Oh, I’ll just keep coding the old way until the browsers all render standards code similarly” or something to that effect.

So, as I said, that is why I found your statement about being frustrated in upgrading non-standard sites funny. I guess it all depends on your point of view. These “old world” developers find coding for standards just as frustrating. Most of them, however, at least see the benefits of going the standards route but still they find it too frustrating to make the leap. Something needs to be done to make it easier for them to make that leap.

Hopefully Zeldman’s book will help people make that leap. From my point of view though, I think people need a simple and easy resource that shows them all of the various needed hacks in one place (sort of like a tips and tricks resource). If there are too many hacks required right now, then once again, I don’t think people will make the leap. They’ll just take the simplest route with regards to coding. For some, they’ve already left coding behind and have gone to Flash because they have had enough frustrations with coding. Sad but true. I’d hate to see the Web in a few years if every site was a 100% Flash-based. Don’t think I’d want to use it.

Posted on June 3, 2003 09:16 PM | #

2. Nollind Whachell said:

As a side note, can you tell me why one of the most popular blog tools right now, Movable Type, can’t even create proper cross-browser compliant CSS styles (even with their lastest 2.64 version)? I mean if they can’t do it, it just really just pushes home the fact to people that standards coding is too “difficult” to do right now (due to cross-browser incompatibilities).

Posted on June 3, 2003 09:24 PM | #

3. Keith said:

Well, my short answer to that is that there are different levels of standards. I mean to go to Web standard code you don’t have to go completly tableless, although that leap can have it’s advantages.

As far as 100% Fash goes, well that’s just silly.

As I mentioned, there is a bit of a learning curve and at times it can be a bit frustrating and yes at times CSS hacks need to be used. BUT, and that is a big, huge but, once you get the hang of it it’s easier to code using Web standards.

Good semantic XHTML is quite a bit less complex than, say HTML 4.0 with lots of nested tables. In essence you are switching the complexity and hacks (if any) to your CSS. I think the advantages in that are self evident.

When I’m done with the project I mentioned, I’ll show and explain why (mostly in the long run) it was a good idea to use Web standard code, and a bit of how I did it.

I for one have been hand coding for years and years and remember the days when I used to have to build 2 versions (at least) of everything. So, it’d be very hard to convince me that moving to Web standards is all that hard to do.

In any case, this is just one benefit of Web standard coding. There are many, many more, but like I said, there are times when it just doesn’t make sense. Lots of grey in there.

Posted on June 3, 2003 09:39 PM | #

4. Keith said:

As far as MT goes. I’m not sure I understand what you are saying. My site usually validates (XTHML 1.0 Trans) and seems to look just fine in all newer browsers (and on my phone!) so…

Posted on June 3, 2003 09:43 PM | #

5. Nollind Whachell said:

With regards to the hard part of moving to web standards (using the current XHTML/CSS standards), I guess I would narrow down the frustration level to the necessity of utilizing hacks. This is why I said it would nice if one site/book offered all of those necessary hacks in one place so you didn’t have to scour the various sites/blogs to find them.

With regards to MT, I mean the default Styles that come with it and that are offered on their site. For example, the latest release of MT, 2.64, even states they fixed the horizontal scroll width incompatibility with IE when using the default “Clean” Style. However, when I viewed some test comments I made using the same “Clean” Style, the text was invisible on IE6/Win due to some other incapatibility (i.e. probably a rendering issue with the browser). Yes, most people will probably create their own Styles/Templates but what about those who don’t want to do it right away? Kind of sad that the default Style templates don’t work on all browsers/platforms.

If you have MT installed already, you can see what I mean by creating another temporary sub-blog which should default to the “Clean” Style. Start fooling around by adding some posts within it and you’ll see what I mean (assuming your using IE6/Win). Even in utilizing the other default Style templates on their site (i.e. Trendy, Georgia Blue, etc) there are even incompabilities with these as well (i.e. Calendar not aligned properly) but they are only minor in comparison to the “Clean” template.

And yes I agree, having 100% Flash-based sites is silly yet why are more and more sites going this way (especially within the Interactive Entertainment Industry / Gaming Industry)? So much for evolving the medium.

Posted on June 3, 2003 10:07 PM | #

6. Keith said:

Ok gotcha. All I can say on the MT tip is that, well, it’s not really their responisiblity to push standards…

On the Flash tip, Flash is the perfect tool for Entertainment / Gaming and many other sites. If it fits the goals and the audience, hey I’m all for it, knock yourself out. Heck I have an all flash portfolio from awhile back – http://www.7nights.com/2002/ –Flash is great, for many things. That’s why I took the time to learn it.

But for informational sites, it’s just silly right? That’s where Web standard, semantic code comes in. Shouldn’t a Web rounded Web designer know both?? Maybe, maybe not. For me I like to keep my options open.

Good comments Nollind.

Posted on June 3, 2003 10:16 PM | #

7. Nollind Whachell said:

XHTML/CSS Compliance — Movable Type’s default templates produce accessible, standards-compliant (XHTML/CSS) pages for your weblog.

Quoted from their Features page. I agree they shouldn’t have to push standards but they should at least make their default Style viewable in one of the most utilized browsers on the web (IE, even though there are better browsers out their for rendering standards code). I mean I could take that approach too. I could build sites that are fully “compliant” but will look like crap if I don’t utilize hacks to get them to render properly on various browsers. I don’t know, maybe everyone should start doing that, so that it forces all the browser companies to start rendering compliant code properly. :)

BTW I just look at the preview pages within Zeldman’s book again at Amazon.com, specifically the table of contents and I’m definitely liking what I see. I “think” it may be the resource that I’m looking for. I especially like that fact that he included pages on how to utilize standards with Flash, QuickTime, and so on. I’ll have to take a closer look at it in the bookstore to see if it’s as good as I think it looks (via the preview).

Posted on June 3, 2003 10:30 PM | #

Comments are now closed

Entry Archives

You are reading Battle Royale : Web Standards vs. Legacy Code posted on June 3, 2003 and filed under Web Development.

About the Author

is a Web designer and developer in Seattle, Washington. More »


7nights.com  Web


Old Stuff: