Breaking Changes

Today we’re going to talk about breaking changes in libraries. Specifically, we’re going to answer the following:

  • What constitutes a breaking change?
  • How can I avoid making breaking changes?
  • When is a breaking change a good idea?
  • How do I indicate that a new version contains a breaking change?

Continue reading “Breaking Changes”


Handling Errors from Plug-ins

Before we get into today’s topic, I have some sadness to report. My beloved Dallas Stars were eliminated from the NHL playoffs. Also, my favorite player, Trevor Daley, who now plays for the Pittsburgh Penguins, has suffered a broken ankle and will not be able to play in the Stanley Cup games. Happily, if the Penguins win the Cup, he’ll still get his name engraved on its holy base!

Anyway, enough of that. Let’s get on to software.

Last time we built a very simple pluggable program where each plugin provides a translation of the string Hello, World! Today, we’re going to explore some of the problems inherent in our approach. Continue reading “Handling Errors from Plug-ins”