When the University of British Columbia‘s edX group put up information about a new MicroMasters program for Software Development, I was excited. (I get excited by not having to pick my son up from karate, or finding paninis in the canteen. So keep in mind I have a low threshold for that word.) Not because of the silly certification it could bestow for US$832.50 (currently about £650), but because I loved their Systematic Programming Design series I took last year, and was looking forward to new content. The first course in the MicroMasters series is How to Code: Simple Data, and it started in April. I wanted to finish up this year’s university stuff before tackling it, so I jumped over there sometime last week.
For good or ill, the first two courses in the MicroMasters program are just the original three courses in the SPD series. In the SPD series, they broke the 11 weeks up over three courses, and now they’re breaking them up over 2. There appears to be a benefit if you do pay the optional amount for the certificates, in that you get contact time in the form of Q&A sessions with the staff, so you can ask for assistance understanding whatever is personally confounding you, and you get your final project marked by staff, too, so you’re not just going off of your own potentially flawed understanding of the material when grading your own work. (“Mark yourself out of 10.” “A million thousand bazillion.” “Fair enough.”) I don’t know that it’s worth $125, but it’s not worth nothing. (You could buy more than 100 tacos for that. Now tell me it’s worth it.)
Anyway, they won’t move onto the new material until August, when they apply Data Abstraction to Java. This is good not because I care one way or the other about Java (I get as uptight about people debating programming languages used in computer science as the people who are doing the debating), but because I can see how to apply their techniques to Object Oriented Programming … Though, to be honest, it’s much easier to see after studying what I have over the last year. Systematic Program Design isn’t OOP specific, but it is beautifully closely related.