• Looking at GameplayKit

    Introduction This article explores the use of Entity Component System (ECS), Pathfinding and State Machine components in the GameplayKit Framework. I don’t make any claims of expertise on the topic of GameplayKit, other than I’m enjoying exploring an interesting topic that takes me through the fundamentals of Computer Science. Entity Component System I’ve done some […]

    Read more

  • Hexagonal Tilemaps in SpriteKit

    One of the new features added into iOS 10 and Xcode 8 is the SpriteKit Tilemap Editor. This editor provides a visual editing surface for SKTileMapNode which is described as ‘A node used to render a 2D array of textured sprites‘. The SKTileMapNode is represented as layers in the Tilemap and e.g. allows a building […]

    Read more

  • Draw a Sparkline with D3

    Overview A Sparkline is a kind of line chart, usually drawn without axes, placed inline with text e.g. with tabular data. It is the simplest of visualisations and an ideal entry into learning D3. This post discusses the visualisation of a Burndown chart as a Sparkline, built with Angular and D3. Data D3 means ‘Data […]

    Read more

  • Deploy a React application to Heroku

    Deploying the example React App to Heroku is performed using Git commands. After setting up on Heroku, you add Heroku as a remote in your git config. Git requires an SSH Key for secure communication with Heroku (see my article on Setup MacBook for node development). Deployment is then a push command. When Heroku receives […]

    Read more

  • Exploring React, Less and Express

    Learning React requires quite some knowledge of the modern JavaScript build pipeline (node.js especially), but it is worth exploring this gem of a technology. The usual approach to get skilled in React is to look through and run the starter projects available on GitHub, which reveal part of the problem in learning React, that it […]

    Read more

  • Setup MacBook for node.js Development

    I’ve recently setup a new MacBook (1.2GHz, 512GB Flash Storage) for developing node.js based React and Express applications. I chose this MacBook for its portability and high resolution display. The following is a log of what I installed to get things up and running.  Install AlfredInstall Chrome ## ToolingInstall TextmateInstall PathfinderInstall MarsEditInstall Sublime – Add Package […]

    Read more


I’ve been working as an enterprise software engineer for more than 15 years, using the .NET platform and recently building for iOS with Swift. My degree is in Business Studies, majoring in information systems, where I learnt the fundamentals of software engineering for building systems for business.