articles in 2006

Denial of Service Attacks

no comments yet, post one now

Spending some time at home over Christmas I found my old dissertation on DOS attacks from way back in 2003 – Realising that it’s not online anymore, I’ve decided to post it up again – maybe some Googlin’ Telecomms student will find it useful.

I couple of months ago I looked at writing a little packet capture program in Ruby with pCap – If I can dig out the code for that I’ll post it up too.

Typo Flickr sidebar problems


The recent downtime here had me stumped – the site was throwing a rather vague ‘controller stack out of kilter’ Rails error from Typo. Looking further at the Rails production.log it seems that the problem stemmed from the Flickr sidebar model. A little googl’in brought up this discussion – It seems that Typo’s default Flickr sidebar implementation is ropey at best.

If you look in /app/models/aggregations/flickr.rb you’ll see that the model relies on a string scan (regex) to match the image url from Flickr’s description field text (in their RSS feed) like so;

def image
  description.scan(/(http:\/\/(static|photos).*?\.jpg)/ ).first.first

So basically if Flickr change the URL they serve images from – this will break. And that was exactly the problem – Flickr’s URL was now http://farm1.static.. blah blah etc. I modified the regex a little to quickly fix it;

def image
  description.scan(/(http:\/\/(farm|static|photos).*?\.jpg)/ ).first.first

This was supposed to be a quick post, but I’ll go on;

Why Typo doesn’t switch to using the Flickr API – I don’t know. You could argue it is more flexible and versatile if the data source is a simple RSS feed- (no need for API keys or security issues) – But the sidebar could at least parse the xml better and avoid this scan altogether. Its got me thinking what else could be ropey in Typo…

For one, a broken sidebar takes down the entire public-facing site with this ‘controller kilter’ error – which is a bit crazy if you ask me. If I have some time I might look into helping Typo fail a bit more gracefully in the future.

December 22, 2006 13:19 by

Basecamp > ActiveCollab Importer

no comments yet, post one now

For some time now I have been trying out ActiveCollab, a free project management tool, to see if it could be a decent competitor to Basecamp

As far as I know, ActiveCollab started out as a free alternative to (and almost straight copy of) Basecamp – It is open source, written in PHP, and version 0.7 was released just a few weeks ago. After installing and setting up an example project I really needed to see how the thing would run with some real data, y’know some real life stuff.

After playing around with the (very useful) Basecamp API I had created a little Ruby class that allowed me to import projects, users, messages, comments and categories into ActiveCollab from Basecamp.

Run from the command line, the class outputs SQL (to the screen or a file) – which you can run against your ActiveCollab database after a default install. Read on if you’re interested in how it works.

First, some information about the class;

  • Start by installing a fresh copy of ActiveCollab 0.7, run through the installer, but don’t create any projects just yet
  • View/Download my Ruby class from here (usage instructions described at the bottom)
  • The script only generates SQL for importing Projects, Users, Messages, Comments and Categories (milestones, tasks etc. arent included)
  • Since Categories don’t exist in ActiveCollab, Messages are organised by category using single Tags
  • The user specified in the connection to the Basecamp domain is automatically assigned as an ‘administrator’ in ActiveCollab
  • ALL USERS imported are automatically given the same password ‘123’ – since the Basecamp API does not expose raw user passwords for use
  • To run, you’ll need Ruby installed, with the MySQL and RedCloth gems – and the basecamp.rb wrapper should be sitting along-side this class.

Second, some assumptions and configuration;

  • No dates are extracted for messages/comments (to just fill the database with info, I didn’t bother looking at :posted-on)
  • By default the prefix ‘ac_’ is assumed for all existing ActiveCollab tables (this can be changed on the class constant CollabTablePrefix)
  • By default, the script assumes all imported data will be assigned to the default ‘Company’ that is created after installing ActiveCollab
  • By default ‘TRUNCATE’ statements are generated for all affected tables, (clearing the before INSERTS) this can be switched off
  • By default the class is configured to export all it can (in the generate_sql function) – however this can be tailored to generate SQL for different ActiveCollab tables in isolation.

Much more could be done with this, but it was enough for my evaluation purposes. There has been some talk (for some time) in the ActiveCollab camp for something like this script to be built-in to their next release.

After all this, I have to say I’m sticking with Basecamp, it just feels better – better UI, somehow more responsive, faster and it continues to make project management, more well, manageable. From what I can see, ActiveCollab is still in its infancy and things like their database structure and code base change frequently – so this class may not be of much use in the future.

Ho Ho Ho Flickr

no comments yet, post one now

Flickr have some festive hidden easter eggs, try adding a note to any photo as ‘ho ho ho hat’ or ‘ho ho ho beard’ to ‘Santa Up!’ any photo, this bearded fellow did just that.

December 15, 2006 16:56 by

Pigeon Mashup

no comments yet, post one now

Question: what do you get when you cross, AJAX Google Maps, GPS, Air Quality Sensors and a bunch of Pigeons ?

Answer: The Pigeon Blog of course!


no comments yet, post one now

On my travels a few months ago I picked up iWoz at the airport and have only now got around to finishing it. Its a great story told by Wozniak that sets straight some of the ill-reported news that has become history over the years.

From his days of minimising logic circuits when he was a kid, to building the Apple II and watching the company’s success sky-rocket – its worth a read if your interested in how Apple got started or what it takes to execute a wild idea. The book has also just launched its own website – which links right through to Steve’s Linked In profile – not a bad connection to have.

update – there is also this video interview with Guy Kawasaki interviewing Steve.

December 05, 2006 10:55 by

Busted Macbook Pro

no comments yet, post one now


It won’t boot and looks like a hardware fault – anyone ever seen anything like this before?


Well, I picked about the worst day of the year to go downtown to leave this in for fixing. Even after phoning yesterday to see if I could drop my Mac into this reseller on a Saturday – they would’nt take it off me until Monday. I then headed for Oxford Circus – bad idea – 1 million shoppers and most of them in the Apple Store on Regent street.

A kind Apple employee informed me that there was no chance they could look at my Mac today and to try another reseller off Tottenham Court Rd. So off I go again – I had almost given up when they told they wouldn’t take it on a Saturday too. I finally stumbled upon this Albion Apple Store on the Strand, near the Savoy hotel completely by accident. They booked it in and told me it will probably be 3 full weeks before I see it again.

juuuuuussst great

December 01, 2006 14:02 by

Good answer

no comments yet, post one now

  • #cabal
  • [12:00] @matt: ive just got the best response ever from our sys admin here; i asked him a rather tricky question – the answer was;
  • [12:00] @matt: It is possible to do what we’ve done in much the same way that it’s possible to build a house; I wouldn’t want to try to explain how to do it in an email, because a) it would take an awfully long time, b) I’d never get the whole concept across, c) someone would end up dead under a pile of bricks, in a pool of electrified mains water.
November 28, 2006 12:39 by

Scrounging for 10ps

no comments yet, post one now

Space Invaders

I took a visit to the Game:On Exhibition at London’s Science Musuem – £8 for 2hrs and all the Arcades and consoles are set on ‘free play’. Everything from the orginal Asteroids and Space Invaders machines, to Amiga classics and the current consoles. I took a few photos, but the Flickr group has loads more. Its well worth a visit if you are into this sort of thing, all the old cabinets took me years back to scrounging for 10ps at the Portrush arcades

November 28, 2006 01:00 by

Skribe work continues

1 comment

After months of working on other paid projects, Im back working on Skribe and since I have no major freelance work on my calendar for a while, I am aiming to focus on this until its done – yes done! – hard to imagine after almost 4 years of starts and stops. Im looking forward to getting into Rails again too (with 1.2RC1 now released) And after reading the ‘Little Book of Flow’ I should be able to effortlessly fly through the work – experiencing great joy – possibly.

Skribe has defintely been a big missed opportunity. Back in 2001 we were attempting to offer a free social site with conversation/video/photo sharing (sound familiar?). And in 2001 there were very few competitors about. Now with the success of Flickr, YouTube, MySpace, Bebo (and just about everyone) – its hard to think where Skribe fits in – I still believe our small team has enough original ideas and skills to break the mould and deliver a competitive product. If I didnt, I simply wouldn’t be trying.

So I guess this post officially restarts the long dead ‘Skribe Weekly’ – (which almost turned out to be an annual event) – The idea being to post about how the work is going, and get real people to feedback on our ideas and approach. So feel free to comment/criticise here – starting with some rough design mockups (more to come soon)

November 24, 2006 17:35 by
← (k) prev | next (j) →