The Desktop Don Reference
Everything I know about software development in a single page of quotes.
Background
At the end of 2003, I accepted an opportunity to go on an extended business trip with my family to England. We moved to London in January of 2004, and returned back to the states at the end of the same year. Before I left, I decided I wanted to distill everything I knew about software development down to a set of memorable quotes. I used to read a lot of books. Most of the books I read were technical, but some were about leadership and project management. I also had some great mentors in the 1990s who left an impression on me with quotes that they would reference. I had to do some research to find sources for the quotes I included in the “Desktop Don Reference” (DDR), as none of them are my own. Some of the quotes are so common though, that I have been unable to identify an original source and have left them noted with a question mark.
Once I had my set of quotes, I organized them into seven categories, of three quotes each. This was very important, as you will understand once you read the first quote. I wanted the quotes to fit on a single printed page, with a reasonable sized font. I left printed copies with my team members at the time and told them if they ever had any questions for me while I was in London and if they couldn’t reach me, they could just refer to this page. I told them any advice I would give them would probably be found on this page of quotes.
Over the years, developers have asked me for this reference. I would smile any time I would see a developer that had the DDR hanging in their cubicle. I’m including the categories and quotes from the original DDR below.
Update (2023–10–25): After 20 years, I have learned a few new things, and have decided to add a new section to the DDR named “Communication”. After challenging myself on Twitter/X that I haven’t said anything new in 20 years, I realized that maybe I have, but it has taken a while to sink in. I’ve been saying the things in the communication section pretty much non-stop for the past 6 years.
Desktop Don Reference
Simplicity
The human mind can comprehend seven plus or minus two things at a time.
1
Things should be as simple as possible, but not any simpler.2
Keep it simple, stupid.3
Quality
Fix broken windows when you find them.
4
Premature optimization is the root of all evil.5
Do things once and only once.6
Process
Make it work, make it right, make it fast.
6
If it hurts when you touch it, then don’t touch it.7
Plan is nothing, planning is everything.8
Time
Slow down to speed up.
9
Thinking saves time.9
Modeling saves time.9
Teamwork
None of us is as smart as all of us.
10
It’s not always what you know, it’s often who you know.?
Help is a four-letter word you shouldn’t be afraid to use.?
Education
Learn something new every day.
16
You can’t listen when you’re talking.17
There is always someone smarter — find them and learn from them!18
The Future
You aren’t gonna need it. (YAGNI)
6
Those who do not study history are doomed to repeat it.11
The best way to predict the future is to invent it.12
Communication
They can’t hear you on mute.
13
Docendo discimus.14
There’s a blog for that.15
Note: If I could predict the future, I wouldn’t need to work.
Quote attribution
4
The Pragmatic Programmers — Dave Thomas and Andy Hunt
7
Mom
9
Larry Constantine, from “Beyond Chaos”
12
Alan Kay
13
Me — I gave a talk with the title “They Can’t Hear You on Mute” at the Open Source Strategy Forum in 2017.
14
A Latin proverb I learned from Chandra Guntur, meaning “By teaching, we learn.”
15
Me — I’m trying to write down everything that I know. This quote is a reminder to do that if it hasn’t been done yet.
16
Ralph Waldo Emerson
17
Ernest Hemingway
18
Confucius
I am a Project Lead and Committer for the Eclipse Collections OSS project at the Eclipse Foundation. Eclipse Collections is open for contributions. If you like the library, you can let us know by starring it on GitHub.