Coursera Programming Language修了

最近,Courseraの受講に力を入れて取り組んでいます.

 

きっかけはAndrew Ng先生のMachine Learningの講義を修了したこと.これまでCourseraは何度か受講を始めては挫折する繰り返しだったのですが,このMachine Learningの講義は非常に面白く実践的で11週の講義を非常に楽しんで終えることができました.

 

そこで掴んだCourseraのコツ.

  • 数週間~数か月の講義,しかも英語を修了することはとても大変.本当に必要で面白いと思える講義だけに取り組むべき.
  • 複数講義の並行受講はなお大変.面白いと思うとついたくさん取りすぎますが自分のキャパを越えないよう控え目に選択すべき

 

ということで,次に取り組んだのがDan Grossman先生のProgramming Languageコース.最近,関数型言語を独学し面白いと思っていたところなので,より深く専門的に学びたいというのが動機でした.

 

Part A, B,Cの3部構成全11週の講義で,毎回の課題はかなりタフでしたが,それだけに満足感を得られる講義でした.

 

Part AではStandard MLを使ってプログラミングの基礎,再起呼び出し,静的型付けについて学びます.

 

Part BではRacketを使って,動的型付けについて学びます.コースの最後の課題はRacket上に独自言語を実装するというものでかなりタフでした.

 

Part CではRubyを使って,オブジェクト指向,動的型付けについて学びます.Rubyオブジェクト指向といいつつ,関数型言語の機能も多くサポートしていますが,課題ではストイックにオブジェクト指向の原則を守り,オブジェクト指向についてより深く学びます.

 

タフな講義でしたが,それだけに修了したときの達成感が大きかったです.当初の目的であった関数型言語についてより深く学びたいという目標も達成でき,とても満足感の高い講義でした.