@kyanny's blog

My thoughts, my life. Views/opinions are my own.

フォトストレージの写真を簡単にブログへ投稿できる「デイズブログ」がはじまりました

30days Album™ のフォトストレージにアップロードした写真を簡単に JUGEM へ投稿できる「デイズブログ」がはじまりました。月額525円の PRO プラン向けの機能ですが、15日間の無料お試し期間がありますので、是非一度使ってみてください。

リリースのお知らせは、こちら デイズブログをリリースしました! | 30days Album Information

詳しい説明は、こちら デイズブログの特長 | 写真共有サービス 30days Album

登録から投稿までの流れを説明した動画もありますよ (音は出ません)

詳しい説明や PR は公式なページに任せるとして、ここでは開発にまつわるこぼれ話などを少し。

30days Album™ は Ruby on Rails と MogileFS/Perlbal でできているという話は、ドクターペッパーで有名な技術責任者の人とか、 TENGA で有名なプログラマの人とかが何度か技術カンファレンスで発表しているので、知ってる方も多いと思います。でも、実際のところ MogileFS/Perlbal はとても安定していてそうそう頻繁に手を入れることはないし、 Rails は Rails であんまりコードを書かなくても動くしで、結局一番たくさん書いたのは Javascript でした。

特にフォトストレージのほうはアルバム以上に Javascript でがりがり書かれていて、入力フォームのバリデーションを行う jQuery の Validation Plugin や Lightobox 風のダイアログを表示するための Facebox など高機能なライブラリをたくさん使っているので、だいたいのところを把握するまでがなかなか大変でした。ちょっと踏み込んだ内容になると、とたんに検索でひっかかるページが少なくなるのにも苦労させられました。開発中は何度高機能ライブラリ「jQuery」とそのPlugin「Validation」 - すぎゃーんメモを開いたことか・・・ id:sugyan さんのこの記事は内容もわかりやすく具体的なコード例が豊富で、とても役に立ちました。今度会ったらドクターペッパーをご馳走しますね :)

Ruby/Rails な話では、テストコードの書き方にずいぶん悩まされました。外部の API と通信する部分など、モック/スタブを使いたい場面が多くでてきたので mocha や flexmock というライブラリを使ってみたのですが、どうもピンとこない。「副作用のある部分を切り離してテストできます」なんてことはいろんなページに書いてあるのですが、コードまで書いてあるページは少なく具体的な例に乏しかったので、試行錯誤にずいぶん時間をとられ、苦労しました。後日突然ひらめいた(ような気になった)ときは、簡素で本質的な説明だけでも「なるほどそういうことだよね」とわかった(ような気になった)ものですが、やっぱり理解が浅いうちほど実践的なものが多くあったほうが助かりますね。

デイズブログの開発を通じて、 Ruby/Rails のコードにはだんだん慣れてきました。文末にセミコロンを書かないことへの違和感がなくなったりとか。まだまだ「型」には不慣れで、 to_s/to_i などを忘れてエラーになったり、 nil のことを忘れてエラーになったりしてますが、ふつうに読む分にはだいたい困らずに読めるようになりました。それと、 Javascript のコードをいろいろいじるうちに Firebug のスクリプトデバッガの使い方を少し覚えられたのも良かったです。 Firebug が、というよりもデバッガというものに少し馴染めたかな、と思います。まだ全然高度な使いこなしはできていないし、ブログに書けるほどまとまってもいないのですが、近いうちに覚えたことを書き出してみたいと思っています。

そんなわけで、ですます調でなんか気持ち悪い上にオチもなくてどう終わらせたらいいものか悩むけど、今後もいろいろ新機能を開発したり、使い勝手をよくしていったりするので 30days Album™ にご注目ください!リリースのお知らせやら写真にまつわる雑談やらは Twitterログピでもちょこちょこやってますんで、よかったらそちらもフォローしてみてくださいね。


あー、やっとブログ書けた!ここんとこ仕事が忙しくてブログ書く暇もなかったから、ようやくすっきりした。おれは textarea が好きすぎる。