2009/11/27

Adobe AIR Dayレポート - SORAAIセッションやってきた

2009/11/26に開催されたAdobe AIR Dayにてセッションを担当&参加させていただいたので、そのイベントの報告です。


公式サイト
http://www.info-event.jp/adobe/air/

AIR Day関連レポートのはてブ
http://b.hatena.ne.jp/shoito/AIRDAY

AIR Dayでセッションを行うことになった理由
 Flex勉強会@北陸(金沢)にて、Adobeの轟さんから「AIR 2.0を使ったサンプルアプリケーションの開発と記事の執筆をしませんか?」とお話を頂いたのがキッカケです。
 FxUG北陸は他の地域と違っていて、北陸3県のそれぞれに主催者がいて活動を行っています(対外的には北陸代表が私となっています)。この背景には、北陸の各県だけで閉じて活動を行ってはメンバーが集まらないのではないか?という北陸の勉強会事情があります。せっかく頂いたお話なので、私1人でやらずに3人で協力した方が面白いものができるだろうと協力を仰いだのでした。

Adobe AIR Day
 会場のネットワークの都合上、イベントのUstはなかったのですが、MineAPさんがAIR Day中のtwitter上での発言をまとめてくれているので、そちらも見ると雰囲気が少しでも分かると思います。
 イベント公式ハッシュタグ #AIRDAY

 <開催プログラム>
 1. AIR 2.0がどんなテクノロジーなのか、1.xから2.0でどう変わるのかを解説 by Adobe 轟さん
 2. 我々が実際にAIR 2.0を使用して開発したサンプルアプリケーションの紹介とAIR 2.0 新APIの使用方法、Tipsを解説。
 ・airPort by 宮田さん
 ・CommOn AIR by 有川さん
 ・Touch Viewer by 廣畑さん
 ・SORAAI by 伊藤(私)、盛川さん、西村さん
 ・VoiceLauncher by 山本さん
 3. AIRコンテスト優勝作品 ブログパーツデスクトップの紹介 by quq.jp 飯田さん
 4. Q & A - 轟さん、Flash Playerチーム

 ここで紹介したサンプルアプリケーションに関しては全てAdobe AIRデベロッパーセンターに記事が掲載されています。
 全てのアプリケーションのインストーラー&ソースコードがダウンロード可能ですので、興味のあるものがあれば是非ご覧ください。
 http://www.adobe.com/jp/devnet/air/

AIR 2.0プレス説明会
 Adobeがプレス関係者を招いてAIR 2.0を解説するイベントをAIR Day前に行いました。
 プレス関係者の方々が既に記事を書いてくださってるので、そちらも是非ご覧ください。

 <アジェンダ>
 1. AIR 2.0がどんなテクノロジーなのか、1.xから2.0でどう変わるのかを詳説 by Adobe 轟さん
 2. 我々が実際にAIR 2.0を使用して開発したサンプルアプリケーションを紹介(AIR Dayよりも短く1人5分程度で簡潔に)
 ・airPort by 宮田さん
 ・VoiceLauncher by 山本さん
 ・CommOn AIR by 有川さん
 ・SORAAI by 伊藤(私)
 3. AIRコンテスト優勝作品 ブログパーツデスクトップの紹介 by quq.jp 飯田さん

Flash Catalyst座談会
 Adobe AIR Day終了後、Flash Catalystのローカライズ担当チームと日本語ラベルの表記をどうすべきか自由闊達な意見交換を行いました。AdobeはFlash, Illustrator, Photoshop, ....と数えきれない程の製品を抱えているので、既存のAdobe製品とかけ離れないことが条件となり、ローカライズは大変だろうなと思います。しかし、既存のAdobe製品でも分かりにくい表記があるので、ラベルの改善、ユーザーインターフェースの改善などのフィードバックなども行われました。
 一方的なアンケートだけでなく、”製品を使用している”デザイナー/開発者を招いてその声を聞く、リアルタイムにコミュニケーションを取れるのでフィードバックを得る良い手段でしたね。是非、今回の声を少しでも反映していただきたいです。

懇親会
 全国のFxUG(Flex User Group)の代表者が集まるということで、東京のFxUGメンバーが懇親会を開いてくれました。仙台、東京、北陸、大阪のメンバーが集まり顔合わせ、情報共有、今後の活動、ON/OFFのことをワイワイがやがやと話し合う良い機会となりました。
 ちなみに会場の食べ物がすこぶる旨かった! ← taigaさんのおかげ

朝5時起きして福井から東京へ向かって十二分に満足できた1日でした。
ほんと楽しかったです!
イベントに関わったみなさんに感謝かんしゃです。

2009/11/17

11/21(Sat) Flex勉強会第87回@北陸(福井)やりますよー

11/21(土)PMに、FxUG(Flex User Group)87回目、北陸では5回目のFlex勉強会を開催します。

本日リリースされたAdobe AIR 2.0βとそれを使ったアプリケーション開発プロジェクト、Progression、Arduino・・・Flex/AIR, Flashをテーマにしています。
参加費は無料ですので、お気軽にご参加ください。
懇親会参加予定者の割合がほぼ100%と今回はちょっと異例w

11/26(木)に東京で開催されるAdobe AIR Day(#AIRDAY)で講演予定の内容もやっちゃいます。
http://www.info-event.jp/adobe/air/

<セッション内容>
「デザイナー視点のFlash制作。Progressionで作る、10分でできる画像スライドショー」 by @shirokuro331
「Flashでフィジカルコンピューティング的な何か」 by @itsuki_kosen
「某リモコン的な何か」 by @rch850
「ユーザーインターフェースの何か」 by @checkela
「Adobe AIR 2.0 - AIR Day miniセッション」 by @keisuke322(Adobe 轟さん), @shoito, @coelacanth, @hikaruworld
「(ショートセッション)」 by @katzchang

目的:北陸をもっともっと盛り上げていこう!
対象者:デベロッパー&デザイナー(Flash, ActionScript, Flex, Java, PHP, Rubyなど)
   Flex/AIR, ActionScirpt初心者
定員:25名程度

日時:11月21日(土) 14:30~
      受付:14:00~
場所:(株)サーフボード 1階会議室
住所:〒910-0842 福井県福井市開発2丁目614
最寄駅:えちぜん鉄道勝山永平寺線「越前開発駅」徒歩5分
地図:http://www.surfboard.jp/profile/map_fukui.asp
懇親会(お店): とり元 千乃夢 http://www.hotpepper.jp/strJ000349150/

参加費:無料
参加方法:ATNDで参加登録お願いします
http://atnd.org/events/1814

2009/10/08

平日夜に金沢でHTML5 TechTalkやってきたよ

背景はこの辺りを読んでいただきたい。
世界有数の勉強会(遺産的な意味で) - Hokuriku.lang 出張編 開催レポート
http://blog.air-life.net/2009/10/hokurikulang-shirakawago.html

ベンチャーとHTML5と台風と僕 by @t32k
http://warikiru.blogspot.com/2009/10/typhoon-and-html5-and-venture.html

Hokuriku.lang出張編のさらに出張編に参加しました by @coelacanth
http://blog.livedoor.jp/coelacanth_blog/archives/55310352.html

今回、機会をいただいたので @t32kさんと@coelacanthさんの会社でWebデザイナーさん達(20名程度)に小1時間ほど「分かった気になるHMTL5 ~開発者の視点から~ (Webデザイナー向けカスタマイズ版)」をお話してきたよ。
Hokuriku.lang出張編のさらに出張編ですw

いつもの北陸エンジニアグループの勉強会では参加者のほとんどがソフトウェア開発者なので、今回のようにオーディエンスがWebデザイナーさんだけ(@coelacanthさん除く)ってのは初のケース。
内容もJavaScriptのコードを見せて解説することがメインでは普段HTML + CSSオンリーな方からは反応が薄そうなので「HTML5のこれ使うと、こんなんできるぜー!」ってデモと「HTML5の××はこんな風に調べるとイイよ」というようなHTML5を始めるためのレールの端っこを提供するような内容にした。

反応が良好で「第2回もやりましょう」と言ってもらえたのが、とても嬉しい。
はてブコメントによると、次回はイケメン変態プログラマー@nagiseによる「一歩先行くプログラマのための正規表現」らしい。
きっと、「一歩先行くWebデザイナーのための正規表現」にカスタマイズしてTeckTalkしてくれるんだろうなー。

@coelacanthさんとこのはてブコメントにも書いたけど、今回のように平日夜に会社をまたいでTechTalkイベントを開けるような文化を築いていきたいですね。

福井-金沢間なんて高速かっ飛ばして1時間程度ですよ。
行ける行ける。

2009/10/06

世界有数の勉強会(遺産的な意味で) - Hokuriku.lang 出張編 開催レポート

世界有数の勉強会(遺産的な意味で) - Hokuriku.lang 出張編
Hokuriku.lang = Hokuriku.js × Hokuriku.rb × ...

http://atnd.org/events/1331

10月3日(土)に道の駅白川郷を会場に勉強会を開催しました。
今回はHokuriku.langというように、.js、.rbではなく技術を絞りこまず、スピーカーが各々違ったテーマを扱い1日で沢山の技術を味わえる勉強会にしました。
当初の予想では、参加者は北陸エンジニアグループのコアなメンバー+αで12、3人程度かなと予想していたのですが合計28名の参加となり嬉しい限り。
参加者の中には東京から来てくれた方もいたりと多謝です。

【セッションレポート】
「分かった気になるHTML5 ~開発者の視点から~」 by shoito

1時間弱でHTML5ってこんなことができるようになるぞと分かった気になってもらって、自発的に学ぼうとしたときに必要なリソースをいろいろとお見せすることにしました。
HTML5へのアンテナの土台作りを目的としたセッションで、狭義のHTML5、JavaScriptの拡張等の各種APIの解説、Adobe AIR、Flashネタを交えた内容に。

ちなみにセッション中に参加者にちょいちょい質問したのですが、全然手を挙げていただけず予想外な敗北感orz

当日は急遽タイムテーブルを大幅に変更せざるを得ず、午後から参加しHTML5ネタを聞きたかった方々(特にt32k氏)には申し訳ないことをしてしまいました。
というわけで、10/7(Wed)夜にt32k氏の会社へHTML5出張セッションをさせてもらいに行きます。
何やら話が膨らんで、一部署20名弱が参加してくれるらしい。予想外w

※追記 2009/10/08
ということでHTML5出張セッションをやってきました。参加レポート↓
ベンチャーとHTML5と台風と僕 by @t32k
http://warikiru.blogspot.com/2009/10/typhoon-and-html5-and-venture.html

Hokuriku.lang出張編のさらに出張編に参加しました by @coelacanth
http://blog.livedoor.jp/coelacanth_blog/archives/55310352.html


「今さら聞けないRuby 1.9」 by でむらなりかず(checkela)氏
Ruby 1.8から1.9でこんな風に変わったよ。
パフォーマンスが向上っぷりの測定結果等も紹介してくれました。
ほうほう。

会場に「Ruby使ってる人、手挙げてー?」と質問したところ、思ったよりいてくれてスピーカーのでむらさんもホッとしたのではなかろうか。

「タイトルなし(ファシリテーションに関するワークショップ)」 by kitamura氏
タイトルの無いワークショップw
参加者同士でペアを組んで自己紹介ゲームやインプロしたりと、ただ勉強会に参加しただけでは生まれない参加者同士のコミュニケーションがあり、エンジニアだけでなくデザイナーの方々にも楽しんでいただけたのではないでしょうか。
彼氏・彼女、家族、上司・部下の関係にも活かせる内容だったと思います。

主催者としては、参加者同士が楽しそうにワークショップをしている光景を見られて嬉しい限りでした。

「関数型×オブジェクト指向:マルチパラダイム言語Scalaの可能性」 by 羽生田 栄一 氏
北陸では前の週に、Hokuriku.scalaが開催されるなど、Scalaが熱くなってきたようです。
Scalaラブな羽生田さんにScalaのステキさを語っていただきました。
羽生田さんに教えていただけるとはScala好きには幸せな時間だったのではないでしょうか。

実は60分予定が80分へと延長されていたのですが、それでも全然足りないくらいでした。
続きはまた次の機会にお話して頂きたいところです。

[LT]
「Wikimedia Conference 開催のお知らせ」 by takot 氏

当日、twitterで3分LTやってもイイですか?と突発的に参加し、イベントの告知をしてくれました。

しかし、東京かー。

「今時のJava開発」 by nagise 氏
EclipseのJava開発環境の素晴らしさを見せつけてくれました。
流れるようなインターフェースで日本語文章を組み立ててるところが、私的にはツボでした。

「I ♡ Haskell」 by kabakiyo 氏
kabakiyo氏とHaskellの愛を彼氏・彼女の関係で赤裸々に語ってくれました。
Haskellの純粋さがどれだけ好きなのか。他のやつらは不純だと。

最後の最後に、「Haskellは私だけのモノではなく、みんなのモノです」と言ったら参加者からは「不純じゃん」とツッコミがw

「Flex4をさらっとのぞく」 by hikaruworld 氏
Flex4で何が新しくなるかを浅く広く短時間で紹介してくれました。
今はAdobe MAXで衝撃のニュースも飛び交っていますので、Adobe系技術もしっかりリサーチしときましょ。

「で、オブジェクト指向って結局なんなのよ?」 by katzchang 氏
参加者の前で、でむら氏がkatzchang氏に何度も何度も束縛されていました。
katzchangによるオブジェクト指向の定義:「オブジェクト指向とは、オブジェクトへの委譲の組み合わせでシステムを構築していく手法である」

「最後に」
羽生田さんが飛行機に乗り遅れてしまうという事件で、朝から冷や汗かいてましたが、
そこはkatzchang氏のお友達が小松空港へお迎えに行ってくれるという多謝により助けられました。

運営自体も、参加者が自発的にヘルプしてくれたこともあって何とかなりました。
参加&協力してくれた皆さん、ホントありがとうございました。
一緒にまた面白いことをやりましょう!


羽生田さんから次のようなメッセージをいただきました。
北陸の人のつながりの力に感銘いたしました。
また非常に充実した勉強会と白川郷・金沢の旅を経験でき
みなさまのホスピタリティに感謝感激です。

ぜひScalaが北陸地域でも盛んになるように今後もご協力させていただきますの
で、よろしくお願いいたします。
kitamura氏からは次のようなメッセージをいただきました。
すてきなロケーションでの機会を下さり、ありがとうございました。
みなさま、本当に好意的で積極的なよい方達ばかりで相当助けられました。
おかげで、貴重かつすてきな体験ができました。
また機会があれば是非!

2009/09/27

Flex SDK 3.4で遭遇したFocusManagerのバグ

Flex SDK 3.4でビルドするようになってからTabキーでフォーカスを移動した際に、以下のようなエラーが出る事はありませんか?
Flash Playerのデバッグ版でしか表示されないエラーなので、気付いていないかもしれません。
私はTabキーでフォーカスを移動し、画面上のコンポーネントを一周し、defaultButtonに指定したコンポーネントにフォーカスが合わさろうとした際に、このエラーに遭遇しました。
TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。 at mx.managers::FocusManager/focusInHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\FocusManager.as:601] at flash.display::Stage/set focus() at mx.core::UITextField/setFocus()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\UITextField.as:1525] at mx.controls::TextInput/setFocus()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\controls\TextInput.as:1832] at mx.managers::FocusManager/setFocus()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\FocusManager.as:553] at mx.managers::FocusManager/setFocusToComponent()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\FocusManager.as:1293] at mx.managers::FocusManager/setFocusToNextObject()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\FocusManager.as:1263] at mx.managers::FocusManager/keyFocusChangeHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\FocusManager.as:1758]
どうやらこれはFlex SDK 3.4のバグで、3.5ではFixされているようです。
バグレポートはこちらにあります(タイトルにはLiveCycleとありますがLiveCycle限定というわけではありません)。
[#SDK-21780] FocusManager RTE in defaultButton scenario. was: Navigating around LiveCycle Workspace results in an ActionScript null pointer error
https://bugs.adobe.com/jira/browse/SDK-21780

バグレポートに合った再現プログラムをシンプルにしたものがこちら。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" >
    <mx:VBox id="boo" defaultButton="{goo}" >
        <mx:Button id="goo" />
        <mx:Button id="foo" />
    </mx:VBox>
    <mx:VBox id="bee" >
        <mx:Button />
        <mx:Button />
    </mx:VBox>
    <mx:TextInput />
</mx:Application>

バグ回避コードがこちら。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" defaultButton="{goo}" >
    <mx:VBox id="boo">
        <mx:Button id="goo" />
        <mx:Button id="foo" />
    </mx:VBox>
    <mx:VBox id="bee" >
        <mx:Button />
        <mx:Button />
    </mx:VBox>
    <mx:TextInput />
</mx:Application>
defaultButtonの指定位置が変わったことにお気付きでしょうか?
Flex SDK 3.5がリリースされるまでは、このようにして問題を回避できるようですよ。
私の環境ではこの手段で回避できました。
類似の現象に遭遇した方、ご確認ください。