3 potential pitfalls of coding camps
I spent several hours this week volunteering with a week-long coding camp offered by my local school district. The setting was awesome — dozens of middle-schoolers on benches around industrial tables, with the power strips hanging from the high bay ceiling and an assortment of machining equipment and robots scattered about. The wifi was excellent, the computers of higher quality than mine, and the instructor (a local rockstar who helps high school kids find their way into good-paying technology careers) characteristically amazing.
The beginning of the camp started the same way as all of the code clubs I have seen. Energy was high. So were the nerves, as many of the kids attending had little or no experience with coding. There were a lot of glitches — both the human and the technical kind — but finally we found a groove.
I was amazed to watch these kids navigate their way through the basics of computer programming, all independently and at their own pace. Some of them skipped levels. Some spent hours mastering a single skill. With some prodding, they got up and asked each other for help. All as it should be.
But the week-long camp is a new format for me, and that means there were plenty of opportunities to learn. Here are the three biggest challenges we faced, along with some ideas about how to avoid them or mitigate the impacts.
- False expectations. One of the boys at the club started strong, full of confidence and big talk. He is naturally competitive, and his instinct was to look around the room and compare himself to other kids. Fortunately, he has a good head on his shoulders and he was able to learn quickly, flying through the intro tutorials on Code.org and building some proficiency in MIT’s Scratch platform. We may have given him the false expectation that he would be a master coder by the end of the week. Unfortunately, coding is hard and it takes a lot more time than one week to be able to build what he wanted to build. Despite our words of encouragement, he was visibly deflated by the third day. Hopefully we convinced him to stick with it.
- Burnout. The code club format is a weekly meeting of 1.5 to 2 hours. This tends to be highly energetic, fueled by the social interactions and the pent up desire to show off progress made since the last meeting. In contrast, our coding camp meets every day for six hours. That’s a lot of time to be mentally exerting! Burnout can be dangerous, because the kids might remember the struggle and forget the exhilaration. That happened to two of the girls I was impressed with on the first day. By lunchtime on day 2, they were losing focus, and they didn’t even show up on day 3.
- Dead ends. Overall, the coding camp has been a huge success. I’m amazed with the enthusiasm, effort and persistence of these kids, whether they are trying coding for the first time or refining their craft after years of experience. The biggest problem with a coding camp is that it ends! All the kids have seen the fruits of their labor this week, and they are as excited as they ever have been about coding. Some of them felt discouraged or burnt out, but at this moment they all know that they are capable of doing this. Now what? Fortunately, there are weekly code clubs offered at libraries all over the Phoenix metro area, and these kids will have the opportunity to continue their learning. Maybe one of them will invent the next Minecraft. Or at least win a prize at the Great AZ Code Challenge :)
This is a funny (dark, but funny) take on the expectations point above:
There are probably other pitfalls, but those three stood out to me as the most formidable. We tried our best to navigate and overcome (the wonders of improvisation!), but here are some ideas in case you are running a code camp in the near future:
- Be explicit about the growth mindset. By explaining how repeated effort and learning from mistakes leads to eventual success, you are simultaneously managing expectations and providing fuel to prevent burnout. The kids will realize they won’t get everything perfect right away, or anytime soon…and that’s OK.
- Build in variety and breaks. Luckily for us, one of the teen volunteers helping with our coding camp was also part of the local robotics team. He hooked up a robot that he had programmed during competitions, and used it for an invigorating game of catch with the middle school coders during a break. Other coders took breaks to play games, eat snacks, practice ballet, or draw on the whiteboards.
- Keep coding. If you can, collect signups on the spot for a weekly code club where the kids can continue to hone their craft. But if that’s not possible, at a minimum you should provide a list of resources so the kids (and their parents) know exactly what to do on the home computer to keep learning. Connections to other events and activities are also valuable.
Have you run a coding camp? Are there tips you can share to avoid these pitfalls, or perhaps other pitfalls that I haven’t even thought of? Please share!