O'Reilly logo

Becoming a Better Programmer by Pete Goodliffe

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 23. Please Release Me

I heard an Angel singing

When the day was springing,

“Mercy, Pity, Peace

Is the world’s release.”

William Blake I Heard an Angel

Creating a software release is an incredibly important step in your software development process, and not one that should left to the last minute. It requires discipline and planning.

image with no caption

Many times I have run into silly, perfectly avoidable problems that were caused by a lackadaisical approach to the construction of software releases.

Most of these were caused by the sloppy habit of creating a “release” from a local working directory, rather than from a clean checkout. (Hint: this is not a real software release, it’s a “build” of your code, you need a lot more process and diligence to create a proper release.)

Some examples:

  • A software release was made from a developer’s local working directory. The developer hadn’t cleaned the code first, and the directory contained uncommitted source file changes. He noticed, but made the “release” anyway. When problems were reported, we had no record of exactly what went into that build. The result: debugging the software was a nightmare, mostly guesswork.
  • A software release was made from a local directory that wasn’t up-to-date; the developer hadn’t updated to the HEAD of the Subversion code repository. So the release was missing features and bug fixes. Helpfully, the developer tagged the HEAD ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required