Just supporting the way various sub-versions of IE6 inconsistently handle cookies is a nightmare, and in many cases lead to unsolvable issues. This costed a client of mine real $$$$ to discover, and less than 20% of their audience used IE6. Less than 15 people actually complained about the issue.
IE 7 isn't quite as bad, but it still adds a measure of time to front-end development efforts. I would estimate it in the range of 10-20%, depending on how complex the interface is.
On two recent projects, we dropped IE6 support, with virtually no push-back from a general-use audience. IE6 is almost 8 years old. Most people don't keep their cars that long, and can understand that an old crusty browser is not going to perform as well.
The only place where I would be hesitant to drop IE6 support is on marketing sites (where you need to entice someone to a call-to-action within the first 30sec-1min) and on e-commerce sites, where every dollar counts.
This is only an issue for developers who target Firefox initially. That's the wrong way to go about web development. Run IE7 on your dev box and build everything against it. That's what your users will have, so that should be your first priority. Step two is making it work for FF.
The added benefit to that approach is that you'll find less cross platform issues. Going from IE -> Firefox is a lot easier than the other way around.
First develop for a standards-compliant browser, then add (conditional) hacks to support IE. The other way around is just silly.
And have you ever tried to develop complex ui sites on IE? I'm sorry...it just sucks and there is no good way around that. And I'm someone who knows IE6/7 quirks pretty good. Their script debuggers are utter crap and their developer toolbar is the most ancient thing out there. At least in IE8 they are copying Firebug...at that point it might not suck as much but who knows until I use it a while.
I never understood all the IE hate, to be honest. Until Chrome came out, I used IE7 as my daily browser. It's just better than Firefox in my opinion.
I share your sentiment.. I develop against IE first then test it against the "good" browsers... which rarely screw it up. IE sucks for script debugging.. I mean EPIC suck. You're not even told what line of what file is screwed up (IE seems to concatenate everything into 1 file when giving the error report), but I've learned to rely on myself not to make common scripting mistakes, and created a cross-browser "console" object to aid in debugging.
Safari has the worst script debugging on the planet. It essentially tells you whether or not there was an error. Oh, wait... and how many errors, total. Thanks, Safari!
And yeah, it takes about the same level of effort to develop against IE as it does against FF. The advantage is that your stuff generally then works right in Firefox first try.
(among other google results)
But, then again, there apparently were several Google results.
If you recall, Netscape used that same box model until version 6. So if you'd like to look for a point where standards were broken, look to W3C and Mozilla. It's certainly not Microsoft's fault that the "standards" organization decided to change the fundamental way things are rendered in a browser.
see : http://books.google.com/books?id=ZCPWYFoWaMIC&pg=PA289...
"Standards organizations" are there for a reason, so that issues like this wouldn't be so egregrious. Microsoft has had a while to fix it, and 8 years later far too many people are still using an old deprecated browser.