April 2nd, 2008
I was entertaining my wife yesterday evening with some witty banter on the subject of RSpec and was most annoyed that she wouldn’t stop laughing. As we all know RSpec is deadly serious so I couldn’t understand what could cause her such paroxysms, perhaps she had become ill of the mind; a raving loon? I made a mental note to check her dosage.
It turns out that she was only half-listening to me and having no idea what I was talking about (she is not a software developer) thought I was talking about something called ‘Arse-peck’. Last time something I said caused her to laugh this much was when I told her there was a UNIX utility called ‘ping’.
I really should get out more. At least that’s what my wife says.
Posted in Programming, Ruby | No Comments »
April 1st, 2008
Posted in General, Web | 1 Comment »
March 31st, 2008
After installing Chyrp today for a client I came across the following two options for saving a post right next to each other:

There was no indication that they worked at all differently and in the end I chose the green-ticky-save over official-looking-DB-and-disky save. I am not sure there would have been much difference in the outcome, but I feel empowered from having the choice.
Posted in Web | No Comments »
March 27th, 2008
I have recently been playing with Asaph, a new blogging system and I have a new blog up. It is seriously fast to post to and limits each post to a small amount of text or one image which although a limitation has been making me think more about what I post.Try it, it’s fun.
Posted in Web | No Comments »
March 26th, 2008
After ‘winning‘ revision 1000 and 2000 carl attempted a new tactic in the race for 3000, the last-minute sprint. However he fell at the last hurdle, his basic grasp of basic maths. Here is the IRC log of the incident (botz0r reports subversion commits in IRC). Botz0r outputs each commit on two lines, the first being stats of the commit and the second is the log message:
[14:29] botz0r: the_project carl r2983 [trunk] (0 lines added, 0 removed in 1 file)
[14:29] botz0r: i
[14:29] botz0r: the_project carl r2984 [trunk] (0 lines added, 0 removed in 1 file)
[14:29] botz0r: am
[14:29] botz0r: the_project carl r2985 [trunk] (0 lines added, 0 removed in 1 file)
[14:29] botz0r: the
[14:29] botz0r: the_project carl r2986 [trunk] (0 lines added, 0 removed in 1 file)
[14:29] botz0r: mother
[14:29] botz0r: the_project carl r2987 [trunk] (0 lines added, 0 removed in 1 file)
[14:29] botz0r: fucking
[14:29] botz0r: the_project carl r2988 [trunk] (0 lines added, 0 removed in 1 file)
[14:29] botz0r: winnah
[14:30] botz0r: the_project carl r2989 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: for
[14:30] botz0r: the_project carl r2990 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: the
[14:30] botz0r: the_project carl r2991 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: third
[14:30] botz0r: the_project carl r2992 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: time
[14:30] botz0r: the_project carl r2993 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: you
[14:30] botz0r: the_project carl r2994 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: cannot
[14:30] botz0r: the_project carl r2995 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: defeat
[14:30] botz0r: the_project carl r2996 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: me
[14:30] botz0r: the_project carl r2997 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: muhahahaha
[14:30] botz0r: the_project carl r2998 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: hahaha
[14:30] botz0r: the_project carl r2999 [trunk] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: WINNAH
[14:30] botz0r: the_project ciaran r3000 [trunk/] (0 lines added, 0 removed in 1 file)
[14:30] botz0r: asdsa
[14:30] carl: FAIL
[14:30] Wlll: MATHS FAIL!
[14:31] ciaran29d: fail of the century
Posted in 29degrees, Programming | 2 Comments »
March 19th, 2008
I am using the Rails cookie store that was introduced in Ruby on Rails 2 to store my session data on finder.overcycle.com. Rails will throw an exception if the cookie data is tampered with (Rails can check if the data has been altered), and as I use the Exception Notifier plugin I got my first ‘Cookie Tampered With’ email today:
A CGI::Session::CookieStore::TamperedWithCookie occurred in account#signup:
CGI::Session::CookieStore::TamperedWithCookie
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/session/cookie_store.rb:143:in `unmarshal'
And the cuplrit? The Alexa crawler apparently. No Alexa crawler! Bad bot!
Posted in Uncategorized | No Comments »
February 20th, 2008
Thanks to all the people who emailed about the release of the Recycling Group Finder, it was great to receive so many positive comments!
Due to popular request there are two new features. First, group member numbers are automatically updating. This takes a maximum of about 48 hours or so to update, so don’t worry if your membership numbers have changed and the new figure isn’t appearing on the site, it will.
Second is the group owner/moderator admin section. If you are a group moderator you can now signup to edit details of your group including member numbers, name and location. To start just enter your yahoo group URL, or find your group on the site and follow the link included with the rest of the group information.
Comments and feedback welcome as always!
Posted in Web, finder, overcycle | No Comments »
February 14th, 2008
I feel for you Ciaran, I really do:
<ciaran>: OH FUCK YOU PHP
<ciaran>: FUCK YOU
- ciaran: stabs
Posted in PHP | 1 Comment »
January 23rd, 2008
It is my pleasure to announce the Recycling group finder, Something I have been working on for the past couple of weeks with my wonderful employer 29degrees. For those of you who don’t know, Freecycle is a worldwide recycling network, in their own words:
The Freecycle Network™ is made up of 4,205 groups with 4,211,000 members across the globe. It’s a grassroots and entirely nonprofit movement of people who are giving (& getting) stuff for free in their own towns. It’s all about reuse and keeping good stuff out of landfills. Each local group is moderated by a local volunteer (them’s good people).
As the name suggests, Freecycle Group Finder is a new way to find Freecycle groups.
Finding a group - the old way
To find a group you enter a location to search for in the box on the Freecycle homepage. I live in Romiley, so I enter that and click search. But it can’t find any groups! 
In order for it to find my local group I would have to guess it was called ‘Stockport‘ and search for that. I could have used the Freecycle group browser but who browses anymore? People demand search! I wanted to make this better so I wrote the Recycling Group Finder.
Finding a group - the finder.overcycle.com way
Just enter any location into the search box on the homepage and it will find all your local groups: 
The Freecycle search gets it right sometimes. Take a search for Alameda, CA. It lists all the groups nearby, but Freecycle Group Finder does better. Freecycle Group Finder shows you a map of where all the local groups are! It lets you scroll around and visually determine the closest group (Try it for yourself!). An improvement we feel, and one that will help more people join up and start recycling.
What keeps it rolling?
At 29degrees we’re big fans of Ruby on Rails. It helps us make web applications faster, and with more fun, and it was no exception for the Freecycle Group finder. We are using Postgres for the database and serving it all with mongrel and of course Apache. Of course if wouldn’t be anwhere near as good if it wasn’t for Tony, 29degrees co-founder and designer extroadinaire!
Posted in 29degrees, Programming, Rails, Ruby, Web | 1 Comment »
January 7th, 2008
Well, could ya?
I got 88% correct, or a B+. How embarrassing :) Scores in the comments please!
Posted in General | 1 Comment »