I found this article interesting. The author posits:
“A good programmer will spend most of his time doing work that he hates, using tools and technologies that he also hates.”
While I disagree with many of his supporting arguments, I think the overall theme is pretty accurate. Working with software, the good parts seem to disappear away, so what you spend most time on are the grotty bits. In fact, I’d go as far as calling disappearability one of the defining aspects of good code-level software tools & techniques.
More collected Geek Thoughts at http://GEEKTHOUGHTS.info.