先日のクリスマス前の連休に、熱海の温泉宿で開発合宿をやっていました。 そこで2年前のクリスマスにリリースしたQuoteItをPadrinoからRails4に書き直していました。
QuoteItとは
QuoteItはURLからいい感じの埋め込み用HTMLを生成するためのサービスです。 AsakusaSatelliteのURL展開機能のバックエンドとして動くように設計されています。
主な構成は以下の通りです。
不満点と解決方法
しばらくは上記の構造のまま使っていましたが、2年くらいするといろいろと不満が溜ってきました。
- 不要だと思ってたRailsの機能、意外と使いたいことが多い
- 他のサービスはRailsで書いてるのに、これだけPadrinoなのでメンテナンスが面倒
- Mongoid使っていると、ActiveRecord前提のgemが使えなくてつらい
- Ruby 2.1.0対応したい
- wedataでデータの編集はやりづらい
- そもそもwedataがよく落ちてる
というわけで合宿のあいだにがっつり書き直して、以下の通りの構成にしました。
- フレームワーク: Rails4
- DB: PostgreSQL
- その他: URLから埋め込み用HTMLを生成するルールはローカルのJSONで定義する。 編集したい場合はpull requestを送る
感想
- viewはほぼそのまま使いまわせたし、コードも大半が使いまわせたので、そんなに苦労しなかった
- レールに乗ってる間はRailsのほうが圧倒的に楽なので、"Railsの○○という機能使わない"くらいならRailsを選択したほうがいい気がする。"邪魔になる"だったらPadorino/Sinatraのほうがいいかも
- wedataさえ編集できればルールを追加できる自由度が楽しかったけど、まあしょうがない
- 温泉宿で過ごすとクリスマス感がまったくない
関連リンク
- Goodbye padrino, hello rails4. by mzp · Pull Request #1 · codefirst/QuoteIt · GitHub
- QuoteIt | 拡張可能な引用サービス
*1:サービスのURLは http://wedata.net だが、2013-12-31時点で落ちているのでブログ記事へのリンクにしておく。