Online D course on coursera/udacity/etc?

Adam Wilson flyboynw at gmail.com
Tue Mar 19 12:15:02 PDT 2013


On Mon, 18 Mar 2013 18:52:42 -0700, Andrei Alexandrescu  
<SeeWebsiteForEmail at erdani.org> wrote:

> Hello,
>
>
> Online courses are becoming quite popular. A D course on one of the  
> up-and-coming online course sites would be great. If anyone would want  
> to do such a course (e.g. derived from TDPL), chime in here with ideas.
>
>
> Thanks,
>
> Andrei

We looked into doing something like this for one of our products. And got  
a few interesting takeaways from it.

First off, doing anything of the quality that a site like Coursera is  
likely to accept requires a pretty substantial up-front investment. You  
need access to a soundstage, HD camera, audio mixing gear, and an  
assortment of lights for the "talking head" portions of the videos that  
are usually present. Even if you choose to eschew the talking head  
portions completely you still need access to a sound-isolated booth and  
audio mixing gear. This wasn't a major problem for us (you can rent these  
things just about anywhere in North America/Europe), so it wasn't the  
reason we decided not to.

I'd also point out that this really requires a trained voice-actor with  
knowledge of how to modulate their voice to sound correct in audio.  
Voice-Over work is most definitely NOT something just anyone can do.  
Unless the community has someone with the needed skills in this area,  
you'd be well advised to hire it out for a few K$. Having a good voice  
will make ALL the difference in whether or not people can even stand to  
listen through a single video segment. We (Prospective Software) happen to  
have someone with the required skills on staff already, so that wasn't the  
reason we decided against either.

The reason we decided not to essentially boils down to the inherent  
properties of video. First, video is linear. And second, video is not  
searchable. Given that programming is both highly non-linear and highly  
context-sensitive, these two properties make video a less than ideal  
method for teaching languages. That's not to say it can't be done, our  
marketing guy took the C# course from Lynda.com (similar to coursera) in  
order to better understand what he is selling (and just what the heck  
those programmers were saying!). However, the content was very basic, and  
was not really meant as anything other than a jumping off point for  
experimentation. And even to cover the basics took something like 40hrs of  
video. It took the marketing guy 40 hours to complete roughly 8 hours of  
video due to the constant rewinding and reloading of other videos he  
needed to remind himself. Now the marketing guy has no programming  
background, but that said, languages are contextual, and you always have  
to rewind to remember what the the presenter is referencing from two  
videos ago.

There was also another reason. We couldn't find a single company in our  
space (broadly defined as programmer tools) that used videos as their  
primary teaching method. If they had any videos at all, they tended to be  
feature-specific usage demonstrations. What were the companies we looked  
at pushing as the best way to learn their software? Documentation. Which I  
define as searchable documents that encourage hands-on experimentation.  
Also of note is that their documentation tends to be well organized,  
easily searchable, includes high amounts of detail, and most importantly,  
is well written.

Given the costs associated with video production, and the inherent  
difficulties of teaching programming via video. I would say that D would  
get a MUCH better ROI on improving the available documentation. Consider  
for a moment that video can only answer the questions that the scripter  
forsees, how then is the new users supposed to continue learning beyond  
what the videos teach?

There is yet another factor to be considered. Producing video is a very  
laborious process. And once it is produced, it cannot be changed without  
being re-shot and reedited. Given the high rate-of-change that D has been  
experiencing, the chances of the video become obsolete quickly are very  
high, even when constrained to the basics. Essentially, every bug fix  
becomes another potential video re-shot. This was another factor we faced  
since we are planning for (roughly) quarterly feature releases.

My personal opinion is that D is nowhere near ready for videos. The  
documentation itself is very thin and what there is tends to be either  
out-of-date, poorly-written, light on details, or some combination  
thereof. Without searchable docs to back-up what it shown in the videos,  
there is a good chance that you'll just confuse people.

However, I am sure that their are counter arguments, and I am not  
intending to disuade, only comment on our experiences. We have another  
product in development for a completely different market (Aftermarket  
Automotive CRM) that we intend on developing over 100 hours of video  
training for, because it happens to work well in that market.

-- 
Adam Wilson
IRC: LightBender
Project Coordinator
The Horizon Project
http://www.thehorizonproject.org/


More information about the Digitalmars-d mailing list