Great Software Engineering Quotes

Screenshot from 2018-01-12 10-42-04I’m (of course) a big fan of software engineering quotes and I recently discovered that QuoteFancy is a site with decent looking desktop wallpapers of quotes from a number of software professionals including Alan Perlis, Donald Knuth, and David Parnas. Here’s some links to quotes by these and other interesting people:

https://quotefancy.com/donald-knuth-quotes
https://quotefancy.com/alan-perlis-quotes
https://quotefancy.com/david-parnas-quotes
https://quotefancy.com/steve-jobs-quotes
https://quotefancy.com/bill-gates-quotes
https://quotefancy.com/alan-turing-quoes
https://quotefancy.com/paul-graham-quotes
https://quotefancy.com/joel-spolsky-quotes
https://quotefancy.com/martin-fowler-quotes

Send me some other ideas for people to look up on this site with software-engineering-related quotes?

tdd

The most compelling reason for TDD

I practice TDD. There are a lot of reasons for this. Many of my reasons didn’t even become clear to me until after I had been doing TDD for awhile. Most people will tell you the same. It seems there are untold benefits that you have to experience for yourself. Just try it and see. If you are told about the benefits up-front, you will simply never experience for yourself how dramatic of an effect TDD can have.

But there is one reason to do TDD that I find more compelling than any other, and that reason still makes sense even if you only think about it.

The reason is simply that . . .

northern_lights_iss_20131009

Why software teams that are on time and on budget probably suck

Many people in the software industry are bad at their job. Probably more than in other industries. Plenty of data shows the abysmal results of software projects, but you can simply ask your nearest software professional for plenty of horror stories. I have more than ten years of experience “on the inside” of the software industry and I have found bad software teams everywhere I look.

Bad managers have a disproportionately high impact on software because bad managers build bad teams, but the individuals on the teams themselves—even the good ones—are, more often than not, complicit in and even the cause of bad software. But what is most surprising is that bad teams are almost always rewarded for their incompetence. They “meet deadlines” so they are considered to have delivered “results.”

And what’s wrong with delivering results? . . .