Programming Merit Badge

The Next Generation of Developers

This is the 4th year I have taught the Programming Merit Badge to Boy Scouts in the Southbounder District of the Blue Ridge Council in Greenville, SC. I consider it quite an honor to be asked to do it for this many years. The Boy Scout program was instrumental in my development as a boy. This has been my way of paying it forward to the next generation. My oldest son is an Eagle Scout, and my youngest is well into his journey at this point.

I have been a Boy Scout Assistant Scout Master, Unit Commissioner, Roundtable Commissioner, Cub Master, and a Den Leader. The most fulfilling part of my Scouting experience as an adult was Cub Master. I still think I am a 9 year old boy at heart. If you have not considered working with kids whether in Scouting, or another youth program, give it a chance. You will feel rewarded and humbled by the experience. I think I have learned more from the scouts than I have taught them.

Programming Merit Badge

There are key elements that must be completed, and these will change over time as the program evolves. They broadly include safety, history, general knowledge, and coding. A key element that must be completed for all the participants is the Boy Scout Cyber Chip. At the time of this writing, it must be renewed yearly, and covers different age groups.

Safety

This topic can be exciting if you can make a connection with the scouts on the topic. I am a gamer, so I am guilty of doing a lot of bad things with regards to ergomonics while playing games. When I relate my experiences, I get instant feedback of “Wow… me too!” Building that sense of espirit de corps with the scouts makes a tough topic interesting. They also become curious about what games I play. I also make mods for games which helps me to relate with them.

History

We can’t talk about where we are without knowing where we have been. I enjoy this section, and the scouts and parents who are present seem to enjoy it as well. I think my side bars about various items like the story of Grace Hopper and computer bugs make them laugh. If you don’t know the story, do a quick search on Google.

General Knowledge

I talk about the languages and usage with examples. The legal section on copyrights, patents, trademarks, and trade secrets (though really important) is one section that causes obvious glaze on their faces. Thankfully, I have a really cool career to get them talking: cryptanalyist.

Code

This is what the scouts are here to learn. I talk about some basics of how to code with tools like notepad, a terminal, and javac. I show them some of the pitfalls of this approach. It does not take a lot of effort to prove this point. Then I show them how to use the Apache Netbeans IDE to do development. If you are teaching programming, the clear choice is Apache Netbeans IDE for development. The hurdles to learning to use it are minimal. The scouts caught on quickly, and the few shortcut keys I taught them were used in earnest.

My goal was to teach them to code beyond the basic “Hello World!”. I have an example on how to calculate where x crosses the x-axis using the equation of a line:

References

  1. Programming Merit Badge - Module 1 - Safety
  2. Programming Merit Badge - Module 2 - History
  3. Programming Merit Badge - Module 3 - General Knowledge
  4. Programming Merit Badge - Module 4 - Code