樋口三郎の授業情報@龍谷大学先端理工学部数理・情報科学課程

樋口三郎の授業情報@龍谷大学先端理工学部数理・情報科学課程

数理情報セミナー(2017)で JavaScript ゲームフレームワーク Phaser.js アプリ デモ&プレゼンテーション

数理情報学科3年次の必修科目, 数理情報セミナーでは, 2016年度から研究室合同でのプレゼンテーションを行っています. 2017年度は樋口研は数学系の山岸研と合同です. 樋口研は, JavaScriptゲームエンジン Phaser.js を利用したアプリのデモを行いました.

An Introduction to HTML5 Game Development with Phaser.js

An Introduction to HTML5 Game Development with Phaser.js

統計検定(2017年11月26日)の過去問題が公開

前回の統計検定 (2017年11月26日)の過去問題が公開されました. 次回の検定は2018年6月17日(日). 龍谷大学瀬田学舎団体受験を行う予定です. 確率統計☆演習I参加者のみなさんは, 挑戦するのにいい位置にいますよ.

www.toukei-kentei.jp

hig3r.hatenadiary.com

hig3r.hatenadiary.com

3年生向けマイナビインターンシップフェア(2018年1月14日(日)クサツエストピアホテル 滋賀県 草津市)

主に3年生向けのインターンシップ紹介イベント, マイナビインターンシップフェアが, 2018-01-14日に草津クサツエストピアホテルで行われます. 特定の1社にいきなり応募するよりはずっと気楽に行けるのでお奨めです.

インターンシップ紹介と言っても, 就職活動をスタートするためのイベントのようなもの. 龍谷大学キャリアセンターは龍大生に最適化した説明をしてくれるので, 学内キャリアガイダンスは貴重ですが, その一方で, 一般の大学生がどう説明されているのか, どう行動しているのかを知るのも重要です.

job.mynavi.jp

教室のプロジェクタとタブレットをワイヤレスディスプレイ(AirPlay Mirroring)でつなぐ

講義室では教卓近くにプロジェクタにつながる VGA/HDMI 入力があることが多く, PC/タブレットはこの近くに置かなければならない. PC/タブレットを直接操作したい場合*1, 教員はここからあまり離れられなくて不便.

これを解決するのに, PC/タブレットと, Apple TV, Fire TV, Chromecastのような, HDMI出力を持つセットトップボックス(スティック?)を教室の無線LANに接続し, これらの持つ AirPlay Mirroring, MiraCast, Chromecast などの機能でデスクトップをプロジェクターに送ることを試みてきた. しかし, ryu-wireless では無線LAN接続時にBASIC認証が求められる, プロキシ設定が必要, なことから, いいソリューションが見つかっていなかった.

IPad, Mac について, 最近, 製品自身がアクセスポイントになる(=ryu-wireless に頼らない)(本来はテレビに挿す)ワイヤレスディスプレイドングルを, 講義室のHDMI入力に挿して使うことにした. いま使っている製品はこれ.

iPad, Mac は通常の無線LANを使うので, 物理的には何もつなぐ必要はなく, このアクセスポイントに接続して, アクセスポイント自身に対して AirPlay Mirroring するだけ. Android, Windows (Miracast)にも対応しているそう. Lightning Digital AVアダプタよりよほど安いことに気づく.

Apple Lightning - Digital AVアダプタ MD826AM/A

Apple Lightning - Digital AVアダプタ MD826AM/A

自身がアクセスポイントになるワイヤレスディプレイドングルの多くの困る点としては, このアクセスポイントに接続したPC/タブレットは, 学内LAN, インターネットに接続できなくなること*2. 以前は, この点からこちら方向の解決は却下していた*3のだが, プレゼンテーション+書込用のタブレットは専用にして, Webとか使うなら, (そういうときはだいたいキーボードも使いたくなるので)教室備付PCに切り替えれればいい, と割り切ることにした.

なお, いくつかの計算機実習室の教卓には最初から Miracast がついているので, Windows のノートPCの人はそれを使えばもっと簡単.

Windows / Android / iOS 対応の同種と思われる独自製品

Windows, Android 対応の製品

HDMIエクステンダー

これとは違うアプローチで, PC側から取り出したHDMIを, ワイヤレスで伝送するものもある. これだとOSやPCのディスプレイアダプタは通常のHDMI出力さえ持てばよい.

*1:限定された操作をワイヤレスマウスやワイヤレスプレゼンテーターで行うこともできるが, タブレットに書き込んだりしたいので

*2:このアクセスポイントが親のルーター経由でインターネット接続する機能もついているのだが, やはりBASIC認証やプロキシが問題になる

*3:そしてセットトップボックスを教室のWi-Fiに接続させることを模索していた

2018年度の計算機実習室のWindows, macOS, Linux, Office, Moodle のバージョンは?

2018年度の情報メディアセンターの計算機実習室のソフトウェアバージョンについて, 渾身の予想は次です.

  • Windows 8.1 (2017年度と同じ. 10への更新は2019年4月?)
    • 12月に教学部から授業担当者に届いた「使用教室希望調査」ではWindows10にバージョンアップ予定, となっていますが, Windows 8.1が正しいです.
  • macOS 10.13 High Sierra (自信なし. 2017年度は Sierra)
  • Ubuntu Linux 14.04 LTS (2017年度と同じ)
  • Microsoft Office 2016 (Windows, Mac とも. 2017年度と同じ)
  • Moodle 3.1 LTS (2017年度と同じ. 3.5 LTS への更新は2019年度)
  • Visual Studio 2013 (2017年度と同じ. 2019年度のWindows 10への更新にあわせて 2017以上に?)

hig3r.hatenadiary.com

応用プログラミング☆実習後半(樋口) aka ネットワークプログラミング

2017年度だけお願いして担当させていただいた授業で, 学生さんの認知過程への樋口の直観が不足しているので, 学生さんにはいろいろ迷惑かけています. ごめんなさい.

樋口はふだんはもっと上のレイヤーでプログラムしていて, PHPJavaScriptプロトコル HTTP だけにどっぷりつかってる(Webエンジニアとも言う)のですが, この授業では CでTCP/IPソケットプログラミングをしています*1. ソケットプログラミングは2000年代の情報工学科の典型的な学部実験テーマでしょう. 検索してたら東大物理学科の物理実験でもこんなことやってたみたいですけど加速器物理かな? 最近は, だんだん Light weight 言語でもっと上のレイヤーでプログラミングすることが増えてきたので, こういう内容を正面からやるというのは貴重な体験かもしれません.

数理情報学科のカリキュラムの中の位置づけとしては, 「大規模な実用的プログラムを作れるようになる」が学習目標ですが, 大規模な, や, 実用的, のところは括弧付きのおままごとになりそうになるところを踏みとどまっています. 後半のさらに後半では, プロトコルに合意したサーバチームとクライアントチームが壁で隔てられた状態でプログラムして, あとで結合テスト(?)するという, 分業制のプログラム開発過程を体験しようとしています.

その意味ではネットワークプログラミングは手段, 題材に過ぎないのですが, ネットワークやコンピュータの知識の上での他科目との関係としては, 計算機システムII(2年後期)のOSやプロセス管理の理解を利用し, 一方, 細かいプロトコルの話や階層モデルの話は, 今後あるネットワーク構成論(3年後期)に頼っています. もちろんCプログラミングの構造体, ポインタ, 文字列処理というあたりは, プログラミング及び実習(2年前期), アルゴリズム及び実習(2年後期)に頼っています.

参考書

最近出て入手が容易でソケットプログラミングを扱っているもの

ネットワークプログラミングという題名だったり, システムプログラミングという名前の本の1章になっていたり, します.

日本人学習者向けの丁寧な演習ガイド

例解UNIXプログラミング教室

例解UNIXプログラミング教室

  • 作者: 冨永和人,権藤克彦
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 2007/09/28
  • メディア: 単行本(ソフトカバー)
  • 購入: 6人 クリック: 185回
  • この商品を含むブログ (22件) を見る
基礎からわかるTCP/IP ネットワーク実験プログラミング―Linux/FreeBSD対応

基礎からわかるTCP/IP ネットワーク実験プログラミング―Linux/FreeBSD対応

決定版

この授業向けには牛刀かもしれません.

UNIXネットワークプログラミング〈Vol.1〉ネットワークAPI:ソケットとXTI

UNIXネットワークプログラミング〈Vol.1〉ネットワークAPI:ソケットとXTI

  • 作者: W.リチャードスティーヴンス,W.Richard Stevens,篠田陽一
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 1999/07
  • メディア: 単行本
  • 購入: 8人 クリック: 151回
  • この商品を含むブログ (35件) を見る
asin:4320120841:detail ))

プログラミングでなくプロトコルや物理的な背景を知りたい人向け

インターネットプロトコル (IT Text)

インターネットプロトコル (IT Text)

*2
ネットワークはなぜつながるのか 第2版 知っておきたいTCP/IP、LAN、光ファイバの基礎知識

ネットワークはなぜつながるのか 第2版 知っておきたいTCP/IP、LAN、光ファイバの基礎知識

マスタリングTCP/IP 入門編 第5版

マスタリングTCP/IP 入門編 第5版

*3
基礎からわかるTCP/IP ネットワークコンピューティング入門 第3版

基礎からわかるTCP/IP ネットワークコンピューティング入門 第3版

*1:ふだんATに乗ってるドライバーがMTしかないって言われたようなもの. 免許は持ってますけど.

*2:ネットワーク構成論の参考書

*3:雑誌の連載をまとめたもの. ソケットプログラミングにも1章分ふれています.