I Want My Life Back
I can't tell you how long I've been battling browser compatibility bugs, but it wasn't until one of my first clients stressed that his site needed to work in IE6 and NN4 when I truly opened my eyes to this dark side of our world. I'm sitting here laughing at myself because it took me a few all-nighters to find the non-existent documentation on how this thing called the box model was messed up. Thanks for that, Steve. I wasted 2 days of my life on just fixing browser bugs.
But what doesn't kill you makes you stronger right? So I tried to learn from the experience rather, although I really wanted to fly myself to Redmond or Silicon Valley to assassinate the fools who did this to me. Alas, that was 2 years ago, before I converted myself into a web standards advocate. Since then, I've been dealing with browser bugs and hacks on numerous client sites as well as sites of my own (Avalonstar on IE6 anyone?). I'm sure I've wasted a full few weeks or so dedicating time to fix positioning problems.
Being a bug basher isn't a fun job. Yet, when you're good at something, people tend to depend on you for that. Let's bring in Facebook. It's a simple site, right? Take a look at the code and it's just a 2 column site with some complexities underneath. Not that bad. Well, whenever a bug pops up, it's my experience that's called to fix it. On the outside, I'm happy to be able to use these past experiences to take some of the dirty work off other people. However, on the inside - "please, no more browser bugs." If I lost a hair for every time I fixed an IE bug, a Safari bug or a Firefox bug, you know what I'd look like. It is the worst part of the development process, but it's also one of the things I'm best at. I'm starting to sense a double-edged sword. Facebook browser bugs (for some reason, they're really stubborn on this site) have taken at least a week of my life - and counting.
Fixing presentation bugs can be a long, hard and draining process. It's entropic. If you don't start fixing them early then they'll pile up. Once they pile up, you are less, and less likely to fix them. I'm sure many of you have shared in that positioning pain when working on your own projects. Look at how many hours, days or weeks we've lost fixing, writing about and stressing about presentation bugs that shouldn't exist. It should never be an option whether or not browsers follow the W3C or WaSP specs, it should be an obligation. An obligation to the millions of people like me who have lost years of their lives when compounded.
Microsoft, Apple, Mozilla, Opera, Omni: Your browsers are not a product for your marketing team to sell on "features." Never should a browser be sold on a count that they follow a spec more precisely than a competitor, because all browsers should do that. There should never be a product decision on a browser framework, never. Flock provides Flickr integration? Sure, there's a "feature" worth marketing on. But Gecko being different than WebKit? That shouldn't happen in the first place. Even moreso, do not hire people who are not aware that this spec exists. It scared me when a friend of a friend was able to say that he was the first one to introduce the idea of multiple background images to the head of the IE7 development team. Why the hell didn't he know that to begin with? It's part of the W3C spec, right there for him to read. Look, I'm even providing the link. What's even worse is that the developer replied, "I see if we can get that in there." Don't see if you can, do it! It's part of the god-forsaken spec!
Companies like yours always strive to drive productivity. Microsoft with Office, or Apple with Final Cut Studio - why the hell aren't you doing that with your browsers? The farther from the spec you deviate, the more time us web developers lose and the more productivity points we waste. We miss deadlines, because you had to make yours. I would rather wait for a product that nails the spec.
But look, all of you have already ruined it for us. From the minute that Microsoft deviated and made product decision to cut certain features, we were all doomed. It'll be like this for the next 5-15 years. As long as somebody has a browser that renders like shit, there will be a person out there wasting their time, to get it working for them.
Don't do that to us. Give us our lives back. Bring us a world where we can focus on what's good about our jobs, rather than wasting our time fixing problems that should never have existed in the first place.