FantasyHockeyHelper 2022–2023 Season Preview

1. Fantasy Score Algorithm Improvements

While the hypothesis of the Fantasy Score rankings is that all selected statistic categories are equally as important, that's not necessarily true when considering the value of offense. Connor McDavid is going to go first overall in most category-based drafts even though he puts up a mediocre number of blocks which makes sense. And later in the regular season once the break-out players have been identified and scooped up, finding offensive power on waivers is much more difficult than finding a heavy hitter with lots of PIMs.

Available for the pre-season draft rankings and during the regular season too!

2. Time Series Fantasy Score Rankings

This is one of the big features I’ve been thinking about for a while, specific to the in-season player rankings (not available on pre-season draft rankings). To help you pick up the best waiver-wire picks or decide which players to drop, you can now view time series data of fantasy score rankings for:

  • The whole season (all you could see previously)
  • The last month
  • The last 2 weeks
  • The last week
This feature will be available once the regular season starts!

3. UI Improvements

I’ve been pretty open about not being a frontend developer with an eye for design. I work in servers and APIs and JSON professionally, however after enough pushing from various trusted folks and users, I decided to try to improve the look and feel of the site. Its still doesn’t look like a 2022-calibre modern website and there are tons of things that can be improved still, but at least its not from the 90's anymore.

Improved Fantasy Score Rankings Heat Map

No longer am I representing table cell stat strength using a rainbow gradient that doesn’t mean a lot on first glance, a fire-based heat map is much more intuitive! The hotter the table cell, the better the stat value.

Fire hot. Hot good.

Paginated tables with search

Thanks to MDB, I can render a full skaters table via server-side HTML and then have it simply presented in smaller, bite-sized pages with a fast client-side search too! This makes it easier to return more skaters to the page, previously I was limiting it to 150 skaters to prevent page rendering from taking too long.

No more CTRL-F-ing around the page! You can also search by team abbreviation too.

Fantasy Team Averages in the Skaters Table

When signed in, you can view your drafted Fantasy Team’s statistic averages across your chosen statistic categories in the skaters table on both the pre-season and in-season player rankings in order to help you keep your strengths and weaknesses in mind when selecting players.

This team seems to need more blocks (note that stats shown above are prorated).

Collapsible Configuration Menus

Remember the ugly HTML web form used to configure the Fantasy Score that I had previously? It practically took up the whole page, well its gone! Now you can view the configurations as needed by clicking any of the buttons presented on any skater pages.

So many options!

4. Platform Migration

Previously, I was deploying the Ruby on Rails application through Heroku. I was paying $9 USD per month for the lowest paid-tier “dyno” (computing service) and I was using the free-tier Postgres database. The dyno worked well for the traffic I had but the database limited how many rows I could save to it. To save on costs, I was storing some data (like team schedules) in summarized manners (JSONB and array blobs containing semi-structured data) to squeeze more data into a single table row. It was also causing me to deprioritize implementing data-heavy features like the Time Series data (see section 2) and I was regularly having to clear out some junk data which was kind of a pain.

A quick look at the Railway dashboard.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store