I build tools that make sense of data — from statistical simulations to machine-learning pipelines. Below is a selection of projects that showcase what I can do.
I'm a computer science student with a focus on data analysis, statistical modelling, and full-stack web development. I enjoy turning messy datasets into clean insights and building interactive tools that let others explore data intuitively. My work spans Python pipelines, Flask web apps, and front-end interfaces. Outside of these projects I have experience coding in Java, SQL, C++, C, JavaScript, and R. If you would like to learn more about me head over to my linkedin found at linkedin.com/in/maximus-morris and my github is found at github.com/mgmorris0513
A passion project and living resource for higher-level mathematics students. The site aggregates and generates practice questions across college-level topics — from calculus and linear algebra to probability — because well-designed practice problems are the single best study tool I've found.
Currently in active development; new topic modules are added regularly.
This project uses the economy of Team Fight Tactics as a controlled, reproducible probability space. Each "roll" reveals 5 champions from a shared pool; the goal is to acquire 9 copies of any champion (3-star), a champion of a specific cost tier, or a specific unit at a given position. I derived a closed-form expectation for the general case — j successes out of a population of n with k possible successes, replacing only failures — then validated it with Monte Carlo simulation.
Developed a mathematical framework utilizing discrete-time Markov chains (DTMCs) and linear algebra to identify trapping sets, or "isolated cycles," within complex graph structures. By modifying classical hitting time formulations to incorporate state-dependent and edge-dependent weights, this project constructs custom systems of linear equations in the form of $(I - Q)V = W$.
A key finding of the paper demonstrates that defining edge weights via an indicator function—specifically where a weight is $1$ if and only if a transition lands in a designated subset of success states—collapses a generalized expectation system directly into an absorption probability calculation. Ultimately, the framework shows how the existence of an isolated cycle introduces linear dependencies that render the fundamental matrix operator singular, causing expected hitting times to diverge to infinity across reachable nodes. This provides a robust algebraic method for detecting structural traps in networked systems.
This version of Minesweeper uses a compact board and three difficulty levels. Each mode keeps the mine density near 17%, so the game stays challenging without feeling unfair. Right-click or Alt+click a covered tile to toggle a flag.
Outside of my accomplishments as a student, I love pursuing hobbies like running, rock climbing, and board games. Some of my key running achievements include finishing a half marathon in under two hours, completing a multitude of 5Ks and 10Ks (with a 5K PR of 18:41), and competing at the Penn Relays. For rock climbing, my main highlights include summiting various mountains, completing parts of the Appalachian Trail, reaching near the summit of Mount Rainier, and sending a V6 boulder indoors. Lastly, during my time at university, I served as the president of the Boston University Board Games Club. I was the first president to book a live band for one of our events (a trivia night) and successfully hosted several other major events, including two additional trivia nights, a murder mystery night, and an escape room. Alongside these larger events, I managed our weekly meetings—which averaged 80 members per session—and kept track of an inventory of over 100 games.