Welcome to Andy Duong's Personal Website

picture of Andy Duong

I am a recent graduate of CSU Fullerton with a Bachelor of Science in computer science and a minor in mathematics. I'm interested in software engineering and data science. I enjoy working on projects in Python or C++ that let us learn new things and help to connect people together.
I am currently open to new opportunities.

Projects and Coursework

Plex Rich Presence

status message on Discord when streaming from Plex

Plex Rich Presence is a program that allows users to share their streaming activity from Plex to Discord. It shares what the user is currently watching along with their progress.

This project is written in Python using pypresence to set the user's activity on Discord while using Flask to listen for webhooks from Plex Media Server.

Plex Rich Presence GitHub Repo

Roulette Simulator

Roulette Simulator example output

Roulette is a classic game of chance found in casinos and other gambling venues all across the world. Given its multitude of variables in regards to player input, along with potential for high stakes, it is no wonder there has been much study on the game by statisticians and the like.

This program uses MATLAB to simulate a game of roulette, either by playing with the same bet one thousand times and seeing the profit or until a player goes bankrupt.

It asks for player input on how they would want to play, ask what types of bets they wish to place, and the output will give the win percentage, how much “profit” was potentially made, how many rounds they lasted, and gives a graph as a visual for the win-loss ratio.

Roulette Simulator GitHub Repo

Covid-19 Death Rate Analysis

summary of wrangled data set

One of the questions during the Covid-19 pandemic was why different countries have such different proportions of deaths relative to the number of disease cases.

There were several hypotheses about this, including differences in medical facilities (countries with more hospitals should see fewer deaths), age demographics (countries with a larger proportion of older people will see more deaths), and existing mortality rates between countries (indicating pre-existing differences in overall health between countries).

The goal of this project was to use linear modeling to quantify some of the variation in mortality from Covid-19 in different counties due to differences in hospital infrastructure and demographics.
It uses R to wrangle data taken from multiple sources and builds linear models to determine what independent variables cause the most variance.

Analysis GitHub Repo


Parallel and High Performance Computing Projects

 diagram of the leader election algorithm

These projects include functions that are commonly used in parallel and distributed computing.

The leader election algorithm will elect a single node and give it special powers within the distributed system. This allows the selected node to coordinate the nodes in the distributed system, assign work, and complete operations that don't require the other nodes by itself. This can be useful for improving efficiency, reducing needed coordination, and simplifying tasks.

Clustering algorithms are among the most commonly used in unsupervised learning. The k-means algorithm in particular is especially popular because it is rather easy to apply towards even large data sets. It aims to partition n observations into k clusters where each observation will belong to the cluster with the nearest mean.

These projects are written in C++ and uses MPI for message passing.

Contact

github logo linkedin logo mail icon

Created by Andy Duong