Blog posts
Collected posts from the various blogs I’ve contributed to since 2002.
Collected posts from the various blogs I’ve contributed to since 2002.
Having written a number of blog entries about carbon offsetting around a year ago, I’ve been watching the mounting debate over them with some interest. While I appreciate much of what George Monbiot has to say, I wasn’t impressed with his claim that carbon offsets are ’ the new indulgences.’ The emotive rhetoric masked a real issue of how we can ensure that measures to combat climate change are fair to the poor, and don’t simply let the rich buy our way out of obligations. ...
Bandwagon is a soon-to-be-launched service to help people back up their itunes libraries. It provides online services (and it looks like tools) to manage and store the backups. They’re also offering free accounts to bloggers linking to their site, and I’d really like to try the service, so here’s my post. I’m a little sceptical that it’ll be practical to do online backups of our main itunes library, seeing as how it’s just steamed past 175GB and our DSL connection isn’t at the high end. But I’d love to be proven wrong… ...
Rails’ auto_complete integration is pretty nice for building search functionality, but for entry forms it all too often falls short. Typically if I’m using an auto complete field in a form it’s because I want to link that record with an existing entry in another table, such as connecting an event with a location, or a book with a publisher, and that won’t work because the value obtained from the auto completion is the name of the linked entity, not its ID. I’ve tried various ways of managing that, either by overriding the standard methods or by adding some extra code in my model that will convert a name back into the associated model ID, but they all feel like hacks and I’d not had time to clean up the code and package anything as a plugin. ...
I’m beginning to wonder if I should give up on going to see movies at the multiplex. Ordinarily we can go several weeks between visits, preferring the smaller theatres in town, but with the Oscars coming up there’s been a sudden influx of larger releases we want to see. But even though a couple of the films have been very good ( Children Of Men, Pan’s Labyrinth) and several others have been worth seeing (such as last night’s choice, Babel which was intense but could have done with some significant editing), the the overall experience is far more exasperating than entrancing. ...
In yesterday’s post on creating custom product types in drupal I promised a follow up on how we were adding the license generation to our checkout. I’m not going to go through all the steps in great detail as most of what I wrote is specific to our situation, and the custom PHP module (written in C) that generates our licenses, but it took me a while to work out how to hook in, so here are a few words. ...
For anyone who serves up content that is requested repeatedly by the same user agents (be they web browsers, news readers, or any other) it can quickly get expensive (financially and in performance hits) to use up bandwidth sending the same data to the same destination over and over. HTTP provides mechanisms to deal with that, but until recently they’ve been poorly supported. Those costs are the reason that this is great news. DHH just committed a change to Edge Rails that automatically adds an ETag when sending a response and returns an HTTP 304 (Not Modified) when an agent comes back asking for the same content before it has changed. ...
For the Scodigo site we wanted to be able to sell licenses to use the SmartPill PHP Edition plugin. For the most part that just involves a standard ecommerce flow, and so we opted to use drupal’s suite of ecommerce modules, but we wanted to make some customizations along the way, such as being able to offer product variations (eg. different user counts for the licenses) and generating and emailing a license rather than shipping a product or delivering access to a file. To achieve that I created two custom modules: a product type called ’licensable’ and a license management module creatively titled ’licenses.' ...
Another piece of our promotional strategy for this year’s Festival of Faith and Music (a strategy which has registrations four times higher than last year’s total, with six weeks still to go!) is a short animated video by Karen and Peter. We like it a lot, but I don’t think I’d posted the link here as yet. You can, of course, find it on youtube. Tags: ffm2007
UPDATE: This post was written using Capistrano 1, which has since been superseded. An updated version—covering deployment of Drupal with Capistrano 2—can be found here. It’s easy to get spoiled building rails apps. Tools like migrations make it so much easier to keep databases in sync, the way environments are managed helps considerably, and there’s Capistrano which makes rapid deployments a breeze. I miss those things when I have to work with other systems. ...
Back in August I wrote about SmartPill PHP Edition. SmartPill PHP Edition is a plugin for the filemaker database that embeds the PHP engine, opening up a whole new world of flexibility and open source tools to Filemaker developers. For the past couple of months I’ve been working with Samuel Bowles and Micah Woods (President/Founder of Scodigo) to launch the Scodigo website, promoting that plugin and their other services. As befits a site promoting a PHP plugin, it’s PHP driven, using drupal for content management and ecommerce features, and a few custom modules that do things like generate licenses for SmartPill on the fly. If time allows, I may write up some notes on how we did that. ...