Monday, March 10, 2014

Udacity Online Training Review

Udacity Hadoop and MapReduce
I recently took the Udacity Hadoop and MapReduce online course, with the extra classroom / coaching option. The other interesting aspect was that a number of my coworkers at Twin Technologies  took the class at the same time.

I come at this course from a unique context. Not only am I a senior developer, but I'm also a university professor, a professional technical trainer, and my wife will have a a PhD in educational psychology in May. (This is relevant in our shared discussions about learning and trends).

I thought that this course was excellent. I liked that the videos explained the big picture, but there there was hands on, real world exercises to practice with. The multiple choice / multiple answer questions throughout the video were a little annoying, but I recognize the need for assessment if you are going to  be offering a certificate at the end.

I appreciated that the data sets were "messy", some being incomplete or in different formats, and that you had to add error checking to your code.  It was great to actually have to get in a do some real examples. I'm happy that the exercises weren't step-by-step, as I have found that most students I've had were pretty good at following directions, but after the exercise is over, they really didn't get anything from the "happy path".

One of the things that struck me as interesting, was since this class is mostly automated, that there is a "right" answer. This was useful, as it allowed for safe failures and fast feedback, both of which promote leaning. It was also frustrating, when in some of the exercises the answer that I got was not what the computer wanted, mainly because of an anomaly in the data.

For example, one of the exercises was to determine the most frequently accessed file, and how often had it been accessed. I found the file easily enough, but I was 4 off the total. The course software only told me I was wrong. I had to read through the discussion to determine that I was 4 off, and what the reasons behind it. Apparently, 99.98% of the files were relative paths in the log files that we were processing. But there was that .01% that had absolute paths. This meant that the file in question didn't match the specific string criteria that the others did, and thus ended up outside the total.

Overall this was a good lesson to learn, that the data might come in forms that are unexpected. However, I feel in the real world, missing that .01% would have been an acceptable oversight. Mostly I was frustrated at the extra time that the exercise required to determine this.

The coaches were readily available, and certainly had a good handle on coaching.... asking leading questions, listening, providing appropriate feedback without giving away the answers. That was nice to see, and I always enjoyed talking to them.

The exit interview was a novel idea. Obviously part of the interview is for you to prove you are who you said you are, which I'm assuming is for whatever accreditation Udacity is seeking. But the other interesting part is the feedback. Being an agileist, feedback is hugely important and good feedback is really difficult to come by. So I ended up talking to the interviewer for longer than he probably expected, but I offered up lots of ideas for improvement as well as my thoughts on the course (some of which are reflected here). One thing to note is that scheduling the exit interview is about 1 week away from the time of request. If you are seeking certification and no the subscription plan, you will want to account for that extra time.

It was fantastic to take this course with some of my co-workers. Of course we all worked at a different pace, but in a remote environment to be able to have a shared experience outside of our annual meetings and project work, is really valuable for team building. It was nice to be able to share our successes and pitfalls. I especially liked having other people checking in with each other to make sure we were all still moving along. I enjoyed feeling like I was helping when I could clarify a question or tell people to read the discussion or notes before starting on an exercise. It certainly was more personal and satisfying than posting to the forum.

My take away from taking this class, is that while not new information, I certainly prefer to be higher up on Bloom's taxonomy of learning with fast feedback, safe failures, and "messy" real world data / problems in my learning opportunities.

Next time, I would push myself to complete it a little faster so that I didn't incur a 2nd month charge of the subscription fee though.