演習の FAQ は kill Safari

午前中は「パターン認識機械学習」という授業のオリエンテーション。自分は12-1月に後半の機械学習部分を担当するので、今日は「教科書を買っておいてね」と伝えるだけであるが。研究室配属までにはもうこの授業しかないので、B3 の学生たちに何か伝えたければこの授業で伝えることになるのだが、授業の内容としては去年と同じような感じになるかな〜と思ったりする(変えるとすれば、2020年には15コマ「機械学習」という科目を受け持つことになるので、来年の授業の8コマの一部を使って少し試行してみる)。

お昼は10月から来た研究生の研究室オリエンテーション。10月から研究生として来るのはうちの研究室としてはあまり意味がないのでお勧めしていないし、正直なところ一律断ってもいいのでは、と思う場面もあるのだが(もし研究生をするなら4月から1年間研究生をしてほしい)、半年間でも助走期間がないよりはある方が(同じ半年研究生をするとしたら、後期の効果は前期の数分の一あるいは数十分の一以下だとしても)いいので、今年も(来年の4月に入学する学生を)受け入れた。

良くも悪くもうちの研究室は内部進学生がマジョリティなので、内部進学生に合わせたサイクルで動かざるを得ないのが心苦しい。そのため、大学院から専門を変えたいほとんどの人は、NAISTJAIST のような大学院大学に行った方がよいと思っている。入学前からバンバン論文読んでいたりそもそもソフトウェアエンジニア出身で特にプログラミングでは躓かない人なら、うちに来ても特に問題ないだろうけど、教員の立場からすると、学生にそれを前提としていいのか?そもそもそれが自力でできる人は(うちの)大学院に来る必要ないのでは?と思ってしまうので……。

午後はデータ構造とアルゴリズムの講義。去年まで演習の授業をしているので簡単かと思いきや、教科書を見ると演習と結構違う(かなり理論的なところを丁寧にやる)感じで、ちょっと時間がかかりそうな雰囲気。あと、これまでは情報通信システムコースの50人を相手に授業してきたが、今年からは情報科学科と電子情報システム工学科を合わせた140人を相手に講義をすることになり、講義負担的には変わらないはずだが、人数が多くてドッと疲れる。課題や試験の採点にかかる時間も増えそうで、かなりしんどそう。

夕方はプログラミング基礎演習に顔を出す。これは情報科学科のみの授業なので、参加しているのは40人強。去年までの情報通信システムコースでは C を使って制御構造、ファイル入出力や文字列操作、ポインタなんかを1年かけて教えていたのだが、それってプログラミングでこんな問題が解けておもしろい、というところが全部ないのでつまらないと思うし、ということで、今年からは使用言語を Python に変えた上で、以下の「世界標準MIT教科書 Python言語によるプログラミングイントロダクション第2版: データサイエンスとアプリケーション」という教科書に変えた。

個人的には SICP で勉強したので、ああいうふうにおもしろい問題を解く過程でプログラミングも身につく、というような演習がいいと思っていて、これで情報科学に興味を持ってくれる学生が増えるといいな。

今回の演習は Mac 端末+Anaconda (Jupyter notebook) で環境を整えてもらったのだが、FAQ は「Mac が操作できなくなりました(虹色のぐるぐるが出る)」というもので、Command+Option+Escape でアプリケーション(Safari)の強制終了をする方法を教えて回る。半数以上の学生からこれを聞かれたので、何か問題があるのだろう……(Jupyter の方で状態を記憶しているので、Safari を落としても特に内容は消えない)。