Projects

Coursework at Marist

Rhinebeck Asher Dam Alert System (ADAS)

The Asher Dam Alert System is a collaboration between Marist College and the Village of Rhinebeck in NY. This project spans multiple years and many different groups of college seniors continuing work on this initiative. The purpose of this project is to build a site that pulls in semi-live data to anticipate flooding in the Rhinebeck Asher Dam. It pulls in weather data from a few different APIs, along with real world data from the actual dam site. This project was not only a project for the Technology students, but also for the Environmental Science students who would take over the project in the spring semesters. For all of the majors involved (Computer Science, Information Technology, Information Systems, and Environmental Science) this project was our "Capping" (Capstone) final project. The last big project that we need to complete in order to graduate within our majors. This project took a lot of work and a lot of teamwork, but it was very worth it when we were able to see the impact that we were having on the local area. The code can be viewed on my GitHub here: ADAS. This project had us programming mainly programming in JavaScript, HTML/CSS, and Python. I personally worked on a lot of the web development end of the project to pull in the data that we were receiving from the dam site and then display the data in graphs on the website. You can also view the actual website that was built in this project here. Although, please note that this project is still ongoing and the code will have been changed since I had a hand in the projects development.

Honors Thesis

For my honors thesis project, I worked on the ONNX-MLIR Project with the IBM team that works on this "open-source project for compiling ONNX models into native code on x86, P and Z machines (and more)". Although I am no longer working on this project, it gave me a lot of insight into C++ code and how this team operates. What makes them efficient and how they work so well together despite not being in the same office, timezone, or even the same country. My mentor for this project was in a completely different timezone, but we made it work really well.

Ray-Tracing

In my Computer Graphics class, the professor provided us with the basis for a ray-tracing project, which we built upon throughout the entire semester. You can find my code for this project here: graphics-lab-activities. This project mostly contains JavaScript, but also utilizes some amount of HTML/CSS and GLSL programming languages. I really enjoyed the problem-solving aspect of this project and although there was some guidance with each step of the project, it did not hold your hand throughout the projects, which was something I appreciated. We learned to add different things to our ray-tracer such as mirror reflections, shadows, specular/diffused highlights and ambient lighting. The ray-tracer only started out with a plane and we has to build different object to see in this space along with all of the different features of shadows/reflections on our own.

Operating System

My operating systems class was known to be one of the most difficult classes in my software development concentration. This class was taught by Alan Labouseur at Marist College and the projects in this class were incrememntal towards building a web-based Operating System. He encouraged creativity and going above and beyond in each project. The toughest part about this was that each project built off of the last one so if you were missing something or part of your code was not completely working, the next part of the project was impacted by this. This did however encourage you to keep trying at the code and see if you could fix your previous mistakes. The can find the code for this on my GitHub here: OperatingSystems-2020. This was mainly written in TypeScript with some HTML/CSS and JS.

Caesar Cipher in 10 Languages

The "Caesar Cipher in 10 different languages" was a project for my Theory of Programming Languages course. This class taught us about how different programming languages are structured and why there are so many different languages. There were 2 main projects in the class, with one being to program a caesar cipher in 5 different procedural languages and the other to program a caesar cipher in 5 different functional languages. Scala was used in both projects to demonstrate its versatility. Our final project was to create our own language that best suited our own needs and we could design it how we saw fit. My language named Kona (after my dog) is a combination of Visual BASIC and Java. You can find the link to the code on my GitHub here: TheoryOfProgrammingLanguages-2021. The languages used in these projects were Fortran, COBOL, Pascal, Scala, Visual BASIC, LISP, Erlang, F Sharp, and Haskell.

Arduino

The last noteworthy project from my coursework at Marist was our Arduino projects that I worked on in the Spring of 2020. This was for the class Computer Organization and Architecture, which taught things relating to how computers read and store information. Along with how to count, read, and solve math problems in binary. However, I definitely am out of practice with binary, I still very much enjoyed learning about it. We also learned about Hexidecimal since it is used so much in coding such as with ASCII characters and HEX values for colors in web design. The arduino projects were challenging but so much fun once it was working the way you wanted it to. Having the hands-on experience of wiring an coding on an arduino and then seeing the changes happen right in front of you was so much fun. I really enjoyed the problem-solving and puzzle-like nature of these projects. I have some of the code from these projects up on my GitHub, although I wish I had more videos of the final results from these projects to share. Here is the link to the page here: ComputerOrganizationandArchitecture-2020. The language used in these projects was C and I mainly coded within the Arduino web editor to test and run my code.

Personal Projects

Portfolio Website

This portfolio website that you are on right now has been a project that I've been wanting to work on for some time now. I was originally complacent with a WordPress website that I designed, but I always wanted to buy my own domain name and build my website from scratch. Once I had the resources and skills to do this, I jumped on the opportunity and started to work on this in my free-time. I am very proud of how it is coming along so far and I will be continuing to mantain and make this site even better as time goes on. The state of the website currently is a starting off point and it is still a work in progress.