How to Run a Rails Application on JRuby



Coda Hale has announced the release of his new 'bcrypt-ruby' gem. bcrypt-ruby brings simple OpenSSL powered password hashing to Ruby along with some useful features like hash versioning, automatic salt handling, and the ability to produce hashes that are computationally difficult to compute to reduce the risks of attacks.



Matt Neuburg has put together a great article full of examples of using Ruby and AppScript in place of AppleScript to script operations under OS X. I hadn't bothered to try these Ruby->OS X bridges yet, but I followed Matt's simple examples with amazement. It's so simple! Within two pages Matt moves on to using Ruby to instruct Microsoft Excel to produce a graph based on data provided from Ruby and it'll only take you up to ten minutes to read the whole thing and get that far. Excellent piece.


I'm not a big IDE or a Windows user myself, so getting me to review a Windows-based IDE could be quite tough. However, the creator of ED, Neville Franks, is an Australian-based independent software developer (trading as Soft As It Gets) and wrote such a nice e-mail that I felt obliged to take a look.
ED is a Windows-only editor with over 20 years' of history, having first been commercial released in the 80s, crammed with features a lot of developers seem to love, and with support for about twenty different programming languages out of the box. The latest is Ruby which Neville has so far been impressed with. ED performs code completion (ending of blocks, if statements, etc), syntax highlighting, class navigation, and all of the features you'd usually expect an IDE to boast. Neville has written a comprehensive blog entry covering ED's support for Ruby, where he demonstrates each of these features.
Jonathan Conway of New Bamboo (more on this at the end of this post) has put together a rather comprehensive walkthrough on using mocks with Rails and using them to define your interfaces. Not having cut my teeth with mocks yet, I took the rare step of asking for a personal summary of the article by the author himself, and Jonathan delivered!
Skype and Google Talk are pretty clever in the way that they still work even if all of its users are behind firewalls (or NAT systems) that block incoming connections. The way they enable two-way connections is by using a 'firewall busting' technique. Simply, a central server does nothing but share IP addresses (and port numbers) and clients can then 'punch' holes through their firewalls and trick their firewalls and routers to route incoming packets back to them if they have certain source host and port numbers.
Here's a detailed tutorial of how to use Capistrano and Deprec (a set of add-on 'deployment recipes' for Capistrano) to put together a solid deployment system for your Rails applications on an Ubuntu server.