バックグラウンドジョブの改善によってRailsのパフォーマンスを高める
スケーラビリティの実現は簡単だという発想は、珍しいものではありません。Herokuなどのホスティングサービスを利用していれば、ほんの数回クリックするだけで、アプリケーションにRAMやCPUなどのリソースを追加できますよね […]
WebSocket大合戦:Clojure、C++、Elixir、Go、NodeJS、Ruby
Webアプリにリアルタイムの双方向通信が必要な場合、WebSocketを選ぶのは自然なことだと思います。では、どのツールでWebSocketサーバを構築すべきでしょうか。パフォーマンスは重要ですが、開発のプロセスも見過ご […]
可変性の回避 ― Rubyへの関数型プログラミングスタイルの適用
本稿では、関数型プログラミングのコンセプトを実用的な方法でRubyのコードに盛り込む方法について紹介します。これは、私が「関数型プログラミングのスタイル」と呼んでいるものです。 私が言う「実用的」とは、関数型プログラミン […]
DHHはどのようにRailsのコントローラを書くのか
私たちの救世主DHH™は最近のFull Stack Radioのインタビューで、Basecampの最新版で彼がどのようにRailsのコントローラを書いたかを説明しています。下記は、彼のすばらしい話を書き取ったものです。 […]
依存関係をなくそう : Rubyアプリ・Gemの開発者への提言
本記事はRubyについて書かれたものではありますが、Python、JavaScript、Javaなど、全ての言語コミュニティに当てはまる事実を述べたものです。依存関係が引き起こす負の連鎖は誰のためにもなりません。 上の図 […]
Railsの基本理念 : Railsの生みの親が掲げる8つの原則
(訳注: 2016/3/2、頂いたフィードバックをもとに記事を修正いたしました。) Ruby on Railsは最近、急激に注目を集めていますが、その原因はほとんど、この言語が斬新なテクノロジーとしてもてはやされたことと […]
WebSocketには注意が必要
近い将来WebSocketがRailsで使用できるようになると聞くと、デベロッパはみんな舞い上がって興奮します。 しかし、あなたのユーザは、あなたがWebSocketを使用しているかどうかなんて気にしません。 ユーザは、 […]
Webアプリのデプロイメントの悲しい状況
ここ4日間というもの、インターネットWebフォーラムをインストールしようとして大いに時間を無駄にしました。説明書きには30分でセットアップ可能と書いてあったんですけどね。 コンピュータは得意なほうだと思っているのですが、 […]
Capybaraを使って、Rails+JavaScriptの非同期な統合テストを書く
バランスの取れたテスト方法として、私たちは統合テストを頼りにしています。統合テストは、アウトサイドイン開発をサポートしており、リグレッションを見つけたり、RubyとJavaScriptそれぞれの単体テストのギャッブを埋め […]
SMSインタラクションのテスト
SMS送信機能を含むアプリケーションを開発するにあたっては、実際にメッセージ送信を行う必要があります。その際、私たちが好んで使うのはTwilioのような外部サービスです。SMSと連携する部分の単体テストを行う時は、実際の […]
三目並べで学ぶミニマックス法
最近、「絶対に勝てない三目並べ」のゲームを作ったのですが、非常にささやかながらも楽しいプロジェクトで、いろいろ学ぶこともできました。ゲームの全体像に興味がある方は、こちらでゲームを試してみてください。 無敵のゲームにする […]