Generally the simplest hacks are the best, because there is least chance of them going wrong (the star hack for example). Using any of them can lead to unwanted consequences and a lot of difficulties in maintaining code. You should avoid any of them at all costs. If you really need to target IE for anything (and normally it can be avoided), you should use conditional comments.
Great wit and madness are near allied, and fine a line their bounds divide.
I find no need to target IE7 specifically at all, as it handles most things ok. On the occasions where IE7 may need HasLayout triggered to render properly, this can be done without targeting it or affecting other browsers.
I also only use them when I absolutely need to, but this time its more for looks than functionality. In both FF and IE, the website works fine, but in IE 7 there is a slight rendering difference. The links on the left side appear to have more padding in IE7 than they do in Firefox. Take a look: http://www.barkleigh.com/
I could adjust the padding for IE7 by using the hack to make it look more like the Firefox rendering.
While not a 'hack', I am liking this (placed before "</head>". It trains IE to behave more like other browsers...