Blog
Mocha v2 release
Expanded notes on this major version bump of the Ruby library for mocking & stubbing
How to backup Google Drive to S3 using the AWS CDK
An AWS CDK project to schedule the backup of a shared folder in Google Drive to Amazon S3 using a scheduled Fargate task on Amazon ECS to run `rclone sync`
Youtube video of my 3D maze game for the ZX Spectrum
James O'Grady plays, reviews and mods (!) a game I wrote in Z80 machine code in 1984
Using Lambda@Edge with CloudFront to configure redirect rules for domains
An AWS CDK project to create CloudFront distributions with Lambda@Edge functions to replace Apache and mod_rewrite rules
Multiple Rails development environments using nix-shell
Four Rails apps using different versions of Ruby, Rails, PostgreSQL and MySQL
Automatically sending Webmentions from a static website
Using Actionsflow to automate the sending of Webmentions using webmention.app
Generating and running a Rails app with PostgreSQL using Nix on Ubuntu
Isolating a Nix environment by running on an Ubuntu VM provisioned by Vagrant
A simple Rails development environment using nix-shell
This nix-shell environment provides a Ruby environment capable of running a Rails app without a database
Using nix to build my personal website
Modifying the existing GitHub Action workflow for building the website to use cachix/install-nix-action and nix-shell
A simple Ruby development environment using nix-shell
This nix-shell environment provides a Ruby environment capable of running middleman in order to build and serve my personal website locally
IndieWeb-ifying my personal website
Marking up relevant content with microformats and adding the ability to receive webmentions
Automatic backup of Trello boards to S3 using the AWS CDK
Replacing a cron job with a flock of AWS Lambda functions written in Ruby
Using GitHub Actions to publish a static site to GitHub Pages
Automatically build a Middleman-generated site and push it to the gh-pages branch on every push to the master branch
Organisation-specific git config
Using conditional includes in your git configuration
Git interactive rebase with the exec option
How to detect accidental reintroduction of renamed classes or variables
Site history update
The blogging hiatus ends?
Mocha Release 0.14.0
Support for MiniTest v5.0
Mocha Release 0.13.3
Various bug fixes.
Using Mocha with Rails 3 and Test::Unit
Explains more of the compatibility issues.
Using Mocha with Rails 3 and MiniTest
Explains some of the compatibility issues.
Mocha Release 0.13.2
Fixes bug in stubbing of methods re-declared with different visibility.
Mocha Release 0.13.1
Fix Mocha::ParameterMatchers#has_entry to work with an Array as the entry's value.
Mocha Release 0.13.0
Hopefully no more monkey-patching of test libraries.
Bringing order to the chaos
We've started sending out invitations for our new product, Harmonia.
Mocha Relocation
Source code, documentation and issues have moved to Go Free Range.
Mocha Releases 0.10.0 - 0.10.5
Belated update on recent releases.
Durham house for sale now via local agent
We haven't had much luck selling via our on-line agent.
Durham House For Sale
A modern three-storey townhouse in the centre of Durham with views of the Cathedral and Castle.
Mocha Release 0.9.12
With all tests passing in Ruby 1.9.2.
Mocha Release 0.9.11
Includes explicit support for MiniTest v1.5.0 to v2.0.2.
Adding a User in OSX on Command Line
OSX equivalent to the Linux useradd & groupadd commands.
Debugging Monit
Notes on debugging monit start program and stop program commands.
Mocha Release 0.9.10
Includes new unstubbing functionality.
Mocha Release 0.9.9
Includes bug fixes for Test::Unit and MiniTest integration.
Ruby Acceptance Testing
Riposte to aspects of "You're Cuking it Wrong" article by Jonas Nicklas.
Converting S5 slides to a single PDF on Mac OSX
Using a combination of webkit2png and a custom Automator workflow.
Mocha on Bacon
Eloy Duran has re-incarnated the Mocha adapter for Bacon.
Ruby scripting in the Webby "environment"
How to load Webby::Resources into memory.
Ruby wrapper for the Delicious v2 API using the OAuth gem
Demonstrates how to bookmark a page from a Ruby script.
Ruby and Cocoa talk at Ruby Manor
Links to my slides and code.
ActiveRecord Model Class Name Clash
Validation weirdness with a class called Sync.
Mocha NoMethodError / Load order since version 0.9.6
Mocha Release 0.9.8
Mocha Test Spies
My thoughts on Joe Ferris' fork of Mocha.
Mocha Release 0.9.7
Mocha Release 0.9.6
National Express East Coast Ticket Options
Prices and restrictions for train journeys between Durham and London.
National Hack the Government Day
Paul Battley & I attempt to make the website for the Office for National Statistics more useful.