Dave Shea makes some good points in his post at Vitamin about the upcoming IE7 release and browser hacks. I started to weigh in amongst his comments, but I got a little long-winded so I figured it was better written on my own blog instead of using Dave's bandwidth.
A question was raised in his comment section — “Why do developers hack anyway?” However, later, this same person admitted they don't have to code “pixel perfect layouts” — they are given leeway and control over what's done from a design standpoint. Lucky them. That would certainly make it easier. That's not how a great deal of my jobs work though. I have several web development companies that I do client side development for. I am expected to create pixel perfect layouts based on the comps I'm given. After I slice and dice and reassemble, the company I'm coding for anticipates that they'll see the very same art they handed me, reproduced in code form. All that said, I rarely have to hack. When I do, it's generally something in IE having to do with hasLayout, and I use the star filter to beat it into submission. (On the other side of IE, I do hack to hide things from the Mac flavor. I do not, however, attempt to make it pixel perfect now that it's not developed for or updated any longer. I simply make it usable.)
Of course, if you're keeping track of the development of IE7 (and it is time to do that), or if you read Dave's post, you know that the star filter is now “fixed.” Lucky us!
I use a Mac and I've been using BrowserCam for a while now. BrowserCam has the IE7 beta installed (though I'm not sure exactly which version). Thus far (fingers crossed), I've seen very little difference between IE6 and IE7. Meaning, the star filter in my code that fixes IE6 and is not seen by IE7, has hardly made a difference to my layouts. It seems the bugs I'm using the filter for in IE6 are, for the most part, fixed in IE7. I have seen something wonky with menu lists that I will likely have to address, but on the whole, there doesn't appear to be anything too major. (As we get to final versions of the browser, I'll be spot checking my sites a bit more thoroughly.)
I resisted IE Conditional Comments for some time due to the fact that I prefer all my code in one CSS document. It always felt easier for me to manage. However, for new sites, I'm using a general IE CC to place any IE specific code in. If I need IE7 to see something different than IE6, it resides in the same IE CC, but I continue to use the star filter within the IE CC because the older IE browsers will always understand that filter/hack. I'm aware that I could use separate CSS documents for each flavor of IE, thus saving bandwidth (each version will only grab the page they need). But honestly, with only a rule or two for each, it hardly seems worthwhile to me. It's easier for me to keep it all in one. 'Course that's just my way of dealing with it. YMMV…