2015年10月13日火曜日

2015/10/12(月) 導入2, PB演習 授業実施

●計算機環境の整備
★演習室内のデスクトップPCの保守
4F演習室に置いている演習用デスクトップPC 5台と教員用デスクトップPC 1台で、Start Menu 8の更新、Firefoxの更新、Windows Updateの実行を行った。

★仮想サーバの保守
続き。サーバ aurora ではNFSを使わなくなったので httpd_use_nfs と use_nfs_home_dirs をoffにした。またサーバ dawn ではSambaを使わないので samba_enable_home_dirs がoffであることを確認した。

thunderhead (CentOS 6)と rainbow (CentOS 5)で sudo yum update を実行した。

★ノートPC hail の保守
個人面談(後述)の模様を hail で録画するために、LogicoolのQcam Connect(LogicoolのWebサイトで検索するとQcam Coolという名前で引っかかる)という古いWebカメラをつないで使おうとしたところ、このカメラをUSBポートに接続している間はLogicoolのWebカメラ用ソフトウェア (Logcool Webcam Software, 以下LWS) のウインドウが開かないという現象が起きた。Windowsの録音デバイス一覧も開くことができなかった。別のWebカメラとつなぎかえて動作を試したりしていると、使えるようになったかと思えばWindowsの再起動を要求されるといった調子で、安定的に使用することはできないようであった。しかたがないので実験用として三脚に取り付けているLogicool HD Pro Webcam C920を使うことにした。

あとでLWSのバージョン番号を確認したところ、2.51であった。LogicoolのWebサイトから入手できるもののバージョンは2.80である。以前にもこれを見て2.80をインストールしなおしたがバージョン表示は2.51にしかならなかったような記憶がある。しかし、念のため再インストールした。やはり結果は同じで、表示されるバージョン番号は2.51であった。LWSで録音デバイスの切り替えを行っても無視されて、Windowsにおいて“既定”になっている録音デバイスが使用されるという現象も、再インストール前と同じである。

ついでに hail に Logicool S7500 をUSB接続してLWSの動作を試したところ、問題なく使用できることが判った。

★Webカメラの状況の把握
本日やったような動作テストやLWSの再インストールは過去にも何度かやっているはずであるが、その結果は整理されていなかった。そこで、今回の記憶が薄れないうちに整理することにした。研究室内WikiにWebカメラに関するページを作り、この日報にある限りの記載や自分のいくらか曖昧な記憶をたどって表や箇条書きでまとめた。

このまとめを行った結果、今回の hail と Qcam Connect の組み合わせがほとんど唯一のNG例であり、また今回の組み合わせも2/10(火)の時点では成功していたことが判った。こうなると Qcam Connect 側の不調を疑いたくなる。そうは言っても Qcam Connect は2007年に買ったWebカメラであるから老朽化は仕方ないし、仕様が古くてあまり出番がないことでもあるので、「故障の疑いがある」ということのみ記録して、それ以上に深くは追及しないことにする。

★研究室内計算機管理用Excelファイルの更新
最近のsunlightのメモリ増設や仮想マシンdawnの作成を始め、ここ5か月ほどの動向をまとめて追記した。

さて、研究室内のサーバ机には物理サーバが3台ある。机の上に置いているsunlightとmoonlight(いずれもHP ProLiant MicroServer N54L)は自分たちが使っているものである。デカいので机の下に置いているdaylight (HP Z400 Workstation)は旧H研のサーバであり、H先生の授業のために引き続き稼働させておく必要があったので物理的な管理をこちらで引き受けたものである。
去る9/20(日)にH先生からメールで、当該授業が終わったのでこのサーバは不要になった旨の連絡があったので、いよいよ正式に当研究室のdaylightとして使えることになった。Excelファイルを眺めていてそのことに気付いた。また、これにはMicroServer N54Lから外した8 GB分のメモリを流用できそうである。ぜひ有効に活用したい。さしあたり卒研生にOSのインストールを試行させるのに役立つのではないかと思う。

●公開授業参観 計画
学部の授業を前期・後期に1回ずつと、研究科の授業を年度内に1回、計3回以上を参観してアンケート回答しなくてはならない。前期の1回は済んだので、あとは後期の1回と研究科の1回がノルマである。年度始めにMLを通じて流れてきた公開授業一覧を見て、参観計画を立てた。ただしそのうち1回の授業は計画によると先週限りの公開であったので、今週参観してもいいかどうかを担当の先生にメールで問い合わせた。差し支えないとの回答であった。

●導入2 授業実施
3限目に第5回を実施した。出席11名、遅刻1名、欠席2名。
まずグループワークに関するアンケートに回答するよう指示した。そののち計画書作成の続きに取り組ませた。これと並行して、演習室の向かいの大学院講義室を勝手に使って受講者4名との個別の面談を行った(後述)。
授業の終わり頃には各チームから計画書がメール添付で提出された。

●学生への修学指導
前述の通り導入2受講者のうち4名との個人面談を行った。そのうち1名から授業料免除などの条件について質問されたが、詳細を説明できなかったので、あとで調べて連絡することになった。面談の概略はあとでK'sLifeに所見として入力した。

●PB演習2 授業実施
4限目・5限目の第5回に参加した。今回も無役であったので、最初の基礎設計に関するプレゼンテーションの評価をGoogleスプレッドシートに入力したら授業としてはすることがなくなってしまった。自分のPCの設定や仕事などを行った。

途中であれ学生から日報システムへのログインがうまくいかないという相談を受けたが、よくよく話を聴いてみると先週パスワードを変更したとのことであった。変更後のパスワードを試すよう指導したところ問題なくログインできた。

6限目の終了ミーティングは、今までは組込みのクラスとWebのクラスを一つの会議でまとめて扱っていたが、今回から二つの会議に分けて並行して行うことになった。早く終わった。私は特に発言しなかったが、自分の研究室に所属する学生の動向に注意しながら他の人たちの報告を聴いた。

●学習環境に関するアンケート 準備
続き。教務委員のIs先生から口頭でOKをもらったので、資料のPDF版のみをメール添付で学部事務室に提出した。

●導入2 授業処理
5チームからメールで受け取ったそれぞれの計画書を点検した。
このうち4チームのものは多少体裁を整えれば問題ないようであったので、こちらでその作業をやってしまった上でPDF化し、授業用Webページにも掲載した。これらについてはあとでA3版のハードコピーを作る。
残り1チームの計画書には少なからぬ不備があったので、その旨を返信した。

●基礎演習2 授業処理
続き。2名からレポートの提出があったので採点した。

●教職課程認定申請の書類
続き。新pk2以外の2科目のシラバス案をYo先生からメールで受け取った。検討の上、異存ない旨を返信した。

自分の履歴書と教育研究業績書も作らなくてはならない。履歴書には昨年11/27(木)に作ったものがほとんどそのまま、また教育研究業績書には1/24(土)に作ったパターンAがかなりの程度まで、それぞれ流用できそうである。安心したので実際の作業は明日にする。

●その他
5限目の授業時間中に教務委員のIs先生からswの実施形態について質問されたので回答した。“オムニバス”か“合同”かというのが学部の計画に関連して教務課が作っている資料に関係があるようである。
ついでに学外イベントを単位認定する話編入学者・転入学者に履修指導をする話についても少し話した。これについては特に進展はない。

2015年10月11日日曜日

2015/10/11(日) 基礎演習2 授業処理

●計算機環境の整備
★仮想サーバ の設定確認
昨日の日報を書くうちに、自分の記録においても記憶においても dawn と aurora がごっちゃになっていることに気づいたので、これを日報として整理した。それでもまだごっちゃになっている部分が残っているかもしれない。

●卒業研究の指導
研究室内Wikiのうち、研究室内のサーバの構成に関する記載、卒研ゼミの録画の準備に関する記載、卒業論文の執筆要領をそれぞれ更新した。

最近1ヶ月ほどの卒研ゼミにおいて、学生の進捗状況をEvernoteに記録するのを怠けていた(コメントする方に集中すると、どうしても手元がおろそかになる)。進捗報告に関する議事録や卒研生のスライド資料を見ながら、今後の指導に必要になりそうな事項をEvernoteに書いた。
また、各卒研生の進捗報告の回数を書きだしてみた。意外に報告回数に偏りがあった。進捗報告のローテーションを決めていても、パスをすることの多い卒研生もいるということであるが、一方で5名で週に延べ4名の報告のローテーションを組むことに無理があったということでもあろう。いずれにせよ改善を要する。

●基礎演習2 授業処理
自分の担当するテーマは10/07(木)に3回目(最終回)を迎えた。最終レポートの〆切は10/14(木)であるが、すでに受け取ったレポートが10本ほどあるので、これの採点を行った。この過程で採点基準をもう一度見なおした。
採点したうちの2本には不備があったので、それぞれの提出者にメールで再提出するよう指示した。1名からはすぐに再提出があったが、読んでみるとJavaプログラムに不備があることを一言書き添えた程度の変更のみであった。プログラムには修正を試みた形跡もあるが、評価はしがたい。

採点結果をExcelファイルで整理した。まだレポート未提出者のほうが多いような状況であるので、確定した点数としては報告できない。しかし、今後指導を要する学生についての情報を次に担当する先生に渡すべきであるから、速報としてここまでの採点結果を簡単にまとめてMLを通じて流した。
ほどなくしてTa先生からMLを通じて反応があった。その文面には採点結果を記録するときの規則が詳しく書かれていた。私の流したのはどうせ速報値であり、来週には大きく変わるようなものであったから、書式は気にせずに簡単に流せるものを流したが、どうもそれを咎められたということのようである。

2015/10/10(土) 計算機環境の整備

●学習環境に関するアンケート 準備
続き。学部の会議に提出する資料として、昨年度の依頼文(Wordファイル)を流用して今年度版を作った。さらにこの依頼文と、科目一覧表(Excelファイル)、アンケートシステムの表示をそれぞれPDF化して、メール添付でIs先生に送付して確認を依頼した。

学部事務室には会議に報告事項1件を追加する旨をメールで連絡した。

●研究室内Wikiの更新
日程のページに10/18(日)の学内害虫駆除について追記した。

●進路指導Webサイトの更新
A先生からメールで流れてきた資料をWebサイトに掲載した。

昨夜用意した現B3, M1向けの告知をメールで流した。

●就職活動の指導
卒研生の就職活動についてMLを通じて10/05(月)に問い合わせたが、どの卒研生からも応答がなかった。A先生に前回報告から変わりない旨のみを報告した。

●計算機環境の整備
★HP ProLiant MicroServer N54Lのメモリ増設
VMware vSphere Hypervisor (ESXi) 5.5のホスト sunlight として稼働している MicroServer N54L に、ずいぶん前に買ったまま放っておいた8 GBのメモリをようやく挿した。増設後に電源を投入し、仮想サーバを再び起動して、無事に動くことを確認した。

ファイルサーバ moonlight として使っているもう1台の同型機はすでに16 GBにまで増やしてある一時は減らしてその分をESXiに廻すことも考えたが、結局2台とも16 GBで動かすことになった。これまでに4 GBのメモリを挿したり8 GBのものと交換したりということを繰り返した。何回やってもMicroServerは扱いづらいと感じるが、それでもずいぶんこの手順に慣れた。

★仮想サーバの保守
サーバ dusk と素体用仮想マシン nimbus で yum update を実行した。次に aurora, dusk, nimbus をいったん poweroff して、 VMware vCenter Converter でバックアップをとった。

★仮想サーバ dawn の作成
卒研生が実験等に使うためのCentOS 7サーバとして dusk を作り、そのときに完成したシステムを置くための本番サーバの名前を dawn に決めた。この dawn をようやく作った。素体の仮想マシン nimbus をコピーして dawn に変更することでインストール作業の大部分を省略することができたが、さらに設定を調整して dusk と同様の設定にする必要はあった。これには5/16(土)にNFSの設定をしたときの記録や、5/10(日)に作った enable-all.sh や setse-all.sh が役に立った。

1) nimbus のバックアップをConverterで書き戻すことで仮想マシン dawn を作った。
2) dawn を起動した。
3) /etc/hostname を編集してホスト名を変えた。
4) /etc/sysconfig/network-scripts/ifcfg-ens160 を編集してIPアドレスを変えた。
5) dawn を再起動した。
6) /etc/fstab を編集してリモートマウントの設定を有効にした。

  NFSサーバ名:/パス名 /home nfs    tcp,rsize=8192,wsize=8192        0 0

7) SELinuxの設定のうちホームディレクトリのNFSマウントを有効にした。

  setsebool -P use_nfs_home_dirs on

8) NFSサーバ (FreeNAS 9.3)側で「Authorized IP addresses」に dawn のIPアドレスを追記した。
9) dawn を再起動した。
10) dawnの /etc/httpd/conf.d/userdir.conf を編集して2か所の「public_html」を「html_dawn」に変更した。
11) dawn の httpd を再起動した。

  systemctl restart httpd

12) SambaやMariaDBのサービスを有効にした。 httpd が読むべきユーザのディレクトリがNFS上にあるからか、それとも public_html ではなく html_dawn であるからか、 httpd_enable_homedirs はonでもoffでも関係ないようであるが、これもとにかく有効にしてある。

  setsebool -P use_nfs_home_dirs on
  setsebool -P httpd_enable_homedirs on
  setsebool -P httpd_use_nfs on
  setsebool -P httpd_can_connect_ldap on

  systemctl enable mariadb
  systemctl start mariadb

まだ十分な動作確認はしておらず、1行だけのPHPスクリプトを書いて phpinfo() を出力を眺めたりphpMyAdminにログインしてみたりした程度であるが、問題なく動いているように見える。

★ifcfg-* のUUIDについて
ふと /etc/sysconfig/network-scripts/ifcfg-ens160 に記述されている設定のうちUUIDはサーバごとに変えなければならないのではないかと気になって調べた。
まず dawn において uuidgen で生成したUUIDに変更してから再起動をかけてみたが、特に動作に違いがあるようにも見えず、昨日悩んだ session_save_path() の挙動にも変わりはなかった。Webを検索したところ、この設定は放っておいて差し支えないらしいことが判ったので、結局 dawn のUUIDも元に戻した。

(参考Webページ)
piyolian: RHEL6: NIC UUID.
irix_jp: RHEL6/SL6/CentOS6 ネットワーク設定まとめ.

★仮想サーバ aurora の設定変更
サーバ aurora は卒研生が利用できるように設定していた。しかし、実験用サーバとして dusk があり、さらに本番用サーバとして dawn を作ったので、卒研生が aurora を直接使う必要性はほとんど無くなった。もし卒研生が開発したシステムを aurora に置くことがあるとしても、その導入や保守は結局のところ私がやることになるであろう。したがって aurora は私のみが使えればよい。
そこで、ファイルサーバ moonlight にあるホームディレクトリを aurora からNFSでリモートマウントする設定を削除して、 aurora のローカルディスクにあるホームディレクトリをSambaで共有することにした。この作業においても5/16(土)にNFSの設定をしたときの記録が役に立った。

1) vipw /etc/passwd で学生のアカウントを削除した。 pwconv で shadow も更新した。
2) /etc/fstab からリモートマウントのエントリを削除した。
3) aurora を再起動した。
4) /etc/samba/smb.conf を確認した。もともとある程度の設定作業はしていたので特に変更の必要はなさそうであった。
5) Sambaを有効にした。

  setsebool -P samba_enable_home_dirs on
  systemctl enable nmb
  systemctl enable smb
  systemctl start nmb
  systemctl start smb

6) ファイルサーバに置いていたホームディレクトリの中身を aurora にコピーした。
7) httpd が html_aurora を読めるようにSELinuxに設定を追加した。なお、 httpd が読むべきユーザのディレクトリが public_html ではなく html_aurora であるからか httpd_enable_homedirs はonでもoffでも関係ないようであるが、とにかくこれもonのままにしてある。

  semanage fcontext -a -t httpd_user_content_t '/home/[^/]*/html_[^/]*(/.*)?'
  restorecon -R ~ユーザ名/html_aurora

最後の7)が dawn や dusk では不要であったのは、これらのサーバのホームディレクトリがNFSサーバ上にあり、なおかつSELinuxで httpd_use_nfs が有効になっているからではないかと思う。NFSを使うのをやめた aurora では7)をしたところWebブラウザから html_aurora 下のファイルにアクセスできるようになった。

●卒業研究の指導
サーバ dusk にMuさんのユーザアカウントを作り、本人にメールで連絡した。

●gw 授業準備
10/07(水)の第3回の授業中に「ブートストラップ」という言葉について言及したが、説明の中に曖昧な部分があったことを思い出したので、自室内の本をあれこれひっくり返したりWebを検索したりして調べた。
コンピュータやOSの「ブート」や「ブートストラップ」が bootstrap (靴ひも)から来ていることはもともと知っていた通りである。もとをたどれば何かの冗談に由来すると記憶していたが、これはうろ覚えであった。調べた結果、次のことが判った。

  • 「ほら吹き男爵」の話に、沼に落ちたときに自分の靴ひもを引っ張って自分を引き上げたという話がある。 参考文献: リンク1, リンク2.
  • "pull itself by the bootstraps" という表現には「自力で(何かしらを)する」というような意味がある。
  • コンパイラの分野で「ブートストラップ」とは「ある機種の既存のコンパイラを利用して別の機種のコンパイラを作成する手法」を指す。参考文献: 情報処理学会: 「情報処理ハンドブック」(第1版), オーム社, 1989.
  • ダグラス・エンゲルバートは「仕事を進める手段を改良できる有望な研究成果を研究者がフィードバックする」ことについて、このような研究者たちを「ブートストラップグループ」と呼ぶようになった。参考文献: Bardini, T., 森田 哲(訳): 「ブートストラップ―人間の知的進化を目指して」, コンピュータ・エージ社, 2002.
  • 「パイレーツ・オブ・カリビアン」シリーズの2作目と3作目に登場する Bootstrap Bill の名前の由来は、上記のような意味合いや冗談とは無関係である。

意外に、OSの本の索引を見ても「ブート」が見当たらないことが多かった。専門用語というよりごく普通の言葉として扱われているようである。ただし、ブートの過程が学術的な興味の対象になりにくくて言及そのものが少ないという側面もあるのかもしれない。

●その他
G先生からある1年次生にpkの資料を渡すよう依頼されたので、来週10/12(月)の導入2で渡す旨を回答した。

自室の掃除をした。

2015/10/09(金) 卒研ゼミ、学習環境に関するアンケート 準備

●システム運用室会議
10:40からの会議に出席した。
貸与PCのパフォーマンスチューニングについてS社から話があった。この件の担当者が私のところに話を聴きにくるために日程を調整することになった。これについては午後にメールで日程調整した。

学部Webサーバの時計が遅れていることを指摘した。このサーバの管理担当者はC先生であるようであった。時計を合わせる方法としてその場でntpdとVMware Toolsの二つが検討され、結論としてVMware Toolsを採用することになったので、C先生ではなくS社が作業を行うことになった。これについてはあとでトラブルが起きた(後述)。

●教職課程認定申請の書類
続き。教務課から回答があり、複数教員で担当している科目については全員にシラバス作成依頼は送られており、またシラバスは1部あればよいとのことであった。新pk2以外の2科目については他の先生による作成を期待すればよさそうである。

●卒研ゼミ
3限目に進捗報告会を実施した。出席6名、欠席2名(Isくん、Yoくん)。
KaくんとMuさんの報告を聴いてコメントした。Muさんはずっと自分のPCのXAMPPでシステムを動かしながら開発していたが、評価実験を行うときのことも考えて研究室内のサーバ dusk でも動かせるようにしておくことを指示した。ただし、そのためには私がduskにMuさんのアカウントを作っておかなくてはならない。

●卒業研究の指導
Koくんの状況を軽く点検した。
KaくんのTo-Doを書いた模造紙を壁に画びょうで留めた。

●学習環境に関するアンケート 準備
数年前までは夏休みに実施されていたアンケートであるが、私が担当するようになってから9月になっていた。それが今年は9月にも間に合わせられなかった。本日ようやく準備に着手した。

まず、学生便覧から科目配当表をコピーし、これに鉛筆でチェックを入れながら、科目一覧表(Excelファイル)を更新した。この結果にもとづいてアンケートの設問の選択肢にする科目のデータを作った。ほとんど昨年度と同じで済むことが判ったが、修正すべき点もあった。また、PB演習の科目名を知らない学生のために、科目名ではない「PB演習」を敢えて科目データに混ぜた。

次に、アンケートのフォームデータを作った。大部分は昨年度のものを流用したが、科目データにもとづいて設問の選択肢の部分を更新したほか、今年度に合うよう文言を書き換えたり、卒業時アンケートに合わせたほうがいいところを合わせたりした。

さらに、アンケートシステムに変更を加えた。PHPスクリプトに多少の改善を加え、特に選択肢の表示形式は妙なところで改行しないように改善した。また、スタイルシートは最近のWebページ改訂で使ったものを流用して、昨年度までのどんよりした感じの色づかいからもう少しスッキリしたものに変更した。

最後にアンケートシステムの動作を確認して、多少の調整を加えた。
これで準備はほとんど完了した。

●計算機環境の整備
★学部のWebサーバ
前述の通り学部のWebサーバにVMware Toolsが導入されて時計が合うようになったが、その作業の過程で不具合があったらしく、PHPスクリプトの中の関数 session_save_path() が動かなくなった。そのせいで、自分がWebサーバに置いている各種システムのうちセッション機能を使うものが軒並み動かなくなった。この関数のところで実行が止まってしまうことを突き止めた上で、その旨をMLを通じてS社に連絡した。

現象をよく調べるためにテストプログラムを書いたりしているうちに、以前にも同様の現象にぶつかったことがあることを思い出した。そのときには、NFSでリモートマウントしているディスク上である場合にセッション情報を保存しようとするとこの現象が起こるらしい、というところまで調べていた。

結局、今回の学部Webサーバの場合は、しばらくして復旧した。S社からの連絡によると何かのサービスが正常に動作していなかったことが原因であったとのことである。詳しいことは次に会ったときに聴いてみたい

★研究室内のファイルサーバ moonlight (FreeNAS 9.3)の保守
WebブラウザでGUI画面にログインしてアップデートをかけた。

★研究室内の仮想サーバ aurora (CentOS 7)の保守
仮想サーバ aurora で sudo yum update を実行した。

また、前述の session_save_path() の挙動に関連してNFSクライアントとしてのパフォーマンス改善を試みた。これは結局うまくいかなかったが、とにかくここに記録しておく。まず man nfs に次の記載があることに気付いた。

1) オプションで rsize と wsize をいずれも8192にすると転送速度が向上する(かもしれない)。
2) デフォルトはTCPではなくUDPである。TCPを使うにはそれを指定する必要がある。

次にファイルサーバ moonlight (FreeNAS 9.3)のNFSの設定を調べるうちに次のことに気付いた。

3) [サービス]-[NFS] で設定を見ると「Serve UDP NFS clients」という項目にチェックが入っていない。

このうち 1) はもしかすると session_save_path() の挙動の改善に役立つかもしれないと考えた。
一方 2), 3) については、クライアントがUDPを使っているのにサーバはそれに対応しない設定になっているのであればマウントが成功するはずはない。もしかするとクライアントとサーバの間でネゴしており、そのせいで時間がかかることがあるのかもしれないと考えた。
そこで、試みに次のようにしてみた。

a) aurora の /etc/fstab においてNFSのリモートマウントに関するエントリのオプションを default から tcp,rsize=8192,wsize=8192 に変更した。
b) moonlight において「Serve UDP NFS clients」にチェックを入れた。

念のため aurora を再起動した上で session_save_path() の挙動を試してみたが、設定変更前と何ら変わらなかった。

なお、 aurora の中のいろいろなログを調べたがこれに関連すると思しいエラーは見当たらなかった。保存先のディレクトリのパーミッションにも問題はなかった。スティッキービットを疑って chown してみたが改善しなかった。PHPのセーフモードでは session_save_path() は使えないという情報も見つけたが、PHP 5.4以降ではセーフモードは削除されているということであるから無関係である。海外のWebサイトに同様の現象についての記述を見つけたが、そこには解決方法は見当たらなかった。

●進路指導Webサイトの更新
A先生からメールで受け取った資料を掲載した。

現3年次生(B3)・大学院1年次生(M1)向けにWebサイトのパスワードを設定した。これについての告知文を書いてメールで送信する準備まではしたが、夜遅くに送信すると学生から嫌がられることがあるので、明日送信することにした。

●その他
研究室OBのOsくんが来室したので恐らく20分間ほど話をした。

2015年10月9日金曜日

2015/10/08(木) 基礎演習2, da2 授業実施

●基礎演習2 授業実施
2限目に第4回(テーマFの第3回)を実施した。特に講義することもないので、前回一度見せた課題のスライドをスクリーンに表示し、質問はこの時間中に解決するようにという指示を出しただけで、あとはすぐに演習に入った。なお、課題のスライドに誤記があったのでその場で修正した。

途中、11時から30分間ほどをかけて、一人一人の作業状況を点検し、手元の履修者名簿に記録した。それが終わればもう特にすることもないので、受講者に対しては退室を許可したが、ほとんどの受講者はチャイムが鳴るまで残って作業を継続した。

授業時間中にいくつか質問があり、その中でもEclipseからJavaソースファイルを取り出す方法については複数の受講者から質問があったので、これに関するswBのスライドを授業終了までスクリーンに表示しておいた。

●基礎演習2 授業処理
授業時間中に見つかった課題のスライドの誤記をあらためて修正し、授業用Webページも更新した。

夜に、授業中の作業状況点検結果にもとづいてK'sLifeの出席登録データを修正した。
早くもメールで届いた最終レポートが10本以上あった。これらのWordファイルおよびJavaソースファイルを保存した。

●計算機環境の整備
★H27貸与ノートPC保守機の保守
F-Secureの更新とWindows Updateを実行した。結構重かった。授業前にやっておいたのは正解であった。

●da2 授業準備
続き。スライド資料を見ながら講義の進行を確認した。自分で作った資料でもやはり進め方を忘れているところがあった。
手持ち資料としてスライド資料のPDF版のハードコピーを作った。

これまで教室後方の座席にはなるだけ座らせないようにしていたが、考え方を変えて今回から後方2列だけを空席にすれば良いことにした。これについて告知するためのスライド資料を作った。

●da2 授業実施
4限目・5限目に第4回を実施した。

いつもより少し早めに教室に行って、スクリーンに告知スライドを映しておいた。喜んで後方の座席に着く受講者が結構いるかと思いきや、そうでもなかったのは意外であった。ただし、こういう指示を出すのは今回が初めてであるし、また後方の座席を好みそうな受講者のうち幾人かは今回欠席していたことでもあるので、次回からは後方に着席する者が増えてくるのではないかと思う。

チャイムが鳴ったらすぐに小テストを開始した。10分間で打ち切った。様子を見て延長することはしなかった。

今回のテーマはスタックであった。まず自作のスライド資料を使って講義した。やたらと例え話を持ち出したりダルマ落としを使ったりして、とにかく理解しやすく話すことを心掛けた。
クイズも少なからず出題した。ただし、今回は受講者を指名してクイズに答えさせることは一切しなかった。積極的に解答したい者はいないかと思って何回か募ってみたが反応はなかった。次回からは募るのもやめることにする。眠りに落ちる受講者にも一切注意を与えなかった。
3クラス共通のスライド資料は、それまでに講義した内容との重複部分が多かったこともあって、かなりの駆け足で説明した。
結局、4限目終了時刻の20分間ほど前にスタックの講義は終了したので、そこからは演習に取り組ませた。

小テスト答案は助教のK先生に採点してもらった。
4限目の終盤から休み時間にかけて、この小テスト答案に目を通した。採点結果に見直しを要する答案が3枚あったので、これはK先生にいったん戻して確認してもらった。
こうして採点が終わった答案はすぐに受講者に返却した。

5限目の早い時点で演習問題を全て解き終える受講者が多かった。今回は無理に課題を解かせることをせず、早々に退室を許可した。教員側から見ると、それ以上の指導を求めていない受講者は次々に退室していくので、要指導対象者を判別しやすかった。

6限目には3名が居残った。1名は前回も最後まで残った者であった。もう1名は前期のda1で居残る頻度が高い者であった。この2名は(彼らにとってはいつものことであろうが)授業中の説明やヒントをろくに聴いていなかったために演習に苦戦していた。今回はかなり厳しいことを言いながら、とにかく問題を完答するところまで指導した。しかし、最近学生にガミガミ言うことにいい加減飽き飽きしてしまっているので、次回からは何も言わないことにする。その代わり解き終えるまで付き合うこともしない。
さて、あとの1名は先週の課題に果敢に挑戦していた。まだまだ勉強が必要のようで、前回と今回に結構大きなヒントを与えても先週の課題を解き終えるのは難しいかもしれない。しかし意欲は買うので応援したい。
19時頃までに退室した。

ヒントを表示する仕組みはうまく動作しなかった。この原因は学部のWebサーバの時刻がずれている問題が解決しないことであった。Webサーバの時計はちょうど1時間遅れていた。明日のシステム運用室会議で発言するべきかもしれない。

(da2次回のための方針まとめ)
・後方2列より前に着席するよう指導する。空席にさせるのは2列だけ。
・受講者にクイズ等に答えさせることはしない。講義は原則的に自分だけで進行する。
・眠っている受講者に注意を与えることはしない。
・演習問題が終わって(あるいは終わらなくても)退室したい受講者にはこれを許可する。退室時にはカードリーダに学生証をタッチしなくてもよいことにする。
・授業を聴いていなかったために演習問題を解けない受講者に注意を与えることはしない。
・適当な時点で居残りを打ち切る。6限目開始時点で打ち切り時刻を宣言しておくのが良いであろう。

●進路指導Webサイトの更新
A先生からメールで流れてきた資料数点を掲載した。また、現3年次生向けの学内行事の日程を掲載した。

●da2 授業処理
演習得点の集計を行ったところ、小テストの得点の記録がないのに演習の得点はある受講者が1名いた。どうやら小テストの得点のほうが記録から漏れたようである。この受講者にはK'sLifeを通じ、今回の小テスト答案を次回持参するようにという指示を送信した。次回にこの答案を確認した上で記録を修正する。

小テストの受験状況および演習の記録に基づいてK'sLifeの出席登録データを修正した。また、これらの得点は評価用Excelファイルに入力し、成績確認システムにも掲載した。

●da2 授業準備(第5回)
次回の準備作業を行った。小テストはまだDropboxに無いが、それ以外の資料は昨年度版の流用であるから、これをスタッフ向けに所定の場所に置いた。また、資料のPDF版や演習用のファイルを授業用Webページに掲載した。

●次年度の基礎演習 授業準備
次年度の基礎演習1および基礎演習2に備えて、本日の授業中に気付いた点を記憶の新鮮なうちに資料に反映しておくことにした。

・サイコロの目の数値を受講者が2ケタに増やしたときに、数値がその表示領域からはみ出してしまう。そこで、こちらから提供するサンプルプログラムでは数値の表示領域としてあらかじめ2ケタ分の幅を確保しておくよう変更した。
・上記の変更を加えたJavaソースコードをスライド資料に貼り付け直した。
・上記の変更を加えたJavaソースコードの一部を穴にした配布資料のPDFファイルを作り直した。
・EclipseからJavaソースファイルを取り出す手順をスライド資料に追加した。

次年度の科目のフォルダを作り、そこに更新済みの資料を置いた。

●教職課程認定申請の書類
続き。他の2科目について教務課に問い合わせた。回答待ち

●その他
ICT教育に関するアンケートの回答を学部事務室に提出した。

2015年10月8日木曜日

2015/10/07(水) gw 授業実施、卒研ゼミ、C3PO合同ゼミ

●gw 授業実施
2限目に第3回を実施した。出席3名。今回ようやく受講者全員が揃った。
P2Pおよび非リアルタイムグループウェアについて講義した。ある受講者から、2014年の年末から2015年の年始にかけてネットワークの渋滞が起きなかったのはLINEの普及と関係があるのかという質問を受けた。回答できなかったので、調べたうえで次の機会に回答することにした。

●卒研ゼミ
3限目に卒研ゼミを実施した。出席5名、欠席1名(Naくん)、日報相互点検による出席排除1名(Isくん)、遅刻に伴う出席排除1名(Maくん)。
Inくんの進捗報告を聴いてコメントした。ExcelとWordについて一通りの調査は済んでいるが、うまくいかなかった項目の再点検、調査結果の整理、関連技術の調査などまだまだやるべきことは多い。この報告とそれに関する議論に1時間ほどを費やした。
そのあと私から、昨日決めた今後の日程を説明した。

●卒業研究の指導
Yaくんにシステムの実装について個別指導を行った。まだまだ不勉強なところもあり、進みかたは決して速くないので、見ているこちらにも不安は大きい。しかし、とにかく着実に進めている点が彼のいいところである。

●電子錠登録・登録抹消
昨日教務課からメールで受け取った学生証再発行1件を処理した。

●da2 授業準備
続き。第4回の小テスト用紙を受け取った。履修者名簿のハードコピーを作った。
第4回の講義の進行を再確認すること、手持ち資料のハードコピーを作ることなどが未実施

2013年度および2014年度の小テスト答案の未返却分が出てきた。今さら必要とも思えないが、いったん破棄したら復元できないので、さしあたり当該年度の定期試験の封筒に入れた。

●C3PO合同ゼミ
6限目にS研との合同ゼミを実施した。まずS研Naさんの報告を聴き、次にMaくんの報告を聴いた。前回と比べて進捗はあるにはあるが、進捗の大きさは十分ではないので、年末の日程から逆算すると状況は厳しくなっていくばかりである。このような状況で実際に役に立つものができあがるかどうかは疑わしい。つまりこれはいつも通りである。最後に私から Viewport Resizer を紹介した。

●基礎演習2 授業処理
前期の基礎演習1とは一部の実施要領や提出物が異なるので、採点基準のWordファイルを改訂した。さらに評価用Excelファイルを用意した。先々週先週の実施結果および提出物に基づいてこれまでの得点を入力した。

●教職課程認定申請の書類
続き。新pk2のシラバス案を作り、MLを通じてS先生とG先生に送付した。
あとは履歴書と業績書を作らなくてはならない。
他にも2科目のシラバスを作らなくてはならないが、これらの科目の主担当者は自分ではない。主担当者には10/03(土)にMLを通じて問い合わせたがまだ返信がない。

●その他
ICT教育に関するアンケートへの回答を作った。ScanSnapでPDF化した。明日学部事務室に提出する。

9/25(金)のCNC運営委員会について、来週10/14(水)の教授会において報告しなければならない。このCNC運営委員会の配布資料のうち、会議後に差し替えられた一部のページがようやく見つかったので、差し替えられた状態の資料をScanSnapでPDF化し、10/14(水)の教授会の報告事項の資料としてメール添付で学部事務室に提出した。

2015/10/06(火) 卒業研究の指導

●PB演習 サーバ調整
作業結果をMLを通じて関係者に報告した。

昨日のPB演習の授業中にある4年次生から日報システム等のユーザアカウントの作成を依頼された。この4年次生にアカウント作成完了をメールで連絡しておいたところ、今日返信があり、アカウント情報提供システムを使用できないとのことであった。アカウント情報提供システムのデータを点検したところ、確かに抜けがあったのでこれを埋めた。その上でこの4年次生にその旨を連絡した。折り返しシステムを使用できたとの連絡があった。

●学生への修学指導
昨日N先生から聞いた話を受けて、当の1年次生と昼休みに面談した。詳細略。

●卒業研究の指導
★今後の日程
秋季中間発表会の日程を昨日決めたのに加え、12月の卒業論文下書きの提出・点検および冬季中間発表会の日程を検討した。
これらを研究室内Wikiの2015年度日程のページに記載した。

★個別指導
先週10/02(金)に約束した通り、午後にKaくんへの個別指導を行った。まずこれから追加する機能のアイディアを説明してもらい、これについて議論した。この議論に2時間ほど費やした。次に、すでにあるHSPおよびPHPのコードのレビューを行った。いろいろと気づくことがあって指摘した。途中でひどく疲れてしまい、夕方になる頃には何度も休憩を入れずにはいられなかったが、とにかく一区切りつくところまで検討を進め、Kaくんに今後の作業を指示した。
これとは別に、ノートPC nightfog をKaくんに一時的に貸して、彼のHSPで作ったプログラムがWindows 8.1で動くかどうかを確認させた。動くということであった。

Muさんのシステム実装について少しだけ指導した。

●da2 授業準備
10/08(木)第4回の資料のPDF版を授業用Webページに掲載した。第4回からは印刷物としては配らないので、受講者は紙の資料がほしければ自分でプリンタ出力しなければならない。その旨について受講者に注意を促すため、K'sLifeを通じて連絡通知を送付した。
また、スタッフ用に第4回の資料を所定の場所に置いた。

さて、先週の第3回では6限目の終了時刻になっても演習の解答が終わらない受講者がいた。他にも、5限目の終わり頃にようやく1問目を解いた受講者もいた。この受講者はそれからそのあとの問題を解くのは早かったが、ずっと横に友人がついていたところから察するに、自力で解いたのではないのであろう。この先が思いやられ、到底付き合いきれないと考える。
そこで、一定の時刻になったらヒント(というか正解)を提示することを試すことにする。新たにPHPスクリプトを作り、これを授業用Webページに設置した。このスクリプトは、事前に決めた時刻を過ぎるとサブディレクトリ内のテキストファイルへの閲覧を許可する。とりあえず第4回については18時に設定した。この設定で第4回の様子を見る

●進路指導Webサイトの更新
A先生からメールでまとまった分量の求人資料が流れてきたので掲載した。

●その他
扶養関係に関する点検の書類を学部事務室に提出した。