Hey, I'm Matthew Trent
4th-year honours computer science student. Check out my live stats. Let's chat. Join my Discord.
Who I am
I'm twenty-years-old and have a Great Dane named Finn. I love entrepreneurship and can ride a unicycle. Furthermore, I'm an athlete. I enjoy snowboarding, long-distance running (masochism?), and fitness in general. I'm also an avid fan of reading and music.
My story
I coded my first (retrospectively, horribly-written) video game back in tenth grade which got me hooked on code. Soon after that, while still in high school, I got my first development job writing code professionally for a nursery company. The rest is history.
Skills
With new tech comes new challenges; I welcome them.
Category | Technologies |
---|---|
Frontend | Flutter, Dart, HTML/CSS, Javascript, Typescript, React.js, Next.js, Bootstrap, Tailwind, jQuery, EJS, SASS |
Backend | Rust, Golang, Java, Python, C++, C#, C, Node.js, Express.js, Gin, Actix-web |
Tooling | GCP, AWS, Git/GitHub, Heroku, Vercel, Figma, Jupyter Hub, GitHub Actions, Docker, Bash, Common ML libraries |
Databases | MongoDB, Firebase RTD & Firestore, Hive, Drift, Gorm, Mongoose, Redis, Supabase, SQL-based DBs, iOS/Android/web local storage |
Quasi-esoteric | Standard ML, x86 Assembly, Racket |
Personal | Problem-solver, communicative, self-starter, reliable |
Hackathons
Who doesn't love drinking 8 coffees in 24 hours?
Event | Repos | Result |
---|---|---|
Island Health CODEHACK 2023 | Mobile app, web app, server | My teammate and I got recognized for hacking the hackathon before it started, getting awarded symbolic white toques pre-event 👻 |
UVic AI: Ultimate tic-tac-toe | (Private) | We developed a competitive heuristic-based Monte Carlo tree-search algorithm 👀 |
UVic Engineering Competition | Client, server | 1st place after digesting enough caffeine to decimate an elephant 🥇 |
Classes
A small subset of university courses I've taken.
Course code | Description |
---|---|
SENG 474 | Data mining: Neural nets, clustering, decision trees, etc |
CSC 370 | Database systems |
MATH 202 | Calculus III/IV |
CSC 226 | Computer algorithms II |
SENG 310 | User interface & experience design |
CSC 305 | Computer graphics |
MATH 211 | Matrix algebra |
CSC 355 | Digital logic & computer organization |
CSC 360 | Operating systems |
CSC 330 | Functional programming |
CSC 349A | Numerical analysis |
CSC 320 | Theoretical foundations of computer science |
Projects & Professional experience
Confesi
March 2022 - Current • FounderGet ready to ROFL. Share your campus stories, embrace your quirks, and laugh with your community! Launching soon. Join the alpha/beta tests.
GitHub contribution graph painter
May 2023Ever wanted to display a custom design on your GitHub contribution graph? Now you can.
RepoUse the toolReal-time predictor of hockey match outcomes
April 2024My team and I developed a game outcome predictor for hockey bettors. We segmented matches into sequential partitions, each initiated by a shot, resulting in n + 1 total partitions. We then crafted two predictive models: the first, a logistic regression model that evaluates preliminary shot quality; the second, an LSTM neural network that leverages this data to forecast overall game outcomes as events unfold, providing a time-dimensioned analysis. To achieve this, we analyzed almost two million rows of hockey data.
Blog postStackoverflow stats badge
April 2023Allows users to display a dynamically generated Stackoverflow stats badge tailored to their profiles in a Markdown file. Specifically, it's designed for GitHub README profiles.
Repo + usage guideDemo via my READMEGolang package: jsonencryption
January 2024A utility package for encrypting (hashing + masking) primary keys (uints) in serialized JSON responses. Designed for seamless integration with existing model classes.
RepoPublished on pkg.go.devAuto Leetcode solver
January 2023 • Sold commerciallyMy friend and I like solving Leetcode questions legitimately. However, at a manual rate, solving 100% of the site's questions would take a while. Hence, we created a bot to do it for us! It uses test cases to ensure a ~100% acceptance rate of its submissions, and it scrapes answers from Leetcode's discussion forms. You can configure it to solve by a set language and difficulty.
Blog postiMessage clone
May 2023Real time mobile chat app: backed up messages, reactions, deleting messages, blocking users, auth flow, 'is active now' indicators, etc. This turned out to be a great usecase for a non-relational database (shock of all shocks).
Conway's Game of Life simulator
March 2024A web-based cellular automata simulator that allows users to create and run their own custom simulations.
RepoUse the toolStock market scraper
March 2024A web server that gathers, curates, and efficiently delivers the most recent stock market data for specific tickers from a set of predefined sources. Designed to be used in Excel or Google Sheets.
Stend
December 2021 - October 2022 • Co-founderAs the frontend lead on the Stend team, I was responsible for critical frontend development and management in the creation of our team's cross-platform application that curates demographic-based reviews for businesses and users.
CORTEX labs
September 2023 - CurrentAt CORTEX Labs, I'm working as a research assistant and developer. I'm contributing to a project mapping treatments for mental health and addictions in people with brain injuries.
Website + toolUVic AI: Ultimate tic-tac-toe competition
February 2024Over a timeframe of a few hours, our team developed a competitive heuristic-based Monte Carlo tree-search algorithm which could play a game of UTTT and win against many other advanced game-playing algorithms.
Flutter package: killswitch
February 2024I wanted to make a package that would allow me to easily implement a killswitch in my Flutter applications. This would allow me to remotely terminate the app's functionality in the event of a security breach or other extenuating circumstance.
RepoPublished on pub.devBlog postDiscord frog bot
December 2023 • Used in several public serversWhy is it called the frog bot? I'm not sure. I found a nice frog profile picture and that was that. It's a Discord bot that harbours a few application commands and custom response/moderation capabilities.
Add the bot yourselfFlutter package: shrinking_view
October 2022In an app I was making, I wrote some code to shrink Scaffold views programmatically. This simulates native iOS behavior. I figured others may like to use it, so I made it into a package.
RepoPublished on pub.devPattern cracker
July 2020I developed a puzzle game that challenges the user with figuring out the number in a 4x4 matrix that doesn't fit the pattern. It includes a myriad of levels the user can progress through. The UI is formatted to look exactly like that of the classic game of 2048.
RepoBorder gas price converter
March 2020My father used to travel across the border into the USA to buy gas. He always told me, for efficiency's sake, he wished there was an app that easily converted cross-border gas prices. So, I built one. It converts $USD/Gallon to $CAD/Litre in real time.
RepoPublished on PlaystorePicture text interpreter
June 2020I created an app that, upon the user uploading an image, deciphers the image's text and converts it into copyable text alongside giving the user the option of having it read aloud.
RepoRising Revolution
2019 • First ever projectI designed all art assets, alongside coded the entire project. Taking 176.5 hours, it taught me the very basics of C# Unity development. The strategic game features a 2D environment, where you play cards attempting to toppel the Russian Czar.
Play the gameUniversity class automation
November 2023I dislike participation marks. This script allowed me to sleep in and not care. It was quite an involved chunk of code. Too bad I can't share it...
Matrix pathfinding algorithm visualizer
May 2023Pathfinding algorithms play a crucial role in various fields, such as robotics, game development, and logistics. This project provides an interactive and visual way to explore different pathfinding algorithms (such as Dijkstras), helping users grasp their underlying principles and observe their performance in different scenarios.
RepoCustom endpoint data tracker
May 2023A mobile app that allows users to enter a URL to JSON data. The app then dynamically parses the JSON using a custom-built parser, mapping each detected datapoint to a trackable 'stat card'. Users can then save/view these cards, allowing for easy access to data they care about.
RepoIsland Health's CODEHACK 2023
March 2023 • Recognized for hacking the hackathon before it started, revealing a serious security vulnerabilityWithin 24 hours, my team and I developed a system facilitating all doctor and patient interactions with a central health database. This allows patients to have more control over their personal health data and records.
Primary repoFlutter package: alert_banner
January 2023A beautifully simple alert banner for Flutter applications. Fully customizable.
RepoPublished on pub.devFlutter package: use_optimistic
February 2024An easy-to-use hook to optimistically update generic state and then resolve it later (async or sync) by accept/acceptAs/reject-ing it. An adaptation of React.js' experimental useOptimistic hook.
RepoPublished on pub.devBlog postMenti poll bot
March 2024A tool that, with the single click of a button, lets you select and submit a menti.com quiz answer N times simultaneously using multi-threaded API execution. Unfortunately, I probably won't be able to share the code for this one since my university professors use the platform...
Blog postPersonal server
November 2023 - CurrentI like having tasks automated. I needed a server to do that. So, I built myself a server. It does a variety of jobs; it even does things for this website! Some examples: cron jobs, email sending, detailed analytics for my online presence, hosting custom code, tooling, database connections, scripts, etc.
Live demo (single endpoint)University of Victoria engineering competition
July 2023 • 1st place 🥇Over a time frame of 6 development hours, our team managed to create a feed-based cross-platform mobile Flutter app that connects tutors with students in need of support, helping to facilitate a healthy academic community. We linked it up to a Dockerized Golang web server with a SQLite database. My wonderful teammates: Jaspreet Sidhu, Chris Huk, and Hal Nguyen.
Primary repoFlutter package: core_utils
October 2022This package contains a lot of simple helper functions. Some examples include: shorthands for app sizing, number formatters, responsive layout builders, etc.
RepoPublished on pub.devFlutter package: scrollable
November 2022I recently wanted to add haptic effects to my scroll views, but found no easy way to do so. This prompted me to make a way myself. This package contains several useful widgets that enhance Flutter's default scroll views by adding haptics, automatic soft keyboard dismissal, and more.
RepoPublished on pub.devCurrent personal website
January 2024New website with a focus on simplicity and performance. There is beauty in minimalism. Has a fully functional blog. Listed tech stack split with the server.
Live demo (hint: you're on it)Precise integral solver
November 2021I created code that breaks apart a mathematical function into 1,000,000+ Y values along a given slope, which are then used to very accurately calculate a definite integral. I also provide an interactive graph alongside the solution.
RepoInfinite runner
December 2019 • Second ever projectI challenged myself to make a game in a day to circumvent tutorial-purgatory.
Play the gameUniversity class websites
Varied timelineI've designed and developed several websites for university classes. They're all private, so I can't share them.
COVID-19 tracker
April 2020I created an app that informs the user about basic virus/COVID-19 information. Additionally, it features an interactive graph that showsases COVID-19 deaths, recovered cases, and current cases across dozens of countries. Finally, it includes a feed of up-to-date news articles related to public health.
RepoSeven dungeons
December 2019 • Third ever projectI created a dungeon runner game where the user tries to beat their best time jumping through seven dungeon puzzles without dying.
Play the gameContact me
I'm always down to talk! Alternatively, try my email.
Goodbye
Before you go, have some free and valuable Rust code.
fn get_random_num() -> Option<i32> {
Some(4) // chosen by fair dice roll, guaranteed to be random
}