Ben Ashford

  • 24th December 2025

Resurrecting my old Turbo Pascal homework with AI

Let me take you back in time... The year is 1995, I'm studying for my A-Levels1, the Dot Com Boom hasn't even started yet let alone crashed. The horrors of the 21st Century have yet to come. The world is my oyster. Being a bit of a nerd, I chose Computing as one of my subjects. A…

Read more 
  • 13th September 2015

Building an Event-based Redis Client in Java

The story so far (You may want to skip this part, if you have already read my previous blog post on the subject: Java in a polyglot JVM world) A few months ago, I had an idea for a project that required a certain amount of data-processing. Nothing very sophisticated, but potenti…

Read more 
  • 2nd June 2015

Java in a polyglot JVM world

The trend over the last few years has been clear, the number of viable platforms from which to build software systems has been growing. Not that many years ago, things would be either: Java, C++, Visual Basic or one of the many long-forgotten but once popular languages like Delp…

Read more 
  • 24th May 2015

Rust traits for developer friendly libraries

For the last six months or so, I've been looking more-and-more into Rust, and the more I look into it the more I like. My latest Rust project has been to implement a client to the ElasticSearch REST API. I have implemented such things before, in different programming languages1,…

Read more 
  • 27th December 2014

group-by and Transducers

One of the random, but very useful, functions in clojure.core is the venerable group-by. Simply take a collection of something, a function to extract a key, and it returns a map of the same data indexed by the key. It's incredibly useful, I use it all the time. But it's also an…

Read more