Hi! I'm Amy Parent

I'm a programmer working in Dundee, Scotland. I love making games and working on low-level computing things, from compilers to network systems. I also love space and spaceflight, and spend my spare time programming virtual rockets.

If you need some development work done or want to chat, send me an email.

Space

I gave a ten-minute talk at TEDxAbertayUniversity on how we've gone from launching human-sized capsules in the '60s to having six astronauts living in space 24/7, and why we use rockets to get there.

Youtube

An n-body orbit simulator prototype. Loads systems from JSON files, uses a Verlet integrator and a custom software/hardware renderer to propagate and visualise planetary systems (SDL2/C++)

Youtube

A series of experiments in automated control for rocket-powered landers (inspired by NASA's Morpheus). Custom 2D physics simulation built in Meteor, and cascading PID controller-based autopilot.

Youtube

An attempt at reproducing Blue Origin-style landings in Kerbal Space Program. The autopilot uses aerodynamic steering and engine gimbaling (driven by PID controllers) to land the rocket at a target location.

Youtube

An implementation of NASA's Powered Explicit Guidance algorithm for closed-loop, automated single-burn to orbit launches in Kerbal Space Program. Achieves orbits with less than five kilometres of deviation.

Blog Post

Computing

Orbit is a scripting language I'm making. Bytecode runs on a stack-based VM implemented in C. OrbitVM has a basic foreign function interface to register C functions as callable from Orbit code, used to implement the standard library. I keep a diary of the development on the blog.

GitHub

The goal of FCORE is to provide a modular software and hardware payload bus for High-Altitude Balloon missions. It abstracts flight tracking, internal and radio communications so that payload teams can focus on their instruments. Written in Embedded C, for FreeRTOS.

Dev Log

A note-syncing web service with a API and a companion Android application. Written in PHP & Java. Uses JSON for client/server communications, and Google Cloud Messaging for push synchronisation.

GitHub

Endurance horse race tracking server and embedded RFID detection software for race gates. Written in C (RFID scanner) and Python/Flask (tracking server) Developed for Cerberus Technologies

Cerberus Tech

Games

Ghosts is game a in which the player must escape a horde of ghosts. The terrain is procedurally generated (cellular automaton). Shown at Dare Protoplay 2015. No engine (SDL2/C)

itch.io

A twist on the classic video game where players can bend gravity to throw curveballs. Started as a one-day game jam, shown at Dare Protoplay 2016. Built with Meteor (SDL2/C++)

itch.io

A custom-made C++ game engine. Meteor uses a node (inheritance-based) system inspired by Apple's SpriteKit, and SDL2 for rendering.

GitHub

An infinite runner that takes place in inside a vintage radio receiver. Made during Global Game Jam 2017 with Caitlin Smith (artist and designer). Built with Meteor (SDL2/C++)

Global Game Jam

Winning entry of Charged Hearts Jam, by the Pixelspark team. Two players must keep each other alive by collecting hearts, and staying close to their partner. Built with Meteor (SDL2/C++)

itch.io

The player must climb to the top of a glitchy tower and avoid the enemies pouring down. Made with Pixelspark for AGDS Jam 2015. Built with Meteor (SDL2/C++)

itch.io