- 2024-11-07 — Putting Green Software Principles into Practice.
A paper on applying green software principles in practice, presented at LOCO2024.
- 2024-03-14 — Advent of Code - AI edition - Day 2
Each year I get to December and Advent of Code pops up, but coding is my day job so to spice things up I try and add a
wrinkle, like "let's do it in the new hotness language" or whatever. Then by day …
- 2023-12-26 — Advent of Code - AI edition
Each year I get to December and Advent of Code pops up, but coding is my day job so to spice things up I try and add a
wrinkle, like "let's do it in the new hotness language" or whatever. Then by day …
- 2022-12-24 — Technical notes on this web site.
How this site is built and deployed.
- 2022-05-15 — Three Issues that sum up Technical Debt
Digital transformation often feels like a frantic race to devise more scalable, flexible, and resilient enterprise IT
systems that also support innovation and keep customers happy. But when it comes t…
- 2020-10-02 — In Defence of Breaking Changes
Is nuance absolutely awesome, or simply rubbish?
The news quiz, 103:2
For the purposes of this post let's assume it's simply rubbish.
Received wisdom is that breaking changes to supporting softwar…
- 2020-08-27 — NFRs Considered Harmful
An NFR is broadly defined as a 'quality' of the software, rather than what it 'does'. So 'the software shall add
two numbers' is a functional requirement, while 'the software shall run within two min…
- 2020-01-06 — Gardencam
Some time ago I had the idea to stick a camera out a window, take a photo every few minutes, and stitch them together as
a matrix that with a bit of luck would visualise the seasons.
Thus:
Raspberry …
- 2019-10-28 — UK Parking Areas
I heard Saul Griffith say recently that if you covered all the car parks in the USA
with solar panels you would supply way more than the national energy requirements (I can't find the actual reference…
- 2018-03-08 — QCon: Improving Life in Smaller, Heterogeneous Projects
I did a talk. You might be able to see the vid here ->
https://qconlondon.com/london2018/london2018/presentation/improving-life-smaller-heterogeneous-projects.html
- 2017-12-31 — Photo Library Wrangling
Imagine if you will that I take quite a few photos, but don't manage them well.
Mistakes may have been made. Like, I've discovered that when you ask apple photos "don't import duplicates" it's
not com…
- 2016-03-29 — Application Patterns for the Outernet
I've been meandering through the Long Earth series by Terry
Pratchett (may Death be as kind to him as he was to Death) and Stephen Baxter (not met Death yet). It's a classic
alternate universe setup, …
- 2015-10-30 — The Life Changing Magic of Refactoring
I'm really a unix guy, but I have to admit, the whole .NET/SQLserver stack is hugely empowering. An average employee
can take it, and with next to no knowledge or experience, but with a lot of determi…
- 2015-08-11 — GA4GH
Gene sequencing has been diving in cost:
{margin: Fall of genome sequencing cost}
It's no longer in the wild ride of 2008, but still the cost is now low enough that genome data is piling up in resear…
- 2015-07-09 — Signal Strength
Another thumb-twiddling commute into the city, with only another listicle to entertain, and once again, no mobile
signal. I tweet in frustration:
Which received an actual reply!
Challenge accepted.
…
- 2015-06-30 — On Being Almost There
Personis is an ongoing line of research projects about how we can store
personal data (thing location tracking, fitness trackers, etc) in a way that leaves us in control of our data but at the
same ti…
- 2015-04-30 — Swarming Spark
Spark is a useful bunch of stuff for processing large amounts of data, offering a friendly
and fast functional interface over map-reduce on a cluster of machines, with some extra bits like cacheable d…
- 2015-03-31 — Let's Run Science, Part Iota
In our last jaunt, we had a look at code that take all the various measurements of temperature
that have been taken over the last few hundred years, and pull them together into something we can useful…
- 2015-02-27 — Lunchtime Hack - Lets Run Science
Who else likes visiting science museums? All those old apparatus ‐ bits of the radio telescope that first saw pulsars,
longitude prize clocks, jury-rigged ingenious devices that captured the first gli…
- 2014-12-24 — Playing with open NHS data, and a rant
Open Data™ is being pushed quite heavily by the powers that be, which is mostly a good thing because It's useful
information that I want to use, and I've already paid taxes for it. Also, this is a dem…
- 2014-11-28 — Codemesh Day 1
I was at day 1 of CodeMesh this year (you can see Tim's report on day 2
here. A quick
recap:
QOTD: There are 3 fire exits as marked, but we're confident that Erlang programmers who die will be restar…
- 2014-10-31 — LocationHistory visualisation part 3
I'm a bit like a dog with a bone about this LocationHistory thing (or a dog returning to his vomit?). Previously I had
a bash at mapping my movements around London, then spent a bit of time trying
to …
- 2014-09-30 — Lunchtime Hack: Decoding LocationHistory
Last month we took a look at how we might get our location history from Google and show it on a map. We found that the
real deal is found at Takeout and consists of a file that's mostly an array of la…
- 2014-08-28 — Lunchtime hack: My cycling routes
Like most Android users (because I think it's the default) Google tracks my location. Thankfully, they provide a way
for me to view and edit the data collected (Thus satisfying some major rules of per…
- 2013-12-31 — Getting Sieves Right
The great thing about being wrong is that you get to learn something. In a previous post I went on at length about the
the sieve of eratosthenes. Now that I have been enlightened by Melissa
O'Neill I …
- 2013-07-31 — Expanding Reducers
When playing with a new bit of language, it can be helpful to restrict the problem space to an old, well understood
algorithm. For me at least, learning one thing at a time is easier! For this post, I…