RSS

Learning to Code – Python is fun!

19 Jun

My enthusiasm for computers began in the early 1980s with an Apple machine and a language called Super Pilot, which I learned as part of my teacher training. I went on to play around with BASIC and a ZX Spectrum, before work and life got in the way. I never really developed that early interest in programming until I started teaching JavaScript to my computer literacy classes back in the early 2000s. I had trained as an English and History teacher but drifted into teaching computer applications because I was able to use a computer, and the rest of the staff were pretty clueless. From the beginning, though, I didn’t want to teach only Word, Excel and Access – I wanted my students to have some exposure to coding.

To my mind JavaScript was perfect. It ran in a browser so you didn’t have to spend the fist few lessons worrying about compilers and such, and you could quite quickly introduce key programming principles: comments, declaring variables, for loops, and so on. My own skills though were pretty basic – just a little above my students’!

aseroidOver the last year or so there has been an explosion of interest in learning to code, and so I decided to develop my skills more formally by doing a course on Python on Coursera. The course was offered by Rice, and consisted of lectures, quizzes and mini-projects developing simple games in Python, building up to an asteroid game in week 8! Student code was evaluated by peers, and the pace was relentless, with deadlines every Sunday! The coding was hard for relative novices like me, unfamiliar with Object Oriented Programming, but not too hard, and I think the staff managed to get the right balance. I managed to get all the projects out, sometimes not quite perfectly, when pressures of time got too much, but I always felt I could do it.

The peer evaluation worked well, and fostered a sense of collegiality. The Discussion Forums were very useful for posting queries and getting help when you got stuck. Sometimes perhaps a bit too much code was posted, but in terms of learning, it was very helpful to share ideas and see how others were approaching the problem.

The course also used a great tool – codeskulptor – which allowed you to code, and run your code inside a browser. It also allowed you to assess other students’ code easily. All-in-all there was a real sense of a community and a class, despite the purely online format and size of the course.

In my own classes I have been using game-creation as a tool as well, teaching my grade 10s to use basic ActionScript to create Flash games. This has worked well, and the quality of games has risen this year. However, I am looking for new ways to increase the coding content expected of my classes – none of which are programming classes. Having completed this Python course, I am considering designing a short high school Python course, based on game design. By providing partially coded templates it should be more accessible, and some of the basics could be introduced fairly painlessly.

If my students get half the buzz I got out of Python then they’ll be hooked for life!

Advertisements
 

2 responses to “Learning to Code – Python is fun!

  1. Laura

    June 20, 2013 at 12:14 am

    I’m so impressed! Last year I taught my first Digital Media class (after 20+ years teaching English), and a few of my 8th graders used http://www.code.org/ to start to learn coding. I have so much to learn!

    Like

     
    • Dorian Love

      June 20, 2013 at 8:00 am

      Sounds great! I find the mesh between English and digital media is very rewarding.

      Like

       

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: