http://haiku-matcher.herokuapp.com/
https://github.com/ohbarye
テキストボックスに入力された値でツイートを取得して、その中から575調になっているものだけを表示する。
入力値がユーザ名なら、そのユーザのタイムラインから。ユーザ名でなければキーワード検索した結果からツイートを取得する。
言語/フレームワーク
- Java8
- Play Framework 2.2.6
□よかったこと
・やっぱりJava8で書くとコードが変わると思った。まだ知らない機能が多いので引き続き学びたい
・Play、噂通りで開発効率がかなり上がる
・特に立ち上げの速さ
・sbtによる依存性管理がストレスフリー
・Java EEから解放された感
http://d.hatena.ne.jp/wyukawa/20140416/1397662264
・フルスタック感
・Hot Deploy
・scala templateの型安全性
…+まだやってないこといっぱいある
■困ったこと
・Play2.2系はJava8対応してなくて、sbtのバージョンあげたり結局諦めたエラーとかあった(2.3以降は対応済。よく調べずに2.2を選んだのは失敗)
・Playの更新頻度が高いので調べた情報が違うバージョンの情報…というのはよくあった
形態素解析
- kuromoji
文章ぶち込むだけで解析結果を返してくれるライブラリ。全文検索エンジンの Solr とかでも使っているらしい。
Tweet から拾う単語は未知語(内蔵辞書に載ってない語)が多かった。今回は雑に処理したけど、そこらへん真面目にやろうとしたら自分で辞書用意する必要があるっぽくて震えた。
Twitter連携
- twitter4j
直接 Twitter API を叩く必要ない。
ライブラリの問題じゃないけど、検索後によって401が返ってくるというよくわからないエラーでかなり悩んだ。時間を置いたりリトライしたら通るようになった。
いろいろググってたら Twitter から401エラーが返ってきて困った的な質問がめちゃ多くて世界中の悩み感があった。
プラットフォーム
- heroku
初めて使ってみた。確かに爆速でデプロイできて便利っぽい。
環境・サーバ構築とかをほとんど考えなくてよくなったのでアプリ作る〜公開のハードルがまた下がった感がある。
けどまだ全然使いこなせてない。
git push heroku master した後の待ち時間が長いので休憩にしたりしてた。
フロントサイド
- webjars
- Bootstrap
- LESS
フロントサイドの知識全然無いけど、この辺組み合わせるのがややモダンらしいので試してみた。
jqueryとか、クライアントサイドライブラリ揃えるのも確かに面倒なので webjars のこと知れてよかったという気持ちがある。
あまりよく知らないのでデザイン領域触れたくなかったけど、Bootstrap とか LESS とか試してみたら思ったより軽く書けたのでちょっと興味湧いた。けど深入りしたくない感じ。