The Future

Donald Raab
3 min readJul 17, 2024

--

The future always happens, and we see it just as it becomes the past.

Photo by Hadija on Unsplash

Quote category seven in the Desktop Don Reference (DDR) is about The Future. Stay tuned, the future is just off to the right.

The Future

Developers are obsessed with the future. We live in the present. We tend to forget about the past.

You aren’t gonna need it. (YAGNI)

A quote from Kent Beck which was popularized in Extreme Programming. We should only build the software we know we need today. We should not try and predict what we will need in the future and build that.

What does it mean to me?

Speculative software development is risky. If I could predict the future, then I wouldn’t need to work. If you can predict the future, great! I hope it works out for you. For the rest of us who view software development as a long-term career and not a short-term gamble, sticking with “you aren’t gonna need it” and building only what the customer needs when they need it is a safer and wiser bet.

Those who do not study history are doomed to repeat it.

This quote is attributed to George Santayana who said, “Those who cannot remember the past are condemned to repeat it.”

What does it mean to me?

If we want to be prepared for the future, we need to learn as many lessons as we can from the past. Developers who only learn the shiny new programming languages, are doomed to repeat lessons that were learned long ago in the old classic programming languages. Developers can benefit from studying many programming languages, both old and new. My favorite classic programming languages, which are all over 40 years old, are Smalltalk, Lisp, Prolog, and Pascal. There are modern options available for all of these languages.

The best way to predict the future is to invent it.

This quote is attributed to Alan Kay, the creator of the Smalltalk programming language. Alan Kay and his team at Xerox Parc created much of what we know now as modern computing. They were literally inventing the future that we now know as the present.

What does it mean to me?

There are opportunities available everywhere to invent the future. The key to inventing the future is not trying to predict it. The key is to just go out and do it! We should create things to solve problems we have. We should write about these things to get feedback and learn. The more we create and write, the more likely we are to identify innovative things that are missing. When we identify a missing thing that we need, we may have discovered an opportunity to build something that not only solves our problems, but solves problems for others as well.

This is how I created Eclipse Collections.

That’s all for The Future

I hope you enjoyed the read, and will stay tuned for bonus category number eight: Communication. 20 years passed by before I finally changed the Desktop Don Reference. The only change I ever made was adding a new missing category named Communication with three quotes.

If you haven’t already, you can read about categories one through six: Simplicity , Quality , Process, Time, Teamwork and Education.

Thanks for reading!

I am the creator of and committer for the Eclipse Collections OSS project, which is managed at the Eclipse Foundation. Eclipse Collections is open for contributions.

--

--

Donald Raab

Java Champion. Creator of the Eclipse Collections OSS Java library (https://github.com/eclipse/eclipse-collections). Inspired by Smalltalk. Opinions are my own.