One of the (many) unfortunate side effects of choosing a career in software
development is that, over time, you learn to hate software. I mean really hate
it. With a passion. Take the angriest user you’ve ever met, multiply that by
a thousand, and you still haven’t come close to how we programmers feel about
software. Nobody hates software more than software developers.

This is so true it hurts. An additional side effect of being a Program Manager
is that you become extremely critical of everything. Parking meters. Elevator
buttons. Anything that isn’t as usable as it should be. Not that I could do
any better at designing these things, necessarily, but they still anger me,
and much more than they used to now that design is a part of my daily work
life.

Another great quote from the article:

Hardware companies don’t generally do software well. Digital camera
companies excel at building digital camera hardware. Software, if it exists at
all, is an afterthought, a side effect, a checkbox on some marketing weasel’s
clipboard.

This is true not only for consumer electronics like digital cameras, but also
for other hardware that you might not think of as running “software.” Think of
your microwave. The ice dispenser on your fridge. Your washing machine. Your
car’s on-board computer. All of these are running software in some fashion
most likely, and they all kind of suck.