Career Profile

Andrew James Potter I graduated in Physics (2.1 BSc). I have worked as a developer and in particular as a Ruby-on-Rails developer. My main interest is education and I like to teach others the knowledge I have learnt myself. I have also tutored Mathematics privately. I also excel with technology. When I was 14 I emailed Nintendo asking what I needed to learn to make games. So from an early age I developed a strong interest in technology and began by learning the C++ programming language at approximately the age of 14 and learning GNU/Linux from the age of 15. I love pentesting with Kali Linux and Metasploit (ethical hacking). I am also fascinated by digital art creation in 3d and 2d and the application of Physics and Mathematics to create interactive art like videogames and simulations. I eventually developed a love for the Ruby programming language and in particular Ruby-on-Rails. I have developed a 3d Map App using Unity3d for iOS/Android/OSX/Windows 10. I discovered three confirmed bugs in Unity3d, which I was rewarded for by Unity. I have coached minority groups how to code (they taught me much more than I taught them). I am working on an off-grid P2P project which has a focus on education called QALB.

Work

Professional Development

Apr 2020 - Present
N/A

Career Break I have been studying Artificial Intelligence, Elixir/Phoenix and React, alongside video game design, and other topics. In particular I have been using this knowledge to build my own personal P2P e-learning project; QALB. The essential idea behind QALB is to build a P2P e-learning platform, aiming to provide high quality animated e-learning stories to teach people regardless of their economic situation or background. QALB also acts as my portfolio encompassing React, Elixir, C++, QML, AI, storytelling and traditional talks with slide decks.

Web Developer

Oct 2017 - Mar 2020
United Nations Environment World Conservation Monitoring Centre, Cambridge

Web Developer, Biodiversity Informatics Remote work; with visits to the office fortnightly. I proposed that we switch to Docker for local development. Some exposure to TDD, Agile development. Work on existing projects and also developing new solutions with the Informatics programme. This involves problem solving as well as thinking creatively to develop the end product. This includes work on Protected Planet - an interface for The World Database on Protected Areas (WDPA) - the most comprehensive global database on terrestrial and marine protected areas. Using React.js, Sidekiq, PostgreSQL, GDAL, PostGIS, Mapbox, Redis, Elasticsearch, Amazon AWS S3, Leaflet, jQuery, Atom, vim, tmux, iTerm, Google Analytics, GitHub, Slack, Skype, Trello, Office 365, Teamweek, Toggl, Dropbox. Development using GitHub, making Git pull requests, Ruby-on-Rails; adding fields to existing tables using migrations, use of Action Mailer to send email notifications, detecting modification to individual attributes to trigger email notifications, using byebug, coding rake tasks to import CSV seed data into a database, handling whitespace in CSV files, optimisation of code based on feedback, extracting the required information from each object and then returning an array which is sent to the frontend, writing tests, regression testing, fixing code which has broken, comparing JSON output to find regressions, using Travis CI, using Grape, Sinatra, RABL for a geospatial REST API, to extend the API and testing this using Postman, using Ruby metaprogramming to write tests for different attributes in a REST API, implementing the storing and accessing of data hashes using Redis where a database table is not appropriate, adding dynamic statistics.

ICT Technician

July 2014 - Oct 2017
Yateley School/Westfields Junior School, Hampshire

ICT Assistant and Unity3d/Ruby-on-Rails Developer Unity3d development of multi-platform school map App, development and deployment of Health & Safety Rails App, administering Moodle Virtual Learning Environment, school website content management using WordPress, installation and configuration of a GitLab server. Serving students and teachers, Spiceworks; issue ticket and tracking system, network cabling, re-configuring graphics cards, installing computers, Active Directory, Exchange, imaging machines, desktop roll-out, experience using file servers, installing and configuring VoIP software, writing how-to guides for various tasks, backup and restore (imaging) of laptops, Visual Basic programming; converting data from SIMS to Splicecom phone system, administration of examination software, logging calls with support tickets, managing Kerboodle accounts, managing disk space quotas, Papercut printer management, remote licensing of software, ABTutor remote control of machines, configuring Eclipse IDE for Python and Java development by the students, remote desktop control of servers (RDP).

Ruby-on-Rails Developer

June 2015 - Oct 2015
Laverock von Schoultz, City of London

Ruby-on-Rails Developer fixing bugs in Ruby-on-Rails Web Apps for clients based in France and Israel, debugging code to more advanced skills. Familiarity with Ruby, JavaScript and HTML5/CSS3. Time management. Writing code in Ruby and JavaScript. Familiarity with Git and merging code conflicts. Familiarity with Jenkins. Fixing bugs in CSS3 code. Using JIRA.

Retail assistant

June 2014 - July 2014
Queen Elizabeth’s Foundation, Shepperton

Sorting out inventory. Customer service and deliveries.

Retail assistant

O2, Staines

Stock auditing, counting and keeping track of stock, level of responsibility. Communication with customers, introducing and selling products, till work. Working in a team, communication with workers.

Retail assistant

PC World, Staines

Knowledge of products and selling products.

Projects

A list of side projects (in chronological order)

Strodes College Physics bridge building competition - Our team were awarded first prize at St. James’s Palace by the Duke of Edinburgh. “Nine of the college’s physicists won a bridge-building competition organised by the Science and Technology Research Organisation (SATRO). Working in a Physics lab in their spare time, Andrew Potter, Thomas Hayes, Nick Woods, Jan Nyeki, Maria Nyekiova, and Rob Evans designed, built and tested a bridge from glass fibre.” Press photo; August 2nd 2002;
Wave Simulation software using the wave speed equation - Written in C++ using OpenGL 1.1. Compiled using Visual C++ on Windows and GNU GCC on Gentoo Linux. Programmed by Andrew Potter 2002.
Dreamcast Pong Game - This was coded in 2003 on my PC using GNU GCC. The game was burnt to a CD which then boots up in the Dreamcast console. My brother is the ball.
Yateley School Map 3d - Programmed by Andrew Potter in 2017. Using Blender 3d and Blend4Web with Ruby on Rails and CoffeeScript.
QALB P2P platform - QALB is a reference to the heart. QALB is scaffolding for your community, including an e-learning platform which will come loaded with educational content. After 16 years of research and development (beginning August 2006), this is now being actively developed. QALB will be released under the AGPLv3 once it is ready. The desert Bedouin of Makkah and Madinah who asked me for my help in 2007, confirmed the need for me to build a free software education platform; their kindness and generosity left a mark on me. People who give whatever they have — despite having very little to give. One day I hope to give something back to them — for all of their generosity and kindness. The main motivation behind QALB is to reflect on my own personal struggles with advanced knowledge and to help others not to suffer the way I did when trying to learn this knowledge. The stories and talks will be freely licensed under the CC BY-SA 4.0, to reach as many people as possible. Despite being built on top of GNU/Linux, support for macOS and Windows is planned via QEMU and WSL2. I want to reach as many people as possible regardless of what technology they use. I plan to support x86_64 and arm64 initially. The art style of the animated stories is heavily inspired by Dédouze and also by Tyson Tan’s original friendly dragon concept. The gamified learning is happening via the Bevy game engine. The game development will use PlayStation 5 (and 4) controllers via SDL as the main recommended gamepad, with others to follow. QALB’s gamified learning concept was inspired by Shigeru Miyamoto’s Ocarina of Time and also by Rare’s Banjo-Kazooie. Microsoft’s open source Fluent UI will be used for much of the QALB interface.
QALB-Boy - QALB-Boy is a planned GPLv3 open source open hardware spec for running the QALB platform. QALB-Boy has an emphasis on building a modular eco-containerised off-grid operating system. The ultimate goal would be to have an open hardware spec which would enable educational AI learning in particular, alongside other educational subject matter. Essentially — QALB is an off-grid P2P network primarily focused on e-learning but also providing other decentralised apps. With zero dependency on the internet or the DNS domain name system. The current hardware prototype consists of an NVIDIA Jetson module alongside a cluster of Raspberry Pi 4 boards networked together. The focus is really regarding low energy use alongside practicality in areas of the world where the internet is not available.
QALB-Story - These stories are a work in progress and are licensed under the CC BY-SA 4.0 and are therefore free to share with friends and family. These stories will eventually be included inside the QALB P2P platform alongside animated drawings and gamified learning. The friendly dragon concept is based upon Tyson Tan’s original friendly dragon concept. Both stories with Abdallah + Safiyyah and Andrew + Xenia are included.
QALB-UI - The UI for QALB is a React-based interface. This will be released within QALB under the AGPLv3 once it is ready. This document demonstrates the various apps within QALB, this document is CC BY-SA 4.0 and is free to share with friends and family. Some Public Domain images from Unsplash are used to temporarily scaffold the UI. QALB-UI is still a work in progress. This document also acts as my React portfolio.
QALB-Talks - These talks are a work in progress and are licensed under the CC BY-SA 4.0 and are therefore free to share with friends and family. These talks will eventually be included inside the QALB P2P platform alongside animated drawings and gamified learning.

Reference

Reference for Andrew Potter

To whom it may concern. Reference for Andrew Potter.

Andrew has worked with us for four years now, joining us part time initially and working up to a 0.8 contract latterly. Andrew is a conscientious, willing, polite and cooperative member of our IT support team. He is keen to learn new skills as well as practising his well developed programming skills. He has been responsible for IT support in our fully wireless BYOD environment and has shown himself to be responsive, adaptable and effective in resolving a whole range of issues, such as administering the VLE and VLE outreach, fixing students laptops and problem solving computer and projector issues around the site. He has trained teachers in the use of the VLE. He communicates well with a variety of audiences and has shown himself to be persistent and determined in addressing the concerns of our users. Andrew has used his programming skills to good effect and has designed and built a Ruby-on-Rails (version 5) WebGL 3d Map App of the school which is published on GitHub YateleySchool/YSMap3d. He also designed and built a Ruby-on-Rails (version 4) Work Experience database system, which helped our work experience manager immensely. I can recommend Andrew to you without reservation.

Kind regards,
Mark Jackman
Headteacher
Yateley School

Skills & Proficiency

Linux

Elixir/Phoenix

Ruby on Rails

Ethical hacking

AI/Machine Learning

Blender CGI/VFX