Team Lead of Dual-Pi Visualizer Project

Tools: Python, Raspberry Pi, Git, Asana (Project Management Software)

I was Team Lead of a group of seven for this two-term project. We worked with a sponsor in the Portland community to gather requirements, design, develop and implement an interactive visualizer software as part of an art installation at Burning Man. The project involves two Raspberry Pis connected by Ethernet cable. It is written in Python and utilizes VLC's API. The core of the project was determining how to generate and sync video playlists between two Pis with user input. We solved this problem with socket programming and command line scripting.

Raspberry Pi

Dead of the Day - Full Stack Web Application

Tools: HTML, CSS, Javascript, JSON, jQuery, Bootstrap

In this project, I worked with a teammate to design a web application that dynamically loads taped shows from the current day in history using Archive.org's JSON API. Selecting a show takes you to an embedded playback feature.

GDapp

Face Morphing Project - Computer Vision

Tools: Python, OpenCV, dlib

This program takes in two images with faces and morphs them by matching feature points and utilizing Delauney Triangulation. This is repeated until there are enough images to generate a blended gif.

FaceMorph

Operating Systems Project

Tools: xv6 operating system, C, vim, GDB

In this project, I expanded on the existing xv6 operating system architecture. I learned the core concepts of operation systems, including processes and threads, scheduling, synchronization, memory management, file systems, and the I/O subsystem. I enjoyed this class and was asked to return the next term as a Technical Course Support Specialist and grader.

Hardware

Smart Contract - Blockchain Development

Tools: Vyper, Google Cloud Platform

Much of this course was spent discovering vulnerabilities in Solidity, which is why our final project was written in Vyper, a safer language for smart contracts.

Ethereum

Artificial Intelligence - Q-Learning Robot

Tools: Python, Numpy

In this Python project, a robot learns to explore a ten by ten grid using Q-learning.

Robot

Quicksorts Implementation

Tools: Java, JUnit

An implementation of Quicksort with Insertion Sort, Dual Pivot Quicksort, and Dual Pivot Quicksort with Insertion Sort.

Quicksort