Open source projects and the boy scouts code

As programmers we all know that open source software exists. It’s practically impossible to be a programmer without using it every single day. I have talked with numerous programmers who have expressed an interest in contributing to open source projects. Reasons for this desire are numerous and diverse, but there is a recurring theme in the challenge that people experience: Where to start?

The boy scouts code

One of the things I love doing most is going out in nature for a hiking and camping trip. When going out into nature, especially when camping in the wild, it is always good to follow the mindset of “leave no trace”. The boy scout rule goes a little further: “Always leave the campground cleaner than you found it.” The famous programming guru known as Uncle Bob already translated this rule into a way to keep code clean, just like the campground. But I think we can take it as a useful analogy to look at open source software specifically.

open source

When working with any software tool, there will be moments of frustration:

  • Why does the tool not work in my specific circumstances? 
  • Why is this weird quirk not correctly explained in the documentation?
  • Why is the feature that I want not part of this project?


To come back to our initial analogy, it is like arriving at a campsite and finding a previous occupant has left some empty packaging lying around (although of course the cause of the issue is more likely a constraint of time or resources, rather than a blatant disregard for other campers).

Pick up the trash

The wonderful thing about open source projects is that you don’t have to simply accept that something works a certain way or wait for a big software company to create an update that addresses your specific issues. If the problem is simply a matter of picking up some trash, like a small change in code or a documentation update, you can just go ahead and open a pull request yourself. And if an issue is too big for you to fix right away, you can always simply open an issue to bring attention to it.

 

So the next time you encounter some figurative trash in a tool you use (or real trash in nature) be a good boy scout, pick it up, and leave the place better than you found it.

LinkedIn
Twitter
WhatsApp
Facebook