pre hachioji.pm#14 ~Like ハッカソンの開催とhachioji.pm#14に行ってきたご報告
pre hachioji.pm#14 ~Like ハッカソン
前回のHachioji.pm#13で、「ハッカソンみたいのやりたい!」ってちょっと騒いだら、uzullaさんが「じゃぁ、hirobanexくん主催的な感じで」ということになり、「当日のスケジュールと概要の扇動」ということをして、曖昧に参加しました。会の内容とかもろもろは『pre Hachioji.pm #14 & Hachioji.pm #14 開催しました!!』とか参加したみなさんのレポート記事を見てください。ぼくは、振り返り中心のシンプルに箇条書きのまとめをば。
よかったこと
- 電源やネット環境はわりとなんとかなる
- uzullaさん(の奥さん)が短期間にもかかわらず、会場を押さえてくれた
- hondalicaさんがわざわざカンパと差し入れしに来てくれた
- ほぼHachioji.pmの参加メンバーで14人も参加してもらえた
- 参加したみんなの感想を夜のhachioji.pm#14で感想を生で聞けた
- 「モクモク会だったけど結構集中してコーディングできた」
- 「ハッカソンじゃない・・・」
- 「黒幕なんだからもっと声を大にして扇動しなさい!」
- etc
- 「とりあえず、来月もやろう!」ってノリになった
反省
- 「主催的な」私が、実際に参加する方々に向けたコミュニケーションが少なかった、&、錯綜しました。
- 開催前、中にTwitterとかでもっと積極的に声をかければよかった
- はっきりとATNDに会の内容を告知すれば良かった
- 「ゆるふわハッカソン」という感じで適当にごまかした
- 一応テーマをFacebookにしたけど、知らない人が多かった
- その他、何かとアバウトだった
- ちょっと朝早すぎた
雑感
コード書いていければ、「コレってどうなるの?」って自然なコミュニケーション生まれるかなーと思っていましたが、なかなか個人個人好きなもの作っていると良い意味で「集中している」ので、自然なコミュニケーションが生まれる空気ではなかったなーという気がします。想定内ではありますが、まぁ美味しいところどりはできないというか。。。実際私自身「ハッカソン」というのに参加したことないんでよくわからんというのがありますが、本格的な「ハッカソン」するともしかしたら人集まらないって気がしたんですねー。Hachioji.pmって一応pmを末尾につけているけど、Perlじゃなくていろんな言語のバックグラウンドのひとがいるから、あまりテーマガッチリ決めちゃうと、「そもそも開催すらありえないかも・・・」と思ったんですよねー。はっきり行って手抜きだったんですが、「まぁとりあえずやってみよう」っていうところからはじめているんで、ちょっとギャップを感じ方には申し訳ないんですが、勘弁して下さい。
今度はこうしたいなということ
とりあえず、今回「主催的」とかいうと曖昧な感じで参加せてもらった分、次回の開催には責任を持ちたいと考えています。で、次回ですが、ぼくが「主催的」に参加するかどうかはともかく、会場の大きさにもよるんだけど、モクモク会はそれはそれで評価が得られたんで、以下のように開催するイメージを持っています。
- ベースはテーマに決めたペアプロをする(テーマ案は後述)
- ATND参加時に「ペアプロ参加」か「モクモクやるか」表明してもらう
- 主催の方でランダムか独断と偏見でペアを決定
- 最後に「成果発表」というより「やったことの共有」という感じで、積極的に共有したいネタとか、わからなかった疑問を話してもらう
- 『TwitterAPIを使ってシャッフルランチ』とか参考に、途中で3人くらいずつのグループにわかれてランチとかいいかもなー
- 場所はuzullaさんが引っ越していればuzullaさんの家(?)
テーマに関してですが、以下の順番で「『特定の言語』の『特定のWAF』で(Facebookページ/アプリの)掲示板とかをつくる」のがいいかなーと思っています。(順番とWAFはとりあえずアテです、最初のPerlは間違いないでしょうが、Dancerとは限りません)
- 【第二回】Perl:Dancer
- 【第三回】Python:Django
- 【第四回】PHP:Symfony
- 【第五回】Node.js:??
Hachioji.pmのいいところは、Perlにこだわらないというところなんで、複数言語を会毎に使っていくという流れです。言語選定基準ですが、Hachioji.pmの面々を見るかぎり上記の言語なら、誰かは確実に使えそうという気がしたからです。なんで、WAFかっていうと、やっぱりウェブアプリってウェブ周りの取り扱いとか、DB周りとか、テンプレート周りとか、基本が凝縮されている一方で、結構完成されていると思うんで言語の細かい部分知らなくてもサンプルに沿って書けば結構あっさり書けると思うんですね、なんで、ちょっとググりながら気軽にわからないこと知っている人に聞いたり、逆に知っている人はDBとかテンプレートとかわかりやすいんで知らない人に説明しやすかったり教えやすいと思うんですね。
このアイデアの難点は「ハッカソン」といいながら、「ハック」の要素が少ないというということでしょうかねー。まー、なんで、「モクモクだけでいいとか」、「やっぱりハッカソンじゃねーじゃんか」というのがあれば、どしどし突っ込んでもらえればと思います。特に無ければ、uzullaさんと相談の上(場所とか場所とか)、ATNDたてちゃいます。Hachioji.pmのほうも、uzullaさんが適当にテーマ決めて、テーマに合わせて何かするLTする人もいれば、完全に無視してLTする人もいるしね!こんなんがいい収まりだと思います。
個人的に作ったもののお話
反省点
やりたい事を詰め込み過ぎた
まず、そもそも触ったことのないfacebookAPIっていうのが重かった。そして、Amon2にTeng、Object::Contaner::Exporter、etcなど、載せて使ったことのないものを使おうとしすぎた。まぁ、でもそもそもこのあたりをやりたいなーと思っていて、ちょっとできたからそれはそれで十分なので、そのまま「個人的に良かったこと」につながります。
前日は飲みに行ってはいけない
ちょっと予定が入って前日飲みに行っていたんだけど、程度の差はあれ、二日酔い気味で望むのは眠気と合わせて効率的によろしくなかったので、次回は自重して万全の体制で臨みたいと思います。
つくるものが決まっていなかった
「Facebookで何かしよう」と思っていたのですが、アバウトしすぎて良くなかったですねー。もっと具体的に、既存のfacebookアプリの○○をAmon2で実装するとか、簡単に「○○して、○○して、○○すると、○○って出力されます」って感じの仕様を決めておけばよかったなーと思います。結局午前中はうとうとしながら、FacebookAPIを挙動確認に叩きながら、もんもんとしてしまったし。。。
良かったこと
facebookのAPIまわりを調べられた & 触れた
- そもそもAuth認証とか未知のものだったけど、Amon2::Authとかさくっと動くのがわかった
- Graphe APIでできることがなんとなくわかった & Search系のAPIを触れた
- charsbarさんに「それFQLでできるよ」って教えてもらって、FQLがだいぶ便利そうだということが分かった
使ってなかったモジュールを使えた/使う準備ができた
ずっと前からちょっとずつためていて、以下の構成でWebアプリを作りたかったのです。
- Amon2
- Teng(Mysql)
- Object::Contaner::Exporter
- MouseX::Types
- FormValidator::Lite::Constraint::Moose
- BootStrap2
- Text::Xslate(Kolon)
- 並列処理のProve実装
作っていたもの
実際作っていたのが、以下の動作を行うWebアプリケーションです。
- プラットフォームを特定のキーワードで検索し、言及URL一覧を取得(Facebook、Twitterなど拡張できるように)
- 一覧のURLにアクセスしてHTML(テキストコンテンツ)を取得
- htmlのテキストをベクトルにする
- (いいね!」とか「Tweet」数とかとる?)
- 取得したコンテンツをクラスター化ツールでジャンルわけする
実装出来なかった機能
コードはともかくとして、機能として以下の実装がなかったり、微妙です。
- 取得したコンテンツをクラスター化ツールでジャンルわけする
- WebのUI
- URLの一覧を取得する部分の実装
- Coro?
- AnyEvent?
- Job Queue?(Gearman???)
雑感
環境構築も、アプリ自体としても、途中だったけど、、、途中まで整えられたのは十分な成果です。一旦今週末を目処に今回作っていたものを仕上げて、その後、Amon2::Setup::Flavor::Hirobanexという感じでOreOreにまとめたいと思います。今回は、環境構築から入ってしまったけど、「なんかfacebookアプリ」とか、「なんかTwittoerアプリ」とか汎用的に使えて簡単にモック作成できる環境が欲しかったし、これでいいのです。(強がり)
hachioji.pm#14本会
ちょっと、疲れはててうとうとしておりましたが、毎度のごとくいろいろな話が聞けてよかったです。yellowさんとtoku_bassさんが社内の楽しいコーディング話をしたりして、「いいなー」と羨ましく思ったり、「主催的な存在としてハッカソンはどうっだんだい?!」と言われていろいろと「はっ!」としたり。でも、なんか疲れはててうとうとしていたせいか、あんまり覚えていないかも。。。LTは「浮気」がテーマだったんですが、皆さんいろいろな言語に触っているというか、しっかり使っていて「すごいなー」としみじみしました。LTとかは、本家のブログ記事よりみんなレポートがみれるので、そちらをご参考に→pre Hachioji.pm #14 & Hachioji.pm #14 開催しました!!
ふー、なんか「pre hachioji.pm#14 ~Like ハッカソン」のまとめで息切れです。
おわりに
次回は、3/24(土)ということです。また、「~Like ハッカソン」もやります。(まずは会場探しからー)さてさて、アイデアをもう少し練りますかなー。そういうえば、Hachioji.pmもIRCチャンネルあったなー。