Dan Barber

Slugtastic v1.0.0

I’ve just released my first proper Ruby gem. It’s a simple permalink style slug generator for ActiveModel. Check it out at Github and use it in your Rails project by adding gem "slugtastic" to your Gemfile.

Usage is very simple. Just add the following to your model:

ruby has_slug :slug, :from => :title

This will generate a slug string from the title attribute and store it in the slug attribute unless the slug already contains a string. The slug is generated pre-validation so you can still use validates_presence_of :slug.

The Retina MacBook Pro is cheaper than the regular MacBook Pro

Retina MacBook Pro

  • 2.3GHz quad-core Intel Core i7
  • 8GB 1600MHz memory
  • 256GB flash storage
  • NVIDIA GeForce GT 650M with 1GB of GDDR5 memory
  • 2880x1800 15-inch Glossy Widescreen Display
  • Price - $2,199.00

Regular MacBook Pro

  • 2.3GHz quad-core Intel Core i7
  • 8GB 1600MHz memory
  • 256GB Solid State Drive
  • NVIDIA GeForce GT 650M with 512MB of GDDR5 memory
  • 1440x900 15-inch Glossy Widescreen Display
  • Price - $2,399.00

That’s a $200 dollar difference, in favour of the Retina MacBook Pro! “But Apple charge a premium for their RAM and SSD!” you say. So let’s find alternatives…

  • Base 15” MacBook Pro - $1,799.00
  • 8GB 1600MHz memory from Crucial - $55.99
  • 256GB 256GB Crucial m4 2.5-inch SATA 6Gb/s - $213.43
  • Total - $2068.42

So that is a bit cheaper, but it’s only $130 less than a similarly specced Retina MacBook Pro. That $130 gets you four times as many pixels, twice as much video memory and a machine that’s over a pound lighter. I think that’s a pretty good deal.

A Brief, Incomplete, and Mostly Wrong History of Programming Languages

James Iry:

1995 - Yukihiro “Mad Matz” Matsumoto creates Ruby to avert some vaguely unspecified apocalypse that will leave Australia a desert run by mohawked warriors and Tina Turner. The language is later renamed Ruby on Rails by its real inventor, David Heinemeier Hansson. [The bit about Matsumoto inventing a language called Ruby never happened and better be removed in the next revision of this article - DHH].


A New Year, A New Start

As it’s a new year, I decided to start a fresh new blog that will hopefully get me inspired to start writing stuff again.

Steve Jobs, 1955-2011

I never met Steve Jobs, but it still feels like someone I knew has died. An inspiration.

Thanks Steve.

Using Git for Deployment

I’ve been using Git for deployment now for some time, and I thought it might be helpful to others if I document how I did it. Partly this is because I can’t find the original guide that I used, so if you recognise the method I use here and you did it first, let me know and I’ll attribute you!

Update: This is the original article: http://joemaller.com/990/a-web-focused-git-workflow/. Thanks to Tim for the link in his comment!

For the purposes of this guide I’m going to assume that you have your website live already, and that it is not already in a Git repository. If your situation is different you will have to adapt the steps accordingly.

Apple In-Ear Headphones

One of my favourite albums is Marillion’s “Misplaced Childhood”. I wore out the cassette tape (remember them?) listening to it and I knew the album inside out. When I first listened to it on CD I noticed things I hadn’t heard before, particularly the singers wail as the guitar solo started, so I had to go back and listen to the tape again to see if it was there which, of course, it was.

iPhone 4 Revisited

Well, I’ve had the iPhone 4 for about 3 weeks now, so I can write a bit more about my first impressions with it.


AeroFS is a decentralised file syncing system, similar to Dropbox but without the online storage. Looks very interesting!

AeroFS is designed to let you go beyond simple file syncing and collaboration. You own devices with vast amounts of storage available (e.g. laptops, desktops), yet you are forced to rely on third party cloud technologies to sync and share files between them. Cloud-based syncing and sharing works well for small personal documents and limited media, but breaks down when we talk about use cases such as:

  • Businesses sharing and collaborating on sensitive contracts and documents, where control over your data is truly important
  • Sharing vast amounts of rich media (think hundreds of gigabytes), where cloud storage costs grow rapidly

To address these issues, we’ve designed AeroFS to be completely decentralized. You can sync files between any two (or more!) devices with or without Internet access, over a LAN, and behind a firewall. Your files do not need to be uploaded to the cloud, so you will retain full control of your data.

iPhone 4

So on Thursday 24th June I decided to go and join the queue for the iPhone 4. Thankfully I was early enough and, after waiting for about 3 and a half hours they finally let me into the o2 shop to buy one.