Don't Wait; Keep It Up to Date

- - | Comments

Let’s start brushing our teeth as programmers.

We need to consistently prioritize updating our frameworks/libraries/dependencies. Having unit tests makes this much easier, but even if you don’t have them, it’s still necessary.

Don’t think about this like flossing

Brushing your teeth is something that you do extremely regularly and have built up such a habit that you can’t really imagine life without it. Flossing is a nice to have that many of us skip with impunity. It doesn’t necessarily have to be once a day, but thinking about updating on a regular, predefined basis will force you to need to consciously make the choice to disregard instead of absentmindedly forgetting.

On teams, you should make sure that there’s a recurring task/calendar event every month to ensure that your codebases are up to date. This is most important with frameworks/impactful libraries like Ember/Angular/React, but it is just as helpful for anything inside of the world of Node/Ruby/Python/Java/anything-with-dependencies.

Once you make this as much of a habit as brushing your teeth, you won’t even need to think about it because it becomes every team member’s shared expectation. Use reverse-broken-window syndrome to your advantage. If everyone is doing it, each person will keep up with the crowd.

The automated, electric toothbrushes

I still use the plain old toothbrushes that I get for free every six months from my dentist, but I know that many are bigger fans of the electric/sonic variety. Gratefully, they exist for programmers trying to keep depencenies up to date too!

  1. Greenkeeper

This is a great tool by the makers of Hoodie that will automagically open PRs against your npm project when a dependency releases a new version.

  1. Sibbell

This tool will send you emails whenever a dependency creates a new GitHub “Release”

  1. VersionEye

For open source Node projects, VersionEye will show you which entries in your package.json are out of date

Start Now

There’s nothing stopping you from starting this practice right now. You are resourceful. You could make a slackbot for this, setup a shared calendar, or any other myriad solutions. All I can tell you is that once you do, your team will be better off.

Here’s to gingivitis free software!