Sunday, June 17, 2012

Bootstrap Programming Project

I wanted to reflect on a project that I did with my 8th grade Algebra students (the non-accelerated group) this year. Usually, the end of the year is filled with review and studying for the final exam, but this year, I decided to give the final before the 8th grade trip, which left 4 weeks at the end of the year for......? Exactly, I had no idea what I was going to do with that time, but even though I've never taught this particular class before, I had taught 8th graders before and remembered their "senioritis" and difficulty with doing any work after a week-long fun trip away from school with all of their friends. Sooo, my big question was, what activities/projects are a suitable and engaging way to celebrate and culminate the end of a 2-year Algebra course? By chance, I heard about a workshop being sponsored by Google about a programming curriculum that was very connected to Algebra, and I decided to attend. The curriculum (called Bootstrap) is completely open - all student and teacher materials are available online, and workshops are free for teachers. It basically walks students through the creation of a functioning video game using a language (WeScheme) that is much more mathematical than other languages and is very user friendly.



The creator of the curriculum is Emmanuel Schanzer, a Math teacher (who was a programmer before that) who is now working on his M.Ed. at Harvard. I did the programming project for 15 consecutive 45-minute class periods (with no HW assignments), which was quite a few less than Emmanuel recommended, but seemed to work fine for my students (a few complained that it was a bit too rushed, but others complained that it went too slowly, which probably means that it was okay). I didn't have a chance to do any of the extension activities, although a class that got ahead of the others did some design explorations, which was great fun. In reflecting on this project, I'm going to organize my thoughts into pros and cons.

Pros:

  • Students really enjoyed it. It was one of the most mentioned activities in the end-of-year feedback form when asked about their favorite thing we did in class this year. And having our last day of class dedicated to student presentations was such a nice closing note.
  • Concrete, fun end result (a working video game) that students could share with each other
  • Student choice in the images and "storyline" for their game; they did feel like the game was theirs
  • Seeing algebraic concepts (definition of function, domain, range, composition of functions, writing function rules, distance formula) in action, as well as previewing some geometric concepts that students will encounter next year
  • All materials already exist and are broken down into lesson chunks. All I had to do was work through the directions to make sure that I knew how to code each part and decide on my tweaks (which parts to work through as a class, which parts students could do in pairs/groups, how many examples, etc).
  • Emmanuel is super helpful - he answered emails within a few minutes and even called me up so that he could walk me through a part that I couldn't figure out on my own.
  • Allows students to see a real hands-on side of mathematics, not something "real-world" that's been created in order to justify using math
  • Fun for me! I haven't done any programming since college, so it was nice for me to stretch a bit and be frustrated/stumped in a different way, as well as lots of opportunity to be amazed by students' thinking because it was basically new to me.
  • Allows different kids to shine than those who traditionally excel in formal math. I loved seeing kids who barely spoke (or passed a test) all year take dominant roles in the class and be respected as experts.
  • It's kind of awesome (and really, really bizarre) not to assign homework for such a long stretch. Students were really appreciative given the high loads they seemed to be getting in all of their other classes at the time. The deal I made with them is that in return, they had to be productive in class, and this worked fairly well.
Cons:
  • A lot of the code is already preset (which direction different components can move, structure of the game) so the kids in actuality are just tinkering at the edges. I felt like my students would have benefited from more challenge and opportunities to make the game more complex. It also means the end products are really, really similar.
  • All materials already exist and are broken down into lesson chunks. I generally itch at constraints like this... I like to own a curriculum because I made most of it up or twisted it so much from the original version that it hardly resembles it. This felt a little prefabricated and "nice" for my taste.
  • The way that the lessons are written is very heavy on teacher-direct instruction, which isn't really my style. I amended some parts to include more pair/group work, but it was hard for me to deviate too much since I don't know enough about programming to really set them/myself loose. It also means everyone is expected to move at the same pace, which is basically unreasonable. It meant that there were days where kids with a more intuitive understanding of coding sat around bored for half the class and other days where kids who were struggling felt lost because we just needed to move on.
  • I needed to reserve laptop carts every day for 4 weeks straight. The IS department at school was not pleased, and it put a strain on other teachers' ability to use laptops at that time.
So overall, the project was definitely a success, and I hope that with more experience, I can address some of my cons next year. For example, I will communicate with Emmanuel to find out if there are ways to change the preset backbone code in order to allow for more complex variations of the game. I will also work this summer to revise the lesson outlines and make them more student-directed and find more opportunities for student exploration (there are extension activities on the Bootstrap website that I haven't looked at in great detail yet, but which may be promising). If you are interested in using Bootstrap in your class, they seem to be running workshops all the time, and it's a nice chunk of a curriculum that can fit with almost any level of math experience of middle and high school students. They also have a Facebook page and Google group, which has an updated list of upcoming workshops. And write me a note if you have any questions or comments about my experiences with it this year.

No comments:

Post a Comment