Ben Hanna

Software Craftsman and Game Programming Enthusiast

Blog Articles


  • Sun 11 December 2022
  • Blog

Using ZX Assembler on the TS1000

Introduction It was a thrilling experience for me as a young boy to learn how to program using BASIC on an Apple IIe in the mid 90s. I remember spending hours sitting in front of the computer, staring at the green text on the black screen and typing in lines …

  • Mon 28 December 2020
  • Blog

Learning Dvorak: The First Two Weeks

Over the past couple years I've occasionally played with some of the tools for learning the Dvorak keyboard layout. About two weeks ago I decided to make the switch and see if I could improve my typing skills further. Introduction to Dvorak The Dvorak keyboard layout was invented as an …

  • Wed 03 April 2019
  • Blog

Writing a Game in C: Parsing S-expressions

Over the past couple weeks I've been trying to work out how I want to store my game configuration. At first I started playing with XML, which was nice because I could stream a file rather than loading the entire thing into memory but I turned away from XML because …

  • Wed 26 September 2018
  • Blog

Building an Elm project with Parcel

Do you loathe setting up the same webpack configuration for every new elm project you start? Well, worry no more because parcel, a zero-configuration bundler, now officially supports elm assets. In this tutorial we'll setup a new project from scratch to demonstrate just how easy the process is. Create the …

  • Fri 24 August 2018
  • Blog

Building a Backbone.js project with Parcel

Do you loathe configuring webpack every time you setup a new application? Well, you may be better served by parcel, an alternative bundler that touts zero-configuration. Quite simply, it just works. In this article I'll demonstrate how setup a basic Backbone project using parcel. Create the project Starting from scratch …

  • Mon 18 June 2018
  • Blog

Basic HTML5 Drag and Drop with Elm

In doing some research for a potential project I decided to see how drag and drop functionality can be implemented in Elm. Thankfully, it looks like it's not too hard to achieve since drag and drop is now part of the HTML5 standard. To demonstrate this I'll show you how …

  • Mon 21 May 2018
  • Blog

Building a Backbone.js project with Webpack

Have you ever wanted to write Backbone.js in the same module format as Node.js? Well here's how you can do it with webpack. In short webpack allows you to write browser JavaScript using the CommonJS module format. The main benefit to this is that webpack will bundle all …

  • Mon 14 May 2018
  • Blog

Setting up a Haskell Environment in Ubuntu

These instructions have been tested against Kubuntu 18.04 LTS. In the process of learning Haskell, I've recently gone through the various editors to try and see which one has the ideal tooling. There's many different opinions on the matter, but for me I've settled on Emacs with intero. I …