
I was born in Scotland in 1991 (32 years old). From about age 5, I was very interested in video games and I became really interested in computers and technology when I got my first computer at age 7. By the time I was finishing primary school at age 11, I was set on my path for the future working with computers. I began developing software in 2004 when I turned 13 and I now know over 15 different computer programming languages.

When I turned 14 I began distributing my software and sharing it with friends. By age 16 I had written a bitmap editing program with hundreds of effects, a word processor and a web browser. In 2010, when I was 18 years old, I decided to get myself a personal website. As my skills improved in web development - a new area of interest to me at the time - my website improved. I have developed my own libraries and tools that power my website including (you can find out more in Projects section of my website). Since 2019, parts of my website are now also powered by my own ZPE too. You can also find my projects on my GitHub page.

I studied Computer Science at Heriot-Watt University in 2012 (you can read my dissertation here). In 2016, I graduated with a First Class Honours degree in Computer Science. In 2013, whilst at university, I also start doing freelance web development on the side. In 2019, I graduated with a Professional Graduate Diploma of Education (PGDE) from the University of Strathclyde and became a Fully Qualified Teacher (FQT) teaching Computing Science in 2020.

My first job outside of university was as a support web developer. This gave me a lot of practical experience in web development in the real world. After that, my next job was as a software and web developer as well as a mentor to a junior developer at another digital agency. This job taught me even more, particularly some of the tools used in the industry to host websites. When I left that job I went ahead and began to plan out and start my own company, which I still run to date. After that, I went down the route of teaching - something I'd always wanted to do. I finally arrived at the school I'd always wanted to work at when I got my job at Knox Academy in May 2022 and have never been happier doing what I do!
Main projects
ZPE & YASS

YASS is my own syntax and programming language whilst ZPE is my own interpreter, compiler and transpiler to work with it.
More informationVelocity Web Server

A new and simple web server platform designed to function with ZPE/YASS.
More informationGirder Framework


The Girder Framework is a simple to use framework that makes development of responsive websites faster.
More informationClickIt

ClickIt was the world's first drag and drop HTML builder and it's getting incredible new features all the time.
More informationBalfDrive

BalfDrive is a website compatible file organiser that has built-in security mechanisms and authentication.
More informationBalfBar


BalfBar is a responsive and lightweight menu bar that has multiple modes to make it quick to develop site navigation.
More informationBalfSlider


BalfSlider is a very lightweight, modern and easy to use jQuery plugin for creating content slideshows for the web.
More informationBalfRibbon


BalfRibbon is based on the ribbon interface found on software applications that brings that functionality to the web.
More informationBalfKeyBind


BalfKeyBind is a miniscule JavaScript library that binds a key event to a function and action.
More informationBalfPick


BalfPick is a small replacement for a standard web based select box that is consistent and cross-platform.
More informationBalfComment


BalfComment is a PHP library that allows the efficient management of comments from a MySQL database.
More informationBalfVote

BalfVote is a website dedicated to collecting information during presentations that is embeddable and free to use.
More information