Tag: NFL

My Thinking On Various Topics

Team Loyalty In Sports

Despite never being much of a sports fan as a child, as a young adult I became a huge fan of the NFL, particularly of The Atlanta Falcons. Doing so later in life, and as someone with an over-analytical tendency, has resulted in my viewing the experience as an experiment of sorts. One in which I observe and reflect on patterns even as I participate in them. One of the strangest aspects and one I am deeply affected by is that of team loyalty. Loyalty Snobery Sports has within it, the strangest of snobberies – one that centers around team loyalty. Watch some time as a team rises from the ranks towards a championship and their fans seem to multiply. You will see new hats and jerseys on the street and every day there will be new converts. But many of them will be chastised as fair weather fans. Their fandom

Innovation Session

Innovation Session: My Fantasy Football Auction Draft – Retrospective Part 2

This is the third post in a series about my fantasy football auction strategy. I first wrote about the strategy here. Then after the season I started with part 1 of the retrospective. In this final post I have a few other thoughts that I’ll share. The Importance of the Draft Below are the positions each team ended in and the difference between their expected and actual results. We can see that in general, teams that predicted well on draft day performed well in the season. The r squared for the linear trend line here is .63 which means that for my seasons we can contribute about 63% of the final results to draft performance. What accounts for the other 37%? I would simplify the decision types in fantasy football by describing three. Draft day – who you predict will perform well In-season transactions; waiver wire, free agency & trades

Innovation Session

Innovation Session: My Fantasy Football Auction Draft – Retrospective

Last August, before fantasy football season started, I came up with a strategy to approach the auction draft my work league was having. My season is now over, I didn’t make the playoffs, so I want to take a look back at that strategy to see what I can learn. The important part of this analysis is figuring out how much of my poor performance I should attribute to my draft strategy and how much to other factors. Streaming Defenses & Kickers The first thing I want to evaluate is my decision to ignore defenses & kickers in the draft. I instead focused my draft strategy around skill players; QB, RB, WR & TE. I did this because I planned to employ a method called streaming. This involves picking up and playing people based on their match-up each week instead of relying on one team. Over the 13 week season

Innovation Session

Innovation Session: The History of NFL Win Percentages – Part 7

As a hobbyist developer, I have always been grateful for help from others. Whether from friends, co-workers or strangers. A few weeks ago Mike Bostock helped me figure out why my chart wasn’t rendering by answering my question on stack overflow. Mike is, for those of you that aren’t data visualization nerds, the creator and lead developer of D3, the javascript library I’m using to create this chart. Super cool. It turns out when I had re-written the code I had accidentally let two lines slip to the bottom. Those two lines defined the scope of the graph and without them running fist, the whole thing broke. I knew it was going to be something small like that, it always is. Except for when it is something big. I now have all of the data loaded and rendering. It is quite a mess and not labelled. Check it out for

Innovation Session

Innovation Session: My Fantasy Football Auction Draft

This is my second year playing fantasy football and first year doing an auction draft. Being new to the format, I figured this was a perfect chance to study up and walk away with a dominant team. Here is how I prepared for and executed my fantasy football auction draft. My League First off lets talk league scoring so those of you that know what I’m talking about have context. 12 teams. QB, RB, RB, WR, WR, RB/WR/TE, TE, K, D, BN, BN, BN, BN. 13 players each including the 4 bench spots. Touchdowns are 6 points, missed FGs are -1, .1 pt per yard returning, no PPR. The small bench means we’re going to have an active waiver wire so I wasn’t concerned with grabbing a bunch of sleepers. Here is the team I ended up with. Strategy I did a few practice drafts and a bit of reading

Innovation Session

Innovation Session: The History of NFL Win Percentages – Part 6

There is a time to struggle and a time to ask for help. D3 has gotten the best of me. I’m sure it is something simple, but I don’t have my bearings in the language enough to figure out what the problem is. I tried a good bit of debugging and have verified everything I can think of: The dates are in the correct format The line has a width and renders with different values The data is making it all the way through the functions There are no errors blocking the script The x-axis range matches the data I decided to turn to stackoverflow for help and posted a question asking about why my lines aren’t showing up. Hopefully some kind soul will take mercy on me and point me in the right direction. In the mean time I’m going to populate the rest of my data into the

Innovation Session

Innovation Session: The History of NFL Win Percentages – Part 5

Tonight I changed my approach, at the advice of Sean Conaty, and decided to turn the CSVs into JSON using a separate python script that I would then load into D3 to visualize. I am much better at manipulating data in python, so this approach should help eliminate some of the frustration I faced last week trying to get the CSVs to load properly. Separating the way the data is stored from the format it is accessed in will let us take advantage of the best aspects of each. This is how many internal APIs work. I would consider this more of a hacked API as the script runs locally and I will only run it when I update the CSV. Overall it seemed to work pretty well. I am now looping over the correct teams and have the data in a usable format. The on thing holding me up is that

Innovation Session

Innovation Session: The History of NFL Win Percentages – Part 4

Continuing what I’ve been working on lately – tonight I’m going to try and get all of the data loaded for my NFL chart and hopefully get the javascript to automatically loop through and chart each team’s record. Refactoring As I dove in tonight I realized that the way I was doing things wasn’t going to work. D3.csv() loops over every row in the csv that is loaded and performs the described operations on it. I was looping over the season data which meant that I was doing things hundreds of times rather than 32. I decided to refactor my code so that I now loop over the team data csv and then for each team go pull the season data as part of the process. The first roadblock I hit was that javascript data types are a bit strange. It took me a lot of trial & error to

Innovation Session

Innovation Session: The History of NFL Win Percentages – Part 3

Picking up where I last left off, today I’m going to try to make progress on my NFL history chart. Specifically, I would like to implement a javascript function that parses the data and splits it by team, graphing a new line for each. If time allows I would also like to pull in the data for each team and define the colors. Two charts that I’ve drawn inspiration from as I’ve been working on this are the New York Times housing prices graphic and the Feathersquare chart of Oxford Summer Eight” bump race results. The first is beautiful and second is fairly contextually similar. Hopefully this NFL graphic can hold a candle to them when it is all done. Team Colors One idea I had was to have the color of each team’s line be one of the team’s official colors. I was hoping to be able to pull this

Innovation Session

Innovation Session: The History of NFL Win Percentages – Part 2

I’m going to pick up where I left off two weeks ago working on my chart of NFL team win percentages over time. Last week I focused on getting the infrastructure setup, which was much easier than I thought, and walking through a basic tutorial to get a line graph working in D3. This week I’m going to do some customization. Wins, Losses & Ties To get the chart working last week I simply calculated the win percentage for the Falcons for a few seasons and plugged this in. Realistically that isn’t scalable, I’ll want to be able to input data in the form of a W-L-T season record and have it render. To calculate a win % I will count each win as 1 point, loss as 0 points and tie as .5 points. I’ll then divide the sum by the total number of games to get a %.