Announcements

has_many_polymorphs and Rails 3

I’m gradually porting a number of my older Rails apps over to Rails 3. The main motivation is a chance to really put the new version through its paces, get a better sense of how it’s working, where plugins are at, etc; but it’s also rather nice to get some of the performance improvements and cleaner code along the way.

Catapult relies on Evan Weaver’s has_many_polymorphs plugin quite extensively so it was important to be have a Rails 3 compatible version. I couldn’t find any evidence that anyone else was working on it, so I’ve forked the github project and made a few alterations. I’ve set it up to work as a gem (so I can pull in the latest version using bundler) and adjusted to fit the new rails initialization process. It’s rather hacky, but it’s working for me so far.

Evan informs me that he has no plans to work on compatibility, so I’m going to see what time I can find to tidy it up a bit more, make sure the tests are passing, etc. If anyone else is so inclined, I’d love some help with that. You can find my fork on github.

Greenbelt has an iPhone app

I’ve been watching the recent furore over Apple’s iPhone app review process with some concern. Partly, of course, I want the process to be clear, to make sense and to provide us all with good access to the apps we want. But the slightly more selfish reason was that I was waiting for the Greenbelt app to be approved for sale, hoping fervently that it would make it through in time for people to buy it before the festival.

With a little under 6 days to go, it was approved, appearing for sale on Saturday night. What’s more, they tell me they expedited the process in response to a pleading email earlier in the week, to help us meet our target.

I can’t take credit for the coding, which belongs entirely to pab. I played around with some of the code, tidied up a little javascript and provided some feedback, but he did all the hard development (and data entry) work. My role was managing the release and dealing with Apple. The app upload system is far from their finest UI work (it probably ranks amongst the worst apple interfaces I’ve used) but all in all the process worked well for us. The one rejection we did get early in the process was for a fairly clear bug that we quickly fixed.

There’s a lot more we’d like to add to the app, but it’s hugely satisfying to have it out there and it’ll be interesting to see how it affects peoples’ habits at the festival.

Talking to WordPress with ActiveRecord

As mentioned in yesterday’s announcement I’m pulling some content across from this blog (running on wordpress) into the new Ket Lai site (a merb app). I’ve found myself doing similar things a few times lately, such as on Only Connect (on which more, soon) and so have built out a selection of ActiveRecord models to help me talk to a wordpress database from a ruby app.

At Matt‘s urging (he’s been using them to move data from a legacy site), I’ve finally put those models up on github. Being a single file they arguably should have been a gist, but I’m reserving the right to reorganise them in future.

They’re far from complete in that there are lots of validations I could have added in, named scopes that would probably be handy, and loads of convenience methods that some might like, but hopefully they’ll be of use to someone and evolve over time.

(on the subject of wordpress, I’m glad to see the addition of changelogs to the plugin directory – being asked to upgrade plugins without any idea what’s changed has long been a bugbear of mine, so hopefully this will resolve some of that)

Launching Ket Lai

Ket Lai logoFor a while now I’ve been transitioning away from using the name jystewart.net for my web development work in favour of Ket Lai. The shift is partly born of a desire to separate out my work from other parts of my life (increasingly important now we’re a family of three), but mostly a recognition that I rarely work on projects solo these days–instead pulling in a range of collaborators–and a group identity is more honest to what we’re doing.

Today, thanks to the design help of frequent collaborator James Weiner I’m launching the Ket Lai website over at http://www.ketlai.co.uk. There are still a few bits and pieces we’re working on, but it’s great to have it out there for the world to see.

The site employs a variety of CSS3 techniques to give a little more visual feedback and spark, and is built on top of the merb framework (rails seemed like overkill, and personal-ish projects are usually a good chance to try something that not many client projects call for).

This blog will continue roughly at its present location, though jystewart.net may eventually get a little reorganisation/redesign-love. Naturally redirects will be used where necessary. Relevant posts are pulled across to the Ket Lai site, but this will remain a personal blog and hopefully suffer a little less from brand confusion.

So if you want to know more about the work my collaborators and I do or services we offer, www.ketlai.co.uk is the place to go. And now that it’s launched maybe (just maybe) I’ll be able to write here about a few other recent projects and interesting tidbits.

Rails 2.3 final and theme_support updates

Somewhere between Ruby on Rails versions 2.3.0 (RC1) and 2.3.2 (final) a change was made to the arguments required for one of the methods the theme_support plugin requires. I must confess I hadn’t spotted it, but github user knapo kindly sent me a message with a patch. That patch is now applied in the main repository, as are a few tweaks to the ActionMailer integration to better handle multipart emails. You can get the new version from github.

Perhaps more significant than those small patches is that I’ve now pushed up a new rails app for use in testing theme_support. The tests are a series of cucumber stories, and the app is very barebones designed entirely to test the various features. I could do with tightening up the way the test app and the main plugin repository are connected, but it’s a start and has been very helpful with the aforementioned patches. Any improvements to the test suite would be much appreciated. You can, of course, find it on github.