[JOB BOARD] Railsによる広告管理システムの開発要員を募集!
恵比寿、渋谷を中心に開発を行われているビープラウド社にて、Rails開発者を募集中です。場所は初台となっておりますので、新宿周辺で働かれているフリーランスの方はぜひご応募ください。※ MOONGIFTとのクロスポストです。
案件としてはRailsベースの広告管理システムの開発になります。Railsも徐々に案件が増えているとは言え、まだまだシェアは低いかと思います。Rails開発者の方はぜひともチェックしてください。なお人数は1~2名となっています。
詳細は以下にて。
[PR] Railsの技術支援、受託開発承ります
いつもRails 2.0をご覧いただきありがとうございます。Rails 2.0ではRails開発における技術支援や開発自体の受託を行っております。開発リソースが足らない場合や、新しいWebシステムを企画されている際にはぜひお声がけください。
お問い合わせはinfo@rails20.jpまでお願いします。
PowerDNS on Rails:Railsで作られたPowerDNSクライアント
PowerDNS用Railsフロントエンド「PowerDNS on Rails」 [ MOONGIFT ]より。
PowerDNSというのはBINDのライバルとなるソフトウェアで、DNS情報をRDBMSで管理することができる。RDBMSなので、MySQLやPostgreSQLをバックエンドに採用することができる。特徴としてフロントエンドがないことがあるが、そこはオープンソース・ソフトウェアの強みであってフロントエンドもオープンソース・ソフトウェアで開発されている。その一つがPowerDNS on Railsだ(ソースコードは公開されているがライセンスは明記されていないので実際にはオープンソースではない)。
PowerDNS on RailsはRailsを使って作られたPowerDNSフロントエンドで、DNS情報の設定やマクロなどの設定ができる。シンプルなインタフェースだが、ターミナルやテキストファイルベースで設定するのに比べると分かりやすいかも知れない。インストールは簡単で(PowerDNS自体のインストールは省略)、database.ymlでデータベース設定を編集後、
$ rake db:migrate
$ rake db:seed
を行うと基本的なユーザ設定も行われる。その後は
$ ruby script/server
でサーバを立ち上げた後、http://localhost:3000/にアクセスし、admin/secretでログインができる。
社内サーバも含めたDNS管理や、複数台構成のWebシステムの内部IP管理などで使えるソフトウェアではないだろうか。PowerDNS自体の魅力も引き上げてくれるはずだ。
PowerDNS on Rails
http://kennethkalmer.github.com/powerdns-on-rails/
File.exists?を使わずに…
<% if File.exists?(model.path) %>
...
<% end %>
ではなく、
<% if model.file_exists? %>
...
<% end %>
というのが37signals流。メリットは、
- ビューがすっきりする
- 結果をキャッシュできる
- ユニットテストしやすい
- ローカルファイルシステムから別システム(S3とかMogileFSとか)へ移すことも想定
- MVCとしてモデルがファイルを参照するなら、それがどこにあるかはモデルだけが把握すべき
といったことが挙げられています。
A design and usability blog: Signal vs. Noise (by 37signals)
http://37signals.com/svn/posts/1944-dont-do-this-if-fileexistsmodel
Railsアプリケーションのデザインが決まらない時はWeb App Themeを使おう
開発者にとって一番難儀なのがデザインではないだろうか。いや、そうじゃないという人もいるだろうが筆者はそうだ。いつもデザインで悩んで、あげくの当てに放棄してしまう。そんな中、便利に使っているのがWeb App ThemeというRailsプラグインだ。HTMLファイルもあるのでRailsアプリケーションに限らず利用はできるが、ここではプラグインとして便利に使う方法を紹介したい。
まず最初はプラグインのインストールだ。
$ ruby script/plugin install git://github.com/pilu/web-app-theme.git
Initialized empty Git repository in #{RAILS_ROOT}/vendor/plugins/web-app-theme/.git/
remote: Counting objects: 72, done.
remote: Compressing objects: 100% (59/59), done.
remote: Total 72 (delta 15), reused 9 (delta 0)
Unpacking objects: 100% (72/72), done.
From git://github.com/pilu/web-app-theme
* branch HEAD -> FETCH_HEAD
これだけでインストールは完了する。次にテーマの生成になる。
$ ./script/generate theme
exists app/views/layouts
create public/stylesheets/themes/default/
create app/views/layouts/application.html.erb
create public/stylesheets/web_app_theme.css
create public/stylesheets/web_app_theme_override.css
create public/stylesheets/themes/default/style.css
この状態でサーバを立ち上げてアクセスすると以下のように表示される(元々のindex.htmlは削除して、ルーティングの設定も変更されている必要がある)。なお、ファイルの内容は修正済なのでご注意いただきたい。
これが最も基本的なスタイルだ。次にテーマを変更する場合。テーマは全部で9種類用意されている。「bec-green」「bec」「blue」「djime-cerulean」「drastic-dark」「kathleene」「orange」「reidb-greenish」「warehouse」をテーマとして指定すれば良いだけだ。
$ ./script/generate theme –theme=blue
exists app/views/layouts
create public/stylesheets/themes/blue/
overwrite app/views/layouts/application.html.erb? (enter “h” for help) [Ynaqdh] Y
force app/views/layouts/application.html.erb
identical public/stylesheets/web_app_theme.css
identical public/stylesheets/web_app_theme_override.css
create public/stylesheets/themes/blue/style.css
そうすれば次のようにテーマが変更されて表示される。
もしapplication.html.erbが嫌であれば、Layoutを指定して変更できる。
$ ./script/generate theme application2 # ここではapplication2.html.erbを指定。
exists app/views/layouts
exists public/stylesheets/themes/default/
create app/views/layouts/application2.html.erb
identical public/stylesheets/web_app_theme.css
identical public/stylesheets/web_app_theme_override.css
identical public/stylesheets/themes/default/style.css
これだけで手軽にテーマに対応したデザインができてしまう。デザイン自体、メニューがあったり、サブメニューがある、テーブルやフォームも考慮されており、さらにメッセージや2カラムフォームも利用できる。リストやログイン画面なども考慮されている等、デザインで厄介になりそうなポイントはきちんと押さえられている。これならば大抵のWebサイトの雛形として使えるのではないだろうか。
実際に使ってみた感じでは、フッターが左側のカラムについているので、幅広のフッターにしたい時にちょっと苦労するといった程度だ。それ以外はとても手軽に使えて、見栄えもよく、開発する気を損なわないで済む。デザインで苦労した経験のある方はぜひ使ってみて欲しいライブラリだ。
その他画面は詳細にて。
[AD] Railsが自社Webサービス開発に向く10+1の理由

MOONGIFTではRailsによる受託開発、教育を行っております。そして今回、なぜRailsが良いのかという理由について挙げてみましたのでRails開発に迷いを感じられている方は参考にしていただければと思います。書いてあることは前々から言われているようなことばかりですが…。
まず第一前提としてよく「Railsは生産性が高い」と言われますが、今回は書かないようにしています。目に見えづらく、経験則によるものなのでかえって怪しく見えてしまうからです。数字にまで落とし込めれば良いのですが、正確性がないので今回は省きます。
詳細は以下より。
BackgrounDRbを使ってControllerのメソッドを呼び出す方法
が、いまいち分からなかったりします。やりたいことはApplicationController内に定義してある関数を呼び出す処理。BackgrounDRbの中で、expire_pageを呼び出したい時もあると思うので。キャッシュの生成処理をBackgrounDRb内でやらせるのは高速化につながるのではないかと思います。そうすると、キャッシュの生成にかかるコストをバッググラウンドでやらせつつ、表示が高速化できるようになります。
妥協的な方法は以下。
やはりというべきか、mod_railsを使ったホスティングサービス登場
RailsのホスティングサービスであるHosting Rails.comで、mod_railsを使ったホスティングオプションがはじまりました。Mongrelプランと同じで、$9.79/月となっています。
パフォーマンスがどの程度かによりますが、$9.79というのは格安ではないでしょうか。テスト的に立ち上げてみたい方にお勧めです。
Hosting Rails – Ruby on Rails Hosting – Robust & Affordable Plans
http://www.hostingrails.com/
CSSとHTML、そしてRailsを使ってPDFを作成するTips
subLog : HTML / CSS to PDF using Ruby on Rails
答えを言ってしまうと、Prince XMLを使います。各種プラットフォーム向けに提供されているライブラリなので、これを使えば手軽に作成できそうです。そのためのライブラリprince.rbとpdf_helper.rbが公開されています。ちなみにPrince XMLは個人の非商用利用に限りフリーのライブラリなのでご注意ください。

Prince XMLのトップページ
subLog : HTML / CSS to PDF using Ruby on Rails
http://sublog.subimage.com/articles/2007/05/29/html-css-to-pdf-using-ruby-on-rails
オープンソースなRailsアプリケーションは集合!「Open Source Rails」
Railsを勉強するには手を動かすのも良いけれど、人の書いたソースを見て勉強するのも良い。その方法でいくと、オープンソースのRailsアプリケーションは最高の勉強材料になるだろう。
Open Source RailsではそんなオープンソースのRailsソフトウェアを9個ほど(執筆時)紹介している。概ねMOONGIFTでも紹介済みだが、幾つかは未紹介のものもある。そちらについては後日紹介していくだろうが、先にチェックしたい方はぜひ見てみて欲しい。
例は以下。






