Several weeks ago, I made a very very difficult decision. I decided to drop Plone and re-write the entirety of Ambisonia in Ruby on Rails. This weighed very heavily on me.

I decided to do this, because anytime I wanted to do something slightly-out-of-the-box with Plone, I’d be sent into a violent spiral-in-a-box … hitting walls, walls and obstructions.

I’ve been nervously wrapping my head around Ruby on Rails, waiting for the prognosis on my decision.

Well, the prognosis is good. Very good.

I feel empowered by Ruby on Rails.

The new site is coming along well. There is a freedom you get with writing the code yourself (rather than wedging things into a Content Management System) … which empowers you. You know you could steer any path, at any time, without hitting the walls of an established (over-designed, I feel) ‘framework’.

Further to that, I am really starting to love Ruby. Its the kind of language that takes a quarter of the code you thought you would need to write… and there’s always a simpler way.

Python and Plone had Buildout for installing/upgrading development code to the production machine. That was good … I’ve never used a ‘deploy’ system before.

But Ruby on Rails was designed around the needs of the modern web application builder. It supports the whole development/testing/production lifecycle out of the box. And Ruby has Capistrano. Capistrano seems far simpler than Buildout. And it is designed so that I can deploy new code to the production server, without ever going into the server. All I do is type “cap deploy” on my local machine … and WHAM … the new code is there. Very good for incremental development. Painless.

I’ve also discovered Shoes. wow! Writing GUI code has always been a complete pain in the *&(*#. Shoes is a revolution. Well … its part of a revolution. Several years ago I was exposed to Processing, a Java kit for doing graphical things. I actually used Processing to write a little graphical GUI for moving sounds around ambisonically. “WhyTheLuckyStiff”, the author of Shoes says:

Shoes is strictly inspired by stuff like REBOL/View, HyperCard, the web itself and, of course, Processing and NodeBox.

I don’t like the bulkiness and the layers and layers of wxWindows, FOX, QT, GNOME. They are big, big libraries and all the apps look identical, devoid of spirit.

The unique thing about the web is that it gives you very few controls, but people are able to build wildly different pages with it that are still immediately accessible to people.

He is a good thinker, this “Why” fellow. Its rare to get someone who can write good code _and_ understand design, _and_ trumpet user experience.