Here is a collection of various things that I have worked on over the years. If you have any questions, don't hesitate to get in touch.


A random generator for design briefs.

#2 Product of the Day on Product Hunt.
GoodBrief is a random generator for design briefs. You can use it for practice, to improve your skills, and to build your portfolio with lots of impressive projects.

See project View on Github


A way to easily buy and sell items with other UF students.

A team project that lets you view and post listings, complete with map integration, search, and user authentication. Built with Node, Express, and MongoDB, and using the Passport.js and OpenLayers APIs.

See project View on Github

Simon Says

A full game with graphics and sound.

In an attempt to teach myself Python and Pygame, I decided to build the classic game of Simon Says. Pygame doesn't have a built in rounded-rectangles method, so the hardest challenge in this project was actually getting the four buttons to display properly, with subtle outlines and all.

See project


The classic game.

I wrote this one in Java with AWT and Swing. Getting the movement of the snake right was the biggest challenge. I used an array to keep track of each section and move them in the correct direction.

See project


Version 1.0 of my design brief generator

Design students are always looking to add to their portfolios. Brief generates random design briefsā€”the document with all the specifications for the design that a hypothetical client would give you.

See project View on Github


A working calculator.

A quick exercise to practice both my Javascript and CSS skills. I designed and coded a simple calculator on CodePen, which can perform basic addition, subtraction, multiplication, and division. A lot of work was put into making the calculator behave how the user would expect.

See project


Working game with computer opponent.

The classic game of tic-tac-toe, written in Javascript. The biggest challenge was figuring out the right algorithm for the computer opponent. The trick was actually making sure it wasn't so good that you could never win. In the end I found that having the computer make a mistake 3/7 times was a good balance.

See project

Contact Me

If you want to get in touch, don't hesitate to send me an email, message me on Twitter or LinkedIn, and check out my code on Github.