Ben Elgar

Student, Teacher & Software Engineer

About Me


Hi! I'm Ben, a fourth year computer scientist and former president of the Computer Science Society at the University of Bristol. I've been programming since the age of seven and I love (almost) all things technological but am particularly interested in cybersecurity, cloud computing and web development. I'm always up for a chat, whether it's to discuss your latest business idea over a pint or to debate the utility of the latest JavaScript framework down at the local coffee shop, so feel free to contact me via any of the means below.

Contact Me

Portfolio & Projects

I'm currently working on a web archiving service I call Permalinker. Permalinker is an open source distributed web archiving tool, allowing users to generate a permanent URL to a page as it currently appears.

Permalinker is built on Amazon Web Services, utilising DynamoDB and S3 to store data, SQS to queue jobs and Elastic Beanstalk to automatically scale the application to meet demand.

Permalinker is open source and available on GitHub.

I worked for CPD for Teachers as a teacher trainer, a content creator and lead web developer. In my capacity as a content creator, I wrote a large number of tutorials, blog posts and worksheets explaining a wide variety of complex tasks. These were used in courses and lesson plans in primary and secondary schools across the country.

As a trainer, I travelled around the country teaching primary and secondary school teachers to use complex technologies in their classrooms. The technologies included everything from Python to MIT's App Inventor to the Raspberry Pi.

As lead web developer, I led a team to redevelop the company's website from the ground up, including a comprehensive booking system, a mass emailer, a backup system and a content management system. This role also involved managing their large database - which included dozens of trainers, thousands of users, tens of thousands of bookings and every school in England and a significant percentage of the schools in the United States.


For my third year games project, I worked as part of a team to develop a game we call Trenchmill. Trenchmill is a game which takes place in the trenches of World War I and allows you to move by running on a manual treadmill and shoot using a Wiimote. The game also makes use of a heart rate monitor, fundamentally changing the game to keep the player engaged and ensuring that all players are physically challenged.

My most important contribution to Trenchmill was interfacing between the game engine and the treadmill. Getting an accurate, low latency reading from the treadmill we were using proved to be very challenging; I tried a wide variety of different approaches, from using a camera and some computer vision to track the speed of some tape stuck to the belt of the treadmill, to using a computer mouse to tack the speed of the treadmill’s belt. Ultimately, I intercepted the cables from the treadmill’s (completely undocumented) inbuilt speed sensor and used a combination of a Raspberry Pi, an oscilloscope and a logic analyser to determine the format of the signal.

At the end of the project, I open-sourced the treadmill speed reader and made it available on GitHub.