Pause Parenting

๐Ÿ—“๏ธ

July 2023 - Present

โฑ๏ธ

Variable

๐Ÿง‘โ€๐Ÿ’ป

Android (Kotlin)

Pause is a research-based modular parenting app filled with useful tools and advice to make parenting easier. The app is designed as an additional resource to support parents undertaking parenting programmes, to help them practice the skills they've learnt in a more engaging way.

For Summer 2023, I joined the project as an intern, working 30 hours per week for 8 weeks. I was responsible for developing the android app from a very basic prototype into the full app based on Figma designs. I used Kotlin with Jetpack Compose. I was also responsible for designing and implementing a Firebase backend involving authentication, analytics and firestore.

Beyond then, I have stayed with the project, continuing to develop new features and improve existing ones. The project now has a much larger development team requiring lots of careful collaboration.

We work in a small team using an agile methodology. I have to work closely with the designer and other developers and use Jira to keep track of progress and meet deadlines.

Pause Parenting App

Discord Bots

๐Ÿ—“๏ธ

3 years

โฑ๏ธ

2500+ hours

๐Ÿง‘โ€๐Ÿ’ป

Solo Project

My biggest project ever. Comprised of four separate bots with hundreds of commands, describing this as only one project greatly understates the diversity of it.

This project has not only stretched my programming ability but tested and developed my skills in games design, marketing, working closely with users and driving a project forward in innovative and exciting ways.

Kernel

Moderation & Utility

Kernel is a multipurpose bot with a wide range of useful features, from moderating your discord server to other genuinely useful features.

  • Run giveaways, polls, auctions or competitions on your server
  • Set up chat filters to remove server invites, links and naughty words
  • Moderate your server with a warning system, muting and more
  • Plot some graphs, because who doesn't love plotting graphs?
  • Play music, with features such as EQ, synced lyrics, music videos and more
  • See More
  • Play a guess-the-song minigame with your friends (or by yourself...)
  • Make a to-do list, set reminders, and create notes which you can share with others
  • See detailed insights into your server, including messages, voice time and members
  • Set up your own custom responses to phrases in chat
  • Logging, weather forecast, self-assignable roles, google sheets, revision quizzes...
  • Create a temporary channel to execute commands without annoying others
  • ...and lots more. Click below to learn more
  • See Less

Spectral

An Assortment of Fun Features

Spectral contains a wide variety of fun features, from flappy bird to UNO!, from dog pictures to in-game stats, from hangman to blackjack, from Donald Trump quotes to random cocktails.

  • Play flappy bird (in Discord!), try an akinator, or try some "would you rather?" questions
  • Grab some friends to play UNO! / Connect 4, or make a story word-by-word together
  • Gamble with virtual tokens using blackjack, slot machines, horse races or robbing a bank!
  • Find images of dogs, cocktails, the astronomy picture of the day or generate a meme
  • Play hangman, choose from 19 trivia categories, or guess some anagrams
  • See More
  • See in-depth statistics for Brawl Stars, Clash Royale or Minecraft
  • Tell a joke, tell an extra nerdy joke or view random Donald Trump quotes
  • See how many Harry Potter characters you can name (or stick to naming animals...)
  • Play a Quiplash-style minigame or assign roles for a secret role game
  • Mazes, Scattergories, Rock Paper Scissors, Roll Dice, Flip Coins, Get Random Fruits, Star Wars Quotes, Current ISS position...
  • ...and 8ball (of course). And lots more. Click below to learn more
  • See Less

Economy

A Text-Based Game

A fully-fledged text-based RPG where you can collect resources, build things and make more resources

  • Mine ores, chop trees, forage, go fishing, hunt animals or collect fossils
  • Gain XP and level up to unlock more items and abilities
  • Build factories and put machines in them to manufacture goods
  • Plant crops or rear animals (don't forget to feed them!)
  • See More
  • Trade on the open market or unite with other players in a guild
  • Eat food. Easily forgotten, but can have bad consequences (such as your food expiring)
  • Craft resources, collect emojis, unlock kits...
  • ...and lots more. Click the button below for the full command list
  • See Less

PokรฉVenture

A Pokรฉmon Game

A custom Pokรฉmon game designed for Discord that borrows much of what made the original games good but innovates in some key areas to be more suitable for the platform.

  • A custom map filled with over 25 unique locations and over 100 unique trainers
  • A beautiful battle screen to fight pokemon with
  • All the 151 gen 1 pokemon you know and love, with over 400 different moves!
  • Pokรฉballs, Potions, IVs, EVs, Breeding, Shiny Pokรฉmon, Type Effectiveness, Evolving...
  • See More
  • Get around by walking, cycling, driving, flying, getting the bus, getting a train, catching a plane or taking a taxi. Each mode of transport has its strengths and weaknesses!
  • Switch out your movesets at any time to experiment and try new combos
  • Battle Other Players, Replay Past Battles, View Stats, ...
  • What do you expect? It's Pokรฉmon! In Discord! See below for all commands
  • See Less
What have I learnt?
๐Ÿ’ป

Python (discord.py)

๐ŸŒ

JavaScript, CSS, HTML

๐Ÿ’ป

JavaScript (node.js), Python (Django)

๐Ÿ“œ

120,000+ lines of code

Code Jams

Here's some short code jams that I've worked on.

A Totally Generic Platformer

Theme "It's a bug, not a feature"
Using WebSockets
Event Python Discord Summer Code Jam 2022

A totally generic, average platformer with nothing out of the ordinary... obviously...

This is best explained through a short video, which was used as part of the judging process.

A Quick Video
๐Ÿ—“๏ธ

11 days

๐Ÿ‘ช

Team of 5

๐ŸŒ

Python (pygame)

๐Ÿ…

Top 10

Graph Train

Theme "Retro"
Event Great Warwick Game Jam 2023

A puzzle/educational game where you have to type in an equation to complete the track, all while the train is moving and about to derail!

This game aims to capture the joy of simply plotting graphs, while also providing interesting challenges - graph plotting leads to some very interesting puzzles! The concept also has many applications in the classroom to teach function transformations, trigonometric curves or anything graphical.

๐Ÿ—“๏ธ

2 weeks

๐Ÿ‘ช

Team of 3

๐ŸŒ

Unity (C#)

๐Ÿ…

#2 Best Design

Itinerant Iterators

Theme "Secret codes"
Using Image Manipulation
Event Python Discord Code Jam 2023

An image manipulation tool with two functions:

  • Watermarking using steganography. This allows you to secretly watermark an image then check if the watermark matches later.
  • An AI obfuscator that detects instances of text in an image and automatically obfuscates it. Supports regex!
๐Ÿ—“๏ธ

11 days

๐Ÿ‘ช

Team of 5

๐ŸŒ

Python

๐Ÿ…

Top 10

Hunted & Haunted

Theme "Hunted & Haunted"
Event Warwick Game Design Winter Game Jam

A top-down chaotic bullet hell shooter where each enemy you kill haunts you.

An infinite shooter which starts easy but quickly becomes quite difficult! With 7 enemy types and increasing spawn rates, how long can you last?

The game is playable on itch.io and also open source on GitHub so feel free to take a look and work on it if you like!

๐Ÿ—“๏ธ

2 days

๐Ÿง‘โ€๐Ÿ’ป

Solo Project

๐ŸŒ

Unity (C#)

See More

Coursework

Here's some pieces of coursework I think are particularly relevant.

School Timetabling

A-Level Project

A fully automated school timetabling system where teachers choose dynamically how long they need for each lesson. This cuts down on wasted time in lessons and prevents teachers from having to rush.

This is implemented using a genetic algorithm which simulates natural selection to generate a feasible timetable within a short time period.

Notably, this involved producing a lengthy write-up explaining the development process and justifying decisions. This made me pay extra attention to the quality of code and reason for doing everything.

๐Ÿ—“๏ธ

9 months

โฑ๏ธ

250+ hours

๐ŸŒ

Python (Django)

๐Ÿ“œ

25,000+ lines of code

University Coursework

1st Robot-Maze Practicing writing maintainable object-oriented code Java
1st Warwick+ Choosing and implementing efficient data structures for a movie database Java
2nd Packet Sniffer Writing code to parse the bits of network packets and detect suspicious activity C
2nd Connect 4 AI An opponent for connect 4, using minimax with lots of optimisations Python
2nd Parser Code to validate syntax and then run a simple language Java (JavaCC)
2nd Theorem Prover Outputs if a boolean expression is true or false, using resolution Prolog
3rd Compiler UPCOMING (in term 1 of this year) C++
3rd Game UPCOMING (in term 1 of this year) OpenGL

๐ŸŒ

Java

๐ŸŒ

C

๐ŸŒ

Prolog

๐ŸŒ

Python