markhillman.info

Programmer / Developer — projects, experiments and write-ups from the last decade.

projects

Food Tracker

28/09/2026[01]

Food Tracker is a fully local Android food diary. It records what I ate at breakfast, lunch, dinner and as snacks, plus exercise, weight and BMI, and…

Home-built CNC Machine

20/09/2026[02]

A desktop CNC machine designed from scratch in FreeCAD and built from 2020 aluminium extrusion, MGN12H linear rails and lead screws, driven by GRBL…

Home Lab

25/04/2026[03]

A self-hosted platform on a handful of Raspberry Pis that gives me secure remote access to everything at home, browser-based desktops, a single login…

tiledle.com

15/07/2025[04]

tiledle.com is a Wordle-style word game that doesn't stick to five letters: each puzzle is a 4 to 8 letter word, with more attempts for longer words…

Document to TTS

10/03/2025[05]

Turns a document into a set of spoken audio files, one per sentence, and gives you a small web console to upload documents and listen to the result…

Blind Connect 4

05/11/2024[06]

A webcam points at a physical Connect 4 board and the program works out the state of the game: where every disc is, which colour it is, and whether…

Ennoea Architecture Viewer

01/04/2023[07]

Ennoea is a web tool for viewing application and infrastructure architectures in a 3D space. Applications are boxes, groups are translucent bounding…

Termpet

12/06/2022[08]

Termpet is a Tamagotchi for the terminal, written in ANSI C with ncurses. You hatch a pet from a form, its hunger, happiness and health tick away in…

2afraid2ask

27/11/2016[09]

2afraid2ask is a basic polling website which was made during the HackNotts Hackathon. The purpose of the site is to create small stupid questions…

Julia Set

01/08/2016[10]

This challenge was picked from the r/dailyprogrammer subreddit. The challenge is to generate Julia set fractals from the complex number plane and…

Password Creator

17/07/2016[11]

This is a basic password generator built using javaFX. The passwords are created using the character list specified in the TextArea, with a length…

JavaFX Custom Decoration

16/07/2016[12]

This project is a simple way of creating custom window decorations in JavaFX. The premise is that a BorderPane becomes the root node in an…

Excel University Marks Spreadsheet

16/06/2016[13]

This is a Microsoft Excel spreadsheet which I made in order to track my progress at university. So far, the spreadsheet can show you what you could…

Regex Highlighter/Syntax Highlighter

05/06/2016[14]

A javascript tool to highlight regex pattern matches using HTML and CSS. Whilst this tool is primarily aimed at programming languages syntax…

Notes App

13/05/2016[15]

A simple note taking app using googles material design philosophy. The premise for creating this app was to simply make a new note managing app which…

Blender Tree Generator

05/05/2016[16]

This project was created as part of a piece of coursework for a Virtual Worlds module. In this module we had to create a 3d scene using blender in…

SOM Color Sorter

19/03/2016[17]

The SOM Color Sorter is an example of Kohohen's Self-Organising Map. The SOM will alter its weights in order to group together similar inputs. Once…

Mastermind

12/02/2016[18]

The idea behind this small challenge was to create a mastermind game for a user to play. The original concept was to allow for just textual inputs,…

Evolutionary Algorithm

01/02/2016[19]

This Evolutionary Algorithm is a very simple one in which a string of characters will eventually be evolved towards, starting from a random string of…

Linked List

25/01/2016[20]

This was a challenge that I posed to myself after learning all about Linked Lists and how they might be implemented. The challenge was to create a…

Fallout Hacker Challenge

24/01/2016[21]

This challenge was picked from the r/dailyprogrammer subreddit. The challenge posed was to make a copy of the fallout hacking mini-game by pulling…

Website Designs

16/12/2015[22]

This project is a congregation of some of the designs and animations I was playing with when creating my Web Technologies coursework. The first one I…

LWJGL 3D Engine

12/12/2015[23]

LWJGL is an openGL variant for Java programming, this engine is designed to use LWJGL in order to open and display 3D models as well as other various…

C++ openGL Engine

04/10/2015[24]

A basic 3D engine to render a model into an openGL context. This engine is capable of reading both OBJ files as well as plain MODEL files (which only…

Japanese Dictionary Android App

19/07/2015[25]

This android app was made as a follow up from the Japanese Dictionary website. It was made so that I can access the Japanese site from anywhere and…

Japanese Dictionary

21/05/2015[26]

The Japanese dictionary was created so that I could track what words I had currently learnt when I was studying Japanese. It also turned out to be a…

Difficult Dungeons - Processing Game

07/05/2015[27]

Difficult Dungeons is a small yet difficult platformer game made in the Processing language. The aim of Difficult Dungeons is to just simply get to…

Tab Manager - Google Chrome Extension

04/05/2015[28]

Tab manager is an extension for the Google chrome browser, where a user can view all of the currently open tabs in a vertical list instead of a…

Encryption tools

14/03/2015[29]

This basic encryption package was made as a challenge to myself in the first year of studying at Keele University. At the time I was undertaking a…

MWindow Java Swing Skin

01/03/2015[30]

MWindow was a quick project that I started in the first semester of University. It was a way of getting reacquainted with Java and learning about the…

Costa Copta

04/05/2014[31]

Costa Copta is a small flappy bird clone game which was made for a friend as a gag gift. The premise of the game is to get as far as you can, by…

blogs