Plane thoughts – part 5

I recently participated in a meeting for the EdCan Network, part of the Canadian Education Association, in Mississauga. I knew we’d be talking about some heavy issues regarding education in Ontario, especially K-12 education. I spent my time on the flights down and back writing some thoughts I’d been wrestling with. I’m planning to share those thoughts in small posts for a little while. Here’s the fifth entry.

People look to YouTube for experts when learning, especially when learning outside of the context of formal education.

This is very effective if many people want to learn the same thing, because YouTube promotes effective (or at least popular) teaching examples above the poor examples. You can learn to play the guitar, change a tire, or factor a complex trinomial.

It is less effective (or impossible) if only a very few people want to learn the same thing, because that niche knowledge may not be present in video form, or there may be few examples to curate. The same is true if the development of a skill requires careful supervision.

In this case it may be necessary to look elsewhere for an expert, and perhaps to have a direct, one-to-one relationship with them, such as a master-apprentice relationship.

Screencasts for teaching Computer Science online

I’m teaching ICS3C/ICS3U online using the Java programming language to 24 students whom I never see, ever. ICS has a lot of technical components, and computer programming can be finicky. In a face-to-face class you can help a student debug (troubleshoot) their code while looking over their shoulder.

Online isn’t like this. It’s not exactly a disadvantage, though – students are solving their own problems more often because they don’t want to take the time to write an email or because I take too long to respond (i.e. more than 15 minutes – jokes!).

So, how do I teach students the mechanics of coding in Java without making them read a book?

I take a screencast of myself coding and talking about it. I use Screencast-O-Matic because it’s very, very reliable and awesome (on my own laptop I install the application so I’m not using Java in the browser).

an image showing a program being written in the NetBeans IDE

Are your videos excellent?

No, I don’t believe the videos are compelling in the way that a Hollywood film is, but they’re at least useful. Students can see the order in which I solve a problem, hear my thinking as I work, and see the mistakes I make.


Yup, I make mistakes when I code. I get error messages. Java throws Exceptions. Flashing red lights, irritating Microsoft “dings”, and all that.

They’re not on purpose (I’m not trying to make mistakes), but they’re beautiful opportunities for incidental learning. Students will make the same mistakes too, so I think this will help them to recognize these types of errors and be able to correct them.

What do you do with them?

I post the videos in two places:

First I post them into my e-Learning course in the Content area, mixed in with text explanations, assignments, discussions, and so on. I’ll usually also post the code that I write in these screencast sessions.

an image showing content items in an e-Learning course

Second I post them to YouTube and add them to a playlist I’ve been maintaining for this course. This is so that other people can use them if they want (including parents), and so that students can possibly download them more quickly or on different devices. I think it’s worth the extra time to cross-post.

An image showing a YouTube playing for ICS3C/ICS3UDo they use the videos?

They certainly do. I surveyed my students early in the course and most wanted the videos as well as PDF files with code examples and screenshots. Most students access the videos in the online learning environment, which probably makes sense since there’s more structure there. The number of views on YouTube isn’t very high, but it’s not zero :)

Hasn’t someone done this already? YouTube is FULL of stuff like this!

I know. There is a lot already out there, and a lot of that is “better” than what I’m making.

But there are some distinct advantages to doing this myself:

  • I run into the snags that students would run into, and I fix them
  • They can hear my voice and get to know me a bit, hopefully making other communication easier
  • I use the same IDE they do, so it’s up-to-date, not version 6.8 or whatever
  • I can focus my videos on the course concepts and not other stuff (like some tough math)

Are you going to keep doing this?

For this semester I will. In the future offerings of this course I hope to be able to reuse at least some of these videos, although I know they will become obsolete in some ways. And if I get a chance to teach ICS4C/4U I’ll get to work on a whole new round of concepts, which is kind of fun for a geek like me.

Introductory Computer Programming in Java – video playlist on YouTube

I’m teaching ICS3C/3U online right now, and I’ve been making videos for my students to learn from. I realize there are good resources online for this stuff already, but there are three reasons I’m making my own instead of curating other sources:

  1. The Java language has evolved, so some things are done differently now (e.g. String comparison)
  2. The development environment has had major updates (NetBeans)
  3. It’s nice to personalize things for my students so they can connect with me a little better

I’m trying to post my videos to YouTube as well as in the virtual Learning Environment. I don’t want to use just one or the other; YouTube is blocked in some school boards, and the vLE is harder to access from a mobile device. Crossposting seems like a good idea.

If you’re interested, here is the playlist I’ll add to this semester. I’ll warn you that they’re not “polished”, although that’s partly intentional: I don’t have time for a lot of re-takes, and I want students to see coding errors and their fixes too.