『Kanasan.JS JavaScript第5版読書会#2』に行ってきました。
午前中はLT、午後は読書会という形式の二本立てで、かなり楽しかったです。
今回も前回同様、メモを見ながら自分なりにまとめてみます。
まずはLightningTalk。
※Ustの録画が全て整理されて公開されたので、一部リンク等を修正しました。(1/19)
まず読書会録的なログはLingrにありますが、1259メッセージも開くとブラウザが・・・固まります('A`)
なのでlingr textで変換した方のログを張っておきます。
最初は、Lingrのログを整形して変換するScriptを書こうかなーと思いながら手で削ってたんですが、検索してみるとやはりログ整形サービスを作られてる方はいらっしゃるんですね。
http://c-kom.homeip.net/lingrtext/url/http://www.lingr.com/room/Kanasan.JS/archives/2008/01/14
(これってURLアクセスする度に毎回変換通されるんだろうか?
(DLして転載したほうがいいのかなー。
そしてUstの録画データがこちら。
LT1 choさんからAWAWAさんまで
LT2 emaさんからdeqさんまで。
(この後に続く読書会の録画映像は、読書会について書いたこちらのエントリにて記載しています。
さてはじまり
○自己紹介
まずは会場全員による自己紹介
発表者のみの自己紹介かと思ったらマイク回ってきてビビった。
俺、何も自分を説明できるものがねぇな('A`)
自己紹介終わって、即座に休憩時間。
それもおわってLTスタート
○Web上でのゲーム製作(hoge1e3さん
TonyuSystemのWEB上動作への試み。
以前の試みではASによるVMの実装を行われたようだが重いらしい。
AS3になって早くはなったが、型の存在可否で大幅に速度が変わるが、配列に型が無いのが致命的っぽい。
Eclipse上で動くFlashアセンブリ的なものを今は作られている。
ブラウザ上からのswfの同的な出力に関しては、ランセンス的に問題があるのかもしれないとかなんとか
○Mozilla Developer Center 翻訳事始(nanto_viさん
OmegaTを使用した翻訳作業の実演。
翻訳作業にも支援ツールや管理ツールがあるのだと初めて知ったのでした。
皆さんが翻訳してくださるおかげで、俺みたいなのも資料を参照できます。
ありがたい><
○JSDeferredによる非同期処理(amachangさん
cho45さんの作られた非同期処理を行うためのライブラリJSDeferredの紹介と解説。
また、その仕組みを使ったライブラリの作成ができるよ!というお話。
next,wait,loop,paraallel,errorの一通りの実演を踏まえた解説(callの解説はなかった
すごいわかりやすい解説でした。
JSDeferredのソースは数十行しかない、シンプルなライブラリだということで、ソースを読んで見ると良いというお話もされてた。
読もう!
○Inside JSmarty.Plugin(shogo4405さん
JSmartyで実装されている、JSでのプラグインシステムの実装方法の解説。
実現にはXHHTPRequestでプラグインソースを読み込み、new Functionで無名関数を作り、その無名関数を実行する形で実装されているそうです。
○今さらながら Twitter API + JavaScript で自作アプリ(issmさん
『ついともにた』の実装のお話。
TwitterはJSONPのインターフェースが無いのでプロクシを挟むことにはなりますが、それ以外はpure javascriptみたい。
JSON Cookiesというのを始めて知った。 面白い。
Twitter利用度合いのアンケートを挙手でやられてたけど、思ってたよりも利用率が高かった。
『ついともにた』更新されるtimelineを見ていく系のアプリではなく、friendsの皆が今何をしているかを見るタイプのアプリですね。
おもしろいヽ|'◇'|ノ
○単に自分の開発経験を(話せる範囲で)話そう(AWAWAさん
AWAWAさんが今までどーゆー開発をされてきて、今のJSerとしてどういう段階を経てきたかというお話。
まずは「何ですかコレ!」から始まる楽しいLTでした。
ここまでの規模を想定されていなかったとの事ですが、それは他の参加者の面々もたぶん同じで、特に後半の読書会では初心者な俺が参加していけるか心配してました。
それをAWAWAさんががっつり崩してくれた感じです。
「読書会って初心者向けじゃなかったっけ?」
という問いかけがしっくりきますね。
○Script.aculo.us の UnitTest の使い方(emaさん
表題どおり、Script.aculo.usで提供されるUnitTestの実演と説明です。
ちょうど最近、Effect等を利用するためにScript.aculo.usを見てたんですが、テスト機能も十分使えるレベルなんすね。
テストにはhtmlとcssとテストケースを記述するJSファイル(html埋め込みでも可)だけで動かせます。
cssとか、公式のそのままパクってもいいよね。
まず仕様をテストとして書くってスタイルを見習いたいなぁ。
○Javascriptで無限ループを実現する5(-1)個の方法(yharaさん
N個の方法は当日の段階で5個の方法になっていましたが、amachangさんがJSDeferredを紹介されたおで更に1つ減って4つになってたみたいですw
JSで非同期処理を書けるライブラリの紹介をされていました。
1個目は普通にforやらwhileやらで書く
2個目はsetTimeoutを使った無限ループ
ここから非同期処理の話し
D.MakiさんのjsThread(Concurrent.Thread)のお話。
JSDeferredのお話。
そして5個目はJSで別言語の実装。
例えば・・・BiwaScheme!
他にJSRubyなど
さよならsetTimeout
○JavaScriptから見たHaskell(ujihisa
同様の処理を行うJavaScriptとHaskellのソースを比較しながら、JSer向けにHaskellを解説していく感じ。
今までLiveCodeingとかで関数型言語のソースを見てもわけがわからなかったんだけど、今回のLTでかなり理解できた(気がする
猫かわいい。
typing数をどこまでも少なくする事により、手にも目にも優しいプログラミングを。
○Flex & de.popforge.audioライブラリを使ってリアルタイムで音生成と再生(deqさん
概要: Flexでリアルタイムに音を生成&再生するデモです。デモ内容は,あまり面白くありませんが,「あ」とか「い」といった母音を声道断面積関数から偏微分方程式を解いて音声合成します。
時間: 5分
Flexでリアルタイムに音声を生成したり再生したり。
正直数学的な所とかはわかりませんが、この手の方程式を解いたり等はJSには向かないと思ってたので、こーゆーリアルタイムでの音声生成が動いてるのを見れるのは中々おもしろかった。
将来的に利用される例として、りらるタイム物理演算等のプログラムに、音声合成も組み込むとか、初音ミク的な何かとか。
○休憩
ここで午前の予定を一通り終えて、お昼休み。
カツ丼食ったよカツ丼。
前回の懇親会(in バーミヤン)でお話させていただいた方々と合流できたので、午後は一人寂しくという形にならなくてすんだヽ|'◇'|ノ
長くなったので午後の読書会エントリは、別に書きます><
当日はお疲れ様でしたー。
記事ものすごくよくまとまってますねー。
参考になります。
>前回の懇親会(in バーミヤン)でお話させていただいた方々と合流できたので、午後は一人寂しくという形にならなくてすんだヽ|'◇'|ノ
こちらとしても、偶然でしたがあのタイミングでtyoroさん見かけることができて良かったです(゜∀゜)
またどこかで見かけましたら、声かけてもらえると嬉しいですー。