One of the most important qualities that I look for into in people is if they care about our common interests. Care is about continuous improvement that resists degradation, or, how tech folks and boy scouts call it, boy scout rule.
It can be a contractor that goes the extra mile when renovating my house. It can be a partner who does small, but important steps to make our relationships flourish.
- The original Boy Scout rule
- Continuous improvement in software engineering
- Interviews and boy scout rule
- Summary
The original Boy Scout rule
The Boy Scouts term refers to the Boy Scouts of America organization (BSA) or other scouting groups around the world. The concept of leaving the surrounding environment in a better condition than you found it is a real principle. It is based on the idea of being responsible stewards of nature and the environment. The Boy Scouts are taught to:
- “Leave No Trace” is all about minimizing impact on the environment. For example, make no loud noise, pick up trash after yourself, do not cut down trees or even small branches, leave natural objects like rocks and plants in their place.
- Leave the Campground Better. Not only leave no trace but also make the environment better for the next group of people. For example, clean up trash left by others, improve and organize the campfire spot.
Continuous improvement in software engineering
The same principles can be applied in software engineering for a continuous improvement of the software products and systems, as well as bring benefits for the organization itself. The code, the products, the processes become outdated and old. Only a caring team can spot such things and do something about it before it is too late. The benefits of boy scout rule attitude are truly amazing, here are some of them
Technical benefits
- Lesser amount of technical debt that accumulates over time, as it is encouraged to carry out small related fixes along with mainstream tasks
- Better quality of code, as engineers look at code as something that can be improved, something that is not set in stone forever
- Shared code ownership and better solutions, as engineers are free to understand and improve things that they might never touched before
Organizational benefits
- Atmosphere of order and cleanliness. One of the critical traits of engineering team is to constantly strive for something better – the Boy Scout rule helps to keep things clean and in order without extra bureaucracy
- Increased overall responsibility comes from code ownership and affects various aspects
- Higher level of retention and satisfaction from work. It is always nicer to work in tidy room that you can arrange according to your needs, rather than in a dirty cowshed
Let’s meet at X 👋
And talk any time
Interviews and boy scout rule
It is good to understand if people care and improve things around them even before they are hired. I usually use the technical interview as the perfect opportunity to do some subtle, but very effective checks. If the interviewee does not do what I expect, it probably means nothing. If they do what I secretly expect, then it means a lot.
Give a malformed coding exercise and offer to fix and to refactor it to make it more efficient. As an example, provide
- code that does not follow the same format (using tabs and spaces at the same time, using or not using comments, some arbitrary language-specific things)
- code comments have small grammatical issues
- code has unnecessary repetitions
My expectations are not only that the interviewee makes the code work and provides ideas for technical improvements, but also fixes those small things. In fact those small things make a huge difference in the long run! Make sure to give them enough time, fixing grammar errors is not something you want to do first on a technical interview.
This trick reveals people who improve things around them without being asked. Such people not only fix small grammar mistakes in the code, but they improve processes, constantly move forward, and are very valuable members of the team. They change the world because they like it, not because they are told.
Summary
Boy scout rule and continuous improvement is one of those things that can be applied in any field of human activity to resist degradation. In software engineering it gives benefits both on technical and organization sides, such as lesser amount of technical debt, higher sense of ownership, better quality of code, constant improvement of process in response to changing conditions, etc.. In personal life it gives better mood and wellbeing due to more comfortable surroundings, both material and psychological-wise.
People who follow boy scout rules truly care and understand the value of constant improvement.