#Rails

  • Sphinx and full text search engines

    Great intro and springboard article from the Register if you don’t know much about Sphinx on the smarter, scalable way to do full text search these days. All the cool kids are using it (and with good reason).

    Sphinx and Rails goes together pretty much like chocolate and peanut butter these days and we’re using it on at least two production projects at AI, as well as it being a favourite of mine for personal use.

  • IaaS, Heroku and the 2 minute Rails deploy

    Devs hate dealing with infrastructure. They’d much rather code solutions than worry about whether the servers have been updated, a piece of software is there or the environment differs from what they have on their development boxes.

    Amazon EC2 started it (though really you still need to manage the hardware), Google app engine (if you like python) followed, and Heroku made it seemingly effortless to deploy and run Rails apps. It’s now following with pricing plans, both Shared and Dedicated that can handle production deployments (I love the pricing tier names : Blossom, Koi, Crane, Ronin, Fugu and Zilla… ;-) ). IaaS (Infrastructure as a Service) is now becoming the increasingly accepted standard for devs in both startup staging and business production.

  • Rails MySQL gem and OSX 10.5 Leopard MySQL 64 bit compile flag

    I recently reinstalled mysql on my Macbook under OSX 10.5 Leopard and used the 64 bit MySQL (hey, Leopard is 64 bit! Why not?).

    Anyhow, when I went to using rails again, mongrel_rails start kept throwing a whine on the fact that the old mysql gem (2.7) was 32 bit.

    Found this after removing the old gem to get it working with 64 bit. Definitely not trivial to figure out:

  • Moving over to using Phusion Passenger

    There are a lot of things to really love about Rails apps. One of them is not deployment. Rails boffins, regardless of what they say, do look with longing envy over at those php kids with their simple copy of files up to a server and having it run on apache.

    Admittedly, I’d rather deploy via capistrano anyway (cause even php boffins should be doing it that way) since it is fabulous and does deployment like it should be done, but there is something to be said for the wonderful mod_php under apache. Configuring proxying and mongrels under either apache or nginx is simply not fun. It feels like work.

  • Props to New Bamboo and their launch of Protect the Human

    Just a shoutout to my favourite Rails ninjas here in London, the bambinos at New Bamboo *(disclaimer: they’re working on projects with both AI UK and with us at the Secretariat right now)*a, who just launched AI UK’s new Protect the Human site after partnering up with Made by Many .

    {{ figure src="/images/farm4/3272/2792698081_71d634992a.png)" title=“AI UK’s Protect the Human” }}

    Very nicely executed social networking site based on activism, sharing and discussion. Just wondering what they used to get the base done. They even managed to incorporate the new visual Global Identity and reconcile it with AI UK’s current visual scheme.

  • Upgrading Ruby and Rails on Mac OSX and Moving to Mongrel

    Past posts have probably nailed me by this point as a huge fan of Ruby on Rails and the Ruby language in particular.

    While I think a huge mythology now surrounds how much more productive it makes you which causes difficulty in separating the hype from reality, my personal experience has made me a raver about it in terms of just getting things done. In one (ok, mostly sleepless) weekend, I managed to get up a canvassing and get out the vote application, web enabled across the internet that was used successfully and to great effect in a Canadian federal leadership campaign (and the person ran rings around the other candidate partly because of its contribution). The party in question had been unable in several years of trying to accomplish the same thing.

  • Why you need to check out Ruby on Rails

    Wow. I’m going to say this again, because it is so rare for me to use this word in relation to programming at all: Wow.

    In fact, the last time I used it was in regard to my first view of XCode whose ability to remove the grunt work from creating interfaces and allow you to concentrate on coding instead is amazing (sadly though, I’m not a big fan of ObjectiveC and you really need to code in ObjC to get XCode’s full power… though apparently someone has come up with Ruby bindings for Cocoa which I am also going to check out since Ruby seems to save so much pain.