Regular tasks for long-running projects

Updated . Posted . Visible to the public. Repeats.

When projects run for many years, they require special regular maintenance to stay fresh. This kind of maintenance is usually not necessary for small or quick projects, but required to keep long-running projects from getting stale.

You should be able to fit this into a regular development block.

Quarterly

Check which libraries need updating

As time goes by, libraries outdate. Check your software components and decide if any of it needs an update. Your main components (e.g. Ruby, Rails, Unpoly) should always be reasonably up to date.

Keeping your dependencies up-to-date is like brushing your teeth. If you stop doing it, rot will set in.

About once a year

Check your list of deferred tasks

It is usually inevitable to defer some tasks that "would be nice to have" but have no room in the project schedule. Check your list (e.g. the Linear drafts and todos) and decide on what to do: some technical debt might require imminent action, some wishes might already be forgotten and can confidently be deleted.

Check your database table sizes

Some table may grow more than you expected. If they do, dump size will increase (making backups and other dump operations more expensive) and your application might suffer from reduced performance.

Check the table size by consumed disk space in PostgreSQL / MySQL/MariaDB, or by row count.

Check storage usage

Just like database tables, storage usage may increase faster than expected. Check file storage locations of your application and do a quick sanity check by examining disk usage and folder structure. External storage providers like Akamai Netstorage are paid by the gigabyte, so you should aim to keep your footprint small.

Dominik Schöler
Last edit
Michael Leimstädtner
License
Source code in this card is licensed under the MIT License.
Posted by Dominik Schöler to makandra dev (2018-11-16 12:49)