I’ve just finished my first course on Coursera, Computing for Data Analysis. I enjoyed it, but I’m not sure it would work for everyone. Massive open online courses (MOOCs) are all the rage right now (Open CourseWare does something similar, and the Khan Academy also offers free online education), and I always want to learn more, so I was curious as to how I would find it.
Computing For Data Analysis Specifically
The purpose of this course was to introduce students to the R programming language for handling statistics, and it lasted four weeks. Teaching was through video lectures, and assessment was through weekly quizzes and assignments. At the end of the course, I feel relatively comfortable starting up an R console, writing functions, using the various data structures, and navigating the help.
I have an MSc. in Computer Science, and have worked with the PL/SQL programming language professionally for eight years. Learning a new language when you have already used another extensively is much easier than learning your first language. Many of the comments on the forums were about the difficultly level of the assignments. One thread, about quitting, had a huge number of comments after week two when the difficulty level went up steeply.
The major division between people who persisted and those who gave up may be experience in finding things out. From my professional experience, I am used to using Google when I can’t remember something or need to find out a command or function. If I find an error I haven’t seen before, the first thing I do is put the error text into Google. Many of those complaining, I think, expected to find everything they needed to know in the video lectures. There was a short lecture in the first week about how to find help, but many people seem to have forgotten it. A clearer statement at the start, about the need for students to do some research of their own, might have helped.
There was a poorly chosen example for one video lecture, which I think left a lot of people struggling to understand what was being taught. A simpler example would have helped, or at least a clear division between what we needed to learn and what we could ignore.
The assessments, which could be retried multiple times, gave immediate feedback about progress, since work was automatically marked within seconds. However, for the coding assignments, although marks were available quickly, there was no additional feedback. If a submission failed, the only feedback was, “Incorrect!” I’m not sure how easy it would be to provide more detailed feedback, given the number of ways in which software can go wrong.
The lecturer spoke rather slowly during the videos. Fortunately, the video viewer has a speed control, so it was easy to increase the playback speed to something more engaging.
Coursera More Generally
Compared to a conventional course, the biggest issue is that it’s difficult to get an answer to a question. You can’t ask the lecturer, and you can’t easily ask someone else on the course. If people are really stuck, they may not even know how to ask the question.
Model answers are not given out after each week’s assignment. This may be because the lecturer wants to re-use the assignment in the next iteration of the course. Although my assignment answers got full marks, they are far from perfect, and I would appreciate the chance to compare them to the idiomatic R of an experienced R programmer.
Personally I enjoyed the course, and it was more challenging than I expected it to be. I feel like I learned something, so I’ve signed up for more courses.
I have a few recognised qualifications already, though, so I don’t particularly need any more, and I can study purely for curiosity. If people need the signal that a conventional qualification provides, then Coursera and the like are not yet ready to meet their needs. Whether they can in the next couple of decades will be an interesting question.