2014/1/29『Asakusa Framework 勉強会 2014冬』に参加・発表してきました。
今まで勉強会へは何度も参加していたけれど、発表したのは初めてです。話す内容は決まっていたので緊張はしなかったのですが、やっぱりあまり上手く話せませんでしたorz
時間もオーバーしてしまったような(汗) 冒頭の自己紹介がちょっと余計で長すぎたかもしれません^^;
自分としてはAsakusaFWを気に入っているので、多くの人に使ってもらいたい。これは今回の勉強会の主催者の土佐さんと同じ想いです。が、自分がやるのは“試したことをウェブに書く”程度(AsakusaFWに限らず、利用したソフトウェア等について今までウェブに書いてきたのも、そのソフトウェアへの貢献の一環のつもりでもある)で、土佐さんのように勉強会を開催する方向には行かないので、土佐さんの行動力に脱帽・感謝です(笑)
発表者は自分の他に2人、土佐さんと平松さん。
土佐さんがライブコーディングでAsakusaFWによる実装の流れを一通り実演。
平松さんはAsakusaFWの演算子の紹介と演算子リファレンスの読み方を説明してくださいました。
冒頭で土佐さんがAsakusaFWの特徴を挙げていましたが、改めて聞くと忘れていたこともありました(爆)
・テスト機能が充実している
・MapReduceをほぼ意識せず実装可能、最適化が高度
・バッチ実行やログ周辺機能が充実している
バッチ実行辺り(実行用のシェル(yaess-batch.sh)が用意されており、jarファイルは自動的に読み込んでくれる)は無意識に使っていたので、そう言われればそうだなーと思いましたw
平松さんの“演算子を1ページにまとめた表”は、今まで見たことがない描き方で分かりやすかったです。
それと、演算子リファレンスとの戦い方(ドキュメントの見方)も良かったです。
慣れてしまうとあのドキュメントで分かるので^^;、「知らない人が見るとここでハマる」という具体的な説明はとても参考になりました。
「『入力1、出力1』と書いてあるのに、Operatorクラスのメソッドの戻り値がvoid」…うん、そういう疑問を持っても全く不思議じゃないですね^^;
個人的には演算子の図とメソッドの具体例があった方がいいかもしれないと思っていて、最近書いた自分のウェブページでは少し具体的に書いてみたりしています→@Updateの例
自分が発表した内容は『DMDL EditorXとToad Editorの紹介』です。
ちょうど2013年の1年間にこれらを作っていたので、発表の機会として良いタイミングでした。
→発表資料(表紙の背景が白くなっててタイトルが読めない(爆)ですが、ダウンロードしてpdfリーダーで見るとちゃんとしているらしいです^^;)
DMDL EditorXの方はけっこう広まっているみたいですね。
土佐さんの環境にも平松さんの環境にもインストールされていました(笑)
ありがたいことです。
DMDL EditorXはXtextで作っていて、デモでもお見せしましたが、テキストエディターとしての機能はXtextのものです。
エラーチェックは自前でAsakusaFWのDMDLパーサーを呼び出しています。問題ビューにエラー一覧を表示して、そこからエラー箇所にジャンプできるのは便利だと思います。
コンパイル機能(DMDLからJavaソースを生成する)も便利だと思っていたのですが、AsakusaFW本家から新たに公開されたShafuでも出来るようになったので、そちらを使うべきでしょうorz
あと、属性(@directio.csvとか)を追加するウィザードも便利だと思います。
あと、Javaソースからdmdlファイルへジャンプできるのも便利だと思います。
Toad Editorもデモを行いました。
しかし、Toad Editorはひとまず自分で最低限必要と思う機能が出来ているだけで、便利機能はまだまだこれからです。(質問にもあった、Javaソース生成前の検証機能やOperatorメソッドの雛形の一括生成機能など)
AsakusaFWの集計サンプル以外ではあまり試していないので^^;、バグもあると思います。
ただ、自分の想定では、Toad EditorでJobFlow・Batchの図を描くと、Flow DSL・Batch DSL(Javaソース)は完全に自動生成できると思っています。
(平松さんが面倒と言っていたFlow DSLのコンストラクターなんかは生成できますw)
FlowPartについては、値引数がまだ中途半端で、型引数もまだ対応していませんが、値引数に完全に対応するのは無理かも?
いずれにしても、実際に使ってみて感想や要望をいただけると嬉しいです(笑)→Toad Editorのissue
DMDL EDitorXやToad Editorは、いわばAsakusaFWのエコシステムみたいな感じですかね。個人的には、こういう(プログラミングに使う)ツール作りが一番好きです(笑)
今回の勉強会は初心者向けという触れ込みでしたが、本当に全くAsakusaFWを知らない人には分かりにくかったかもしれません^^;
自分の発表なんかAsakusaFWを知ってる前提丸出しでしたし(爆)、Batch DSL・Flow DSL・Operator DSL・DMDLの階層の説明とか演算子とは何かという説明もありませんでしたし。
とはいえ、勉強会の時間内で全部説明するのは無理ですからねぇ。
ただ、今後定期的にAsakusaFWの勉強会を開催していくようですので(2014春ももう決まっているw)、部分部分をピックアップしていくのもいいかもしれませんね。
以上、ありがとうございました。
メールアドレスがわからないので、コメント欄で失礼します
東京本社の会社(今は札幌支店)に転職しました。
東京に行く機会も増えるかと思うので、今度飲みにでも付き合ってください。
コメント欄で申し訳ありません。
適応に削除して下さい。