Here’s a sample of some of the work I’ve done. You can find a more complete list (with source code!) at git.io/nmarcopo. Click on the titles of the projects to be taken to their respective Github pages.
This was my Data Structures (CSE 20312) final project. In case you can’t run the Jupyter Notebook with all of its dependencies, check out our project demonstration video here. Huge shoutout to my group on that video - I had another project to complete (Laser Breakout, read about it below!), and they were able to make the video without me.
I created this web app out of a need to shorten some of my GitHub URLs quickly and easily. I found a site created by the GitHub team to accomplish this, git.io, but this site only allows you to create randomly generated git.io shortlinks. I found that you can create a custom shortlink with the unix command line, but I wanted something that would be simple and intuitive for users who aren't familiar with the command line. My site allows any user to check if a vanity URL is taken and request that custom URL for any GitHub page.
This app was created for Dr. Christian Poellabauer’s Mobile Computing Lab at Notre Dame, where I worked as an undergraduate research assistant. The idea for the app was to connect phones using a custom Bluetooth Low Energy protocol developed by a couple graduate students at ND - BlueNet - where phones could use other phones as intermediates to connect to a BLE device out of their range. I developed the UI for this app and integrated Google Maps functionality to display the positions of connected devices.
Here’s another Data Structures (CSE 20312) project. I’ve hosted this project on my DigitalOcean server here so that you can try it live. It’s an implementation of Dijkstra’s algorithm, where the various randomly generated tiles are weighted edges between the starting point and your selected point.
This is a single band parametric equalizer GUI I implemented in MATLAB for my Introduction to Microprocessors and Multimedia course. Essentially, it uses a continuous time transfer function to create a notch filter, which can be adjusted to amplify or attenuate certain sounds in a variety of music samples. I included a user manual and a technical manual in the project folder, which you can download here. Please skim over these before using the equalizer!
As a final project for our Introduction to Engineering course, several of my friends and I created a bomb defusal simulator in MATLAB which resembles the popular PC game "Keep Talking and Nobody Explodes." Our group implemented an interactive GUI which allows users to defuse a bomb by following a silly instruction manual. We included a “simulator” GUI, which allows users to compare three different solving algorithms - Randomization, Brute Force, and Rule Abider - to see the advantages and disadvantages of each. The video above is our final project video explaining the Simulator in more detail, which I recommend watching before downloading the project. You can download this project here.
I set up the web page for Vince Marcopoli’s music. Check him out at vince.marcopo.li!
Indiana Collegiate Press Association Awarded Photos:
Best News Photo, First Place: Entranced by the Eclipse
Best Feature Photo, Third Place: Making a Difference