Wednesday, November 03, 2004

It's only right when its right

Today at work I spend a lot of time making correct code more correcter. Well, it it works or it doesn't right? Well, yes, and then again, no not so much. You see on our site (work site that is) we are adding some "design elements". (i.e. the CEO saw something on another site he liked and we needed to have them on ours) So I did the photoshop comps, did the proof of concept pages and now of course they want to deploy right from the proof of concepts pages. And there is where the trouble lies. You see HTML and Javascript render just a little different in each browser and on each operating system. So of course being a good and consciences web developer, I want to test the web pages with the new "design elements" on a good cross section of the browsers and platforms. So I check the pages on five different browsers on my windows XP Pro computer, and hey, they all looked great. Now I check it on a Mac. Uh Oh...the pages look like a grenade went off at the top of the screen. So I start working on making it work on the Mac. After about a half hour of tweaking the code that already works, it looks great on the Mac, in All three browsers I was testing. And just for good measure, I check it on my pc again...Oh No, it bad on netscape 4.7. And I don't been a little glitch that you won't see unless you are look for it, I mean a why is there a big blank space where a menu use to be. So I did the cross-browser, cross platform dance for about 4 hours today.

So this is what I mean by "It's only right, when it is right". All of those iterations of html code I did today worked. Just not on all of the browsers all of the time till the end. So how many iterations, or tweaks did I make to the code to make it work, well, I lost count after 30. This is what makes web development tough, that fact that there is such a variation in the way that each browser can render the code. When you are doing backend programming, it either works or it doesn't work. Yes, of course there are ways of making code run faster. But that backend code works in all of the browsers and platforms, that is of course unless your backend code writes the html for you, then, you better get prepared to do the cross-browser, cross platform dance.

No comments: