Written by Patrick Scanlon
Each year GISincers from across the United States set aside their project work and get on a plane (or in a car) and travel to Unplugged, our annual company gathering. Unplugged 2017 was held just a few weeks ago in Stone Mountain, GA and featured a new and exciting event for developers: Code Retreat.
Code Retreat is an event focused on practicing the craft of software development. It was started in Ann Arbor, MI in 2009 and since then hundreds of Code Retreats have been held all over the world. We started by reviewing Conway's Game of Life as the programming problem for the day. Then the group broke into pairs and each pair worked on coding some part of Conway's Game of Life for 45 minutes. After the timer went off we all stopped what we were doing and discussed what approach we took and what we learned. Then we did something that surprises most people: we deleted the code we just wrote. Then we switched partners and repeated the process for another 45 minutes. Although this process is supposed to repeat for at least 4 hours (ideally Code Retreat would be a day long) we had to break early due to various logistical constraints.
Overall our code retreat was a huge success! Knowing that we were not expected to produce anything gave us the freedom to do focused practice. The importance of focused practice is well understood when learning a musical instrument; students typically spend hours practicing scales in an environment free from external expectations. Code Retreat gave us the ability to sharpen the fundamental skills involved in programming without having to worry about how the code will look or whether it works. We were able to practice such things as unit testing and functional programming principles and I think each developer learned something.
Since this was our first Code Retreat and because it was such a unique event, we didn't get everything right the first try. We had some trouble scaling down our efforts. I think when we received the instructions to work on something for 45 minutes we all instinctively translated that into an instruction to complete the task in 45 minutes. So instead of focusing on writing a small amount of perfect code the way a piano player would focus on playing a perfect scale we dedicated our energy to banging out a larger chunk of code at breakneck speed. Next time we will focus on quality over quantity.
To learn more about Code Retreat visit their website: http://coderetreat.org. If you like what you see, check out the list of events and see if there is an upcoming Code Retreat in your area!