Regular tasks for long-running projects
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.
- 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, Angular) should always be reasonably up to date.
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 Pivotal Tracker icebox) 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.
In order to get the row count of all tables in your database, run this in Postgres:Copy
SELECT schemaname,relname,n_live_tup FROM pg_stat_user_tables ORDER BY n_live_tup DESC;
… or this in MySQL:Copy
SELECT table_name, table_rows FROM information_schema.tables WHERE table_schema = (SELECT database());
- 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.