見出し画像

JavaScript を教える理由(ほぼ無料)

神戸大学の国際人間科学部で「プログラミング基礎演習1・2」という学部共通科目の担当をしている者です。この授業では JavaScript を教えています。取り上げている題材は以下の3つです:

  • p5.js (クリエイティブコーディング)

  • Chrome 拡張機能

  • Google Apps Script

授業テキストは以下のページで公開しています。
この note はほぼ無料で有料部分には演習問題を載せています。

本当は演習問題集を載せただけの note を作る予定だったのですが、それだけだと寂しいのでなぜ JavaScript なのか(なぜ Python じゃないのか)を書こうと思います。

背景

うちはいわゆる情報系学部ではないので「プログラミング基礎演習」は必修科目ではありません。一方で、データサイエンスの基礎の基礎を扱うような授業は全学的に必修になっています。また、小学校~高校までのプログラミング教育も徐々に充実してきています。プログラミングが得意だった人たちは情報系学部に行きがちだと考えると、うちの場合は「プログラミングは習ってきたけど、得意・好きな方ではなかった人たち」が将来の主な想定履修者になるわけです。

理由

そのような履修者を想定したとき、ただ普通にプログラミングを教えるような授業をするのは望ましくないと考えました。既に受けてきた授業と代わり映えがしないので「やっぱり好きじゃない」という再確認作業になってしまいかねません。そうではなく、バリバリ仕事になるようなプログラミングはそのために生まれてきたような生粋のエンジニアたちに任せるとして、どんなものを作りたいのかエンジニアとイメージを共有する場面、教育やアートなどちょっとしたプログラムがほしくなる一般化しづらい場面などで役立つ授業にしたいと考えました。

  • アイデアを形にして議論するためのプロトタイピング

  • コミュニケーションや表現方法としてのプログラミング

を教えるのが目標となりました。

JavaScript + p5.js なら視覚的・インタラクティブなプログラムが手軽に作れますからこの目標にはうってつけだと考えたというわけです。GitHub に push するだけで公開完了なのも教育的です。

既存ウェブアプリの改造はなかなかに応用範囲が広いので、Chrome拡張機能や Google Apps Script はプロトタイピング手法として重宝するということで取り上げています。また、普通にHTML/JavaScriptを教えようとして「私のホームページ」のような黒歴史の大量生産を避けられるのも良心的です。

有料部分の説明

これより下には各回の授業で用いる演習問題集があります。実はトップページからリンクしていないだけでURLを知っている人は見ることができる状態になっているのでリンク集があるだけです。購入していただいた方は、ご自分の担当授業などで使っていただいても構いません。

神戸大学国際人間科学部の「プログラミング基礎演習」を履修している方は授業内で無料で見ることができますので、購入する必要はありません。

ここから先は

24字

¥ 300

ここまで読んでくださってありがとうございます。サポートいただけましたら意欲ある学生を支援するのに使わせていただきます。