見出し画像

40代初心者がプログラミング(5ヶ月経過・ティーン向け自習教材Code.orgと、スタンフォード大学のCS101)

自由度の高すぎるScratchに代わり、体系的に学べるCODE.orgへ

Scratchは面白いのですが、あまりに自由すぎてチュートリアルがないと何も作れない矛盾を感じていました。そこで、Scratchに似て、もう少しスクールっぽいプラットフォームはないかな?とAlternatives.netというサイトで調べてみました。

これは、検索ウィンドウに言葉を入れてサーチすると、それと似たものが一覧で出てきます。評価まであります。

Alternatives.netで見つけたCode.org。
今まで聞いたこともありませんでしたが、評価はかなり良いです。

Code.orgはアメリカのNGOが設立した、4〜18歳のためのコンピューターサイエンスを楽しく体系的に学べるインターネット上の教育サービスだそうです。登録しないでも使えますが、登録する(無料)と、より細かいサービスが使えるということでした。

Code.orgの創始者は「コンピュータサイエンスはリベラルアーツである。世界のすべての生徒が、子供時代に学ばなければならない科目だ」と言っています。私は子供時代にコンピュータすらなかった時代の人なので(涙)幼稚園生からできるPre-readerコースからやってみました。

幼稚園生-5年生向けのコース

インストラクションの動画です。

Scratchよりさらに簡単なブロックを積んでいきます。目標があるので、ゲームっぽい。
▶︎マークを押すと、インストラクションを読み上げてくれます。速度も自由。
また、Code.orgがすごいのは、右中央の「</> Show Code」なんです。
インストラクションの読み上げ機能。
4-8歳用はPre-readerとある通り、
まだ文字が読めなくてもプログラミングが楽しく学べるようになっています。
この読み上げ機能は第二言語が英語の学習者にも嬉しい。
「</> Show Code」をクリックすると
何と自分が積んだブロックのJavaScriptでのコードが見られます。

「バークリー大学やハーバード大学などトップ大学でもブロックを使ったコーディングを教えています(そうなの?!)しかしブロックをJavaScriptでも表すことができます」

これは衝撃です。Scratchのようなブロック言語は、プログラミングの考え方を養うには良いものの、コーディングは別のものとして学ばなければいけないと思っていました。でも今や大学でもプログラミングを学ぶのにブロックから入り、緩やかにコードへつなげるというやり方を採用しているのですね。

こちらは「ペアプログラミング」。小学校教育の一環なのでしょうが、コミュニケーションがプログラミングで必要って教えるのはかなり斬新。でも実際の現場では必要ですよね。

「相手をリスペクトしましょう、作業について話し合いましょう、やっていることを相手に伝えましょう、先を考えて提案しましょう、役割を交代しましょう
人に命令するのはやめましょう、プログラミングをやっている人のマウスやキーボードを奪うのはやめましょう」
できるだけ使うブロック数を減らすこと=綺麗なコード(短くわかりやすいコード)に繋がりそうです。意外に頭を使います。

6年生-12年生向けのコース

上記のコースは4日ほどで終わったので、次のコースを始めてみました。角度や長さ(ピクセル)が入りますが、スモールステップなのでそれほど負担を感じません。

これは、アーティストが好きな色と長さで線を描くというものです。Scratchに似ていますが、Cord.orgではその時の課題により使えるブロックに限りがあり、学習のねらいが明確です。
Stripesのレッスン。stripeとは何か、また座標軸とは(ここでは黄色いブロック)どんなものかが感覚でわかります。これは先にScratchで出ていたので楽でした。
Scratchやっておいてよかったです。
「JavasScriptで書くとこうなります」が相当難しくなってきて、もう追えません…
英単語がわからない時はMacの3本指タップで。

スタンフォード大学無料講義Computer Science 101を3週間分やってみた(全6週間)

Code.orgでは合計3コース(上記2コースと18歳以上のコース)あり、全部を最初に確認してみました。すると、18歳以上のコースというのは、2コースが一通り終わった前提で、他の教育サービスの紹介のリンクが貼ってあるだけでした。

そこで一番上にリンクがあったのがStanfordOnline CSX0001 Computer Science 101 です。それを見て思わず、あー!!と声を上げてしまいました。

edXというプラットフォームで提供しています。

実は10年前に見ていた

私事で申し訳ありません、海外に出る直前までは日本の大学の情報系学部で教授などのアシスタントをしていました(2012年頃)。情報系学部と言っても、仕事内容は何でも屋さんで、特に専門知識は要りませんでした。

そこで上司が、
「外国では授業を録画してインターネットで配信してる大学もあって、世界のどこでも誰でもそういった有名大学の授業を見ることができる。これからそういう時代になる。今は全然これには及ばないけど、うちの大学もいずれはこのようにしたいと思っているんだ」
と、見せてもらったのがこのスタンフォード大学のComputer Scienceのシリーズでした。

わかりやすい!内容はITパスポートを少しプログラミング寄りにした感じ

思い出してみると、10年前は内容に馴染みがなく、さらに英語力もそこまでなかったため全く雲の上の存在でぼーっとなったものです。

それが、外国で9年暮らし、HTMLとCSSを一通りやってPHPで苦しんだ今あらためて見てみると、これはわかりやすい…!速度を0.75倍にし、英語字幕を出せばほぼ100%1回でわかります。英語力もあの時より上がったんだなぁ…しみじみ。

課題を提出して評価してもらい、履歴書に書ける証明書を発行してもらうには、この6週間のコースで$199かかりますが、動画と資料にアクセスするだけなら無料です。

RGBの解説でプリントゴッコを思い出す

インストラクションは丁寧です。これはRGBを解説しているムービーのスクリーンショット

RGBの数値をいろいろ変えて写真に適用しているうちに思い出したのが、20数年前?(笑)学生だった時にお正月前にやっていたプリントゴッコ(知ってますか?)の販促アルバイト。
あの時はまだコンピュータが一般的でなく、年賀状を印刷するにはシルクスクリーンで作るファミリー用の機械が主流でした。ショッピングモールから東急ハンズからホームセンターまであらゆる文具コーナーに派遣され、「好きに版を作って、どのインクでも自由に使って、何を作ってもいいよ」という美術大学生にとっての最高のアルバイトでした。

まさにこれ

そこでハマったのが、写真を3色に分解して3版作り、全部合わせると元のカラー写真が版画でできるというものでした。この写真の3色のうち2色を入れ替えたり、2色のみで刷ると寺山修司のポスター(知りませんよね…)のような版画ができるのです。それが面白くてRed とGreenだけ、Green とBrueを入れ替えなどのシュールな年賀状を大量生産しましたが、怒られそうなので可愛い虎の絵も刷ってカモフラージュしたりしました…

まさに今、あのカラフルな版を思い出し、スタンフォードのNick先生に説明してもらって「寺山修司年賀状」の理論がわかりました。

Code.orgとStanford Onlineで前に進んだ気がする

今のところCode.orgとStanford Online CS101を同時にスタートし、どちらも半分くらい終わりました。Scratchの時と比べてコースに明確な区切りがある分、前に進んでいる感覚があります。

これら2つとも初心者に優しく、英語プログラミングの入り口に最適です。入り口見つけるのに5ヶ月かかりました笑。
コードそのものを学ぶのではなく、プログラミングを始める時の心構え、下地を整えている感じです。「文字の羅列、いつでも来いや!」と。

両方とも終わったら、もう一度Pythonを始めようかと思います。

ではまた!💻

この記事が気に入ったらサポートをしてみませんか?