第10回まっちゃ445勉強会参加記録

いってきました、まっちゃ445勉強会。どん。


11/28、土曜日、東京は神保町にて。


アップルパイおいしかったー。
あと、京都のわらびもちがとっても好きでした。


関連

第10回 まっちゃ445勉強会 (まっちゃ445勉強会)
- まっちゃだいふくの日記★とれんどふりーく★


まっちゃさん(id:ripjyr)のブログ。開催前・開催後の参加者フォローが
すごいしっかりされてるので、まとめサイトのように関連記事がまとまってます。


第10回まっちゃ445勉強会「仮想化技術大会」
- Security.GS MAGAZIN


拙者がSecurity.GS MAGAZINで軽く書いた記事でござる。


目覚まし勉強会


午前中は目覚まし勉強会。
普段のまっちゃ445ならLTをやっている目覚まし勉強会、
今回はリバースエンジニアリングチャレンジ2009
表彰式に充てられていました。
院生の方と学部生の方が1位・2位ということで
表彰されていました。いつもどんな勉強やってんだろ、
と思って「学校での研究テーマは?」とか訊いてみたら、
研究では特にアセンブラとか解析とかされてるわけではないそうな。


そこでちょっと話題に上ったけど、僕もちょうど前日(金曜日)に
学校での研究テーマが決まったのでした。論文書かねば・・・。
がんばるぞ。このブログでも触れられたらちょこちょこ触れていきたい。


神保町


目覚まし勉強会後、お昼は外食。
神保町ったら二郎だろ、ってことで11:35ごろに
二郎にいってみるが、既に30人ほどの列ができていたので
断念。50分しか時間はないのだ。


そんじゃぁ神保町ったらカレーだろ、ってことで
老舗洋食屋さん「キッチン南海」でカツカレーを食す。
うまー。偶然、勉強会会場提供者のIIJ・Mさんの隣席で
食べることができ、神保町の解説をしていただいた。
ありがとうございました。


その後、神保町ったら古本屋だろ、ってことで20分間くらい
ぶらぶら本屋を冷やかして会場にもどった。


I♥VMware


・そして勉強会本編。
これはSecurityGSの方に書いたように、すごい充実度な内容だった。
こんな豪華な勉強会が無料。。。夢のような話が展開されている。


・開始時には、参加者(居たのは70人程度?)全員が自己紹介。
まずスタッフが自己紹介したのち、参加者のターン。
僕はかなり早め(3番目くらい)だったのだが、10人20人と
進むにつれて「自己紹介の流れパターン」みたいなものが
なんとなく出来上がっていったように思ってみていた。
名前→仮想化環境の使用経験→本業では何をやっているか
みたいな。
以前から、まっちゃさんに「自己紹介は参加者の声だし」なのだという
勉強会論を聞いていたけど、やっぱり大事だということを実感した。
緊張もほぐれるし、数人に一人の間隔で笑いを取ってくるし、
6時間後の懇親会のときに「ああ、自己紹介で○○って言ってた人ですよね?!」
とか盛り上がれたり。
自己紹介だけで40〜50分くらい使い、しっかりと心の暖を取った
勉強会の開始だった。


・普段からVMware好きな僕は、VMwareのK氏がPCに貼っていた
「I ♥ VMware」のステッカーが欲しいと思ってしまったが、
質疑応答時間に質問したところ現在入手不可とのことだった。
ほしい〜。



学生枠


さて、内容や会場のすばらしさもそうなのだが、
学生と新規枠の参加を推奨しており、さらにそれが
結果としてしっかり数字にも表れているというところが
すばらしいと思った。
毎回3割(だっけ?)は新規参加者が居る。
学生枠は10名分用意されており、交通費全額、懇親会半額という
経済的援助を受けることができる(電設部からは6名ほど参加させて
いただいた)。


最近、学科ブログでも「学生だってどんどん学校の外に出て行こうよ」
という話をしたんだけど、勉強会デビューの場としても知識の仕入れ場所としても、
まっちゃ445勉強会というのはすばらしいところだと感じた。


でんせ粒


12/5の電設部勉強会、もうちょっと大規模にやってもいいんじゃない?
という話を少ししてくれた方がいらっしゃったのですが、まぁ、
最近勉強会の運営を後輩に譲って行きたいなぁと考えておりまして、
それだったら最初はまだ小さいままでいいと思ったんですよね。
なにせ3月には卒業してしまう。


ここが学内勉強会の難しいところだと思うんだけど、
長くても1〜2年でリーダー的存在が替わらなくてはいけなくなり、
世間一般の「勉強会」から見ると、代表者の交代が割と頻繁に
起こることになる。その間に、後輩の育成、跡継ぎの検討、
運営ノウハウ引継ぎの工夫をする。電設部は今後輩育成フェーズだと思う。
もうちょっとやったら、誰かに電設部IT勉強会プロジェクトリーダーを任せたい。


では。眠いのでこの辺で今日はきります。

CentOS 5.4 にGit入れる

入れた。


こちらの記事を大いに参考にさせていただきました。
ありがとうございました。


gitインストールメモ - Bamboo lath
http://blog.livedoor.jp/lax34volvic/archives/1190691.html


ちょっと自宅の環境でいろいろやってみて、慣れたら
電設部内のサーバにGitリポジトリを作って学内勉強会などで
部員に展開し、開発してみるという試みがイマココにスタート。

gree第19回オープンソーステクノロジー勉強会

に参加してきました。
久しぶりに勉強会中にメモをとりまくったので、
とりあえずそれを載せておく。
Ustの録画もあるし、いずれどこかの
動画共有サイトに動画Upされるとのことなので、そちらもどぞどぞ。


ちょっと困ったこと

開始15分くらい前に正面入り口から入ったんだけど、
受付は裏口側に設置されていてどこで受付してるのか
よくわからなかった。
ので、勉強会が終わってから受付した。まぁ、ささいなことですね。


勉強会の情報

テーマ:「HTML5について」
日時 :11月20日(金曜) 19:30 - 20:30頃
場所 :グリー株式会社 3Fセミナールーム
URL  :http://labs.gree.jp/Top/Study/20091120.html


講師


導入

  • そのすべてを一人の開発者が追跡するのは非常に困難なほどに、巨大な仕様群と化しているHTML5
  • 今日は、概要を広く浅く伝えます
  • 会場の雰囲気次第では、オフラインWebアプリをHTML5でどのように作るか、そのアーキテクチャフレームワークなどにも触れる


デベロッパのためのHTML5入門〜拡張されたタグからWebアプリを進化させる様々なAPIまで

第一部

  • HTML5ってなに?
    • HTMLの最新版
    • 前の版、4.1は10年以上前
    • 新要素-属性-APIがたくさん!(ありすぎ?)
    • 10/30ごろに、最終ドラフト公開!
    • 勧告は2022年ごろとか言われてるw(もちろん実装を利用できるようになるのはもっと前)
    • 最初は一枚岩の仕様だったんだけどだんだん割れてきた。
    • マークアップ(タグ)中心の仕様書とAPIの仕様書とで分かれてきてる。
    • Google由来のAPIもたくさん。

 

  • どう書く?HTML5
    • ファイルの拡張子は.html, .htmでかまわない(これまでどおり)
    • Content-Typeも、これまでどおりtext/htmlでおk
    • 特徴的なのは、 先頭で空っぽのDOCTYPE宣言が必要 なこと!
 <!DOCTYPE html> ←これ!
 
 	
 	---
 	
 
  • HTML5の新要素(タグが増える!)
    • 文書構造
      • article, aside, footer....
    • 埋め込み要素
      • figure, source, video, audio...
    • フォーム-Webアプリ
      • keygen, output, input要素に新しいtypeが増えてる!日付とか!
    • インタラクティブ要素
      • progress, meter, command, details
    • テキスト-その他
      • mark, ruby, rt, rp, time

  

  • 新要素を使ったマークアップ 
    • セマンティックな意味合いを持つブロック要素(セクション)が追加された。

⇒これによって、今まで<div id="***">とかで頑張っていたところに相応しいタグ付けが可能に。

    • sectionタグ
      • HTMLの論理的な分割単位。アウトラインを構成する。

  (CSS向けのマークアップにはsectionでなく今までどおりdivを使うこと!)

    • article
      • ブログのエントリに代表される、「独立した内容を保持するセクション」として定義。

    一番近いのは<atom:entry>かな。

    • aside
      • 補足説明的。
    • nav
      • ナビゲーション的。
  • それ以外にも、
    • body, tdなども、セクションを生成する。 
    • 文字コードの指定が ですんだり。
    • 内に
      というタグがあったり。
  • divなしで
    などでアウトライン(文書構造)が構成できる。

 ⇒プログラムで処理できるようになったりする。要するに、人間にも機械にも分かりやすくなる。
 

  • Canvas!!
    • 自由にお絵かきできるグラフィック要素
      • たとえばよくある砂時計的ぐるぐるとかはJavaScriptで書いちゃえる。
      • しかも画像じゃないので、とめたり、再スタートしたり、色変えたりできる。
      • gifとかflashじゃないよ!だから軽いよ! 

 タグで
     ここにいろいろJavaScriptが書ける!
 

 

    • 残念ながら、動画の標準フォーマット/コーデックは仕様に盛り込まれず
      • でもブラウザによって動画形式を選ぶので、ちょっと悲惨な状態・・・
      • 複数のブラウザを意識して複数の動画形式を用意しなきゃいけない、とか。
      • 救いの光は、最近GoogleがOn2Technology社を買収したりしてることかも。
      • 例えば、On2Tが持っている動画技術をオープンソース化するつもりなんじゃないか、とか!業界がwktk中。

   

    • フォーム要素がパワーアップ!WebForms2.0と呼ばれていた規格を吸収
      • month
      • week
      • time
      • などなど!

  これまではJavaScriptのフレームワークで頑張っていたが、
  これからは <input type="month">とかやるだけで、GUIによる日付入力欄が!
  いまのとこ、Operaが頑張って実装中。

    • フォーム、入力値のバリデーションチェックも!!!
      • 例えばrequireとかnumberとか書くと、必須項目になったり数字チェックが行われたり。
      • とにかくJavaScriptでやってたことが、マークアップで出来ちゃう!
      • ただ、一度に一個しかエラーメッセージ表示してくれなかったりする!
    • とIDで管理するとオートコンプリートが可能になったり!
  • ドラッグアンドドロップAPI
    • エクスプローラとかFinderとシームレスに連携できるようになるイメージ。
  • クロスドキュメントメッセージング!
    • 別のウィンドウやiフレームで開いている別々のページ間で通信できる!
    • 例えばiGoogleのガジェットは全部iフレームで出来てるので、それらの間で通信可になったりとか。

 
 

第二部

  • 第二部はAPIのお時間!
    • アプリケーションキャッシュ
      • オフラインwebアプリを実現するための、アプリケーションに必要なリソースをローカルにキャッシュする仕組み
      • GoogleChromeなんかは「ブラウザとWebアプリだけで十分!ローカルアプリなんてイラン!」なブラウザなので*1、ローカルキャッシュは必須か。
    • 仕組みは
      • キャッシュマニフェストファイルを作成し、リソースをidで保存しとく
      • えとせとらえとせとら...(詳しくは動画をごらんください。)
    • Web Database
      • RDB。SQLをフルに使える。
      • ドメインごとに領域が完全に分かれる。他のサイトのDBにはアクセスできない。
      • つかいかた: var db = openDatabase()でもうローカルにDBができちゃう!
      • 同期型APIと非同期APIがある。非同期APIにするのはブラウザがフリーズしないようにするため。
      • だが、コールバックで受け取らなきゃいけないのでコーディングが面倒!
      • 同期APIなら戻り値で結果が取れるが、Web WorkersというAPIの上でしか使えない。
    • WebStorage
      • キーバリューストア形のストレージ!
    • WebWorkers
      • バックグラウンドで動作するJavaScriptのスレッド的なもの。
      • 現在のJavaScriptは全てがUI処理の一環として動作するので、時間がかかる処理をするとすぐブラウザが固まる。
      • まるでスレッドプログラミングのようだけど、厳密には異なる。
        • 「変数を共有できない。」windowとかdobument といった変数も不可。JSフレームワークを使用している場合は注意!
      • スレッドプログラミングと違って、ワーカを複数使っても1スレッドで済むときは1スレッドで処理してくれる。
    • ワーカとUIThread間でのデータ共有にはメッセージの送りあいで処理する。
      • ワーカから直接DOMは触れない。
    • ワーカのつらいとこ!
      • デバッガで処理が追えない!
      • DOMを触れないので、ログを残せない!!
        • ⇒開発が大変・・・!!!
      • メッセージングのコーディングが大変。switch-caseとか大変になっちゃう。
        • ⇒自作ライブラリあるから見てみてね!!
        • fakeworder.js ⇒eval()とsetTimeout()によるWebWorkersの実装
        • AlexService---WebWordersのオブジェクト指向化ライブラリ

    

    • WebSockets
      • 非HTTPで双方向通信を実現するためのAPI。
      • サーバ⇒ブラウザへのメッセージ送信を実現!!80/443ポートを使用。
      • サーバ側にも専用の実装が必要。
    • その他とまとめ!
      • HTML5はマークアップだけでなく、Webアプリ作成のための仕様がたくさん!
        • オフラインWebアプリ
        • Canvas、SVGを駆使したリッチUI
        • サーバからの通信も!

 

  • 会場からの質問(時間の都合で一問だけ)
    • 「navとかいろいろなタグは、レンダリング方法まで標準化されているのか?」
      • ⇒されてないので、どう表示されるかはブラウザの実装に依存する。


懇親会で話したこと、尋ねたこと

会場でそのままビアバッシュ的懇親会が催されたので、
はりきって参加した。おいしかったぁー。2,000円でした。お安い。


さて、そこで運良く白石さんと長時間お話できたので、いくつか質問させていただきました。
白石さんありがとうございました。以下、

  • 質問
    • 回答

です。

  • 「2022年」勧告てのはどういう風に出てきた数字なんですか???
    • さあ(笑)?
  • 実際、かなり仕様が膨れているようだけど、仕様書って何ページあるんですか?
    • マークアップに関する仕様書が600ページ以上、APIに関する仕様書がおそらく300ページ以上!
  • 「CanvasがあればFlashいらないじゃんという声がある」とのことだったが、ほんとにそうなのでは。Flashが絶対必要な場面とは?
    • かなりの範囲がCanvasでできることは確かだが、Flashが要らない/使われなくなるというのは極論だと思う。無くならないでしょう。
  • WebDBはローカルにデータベースを作るということだけど、ファイル形式や、テーブルの管理や、権限の管理はどうなっているの?
    • ブラウザごとの実装によるが、ブラウザによってはSQLiteを活用したりとか。

(⇒なるほどね、と思いました。)

  • だんだんWebアプリがローカルのアプリケーションと近い存在になってきていると感じるが、WebWorkersとスレッドプログラミングの違いは。例えばスレッドを導入してはダメなのか。
    • そこ(スレッド)を一段抽象化しているのがWebWorkers。スレッドを意識しなくて済むので、プログラマはシングルスレッドのような感覚でプログラミングできる。


というようなことをお聞きして、話していただいたと記憶しております。
ホントにね、Webアプリ開発がデスクトップアプリに近くなってきていると
感じた数時間でした。プラットフォームの違いを、JavaではJVMが吸収していたように、
HTML5ではブラウザが吸収してくれる。


そして、HTML5ってのはアプリの開発を見据えた言語なんだな。
そのあたりをステキに紹介しているスライドはこちら。
http://www.slideshare.net/myakura/html5-2480964


Webデザイン科のみんなにも電設部の開発系のみんなにも、
きっと面白い勉強会だったと思う。自分しか来られなくて残念だった。


GREE OST勉強会、またお邪魔させていただきたいです。

*1:Pasta-K氏が書いていたことはあたっているだろう - http://d.hatena.ne.jp/Pasta-K/20091122/1258817933

11/14 第4回PHP懇親会

行ってきました。
場所は五反田のでり坊というステキなお店。

PHP懇親会

LINDさんが主催している、居酒屋プレゼン的な懇親会。
ほんとに懇親会。LTあり。今回のアナウンスページはこちら。


第4回 PHP懇親会
http://events.php.gr.jp/events/show/86


料理おいしかった・・・。。。ずずず


やってよかった技能五輪

学校のサイトニュースや学科ブログ(オープンソースシステム科Webデザイン科)にも
詳しいレポート記事が載っているのですが、この夏、電設部
Webデザイン科の皆さんにPHPセミナーを実施するということがありました。
名づけて技能五輪プロジェクト。プロジェクトのページはこれ
プロジェクトページでは、セミナー資料やレポートも赤裸々に公開中です。


PHPに関することとして、しっかりとPHPな皆様に伝えたい成果だと思い、
今回の僕のLTはそのことをしゃべくりまわしました。


技能五輪なみなさん、おめでとうございました&お疲れ様でした。


勉強会初参加多し

あと、この日のPHP懇親会では
「勉強会とかに出たことなくて今日が初めてです」
という方が割と多くいらっしゃった。
話をお聞きすると、公式サイト
「発表経験のない人でも、お酒でも飲みながら気楽に」と書いてあるのを
見ていらっしゃったとのことで、PHP懇親会すげぇ、と思った。
また、「PHPについても最近触り始めた初心者です」という方もいて、
正直言って実務でガンガンにPHPerな方はやっぱりレベルが違うんだろうな・・・と
思っていた僕は、少し自分にもわかる話が出てきたりして
話に入りやすかった。*1


PHP勉強会もあるよ

PHP懇親会、とっても参加しやすかったのですが、
おそらく学生にとってのネックは参加費になる予感。。。
学生割引してくださっているのが大変ありがたいのですが、
それでも3,000円、なかなか出せない学生もいるかも。
とも思いました。


というときは、PHP勉強会だと参加費無料(懇親会は別よ)なので、
そちらに行くのもとってもよいかと思われる。です!

*1:かと思えば、CakePHP本の著者である岸田さんのような方もいたり

11/5 Genesis Lightning Talks vol.21


日本オラクル青山センターで11/5に行われたGenesis Lightning Talks
行ってきました。


日本オラクル青山センター

最近、GLTやわんくま同盟やその他いろいろなコミュニティの勉強会に
会場を提供していらっしゃる日本オラクルさん。すばらしいですね。
OTNのブログでもそのスタンスを表明していたり、僕が入ってるOTNのMLにも

「OTNはみなさんのコミュニティに参加したいと考えています。
 IT勉強会の会場の確保に悩んでいる方、社内勉強会を開催しているが
 何となく盛り上がりに欠けると感じている方、ぜひOTNにご相談ください。」

という案内を流してくれていたり。
しかも、プロジェクタ・音響完備、来場者用無線LANあり、
無料コーヒーベンダーあり、おまけに近くに懇親会会場候補一杯あり。


勉強会を開催するにあたっては、会場探しってけっこう大変だったりすることも
あると思うし、こういった日本オラクルさんの取り組みというのは
コミュニティの活性化にも大いに直結することでしょう。


で、GLT


今回もLTしようかと思ってたのだけれど、結構あっという間に
枠が埋まってしまい、聴く人として参加。
テーマは「非IT」ということで、エンジニアな皆様の料理の話から
痛車の話まで、非常に多彩な内容になっていました。
中でも、トップバッターなid:naruogaさんは英語+Prezi
プレゼンされていて、なんというか、かっこよかった。。メッセージも伝わった。
先日、世界のKernel Hackerたちに高尾山の楽しさを伝えたなるひこさん
さすがです。


また、6月の勉強会カンファレンス以来だった山口せんせーとも
再開できて、お話できて、うれしかった。僕のことを「モデリング」と
呼んでくれるのです、せんせーは。


他にも、そーりが窓を持ってきたり(←文字通り窓を持ってきてた。笑った)、
20時台には非常に厳しい(空腹的な意味で)お米や料理の話だったりと、
心情に訴えかけられるプレゼンばかりでした・・・。お腹減った、というのも素直な感想。


というわけで、ぜひYouTubeの動画記録をご覧くださいませ。

http://www.youtube.com/view_play_list?p=F37588EC50C9BF17


次回は12/3

次回のGLT、テーマは「プレゼンテーションツールの使用禁止」。
今回のVol.21が「ITの話禁止」だったことを考えると、
このまま「○○禁止」という縛りプレイ系LTイベントに
なっていくんだろうか、とちょっと思ったりして。


次回はLTするぞ!
でもまだネタとかプレゼン手法は考えてない。
よろしくお願いいたすます。

12/5 15:00〜 電設部IT勉強会#2

今、「前回」と打とうとして2回ほど「ぜんら」とTYPOしてしまった自分にびっくり!


学外勉強会です。よろしくお願いします。


前回に引き続き、電設部IT勉強会#2を開催します。

前回は、電設部メンバー以外にも多くの人が参加・発表してくださいました。
今回も、どんどん参加していただいて、いろいろな方に楽しんでいただければと
思っております。どうぞご参加ください!


前回の反省を活かしたい


なにしろ前回は「はじめてのべんきょうかい(開催)」だったもので、
要領が悪い部分が多く、現地・Ustで参加された皆さんにはいろいろと
ご不便をおかけしました。

  • 会場の都合上1ドリンクが必要なわけですが、それが全員一律アイスコーヒーだったり
  • Ustがなかなか始まらなかったり
  • Ustの画質が途中からしばらく「最低」設定になっていたり
  • いまいち部屋の照明が反射して室内でも少しプロジェクタの映像が見にくかったり
  • 部屋がちょっと寒かったり
  • となりの部屋のにこやかな笑い声がけっこう大きかったり(これは仕方ないか?)
  • 開始・終了時刻の前後にほとんど余裕がなかったり


などなど、申し訳なかったです。
こういった勉強会運営ノウハウも、回を重ねつつ改善していきたいので、
よろしくお願いいたします。


前回のいいところを伸ばしたい


前回、とってもうれしかったのは、まず「皆さんが参加してくれる」ということ、
そして「こんな(職業とか学校とか)ボーダレスな勉強会がほしかった」と思える
勉強会ができたこと、その勉強会を参加者のみなさんが「勉強になったし楽しかった!!」と
言ってくれたことです。ほんとにありがたいですね。
おかげでこちらも楽しいです。


また、いろいろな方とお話をしたいです。
学校の先輩*1・後輩も社会の先輩・後輩もどうぞよろしくお願いします。


ということなので


お時間・ご興味のある方は、会場でもUstでもぜひご参加ください。


http://kokucheese.com/event/index/757/


よろしくお願いいたします(礼)。

*1:Symfonyといえばid:Fivestar先輩氏!