2010-12-07

自分WEBサービスを作りたいと思っている人へ(プログラミング経験

Webサービスを公開するまでの軌跡を語るよ

自分WEBサービスを作りたいと思っている人へ ( http://anond.hatelabo.jp/20101203150748 ) を読んで、初心者じゃなくてある程度の経験者が作ったらこうなるんだよってことで書いています。でも正直4ヶ月でそこまでできるようになるなんておそらく相当頭がいいんじゃないかなと思うんです。いや、本当に凄いと思う。

まず作ったサービスグルーポンチケットまとめサイトグルーポンナビ( http://gp-navi.net/ )まず自分スペックだけど、昔から趣味プログラムやったり仕事プログラムしたりしてましたWeb系ばっかりやってるいちおうこういうのを作るのには慣れてる方です

お金使いたくないからHerokuを使う

それで私ですが、まず最初http://anond.hatelabo.jp/20101203150748 の人と同じで全然お金を使いたくなかったです。だからいろんなホスティング会社を探したしたですが、VPSを借りちゃうと大金がかかるんですよね。そこで、いわゆる流行クラウドであるHeroku( http://heroku.com/ )を使う事にしました

このHerokuは無料で使えるから良いんですけど、バッチ処理を行うには有料のサーバ契約しなくちゃいけないんですしかWebの一回のリクエストは30秒までに押さえなくちゃいけないっていう制限があったりで、正直無料で使うには厳しい

でもやっぱり無料っていう響きに吸い寄せられてHerokuを使うと決めてアプリケーションを書き始めましたRailsで書いて賞味2週間くらいちまちまと進めてアプリを完成させました。だいたい一日2時間くらいかな。Railsにはそこまで詳しくはなかったけど、Web検索すれば結構情報がヒットするからそこまでの苦労は無かったです。それよりも制限のあるHerokuでどうやって実現するかというのが、結構問題でした

でもやっぱり無料じゃ厳しい

それでしばらく運用してました。このとき全然宣伝しませんでしたから、ほとんどページビューはあがらなかったです宣伝大事。これほんと。それでHerokuで作った仕組みなんですが、無料でやりたかったので、Workersを契約しないでアプリをつくってました。だからWebリクエストをトリガーとして普通にクロールさせるよう作ったんです。でも、クロールするサイトを徐々に増やしていくと30秒以内にリクエストが終了しなくなってきてさぁ問題。どうしようかと考えたあげく、レンタルサーバもいいなっておもったけど、結局自宅サーバをたてることにしました。たぶん、これが一番コストパフォーマンスが良い。でも気をつけなくちゃ行けないのが、サーバ自体の管理自分でやらなくちゃいけないから結構めんどくさいんですよね。結局自宅サーバかよって感じです

サーバの発注とかシステムの構成

サーバNTT-X Storeで発注して発注して、16,800円。かなり安いです。このサーバの詳細は http://wiki.nothing.sh/page/NEC%20Express5800%A1%BFGT110b に書かれています。なんでこのマシンしたのかというと、VMWareのESXiで仮想化したくて、それに対応している安いサーバがこれだったというわけ。ちなみに、これをすると管理が楽になる。例えば、マシンバックアップが取りたいなと思ってもすぐできるんですね。だから仮想化は凄く良い。

でも、素のGT110bを使うとメモリも少ないしCPUも弱いしハードディスクも少ないので、これはネットで買い足しました。あ、あとデスクトップ用のモニタが無かったのでそれも中古で買いました。それが次のような感じ。

ずいぶんと安い買い物だったと思います。もちろん、マシンの上で動かしているOSLinuxなので、ライセンス料もかからないしとてもリーズナブルです

ここまできたら後はアプリを作り直すだけでした。Herokuで作ってたときにはHerokuの制限を考えながらアプリを作ってたので作りづらかったですが、自宅サーバを使うとそういった制限はなくなるのですごく作りやすい。お金を払うだけの価値はあると思います。やっぱりお金をかけるべきところはかけないとダメですね。

携帯対応とか

それから結構このアプリケーション携帯ユーザ女の子がよく使ってくれます。結構教えると毎日見てくれるんですよ。やっぱりお買い物と言えば女の子ですね。だから、携帯対応しました携帯はいままでやった事は無かったんだけど、Railsプラグインであるjpmobile( https://github.com/darashi/jpmobile )を使ったところすごく簡単に対応する事ができた。凄いですね。id:darashiさんに感謝です

iPhone対応していますが、こちらもあまり詳しくなかったので最初jQuery mobileを使って構築しました。でもちょっと重かったのでjQuery mobileはやめて手組しています。そもそも一ページしか無いのでそんない難しい事は無いですね。

感想

最後に一番強調したい事を。。。

ウェブサービス公開するのはそこまで難しくないんですが、それを流行らせるのはかなり難しいですね。面白いサービスとかであれば結構色んなところがとりあげてくれたりするんですけど、後発のサービスになるとなかなか。。。開発者の方は作る事よりもどうやってみんなに知ってもらうかを考えるのがすごく大変な事だと思います。お金かけて広告うてれば楽なんですけどね。

とにかく作ったら公開。やる事は各方面への宣伝です。今のところやってるのはTwitterへの投稿と、ここへの投稿ですかね。これからいろいろ試そうとしているところ。このサービスがある程度知名度が上がってきたらまたそのとき軌跡を書きたいと思います。

トラックバック - http://anond.hatelabo.jp/20101207002426