Monday, April 23, 2012

CS 101 has started

Coursera's version of CS 101 went live today. Iris is viewing/practicing lecture 1 materials right now. We signed up for it months ago after watching this engaging video. But, there were many delays.

From what I've seen, the extra time was well spent. The browser-based API to perform the programming exercises works well. Iris was up and running (tweaking the sample programs provided) in minutes. In six weeks, the class will cover:
Syllabus
CS101 topics are covered with a mixture of video lecture and active lab work, all in the browser:
  • The nature of computers and code, what they can and cannot do
  • How computer hardware works: chips, cpu, memory, disk
  • Necessary jargon: bits, bytes, megabytes, gigabytes
  • How software works: what is a program, what is "running"
  • How digital images work
  • Computer code: loops and logic
  • Big ideas: abstraction, logic, bugs
  • How structured data works
  • How the internet works: ip address, routing, ethernet, wi-fi
  • Computer security: viruses, trojans, and passwords, oh my!
  • Analog vs. digital
  • Digital media, images, sounds, video, compression
The class is free. It's a great diversionary activity for kids who are suffering through standardized exams this season. In addition to having fun, they might just learn something useful.

Kids 13 and up can sign up with parental permission. The class is certainly appropriate for advanced kids younger than 13, but they can only do it with an adult. (Sorry, that's the law governing internet correspondence with minors, not Coursera's policy.) I signed up using my email address, log Iris in, and then take a hands off approach while she plays around.

Thank-you Coursera, Nick Parlante and Google for giving him time to work on this project.

What am I doing? I'm learning from data. This Caltech class is so much more challenging and rigorous than the AI class I took last Fall. Limits, functional analysis, proofs by mathematical induction, perceptron learning algorithms, error bounds and a heck of a lot of homework problems that can only be solved by writing your own code.

It's a time commitment, but I am enjoying the deep dive into rigor. I also like how you can view the lectures live and then ask questions, just like in a real class. Students type their questions in and the head TA reads them aloud to the professor during the Q&A session following each lecture.

Here's another computer/human hybrid teacher story:
At Virginia Tech, computers help solve a math class problem

Update:
She just finished the exercises for lesson 1 and proundly announced that she got an A+. Thank-you so much, Nick, for giving her something more useful to do on the computer than dress and groom ponies or Barbie!

3 comments:

  1. Thank you for the link to Coursera. What a great concept!

    Hope your time between jobs proves fruitful.

    ReplyDelete
  2. fubarator01:04

    For your coursework, how do you like Python? I am learning the basics for a Udacity course and starting to wonder how numpy compares with things like MATLAB or Mathematica. Those are nice tools but maintaining access to them can be a struggle.

    ReplyDelete
  3. @fubarator
    I'm using python, numpy and matplotlib as a substitute for IDL, which I no longer have access to. It's slightly different, and I am still learning. So far, I've found them comparable. IDL has nice features found in scipy, which I can't seem to install due to a purported python version incompatibility. (scipy detects that I don't have python 2.6+ even though OS X runs 2.6.)

    ReplyDelete