Category Archives: 29degrees

LOSE

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

Announcing finder.overcycle.com

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! Failed freecycle search

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: Successful  freecyclegroupfinder.com search

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!

How to ‘win’ at subversion

Carl bagged the 1000th commit on a big project by cheating with this script:

while :; do svn up | ruby -e 'gets; if $_ =~ /999/; `svn commit -m 'Winnah.' ../trunk`; end'; sleep 30; done

The contents of the commit? A single file containing the word ‘Winnah’.

The ‘Britney Bomb’

In the 29degrees office we have an mp3 jukebox that is basically a mac-mini with iTunes and VNC on it, it was playing some ‘Death Cab For Cutie’ when the bomb went off. Everyone is using a Mac as their computer, I have installed RubyOSA. This sets the stage for the ‘Britney Bomb’.

I fired up an irb session and typed the following:

> require 'rubygems'
> require 'rbosa'
> itunes = OSA.app('iTunes', :machine=>'jukebox.local')
> c = OSA.app('Colloquy')
> sleep(30); v = itunes.sound_volume; itunes.sound_volume.downto(0) { |i| itunes.sound_volume = i; sleep 0.05 }; itunes.stop; itunes.sound_volume = v; c.send_message('Britney FTW!'); sleep(4); itunes.sources[2].playlists.first.search('britney').first.play

This basically:

  1. Sleeps for 30 seconds (I left the room, I didn’t want to be around when the bomb went off after all).
  2. Gets the current volume.
  3. Scales the volume of the current track down to zero.
  4. Stops playback.
  5. Sets the volume back to the original volume.
  6. Announces to the office IRC channel that Britney Spears is wonderful (in my name).
  7. Sleeps 4 seconds to let the news sink in.
  8. Plays the first Britney Spears tune it finds in Carl‘s library (which the jukebox uses), this happens to be ‘Baby One More Time’

This amuses me greatly.

Wifi network and computer network names

John Gruber over at Daring Fireball has posted some of the wireless network names his iPhone picked up recently, here are a selection:

  • McJesus
  • TuckerPoo
  • breasts

I particularly like breasts… Anyway, this started us talking in the 29degrees office about our wireless network and computer names. At the risk of starting a meme, here are mine:

Wireless network name: foo

Computer names:

  • Laptop (PowerBook): marmot
  • Linux machines: Patrician and Plebian

I am interested in Tony, Carl, Dean, Stig and Paul‘s nerdy naming conventions. Let’s see how far this can go ;)

Follow

Get every new post delivered to your Inbox.