上杉周作さんの「
20歳を過ぎてからプログラミングを学ぼうと決めた人たちへ」を見たのでそのまとめと感想。
80分の動画ですので時間のない人は見られないかもしれませんが、非常に色々なことが学べるので是非動画で見たほうがいいかなと思います。
プログラミングの考え方もそうですし、プレゼンの方法とかも含めて色々勉強になることが多かったです。
---
上杉周作さんのプロフィール。
1988年1月26日生まれ。小学6年まで横浜みなとみらいで暮らす。 親の仕事の関係で中学からアメリカ東海岸に引越す。現地の中学と高校卒業。 Carnegie Mellon大学のComputer Science学部入学。プログラミングを始める。 大学二年目の夏にApple、三年目の夏にFacebookでインターン。 学部卒業後、 同じくCarnegie Mellon大でHuman-Computer Interaction修士卒業。 シリコンバレーに引っ越してPalantir Technologiesでエンジニア。 6ヶ月後転職してQuoraでデザイナー。 ←今ココ。
僕より年下なのにプロフィールにアルファベットがはいりまくっててやばい。
では講演内容↓
Video streaming by Ustream●「プログラミングができる」とは?
・学ぶとき、
「次の一歩」がわかること
・クロールが分かる人が平泳ぎを学ぶのはやりやすいが、出来ない人はそもそも次に何をやったらいいかがわからない。
→プログラミング教育の目標とは、「できない」から「できる」にアップできるように手を貸すこと
●では、どうすれば「できる」ようになるのか?
・従来の手法
WEBの記事→何を読んだらいいのかわからない
本→最短距離でうまくなるようになっているが、「できる」ようになる最後の一歩でつまずく事が多い
大学の授業→円を描くように周辺分野の知識を関連付けて教えていくが、時間がかかる
→どのルートで行くにせよ、いかに早く効率よく進むかが重要
・最近の手法
最新の研究では、
「小刻みなアプローチ」を取ることが学習効率を上げることがわかってきた
例:7枚コインを失って、5枚コインを獲得した
従来は「-7+5」という教え方をしていたが、ある学校では「-7と5はどちらが大きいのか」から考えさせる
→つまり、従来よりもステップを細かくする
例2:
Codeacademyのビジョン:「できない」から「できる」までの、全てのプログラミングの教材を小刻みにする
(
CodeacademyはJavascriptを題材にWEBで簡単にステップを踏みながら学習できるサイト)
●それを踏まえると、今後どのような勉強のありかたになっていくのか?
・知識のグラフはソーシャルグラフに似ている
:知らない人に会いたかったら共通の友達に紹介してもらうが、よく知らない共通の友達は活用しにくい
:同様に、知らない知識を得たければ自分の持っている関連知識を活用するが、よく知らない知識は活用しにくい
→知識のグラフを活かしていく事が重要になってくる
●知識のグラフの生かし方は?
・出来ないときに必ず学ぶ言語共通のコンセプトがある
・そしてそのコンセプトはそれほど学ぶのが難しくない
・にもかかわらず、たくさんの知識とつながりが深い(人でいったら顔が広いので色々な人を紹介してもらえる)
→
この知識と仲良くなれば、他の知識ともすぐに仲良くなれるその知識とは
function(関数)
●上記のようなコンセプトのもと、今回Chibicodeという教材を作成
(教材のデモは全て上の動画で紹介されているので興味ある方はそちらを)
・教育の問題とはデザインの問題
・Quaraの社長:Quaraの目的は知識を集めることだが、「北風と太陽」のエピソードのように、力づくではなくうまくデザインを工夫することで知識をユーザーが出しやすいようにしてあげる事が重要
・デザインが良くないと学習者が拒否反応を起こすため、使いやすいプロダクトで分かりやすく教えることが重要
●その他のTips(質疑応答から)
・おすすめの言語はプログラミングが出来る友達がいれば、その人が出来る言語が良い
・エディタ、Unixベース、iPhoneアプリが作れるので
Macで勉強したほうが良い・できれば
英語で勉強したほうが良い。:英語圏では沢山ヘルプがあるので情報量が違ってくる
例:
stackoverflow(質問サイト),
codeacademy(上で紹介),
rails for zombie(ゾンビがRailsを学ぶ動画),
peepcode(動画でプログラミングを教えてくれる)
・自分は一週間後に他人になるという考え方を持って、一週間後の自分に手紙をかくように分かりやすくコードを書くことを心がけている
---
以上まとめ。大変参考になりました。
Chibicodeの内容は今回こちらではのせていませんが、動画の中で詳しく開設されています
今後とも期待していますー。
追記:特に紹介されませんでしたが、WEB教材の中では
Try Ruby!もおすすめです。