Automate to free your mental bandwidth
Alexandre Jeffroy
Software Engineer
On a software project, a good chunk of the work is repetitive. Building, running the tests, checking compliance, preparing a release: taken one by one, these tasks look harmless. Put end to end over a week, they eat up time and, more expensively still, attention.
Mental load, the silent enemy
Every manual task you have to remember to do takes up a slot in your head. "Did I re-run the tests?", "Did I regenerate the documentation?". That background hum is tiring, and a tired brain forgets. Oversights, in turn, become mistakes.
Automating means handing these checks over to the machine, so you can keep your energy where it actually matters: the engineering.
What I automate first
- ▸Building and running the tests
- ▸Code quality and compliance checks
- ▸Preparing and publishing releases
- ▸Generating documentation
A simple example
A short script that builds, tests and reports any failure is already enough to remove several daily manual steps.
1#!/usr/bin/env bash
2set -euo pipefail
3
4# Build, run the tests and stop at the first failure
5cmake --build build -j
6ctest --test-dir build --output-on-failure
7
8echo "Build and tests: OK"The script looks unassuming. Its merit lies elsewhere: it guarantees that the same sequence runs the same way, every time, for everyone.
Automation improves quality
An automated task is a reproducible task. It no longer depends on everyone's vigilance on a Friday evening. The product gains reliability, and the team gains peace of mind.
A habit that pays off
Automating is not a waste of time. It is an investment that pays off quickly, in quality as much as in saved mental load. Assignment after assignment, it has simply become second nature to me.
Other articles
Workbench: my Swiss Army knife for killing repetitive tasks
Workbench is the tool at the foundation of my whole internal-tooling approach. A single graphical interface that gathers the day-to-day repetitive actions and replaces a handful of tedious commands with a few clicks.
SonarQube: Mastering Quality and Technical Debt
In sectors where reliability isn't negotiable, how do you make sure hundreds of thousands of lines of code meet the highest standards? SonarQube has become an essential ally on my projects.