Introduction and methodology Last year I released my initial batch of March Madness projections for 2025! I tend to be decently good at the Kaggle competition for March Madness at least, and other people found them useful as well. While I am releasing these a bit late for anyone to really bake them into a bracket (blame a hectic spring training), I did want to share my predictions for the upcoming…
Introduction and methodology Following up on my Kaggle March Mania top 40 finish from last year (in addition to my top 30 finish from 2021), I’m excited to share my Mach Madness projections for this year! I want to get a bit more granular this year and be able to share some individual game projections as well, as an exercise in preparing these kinds of visuals (not to mention the social…
Introduction I sent out an open request a few weeks ago for potential blog post topics. I expected a lot of requests for technical or sports stuff, but I also got some requests about stuff I did in my personal life—specifically, An Nguyen requested to hear about my experience training for a marathon! marathon training — An Nguyen (@nguyenank.bsky.social) November 19, 2024 at 10:59 AM After…
Introduction The Advent of Code (AOC) is a series of programming problems that are released daily from December 1st to December 25th, each problem more challenging than the last. As a means of practicing my Julia skills, I decided to try to tackle the AOC this year using just Julia! You can view my solutions to each week at these links: week one, week two, and week three. Let’s finish strong…
Introduction The Advent of Code (AOC) is a series of programming problems that are released daily from December 1st to December 25th, each problem more challenging than the last. As a means of practicing my Julia skills, I decided to try to tackle the AOC this year using just Julia! If you’d like to see my work in completing the first week of AOC problems, click here, and if you’d like…
Introduction The Advent of Code (AOC) is a series of programming problems that are released daily from December 1st to December 25th, each problem more challenging than the last. As a means of practicing my Julia skills, I decided to try to tackle the AOC this year using just Julia! If you’d like to see my work in completing the first week of AOC problems, click here. Let’s dive in!
Introduction The Advent of Code (AOC) is a series of programming problems that are released daily from December 1st to December 25th, each problem more challenging than the last. As a means of practicing my Julia skills, I decided to try to tackle the AOC this year using just Julia! This is my write-up of the first week of AOC problems that I completed–as these problems progressively get…
Stade de France; Chabe01, CC BY-SA 4.0, via Wikimedia Commons I had the pleasure of competing in the Royal Statistical Society’s 2024 Olympics prediction contest. I also had the pleasure of winning! While I feel that my code is too messy to share at present and I lack the motivation to clean it up for public consumption, I did want to discuss at a high level my approach and lessons learned…
Google I/O 2019; Alexander Shcherbakov, CC BY-SA 3.0 via Wikimedia Commons Google I/O was this past week, and predictably, the focus was LLM-powered tools. Among the products Google rolled out was something that caught my eye–an LLM powered “Data Science Agent” that would take in data and with prompting, break down a dataset, develop a plan of attack for approaching a data…
Introduction No matter what kind of project you want to tackle, you’re going to want the ability to understand what’s happening on a given play with the Big Data Bowl dataset. Easier said than done! You can go to YouTube and try to scrub through hours of film to see plays, but 1) that takes a ton of time and 2) means interfacing with the game in a meaningful way beyond manipulating a…
Introduction There is no more frustrating feeling than finishing just shy of a podium position in a Kaggle competition. Those precious competition points were right there! If only you had just a slightly better log loss! Alas, you exhausted every tool in your data science toolkit, and that was the best you could do. Unless… there was another way to get even better performance out of your…
I recently participated in a Kaggle community competition where the objective was to predict the point value of a word played on the 20th turn of a Scrabble game given a dataset of Scrabble games played on Woogles.io, an online Scrabble website. After learning a lot about neural networks and Julia, I managed to swing first place! Below is my write-up of my solution, which also represents my first…
As we reach the end of the 2021-22 college football season (the national championship game is unfolding on my TV as I type this), I wanted to take a look back at my performance in the College Football Data predictions contest. Minimum 400 games picked (not counting the NCG, but it should not affect my performance) (I picked 726 games total, for reference), I finished: 1st in straight-up picks 3rd…
Our approach is ensemble the shit out of everything. We will hold out the 2015-2019 games for validation purposes. We will prepare and optimize two sets of models - one, an ensemble of general team strength features trained on 1985-2014 games, and two - an ensemble of general team strength features + adjusted ratings based on box-score data trained on 2002-2014 games. Let’s prepare the first…
The following was originally published on the CFBD Blog and has been reproduced here with edits for clarity. This is the second and final part of a series on implementing LRMC rankings for CFB! This entry presupposes you are familiar with the mathematical concepts behind LRMC. To view part one, which covers these concepts, click here. When we last left off, we covered how LRMC works and how to…
The following was originally published on the CFBD Blog and has been reproduced here with edits for clarity. As Bill covered earlier this season, calculating strength-of-schedule adjusted metrics like SRS are a little tricky given how few non-conference games teams play this year. While I think his technique for conference-based SRS is a great attempt at a really difficult problem, I think there…
I am a sports analyst/data scientist from Virginia Beach, VA, currently residing in Seattle, WA. I received my BS in Literature, Media, and Communications from Georgia Tech in 2019. I have previously worked as a contributing writer/analyst for a variety of websites, including The Athletic, and Sporting News, but have since moved to work in front offices, interning with the Baltimore Orioles before…
cbbd-r Authored an R package to allow users to interact with the CollegeBasketballData.com API, using continous integration to build and update documentation as the API itself is updated. NFLData.jl Developed and released an open source Julia package allowing users to easily work with nflverse data. You can view the documentation for the package here. Royal Statistical Society 2024 Olympic…
Proficiencies R catboost data.table ggplot shiny lme4 mgcv rvest rselenium tensorflow tidyverse tidymodels xgboost Python catboost django numpy pandas sklearn tensorflow xgboost Julia Dataframes.jl Flux.jl Plots.jl StatsModels.jl MixedModels.jl XGBoost.jl SQL HTML CSS Git Experiences Assistant Director of Data Science, Seattle Mariners 2025-Present I lead a team of data scientists on a variety of…