Wednesday, July 6, 2016

Programming resources: part 2

In my last blog post, I wrote about the programming tools I use (primarily Scratch) to work with middle school students in our video game programming club. For many students, the block-based approach in Scratch along with the emphasis on game programming is a good challenge. However, I did have a few students who would have benefited from something more intensive.

Since I didn't want to use code.org (that's already being used by our robotics class), I followed a student suggestion and tried out codecademy. Unlike Scratch and code.org, codecademy is intended for adult learners and offers courses in a number of programming languages.

Some of the choices in codeacademy
I worked through two languages: Python (because I knew the syntax was very straightforward) and JavaScript (for a number of reasons which you can find below). In both cases, the teaching method was the same. You had separate lessons introducing each topic, with each lesson broken up into tasks that you had to complete before moving to the next task. (For example, an introductory task might be to write code to print out "hello world!") If your code isn't right, you can't move on, but if it is, you make progress, eventually earned badges and points. By the way, all of this is free and just requires signing up with an email address.

A sample task from the JavaScript unit
Could middle schoolers handle this? Well, at least a few of my students from this year could probably make progress in this environment. There is some math required (especially in the Python unit), but it is mostly exponents, decimal arithmetic, and understanding mod and remainders. Both of the units I took covered Boolean operators (which I think talented students could handle) and the basics of object-oriented programming (which may be too much).

If I give this option for students this coming year, I will use JavaScript for a couple of reasons:
  1. There's something really cool about coding dialog boxes that appear in your browser --- I think my students will love that!
  2. If my students are advanced enough, JavaScript can lead up to the App Lab at code.org.
  3. If I become fluent enough in JavaScript, I might be able to better understand Google Apps Script and learn to use scripts to supplement what I do with Google Apps in my classroom.

No comments:

Post a Comment