06
Mar 11

Week 182

So I’ve clearly fallen off the weeknote wagon. A big, new, exciting project came up a few weeks back and almost everything has slipped as we’ve dug into it. We’re working with a much bigger team than usual, in a different location to usual. It’s quite a change.

There has been time to slip out one new site: a simple presence for Sheridan Tongue’s soundtracks to the BBC series Wonders of the Universe. Sheridan’s contributed the score for both Brian Cox’s “Wonders” series (the latter of which is on TV as I write this) and it’s been great to work with him on getting the site together.

There’s another reason I’ve not been writing here, which is that my writing time and energies are currently distracted by a growing 750words habit. For years I’ve meant to set some time aside each day to write, and at present that site and it’s daily email reminders are working pretty well to make that happen. Hopefully in time it’ll spill over into more frequent blogging, but for now it’s providing a very helpful space to step back and reflect each day.


13
Feb 11

Week 179

A few less meetings this week, but one of those I did squeeze in has led to some fairly rapid results. Tomorrow I’ll be heading down to Lambeth to get started on an intensive project that will occupy most of my time till May. It’s very exciting but a bit hush-hush so I’ll have to be careful what I blog.

With that lined up the focus has been on clearing the decks (but not, unfortunately, writing the many blog entries I’ve been meaning to get to).

The past week saw four recent projects signed off, another’s with a client for testing, and a sixth finally feeling like it’s on track for completion. When there are quite a few projects bouncing around it always seems like there’s one that loses out and in this case it was an especially complex one that got a bit snarled up. But one especially tricky issue is resolved, and it’s picking up from there.

I suspect the coming weeks are going to be pretty hectic, so I also spent a little time simplifying a few things. With all the projects we have kicking around there can be a lot of maintenance work to do, and simplifying and automating that as far as possible is essential to remain sane. I just must make sure I renew my passport so I make it to SxSW.


06
Feb 11

Week 178

This week has followed in much the same vein as the last. Lots of rushing between meetings, squeezing in the time to do the work that needs to fit around them. There were a couple of exciting meetings about some projects for the coming months, and a slightly harder one trying to figure out whether there’s a realistic business model around a product we’ve been exploring over the past few months. And an afternoon learning a little about Nokia’s new developer platform (on which more, later).

There was also a day on site with a client trying to figure out how to simplify the way they describe a number of their processes. We’re working on a new system to replace the suite of spreadsheets and pile of papers that they currently use to track their work in progress, and that’s coincided with some bit internal changes for them. Figuring out how to describe and simplify their processes is a challenge, but an enjoyable one.

We’ve got a few new projects coming up–one for a composer, one for a new record label, another tbc–that I’m very pleased about. They’re small jobs that won’t bring in lots of money, or even really challenge us technically, but it’s a style of project we enjoy and that we’re keen to keep working on. This is a chance to not only serve those clients but do a bit more work to figure out how we can make that work sustainable.

The next week isn’t meeting-free, but should be a more settled one. I’m rather looking forward to that.


30
Jan 11

Continuing to consider Drupal

A little over three years ago I wrote a piece entitled “Assessing Drupal as a Rails developer.” In it I attempted to lay out a few of the reasons why I found Ruby on Rails a much more comfortable platform for building web applications than Drupal.

Over the intervening years, Drupal has continued to grow in popularity, and recently we’ve seen the release of Drupal 7. Rails has seen some radical changes with the release of its third major version, but I must confess I’ve no idea what’s happened with its profile and adoption rate.

Over that time I’ve built and deployed many, many Rails applications, and also brought a couple of Drupal sites to the world. Most notably recently there was News Sauce. Drupal’s become the go-to CMS for much of the not-for-profit/charity world and so it’s something we’re constantly monitoring and experimenting with.

The experience of tidying up News Sauce (for the version currently in beta) I was able to get a clearer sense of progress in the Drupal world. One of the major pain points referenced in that older blog entry was the duplication involved in deploying new features, and I’m delighted to see that there’s been huge progress on that front in the form of the features module. Where once you had to go through the cumbersome steps of duplicating a series of interactions, and/or writing a macro, there’s now a relatively easy way to export changes made in the UI to code and to track changes that would affect that code. It’s quite an impressive piece of work, especially when coupled with views and context. It’s great to see that further maturing in the form of the kit specification that begins to give some shape to how the exported features should present themselves (and so how they should interact).

In that context I was pleased to see Jeff Eaton’s recent Drupal 8: The Road Ahead. For Drupal to become a still more compelling platform it’s time for some of the sensibilities that informed the development of features to inform the core system. In general Jeff’s proposals make a lot of sense: some new APIs, a stripped back profile for those who want to build from scratch, and a more developed profile for those who want something that might be described as “a typical drupal site”. It’s all quite good to see.

The changes aren’t enough to make Drupal my first port of call for most of our projects. Ruby—usually with Rails or Sinatra—fits the bill better, and is still my preferred language. But I am far more comfortable with Drupal as a platform than I once was, and I can see it taking a larger role in a number of our upcoming projects.


29
Jan 11

Week 177

I lost my way with these back at the end of August, but it feels like it could be helpful to start again. So here we go…

I’ve spent a fair chunk of the past week travelling around London meeting people for coffee. We’re in a position that’ll be well known to many freelancers and small companies — several jobs coming to an end, but nothing big lined up to replace them — and that’s spurred me to get out and catch up with people, explore possibilities, think about what’s next and expand our networks a little bit.

That’s quite a good way to spend a week, but does conflict with the small matter of actually finishing the current round of projects to deadline, so there’s also lots of evening and weekend working. A sign that we need to work out how to build a bit more redundancy into our processes.

For the past couple of months we’ve been quietly working on a little product we hope to launch very soon. It grew out of some research we did for a client that revealed a little gap in the market. At some point we hope to develop some product ideas that we see as potential money-makers, but this one’s chiefly a learning experience.

We spend a lot of time helping clients build their products, but we don’t see the full process end-to-end. So with this we’re not just doing the build, but we’re setting up the payment systems, we’re meeting with a lawyer, and all that sort of thing. It’s led to a few delays, but will also better equip us to help our clients, and to launch our future products. More on that in due course.

Yesterday saw us at the Design of Understanding conference at St. Bride’s. (Check out these great notes on that. I’m still processing mine) As with all conferences there were some ups and downs, but it was a great day with a good crowd and several very good talks.

Small, focussed conferences are definitely my favourites, but 2011 will also see me going back to SxSWi. And we finally have accommodation sorted out for SxSW. By the time we decided to go all the hotels within 6 miles of the convention centre were booked up, but the wonderful AirBnB came through for us and we’ve got a nice little cottage a couple of miles away.


25
Jan 11

History Hack Day

My officemate Matt has spent the past few weeks putting together the inaugural History Hack Day, which took place at the Guardian offices last weekend. I was only able to attend for the kick-off talks, but they were great, with Matt Sheret‘s exhortation to be timelords fitting especially well.

Jeremy Keith has done a great job of writing up the various hacks that emerged from the weekend and I’m gradually working my way through them. I’ve very much enjoyed watching Simon’s geStation which plots the openings of Britain’s railway stations onto a google map. As Jeremy says:

On the face of it, it sounds like just another mashup of datetimes and lat-long coordinates. But when you run it, you can see the story of the industrial revolution emerge on the map.

I initially opened it in a rather overloaded browser and everything ran very slowly. Switching to a different browser sped things up a lot, but I realised I’d enjoyed the slow pace rather a lot more – there was something quietly engaging about watching each station pin emerge in turn and spending several minutes seeing the country gradually connecting up.


25
Jan 11

Thoughts on the state of the "East London Tech City" initiative

Last Monday I was at the Department for Business, Innovation and Skills to explore the government’s “Tech City” scheme to do something to do with the technology industry in an area loosely defined as “East London”.

I’d been wondering before sitting down to write this how best to sum up my reservations about the scheme, not really realising that just writing that first sentence would actually begin to draw them out quite quickly. An initiative has been announced, a name has been given, but very few people seem to actually be sure what is being proposed, or where or at whom it’s targeted. That made it very hard to work out how to engage with the event.

There were a range of different interests represented, small development shops like ours, a couple of early stage startups, some academics, a few folks who’d been through the startup experience and emerged with successful firms, civil servants, VCs/bankers, and quite a few big tech vendors. It wasn’t hard to discern who fell into each group as time and again it became clear that there were quite distinct agendas in play, not to mention significantly different interpretations of the dress code. And it was a clear a number of those present could do with reading Alex’s politician’s handbook to East London, with requests for “free wifi to enable cafe working” suggesting people hadn’t spent much time in the current crop of cafes around Shoreditch.

There were a few stimulating conversations in the breakout groups but it’s sad that one of the most positive outcomes was that the lack of focus so quickly became apparent! Are we talking about encouraging tech firms to take over the Olympic Park post-2012, or are we talking about changes in Shoreditch? Are we looking to bring in foreign tech giants who are well capitalised and need a European office, or is the primary focus supporting the establishment and growth of indigenous companies?

Those are all valid questions to be asking when exploring what government can be doing to support the British tech sector, but it feels like they’re the questions that come before an initiative is announced with much fanfare and a variety of “commitments.”

It feels like the whole thing is starting on very poor footing. Early on there was a statement (which I’m not meant to attribute because we were under Chatham House Rules) that the name “Silicon Roundabout” had been dropped because “it doesn’t translate around the world.” That was indicative for me that there was no real commitment to exploring the uniqueness of London and the myriad tech communities that thrive within it. I’ve a certain fondness for the Roundabout moniker, though no deep commitment to it, and its key attributes in this context are that it emerged from the community of small tech companies in the Old Street area, and that it relates a certain commitment to and humour about the place. The idea of dropping it didn’t go down well among the locals I was attending with.

Understandably, the consultants from McKinsey running the event were at pains to push those of us there for some concrete answers to “what should the government do?” And given that the initiative is already under way we probably need to come up with some answers… I don’t have many specifics as yet, but I know I’d like them to start by:

  • splitting the initiative along geographical lines: East London isn’t a single entity and different neighbourhoods have different needs. Pick a couple of areas and produce tailored plans for each.
  • acknowledging that small companies generally generate more jobs than big ones (and that “rapid growth” isn’t the only way to be successful): where there’s an existing ecosystem of small companies ask them what they need without the implicit addition of “in order to become big companies”

24
Jan 11

News Sauce

One of the projects that occupied the latter half of my 2010 was the build and launch of News Sauce. It’s an aggregator product that we’ve built on drupal and initially launched to pull together news coming out of the UK government.

It’s been ticking along very nicely for a couple of months now and has been very well received. Which is nice. Over the weekend there was a little surge of attention as a result of UK Gov Camp and that prompted me to write a blog entry I’ve been promising for a couple of months. So if you want to know a little more about the tech behind the site you can now find my first notes over on the News Sauce blog.

There are all manner of new features planned, and a few more “editions” to launch. I’ll try to be a little better about posting updates here.


24
Jan 11

Seen through devices

I’ve been musing on Mike Kuniavsky’s notes from his Microsoft Social Computing Symposium for a few days. While his focus is ostensibly on physical products and our focus remains very much on web products it’s a helpful read since that distinction is an increasingly flexible one.

because these things are now connected, their value moves from the device to the service it represents, and the actual objects become secondary. They become what I call service avatars. A camera becomes a really good appliance for taking photos for Flickr, while a TV becomes a nice place to run a high res Flickr widget, and a phone becomes a convenient way to take your Flickr widget on the road. People see “through” each device to the service it represents, devaluing the device to nearly nothing.

and

The upshot of all this is that we’re about to see a precambrian explosion of device-types that span uses, scales, and continents as we collectively stumble around and try to figure out what it means when many people have many devices and they’re telling many interwoven stories with them simultaneously. We’ll yearn for the clarity when all we had to do was figure out where the pixels went or how to make style sheets render correctly on two browsers.

That’s a pretty vital thing for those designing and making physical objects to bear in mind, but it’s also something those of us building web products need to bear in mind. The future’s a lot more than a set of websites that look good on an iPhone.


07
Jan 11

Adding actions to Devise controllers

Adding Actions to Devise Controllers

It wasn’t the most fun I could imagine having during a “holiday season” but while holed up in Chicagoland over Christmas I spent a couple of days porting a few of my older Rails apps to use a more up to date stack: Rails 3, Devise, Inherited Resources, Formtastic, etc. The idea is that if the apps are on a stack I use every day, I’ll spend less of my time reloading old tools into my head when the inevitable tweaks are required. We’ll see how that goes.

Anyway…

Two of the apps I was working on include member profile pages. Having carefully chosen my devise model names to match the language of my app I wanted to use the same controller that’s used for registrations for other member actions. Initially I tried just extending the relevant controller and updating the route:

config/routes.rb

  devise_for :members, :controllers => { :registrations => "members" }

app/controllers/members_controller.rb

class MembersController < Devise::RegistrationsController
  def show
    ...
  end
end

but I kept getting ActionController::UnknownAction exceptions when I tried to request a member profile page.

It turns out that Devise runs a before_filter called is_devise_resource? in its controllers and that wasn’t recognising any actions that aren’t included in the core devise controllers. It also runs authenticate_scope! for relevant actions.

With that discovered it was easy enough to update my controller to

class MembersController  [:index, :show, :edit, :update]
  skip_before_filter :authenticate_scope!, :o nly => [:edit, :update, :destroy]

  def show
    ...
  end
end

and everything fell into place.