テスト返却・解説+Winny問題解説
テスト問題を返却し、解説を加える。 丁寧に説明をしていたら、残り10分程度しかなかったので、 学生さんにネットワークの問題点を知っていて欲しいので、 下記の Winny 裁判のネタで解説を行い、 著作権違反をしないように呼びかける。
Winny開発者有罪(150万円)
一応、Winny開発者に有罪判決がおりた様である。
# どうせ、上告などで最終決着はまだまだ先とは思うけど…
ニュースをみた感想だけど、違法利用者が多いのを認識した状況で、 「匿名(=違法性の認識)で最新版公開を続けていた(=著作権違反幇助)」んだから、 しかたないでしょう。
Winny 利用者は自戒せよ
他のニュースでも、Winny の利用者 (この時点でほとんどの人が、自分のダウンロードしたデータを、さらに公開している) の解析が進み、「 ACCS から利用者に警告メールが送っている。 別の Share あたりも解析ができる状況になっている… 」ことが伝えられている。
だからこそ、Winny 系の違法データの利用者は、 もう「自分自身もつかまる」という認識を持つべき。 ついでに、Winny などの解析ができるということから、
などを使っている」 = 「自分は著作権違反をしているという証拠を全世界にたれ流している」
ということを知るべきだろう。
オープンな任天堂?
任天堂は、ファミコン時代の隆盛時の「ソフトコピーをさせないためゲームカートリッジ」 という方針を曲げなかったために、スーパーファミコン以降は『PlayStation にボロ負け』 というのが通説である。 しかし、次世代ゲーム機の戦いの中で Wii での『一人勝ち』には、 PlayStation での敗北への反省が活かされている様子。
逆に PlayStation3 でハイパフォーマンスの Cell プロセッサで打ち出した Sony に勝つために、 普通のプロセッサメーカーでは考え付かない 「プロセッサアーキテクチャのロードマップに乗らない」 という発想で、立ち向かっている様子。
Linux のオープンソースの考え方に染まっている身からすれば、 Closed アーキテクチャの任天堂は好きになれなかったが、 DS , Wii による復活は、経営者の英断のたわものなのなんだなぁ…
# ということで、任天堂も好きになってきたし、 買いてぇ〜♪
テスト返却・解説+参照カウンタ法
テストの回答・解説を行う。
メモリの使用量の総括
後期中間までの授業内容を総括し、処理速度をあげるためのテクニック紹介であった点を強調する。 しかし、プログラミングでは「速度」、「処理の複雑さ」、「メモリ使用量」が重要であるとの 視点から、「メモリの使用量」の話しをする。
リストなら、M(N) = (sizeof( data部 ) + sizeof( ポインタ )) * N 配 列 なら、M(N) = sizeof( data部 ) * N ただし、想定データ件数=実際データ件数の場合。 現実は、C なら配列サイズは、固定なので、 M(N) = sizeof( data部 ) * MAX
参照カウンタ法
前の説明の「リストではポインタのデータ量が無駄」との話しを発展し、 malloc() は、もうちょっと無駄がある点を話したいので、参照カウンタ法の話しをする。
最初に、リストによる和集合計算のプログラムと、全リストの開放処理のプログラムを示し、 共有の発生するプログラムでは、全リスト開放で2重ポインタ開放が発生する可能性をしめす。 その解決法として、参照カウンタ法を示す。
最後に、参照カウンタ法の実例として、unix ファイルシステムでの参照カウンタの説明を行う。 参照カウンタ法の欠点(循環リスト)については、次週。
WiiRemote
今年のプログラムコンテストでは、加速度センサーを使った操作ソフトを作ったけど、 Wii には最初から、加速度センサーが付いている。 BlueTooth 機器なので、パソコンからもデータ参照が可能。 ということで、来年のプログラムコンテストでは、 WiiRemote を使ったアプリケーションが沢山でてくるだろうな。
# あんど、その準備のためにも、Wii 買うか!! > ママ
# 「うん買おう…」という声は、我が家の充輝君から即答されそうだが…
# その前に、予約しても入手困難という状況が変わらねば….
プロコン1回目、皆さん真面目に取り組む。
パソコン甲子園の方式にならったプログラミングコンテスト形式の1回目を実施する。 前半の1・2回目用に準備した問題は 20 問 。 極めて基礎的な問題だとは思うけど、 不慣れな学生さんは、予想通り最初の問題で悩んでいる。 でも、プログラミングの最初は、時間をかけてでもきちんと自分の「力」で完成させた 「経験」こそが、実力に結び付くんだから、「悩んでも自力で…」と…
実施方式で説明していた 『相手の間違いをみつけたらポイント50%ぶんどれる…』 でのポイントの移動は少なかった。 また 加点』 という点については、1回目で簡単な問題に集中したため、 説明でポイントを取った学生はいなかった。
自分の直感的には、面倒な問題のポイントがあまり高くないので、 難易度が中ランクの10点を数多くこなす方が、得点をかせげるはず。
意外な喜びの商品、意外な喜びの価格
いつも、大量に届いている SPAM の中に、誤判定のメールが無いか探すのだが、 最近は、笑わせてくれるネタも多い。
http://yahoo.jx005.com こんにちは、いつもおせわになります 私の店をご光臨賜わることを歓迎するhttp://yahoo.jx005.com/
サイトをアクセスすると、自動判定(日本語)だと、文字化けで読めず、 エンコーディングを自動判定(中国語)にすると、ひらがなを含めた文字が表示されるという、 変なサイトであるが、 「おまえ、本当に買い物して欲しいのか?」 と突っ込みたくなる。
小テスト作成中
講義の理解度評価用に実施する小テストの問題を作っている。 傾向は例年通りの穴埋め+記述問題。 穴埋めは専門用語が多いので沢山のキーワード群の中から選んでもらう。 んで、簡単にしないためにも関係の無いキーワードを作る作業に、一手間かけている。
例年、無関係キーワードには、ネットワーク技術の穴埋め欄に、 Star Treck の SF 3 文字言葉を探してきたりと、遊びぎみ。
Jig.jp 福野氏による特別講義
昨年度より実施している専攻科における企業実務者を交えた特別講義ということで、 Jig.jp の福野氏による特別講義を実施。 OS と現在の業務に関係した講演をたのんでいたので、OS の必要性のあたりから、 携帯の OS を交えた話題となった。
講演要旨(共通化して扱うための『層』を作ればアプリ開発の利便性に)
- OS は操作性・開発の共通化のために重要。
- 携帯電話では、機種毎の違いを携帯のOSが吸収してるけど、 携帯はメーカーで Symbian,Linux,BREW…と様々あって、共通化プラットフォームが必要。
- しかし Javaの仮想マシン Java VM があり、プログラム開発が共通化された。 アプリケーションの視点からすれば、Java VM は OS としてとらえることもできる。
- しかし、Java環境も OS 毎でプロファイルを扱う"Java拡張ライブラリ"が、 DoJa,MIDP,etc…と違いがあり、共通化するプラットフォームが必要。
- Jig.jp では、JigletVM という環境により、Java拡張ライブラリを共通化している。 この視点では、Jiglet の視点では、JigletVM 配下すべてが OS の様なもの。 これにより、プログラム開発が容易になっている。
- 一方最近では、ユーザは携帯やPCと様々な環境を利用する。 しかし、データを各環境毎に持つのは不便。 ネットワークで共通化して利用できることが重要。 最近は Web 上にデータを持つ事で、スケジューラ等の利便性は、上がっている。 利用者の視点では、ネットワークによりデータが共通化されれば、 ネットワーク配下すべてが『OS+ネットワーク』で共通化されているとみなすこともできる。
- この中で Google や Amazon では、Web データを扱う API が公開され、 これらの情報をアプリケーションで自由に扱える時代になりつつある。
- これからは、様々な Web データを扱う API を共通化して扱える『何か』 を開発すれば…..