Unconventional Programming Opinion: You become an unofficial maintainer once you update your framework

TLDR: Dear framework developer, please consider us, the framework users, as the unofficial maintainer of your framework. When you change things, think about the wider cost.

Hero

Warning: This is going to be a short gibberish, brain-fart and/or rant.

Recently I was migrating a project from a framework v385 to v366 and felt the pain wasting time to apply some internal refactoring the framework team did to my own project.

Imagine if I had the following functions in my code and I wanted to refactor.

const isUnicorn = (animal) => {
  return hornCheck(animal)
        && !isThisCodeImaginary(animal)
        && areWeInMysticalLand();
}
const hornCheck = (animal) => animal.horns.length == 1;
const isThisCodeImaginary = (animal) => 1/0;
const areWeInMysticalLand = () => true;

Renaming any of those functions would cost me nothing. Now, if the same code was a framework, and your users defined the areWeInMysticalLand function, then changing it would be easy for you. For the users, you would leave an entry in the migration notes.

As a developer and user of the before-mentioned imaginary framework, you literally are changing your code to satisfy the refactoring the framework developers did.

Obviously this is a made up example and I don’t want to point the fingers to the poor maintainers. I just want to give you a different perspective on how to think about small changes.

With each new version of frameworks, languages, and tools around us, I wonder, when do we stop doing stuff in the name of better and improvements.

That’s it?

Yep, I don’t want to waste your and my time.

Let me go back searching the internet for why v366 gives me an error.

See ya later.