AirBlade Software
Portfolio
10%
GitHub
Blog
Code Notes
A few problems we’ve solved in our day to day work:
Enterprise
29 Jan 2013
Three Chef Gotchas
27 Nov 2012
Bash Startup Files
14 Nov 2012
Rails, Nginx, and X-Accel-Mapping
2 Aug 2012
Implementing SSL
1 Aug 2012
Resizing and Uploading Images Asynchronously to S3
26 Jun 2012
SMTP over SSL with Fastmail
25 Jun 2012
What Everybody Needs
7 May 2012
Does Anyone Want To Take Over PaperTrail?
3 May 2012
Filter Rails Logs
13 Apr 2012
GitHub Bottle Opener
13 Apr 2012
Deploy The Right Code
13 Apr 2012
Commoditisation Or Not
14 Mar 2012
True Glory
14 Mar 2012
Customers Remember
7 Mar 2012
The Kano Model
22 Feb 2012
Test Driven Development
22 Feb 2012
Give Me A Better # Key
7 Feb 2012
Fixing Truncated, Accented Text In MySQL
27 Jan 2012
Fixing MySQL's Illegal Mix of Collations
24 Jan 2012
Cleaning Up Code
16 Jan 2012
Logging Subdomains in Rails 3
24 Nov 2011
Managing Monit with Upstart
21 Nov 2011
Export to Excel in Rails 3
9 Nov 2011
The Social Graph
9 Nov 2011
DNS Downtime
8 Nov 2011
Using rbenv in Production
20 Oct 2011
Gem Versions
22 Sep 2011
Map Detect
19 Sep 2011
Binding OS X Services to Function Keys II
10 May 2011
Successful Business
23 Mar 2011
Undo and Redo with PaperTrail
1 Mar 2011
Reversion
22 Feb 2011
Choose Your Battles
14 Feb 2011
PaperTrail and Rails 3
9 Feb 2011
Five Years of Independent Software Business
6 Feb 2011
Quo Vadis: Simple Authentication for Rails 3
25 Jan 2011
Lost Luggage
5 Jan 2011
Consulting Rates
18 Dec 2010
Breaking Habits and Assumptions
2 Dec 2010
My PeepCode Sales Top 5,000
6 Nov 2010
Moving A Subdirectory Into A Separate Git Repository
5 Nov 2010
Deploying and Monitoring Delayed Job
4 Nov 2010
Faster PDFs with Prawn
4 Nov 2010
Work On Your Best Idea
1 Nov 2010
GitHub and Gravatar's Most Important Lesson
19 Oct 2010
How To Set Up HTML Email Signatures In Fastmail
18 Oct 2010
Note To Self: How To Build Gems Now
16 Oct 2010
Overnight Success
3 Sep 2010
Quicksilver Out, Alfred In
31 Aug 2010
Binding OS X Services to Function Keys
31 Aug 2010
Blog Upgraded. Finally
13 Aug 2010
Backing up MySQL to Amazon S3
20 May 2010
Note To Self: How To Build Gems
18 May 2010
Smash Into Vim (Part I)
11 May 2010
Publishing dotfiles with private information
31 Mar 2010
PaperTrail Improvements
31 Mar 2010
Thinning Text in Firefox
4 Mar 2010
Monkey patching a gem in Rails 2.3
5 Feb 2010
Hacked climate science emails
4 Feb 2010
Generate CSS with css_dryer in your deployment process
2 Feb 2010
Design Matters More Than Technnology
19 Jan 2010
Irony
11 Dec 2009
FYI: Find Out What Cron Is Doing
10 Aug 2009
Girls In Football (a.k.a. Soccer) — Launched
24 Jul 2009
A Paper Trail For Your Models
23 Jun 2009
Going Back To Simple
17 Jun 2009
Testing HTTP Digest Authentication With Shoulda
9 Jun 2009
The Rails Toolbox
5 Jun 2009
Vertical Baseline Rhythm
4 Jun 2009
Managing Expectations
27 May 2009
A Better Way To Import Legacy Data In Rails
23 May 2009
Iceberg Development
20 May 2009
How To Vendor Rails
28 Apr 2009
Avoid Typing RAILS_ENV All The Time
10 Apr 2009
Thinking Sphinx and (Declarative) Authorisation
10 Apr 2009
Deploying Thinking Sphinx
10 Apr 2009
Long live the individual useful resource
28 Mar 2009
Note to self: links in Atom feeds
21 Mar 2009
There Is No Such Thing As SEO
17 Mar 2009
The Economics of Renewable Energy
26 Feb 2009
Realising Enthusiasm
23 Feb 2009
It's hard being this good
4 Feb 2009
Who Will Fix The Economy?
30 Jan 2009
I <3 Helvetica
6 Jan 2009
Meaningful Work
2 Jan 2009
Work on what you use and care about
24 Dec 2008
On Programming
20 Nov 2008
The Two Problems With CSS
12 Nov 2008
GPS-style Latitudes and Longitudes on Rails Forms
22 May 2008
Relational Databases Are Not Relational
6 May 2008
Small Business
30 Apr 2008
Urgency
18 Apr 2008
Static Typing
15 Apr 2008
I Have Seen The Future Of Dance Music
9 Apr 2008
Scotland on Rails 2008
8 Apr 2008
The Highland Fling 2008
7 Apr 2008
Professionalism
7 Apr 2008
Henrik Knudsen Site Wins Award
2 Apr 2008
90% Under Any Conditions
31 Mar 2008
Heathrow Terminal 5 Debacle
29 Mar 2008
Note To Self: Why Some JPEGs Don't Render in Firefox or IE
28 Mar 2008
Moving Between Lists With acts_as_list
19 Mar 2008
Easy Long-Running Tasks In Rails
14 Mar 2008
FreeAgent — Worth Every Penny
5 Mar 2008
Four-Day Work Week
5 Mar 2008
Rails 2 Plugin Patterns
1 Mar 2008
Note To Self: I Didn't Have Time
14 Feb 2008
Achieving Great Things
28 Jan 2008
Seeding Your Rails Database With Reference Data
25 Jan 2008
Note To Self: Overriding A Method With A Mixin
17 Jan 2008
Converting Image Format When Thumbnailing
15 Jan 2008
Principessa Crosses Atlantic
17 Dec 2007
UI State Management
24 Nov 2007
Letting Others Deploy Safely On Your Rails Machine
12 Nov 2007
Programmer's Rule Number 42
19 Oct 2007
Product Development As A Conversation
19 Oct 2007
Filtering Autotest's Unbuffered Output
3 Oct 2007
Spolsky: Yes, I Am That Unfocused
27 Sep 2007
RailsConf Europe 2007
22 Sep 2007
Simplicity
14 Sep 2007
Niche Happens
14 Sep 2007
Perfection
14 Sep 2007
Moving An acts_as_list Child To A New Parent
29 Aug 2007
Note To Self: Prevent Uploads Hanging In Safari
17 Aug 2007
Note To Self: Beware Relative Paths
16 Aug 2007
Uploading Files With SWFUpload
8 Aug 2007
Compressing Images With attachment_fu And RMagick
27 Jun 2007
How To Store Thumbnails and Full Size Images In Different Directories With attachment_fu
20 Jun 2007
SEO That Works
25 May 2007
Mephisto Theme — AirBladey Style
17 May 2007
Your Business Idea: Hot or Not?
25 Apr 2007
Submitting Part Of A Form Via AJAX
30 Mar 2007
Filtering Autotest's Output
22 Mar 2007
AirBlade Goes Renewable
3 Mar 2007
Backing Up Your Rails Apps' Databases
13 Feb 2007
Acts As Enterprisey
20 Dec 2006
css_dryer: DRY Up Your CSS
11 Dec 2006
Migrating Data Into Rails
5 Dec 2006
Passionate About Vim
22 Nov 2006