Unicode Escape Formats

The escape syntax for Unicode characters in every language, format and notation I’ve ever seen, and quite a few beyond. Handy.

Detect Windows in Ruby

The proper way, so they say: require ‘rbconfig’ WINDOZE = Config::CONFIG[‘host_os’] =~ /mswin|mingw/ Sigh. Makes one yearn for Python. Even 1.5…

Scott Hanselman’s 2009 Tool List

Excellent round up of utilities, web sites and more for developers and power users. Only thing he missed is TSE 🙂

10 Unique Ruby Features

The 10, but 3 (implicit return values) and 8 (only nil+false are False) are negative features. FYI here’s the 10 and how they compare with Python: Objects everywhere! — Python supports OO but not solely, and has strong reflection features regardless of objects or not Blocks — Python’s function objects and ‘with’ keyword and list…


Profiling Ruby code.


A drop-in replacement for Builder::XmlMarkup which uses libxml for speed and security. The README notes a slew of minor caveats so it’s not a perfect replacement, but it shouldn’t be hard to configurably switch between them as needed.

Rails Searchable API Doc

Nicely formatted API docs for Rails, available for both online use and downloadable for local searches(!). Formatting’s much better than other sites I’ve found, and the local search smokes ri. NOTE: You need to customize the contents if you want Rails and Ruby APIs. I’m using the Rails 2.3.4 + Ruby 1.8 + Nokogiri 1.3.3…

Rails 2.3.3 is out

Here. The JSON improvements sound nice. Of course, it’s Rails – what’s this release break? Sigh. Something to keep an eye on, but I’m not keen on being an early guinea pig.

I !(heart) Rails

Ruby on Rails does some nifty things, trying to lull you into a false sense of submission – and then it springs this on you. For those unfamiliar with the glory and the horror that is RoR, let me enlighten you… Rails can parse incoming XML and hand it to you as a Hash. Makes…



This Ruby gem lets you run tests in parallel using multiple processes. Unfortunately, it doesn’t work on Windows – it requires ‘fork()’ (which isn’t implemented on Windows). Sigh. And me with this beefy quad core desktop.