Download - Coursera experience

Transcript
Page 1: Coursera experience

Coursera’s “Functional Programming With Scala”

オンライン授業の体験談

Page 2: Coursera experience

I Finished My First MOOC! Coursera’s

“Functional Programming With Scala”

初めての参加ではなかった( Stanford大学が 2011 に出したコースに途中まで参加した)が、初めて完了まで続けた

Page 3: Coursera experience

Coursera概要

http://www.coursera.org/

2012 年からスタート

世界から 81 大学を参加、 379授業を提供

375 万人の会員

無料で受けられる。学科 CS に限らず、色々

ビジネスモデルは試行錯誤中だが、 VC より US $16 のバッキングあり

Page 4: Coursera experience

「 Functional Programming With Scala」概要

Scala の作者の Martin Odersky 氏が講師 2013 年 3 月よりスタートし、 7 週間 毎週、 10 分程度の動画レクチャー 5 〜 7

程度 Scala 全体に関する内容ではなく、 Scala

を使った関数志向プログラミングが主題

Page 5: Coursera experience

良かった点

Page 6: Coursera experience

Martin

Page 7: Coursera experience

Martin やはり言語の作者から教えてもらうは貴

重な機会

話がゆっくり、分かりやすい もっとゆっくり見たければ 0.75 倍速モード 日本人に取っても聞き取りやすい?

話しながら、コードも実際に書く

Page 8: Coursera experience

Toolset Scala IDE

Eclipse ベース、みんな IntelliJ 推奨するのであまり期待していなかったが以外と良い

ワンクリックインストール “Scala worksheet” は便利

sbt を使って、宿題の styleCheck 、テストの実行、提出と自動採点

Page 9: Coursera experience

Lectures 10 〜 20 分程度、少し時間があった時で

も見れる

英語のサブタイトルあり

スライドも PDF でダウンロード可

Page 10: Coursera experience

Lectures: 特に面白かった

特に面白かった: 関数型言語の必要性/モチベーションの説明 使った問題の例 : 多項式 , n-queens, 複素数 ,

有理数のモデリング Querying with For: For-comprehensions

を使った SQL と似たようにクエリを書く Translation of For: for-comprehension か

ら map/flatMap/filterWith の書き換え方法 Collections ライブラリの関数の紹介

Page 11: Coursera experience

Homework Zip 形式、ダウンロードし IDE にインポートさえ

すれば良い形

ひな形ができている、基本的に「 ??? 」を埋める→モデリング、プログラムデザインも結構勉強になった

自動採点。テストケースがうまく行かなければ、失敗したテストケースのトレースバックも見える

毎週日本時間でいうと月曜日早朝が締め切り

Page 12: Coursera experience

Forums Homework に関するヒントが満載だった

全部英語(もちろんだが)

コミュニティの Teaching Assistant もいて、結構的確なアドバイスをしていた

Coursera は決まったスケジュールで授業を受けるが、 Forum で質問すると、すぐに回答もらえる、という意味ではとても良い

Page 13: Coursera experience

Scala 以前からは言語仕様はきれい、と思って

いたが、だいぶ好きになった

短い、きれいなコードが書ける

再帰呼び出しを書く際、型チェックがあると助かる

Page 14: Coursera experience

良くなかった点

Page 15: Coursera experience

あまりなかった平日の夜、週末に時間がある程度かかる

ので、家族等の考慮は必要(終わったら、「やっと終わった」と妻が喜んでいた)

Homework は結構ひな形化されているので、悪くいえばプログラムデザインの自由があまりない なお、自動採点を可能にするためにこれは仕

方がないかも

Page 16: Coursera experience

感想、結論

Page 17: Coursera experience

Why I Finished

一言でいうと、楽しかった !

プログラムを書くって、やっぱり楽しい

Scala も、楽しいです。次回の授業、ぜひ挑戦してみてください!


Top Related