Blog posts
Collected posts from the various blogs I’ve contributed to over since 2002.
Collected posts from the various blogs I’ve contributed to over since 2002.
With Rails 3 inching ever closer, there’s likely to be a good bit of attention on Rack Middleware over the coming months. It’s there as an option in Rails 2.3, but with Rails 3 it’ll get the attention it deserves. Working on a few Rails 3 apps, I’ve been very pleased to find Coderack (via Robert Brook on twitter, I think). It’s a directory of middleware, packed with interesting tools. The one discovery I’m so far using is StaticFallback, which “bounces or redirects requests to missing static files”. So you can sync up your development environment with your production database, and don’t have to worry about also pulling down all the assets that may have been uploaded to it. Very handy! ...
A client recently asked me to integrate their site with the JangoMail mass mailing system. I wanted to keep them happy so agreed to investigate, but was horrified by what I saw in the JangoMail API documentation. JangoMail appears to be optimised for those with existing databases of email addresses they want to maintain and contact. For those wanting to keep those databases in sync they offer a script you can download and install on your server that they can call with details of various actions (user unsubscribed, user clicked link, job completed, etc) as well as to extract the list of email addresses they should send a given campaign to. So far, so good. ...
It’s been a week of tying up loose ends in an effort to get invoices out the door and perhaps have a focussed start to the new month. The next step of the infrastructure for JLL is in place, a feasibility study for a document processing system (and associated quote) are being reviewed by a new client, I’m wrapping up a report on some work I’ve been doing for Eastside Educational Trust, a new site for a music industry client is awaiting some DNS amendments on the client’s end, and another project is with a client so they can consider what direction they want to take it in next. ...
In a lengthy blog post detailing many of the intricacies and some of the politics relating to character encodings in Ruby, Yehuda Katz has a few paragraphs that left me more than a little excited: The most common scenario where you can see this issue is when the user pastes in content from Microsoft Word, and it makes it into the database and back out again as gibberish. After a lot of research, I have discovered several hacks that, together, should completely solve this problem. I am still testing the solution, but I believe we should be able to completely solve this problem in Rails. By Rails 3.0 final, Rails application should be able to reliably assume that POSTed form data comes in as UTF-8. ...
Another week, another chance to reflect on where it went. The big news of the week was the launch of the Ninja Tune XX website mentioned below. I’m still very pleased with how much we got done with such a short lead time. With quite a bit of attention coming to the site via twitter, facebook and a variety of music blogs (including pitchfork), I’ve been keeping a close eye on traffic and resource consumption. We had an early memory spike, which seems to have been resolved by removing the dependency on the RedCloth gem (I didn’t trace any specific problem to the gem, I just realised we didn’t need it any more and was pleased by the result), and a slight issue due to a mis-match between the versions of mongoid and bson_ext we were using, but those were easy fixes and the site continues to move along nicely. ...
Numerous people who are better at keeping on top of things than I am have already talked about how good Ben Ward’s “Understand the Web” is, but I’m not going to let that stop me joining the chorus. With so much being thrown around about which proprietary vendor is more open, and what extra tool could be considered part of the HTML5 crowd, it’s good to see someone working to get to the core of what the web really is and working from there. ...
jQuery Offline is yet another new project from the seemingly unstoppable Yehuda Katz. This one provides wrappers around jQuery’s JSON fetching functions that will cache initial responses and hit the cache if your user is offline. When coupled with Rack Offline this seems like the start of a very simple way to develop javascript heavy apps that survive a loss of connectivity, leaving the developer to focus on the trickier stuff like synchronising changes made by multiple users. ...
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. ...
Its been twenty years since Coldcut formed Ninja Tune and they’ve got a lot planned to celebrate that anniversary. There’ll be events, a very special box set, and… a website featuring exclusive giveaways every week for the next twenty weeks. Ninja Tune XX launched at 4pm today. This is the rush job I’ve referred to in recent weeknotes, and it feels great to have it launched. It’s already attracting quite a bit of traffic and seems to be holding up well sitting on a little dreamhost private server (we needed cheap access to a lot of bandwidth). Under the hood it’s a Rails 3 app talking to MongoDB via mongoid. We’re using devise for authentication, formtastic for forms and InheritedResources to keep controller code to a minimum. ...
Four day weeks always feel a bit odd. This week’s particularly so as I somehow managed to not be ill or work on the Bank Holiday. That doesn’t often happen. (When I say I didn’t work, I mean on client work. There was some tinkering, but not with anything directly relevant to an active project) The rest of the week seemed to muddle along with a light scattering of meetings. ...