You’re visiting Hot dogs and eggs, the online home of Chris Gallo since 2014.

04: Be honest

Biggest learning this week is to be honest. If you’re anxious, admit it. Say it out loud. You’ll feel better. Just be yourself.

Consuming

The Numbers Game

Checked out The Numbers Game by Chris Andersen and David Sally from the library. This was an easy read for me.

The notes outlined in this post are a good summary.

Notes or ideas/passages that stuck out to me:

All about insights: the information is all over the place, almost too much data. The power isn’t in the data, but the insights you pull out it. Much tougher than it seems.

Truth > beliefs: Bill James quote on what is true is more powerful than what you believe, good quote to explain why you should be data driven or evidence driven.

Dogs that don’t bark: tackles are a poor way to evaluate defenders. It’s about being in the right position, so you don’t have to make a tackle. Best defenders are dogs that don’t bark.

Remember what doesn’t happen: it’s more important to not concede a goal than it is to score a goal. Pay attention to what doesn’t happen too.

Avoiding turnovers are important: passing percentages are useful, but avoiding turnovers is more important.

Gladwell on David vs Goliath: underdogs need to acknowledge their weakness, and adapt or they’ll die. Goliath doesn’t need to try something unconventional. Underdogs like David do.

Failure is often only accepted if you do it in a recognizable way.

Weakest link: success in soccer is more about the weakest link, avoiding what you do badly. In basketball, one player makes up 20% of players on the court for you team. In soccer, it’s just 9% - there are superstars, but better to pay attention to a team’s weakest link.

O-Ring Theory: one small manufacturing part can be a multi-million dollar disaster. Pay attention to the details, and to your weakest link.

Köhler effect: when a person works harder as a member of a group than when working alone, shows an example from a seamstress lab where they stop paying by individual and start paying by group, and it helps produce more fabric/clothes. Same is true in sports.

Problems: is it a tough problem, or the same problem every year? Measure of success is that you’re making progress, not the same problem over and over.

New tactics will be organization: only two paths, either your more innovative or spend more money. The game is decided in the margins, where light and dark meet. A team of 150 people (organization) is the future of tactics. Example is how teams are tracking players in space, their every movements, especially when they don’t have the ball.

Practice: the apprenticed is a quite distinct person from the anointed. A violinist asked how many hours I should practice, and his mentor said, ‘It doesn’t really matter how long. If you practice with your fingers, no amount is enough. If you practice with your head, two hours is plenty.’

Dual Threat Podcast: Ryen Russillo

Listened to this podcast episode and didn’t expect much, but there was an interesting ending to the conversation with Colin Cowherd.

Some brief notes about the sports media landscape:

Loss Aversion tweet

See the tweet here, gist of it is professor offered students risk 5% of final grade now for possibility to gain extra 10% if a coin toss comes up heads.

This reply explains why you should take the bet because you’re risking 5% in order to gain 10% with 5050 odds. You can still get an “A” with losing 5% of your grade.

Garry Shandling documentary

This documentary was super long, but really fascinating to watch at times. You’re watching a person that is really struggling, and it shows you how complex we all are.

Shandling kept diaries and often wrote “Just be Garry” to remind himself to just be himself. Don’t force things.

Quotes I liked this week

Creating

R snippets for charts this week:

    season <-rep(c("2018", "2017", "2016", "2015", "2014", "2013", 
               "2012", "2011", "2010", "2009", "2008", "2007", "2006", "2005", "2004"), 2)
OR <-c(37.4, 41.3, 40.7, 40.0, 38.1, 34.6, 39.4, 35.9, 38.1, 38.0, 41.3, 39.2, 39.7, 39.0, 38.8)
TO <-c(83.3, 83.8, 84.6, 81.8, 83.1, 82.8, 83.7, 81.8, 79.2, 83.5, 81.3, 81.6, 77.3, 79.1, 79.6)
values <-c(OR, TO)
type <-c(rep("OR", 15), rep("TO", 15))
mydata <-data.frame(season, values)

p <-ggplot(mydata, aes(season, values))
p +geom_bar()

ggplot(mydata, aes(x=season,y = values)) +geom_bar(stat = "identity")

p + geom_bar(stat = "identity", aes(fill = type), width=0.5) +
  labs(x="Season", y="ESVS",
       title="ESVS: Carolina Offense Since '03-04",
       subtitle="ESVS is a team’s offensive rebound percentage added to its percentage of effective (turnover-less) possessions per John Gasaway.",
       caption="Brought to you by dadgumboxscores.com, data via Kenpom.com.")  +
  theme(plot.title = element_text(hjust = 0.5)) + 
  coord_flip() +
  scale_fill_manual("Legend", values = c("TO" = "#7BAFD4", "OR" = "#13294B")) + 
  theme_ipsum()

p <-ggplot(afa.data, aes(Year, ESVSDiff))
p +geom_bar()


ESVS DIFF BAR ESVS 
ggplot(afa.data, aes(x=Year,y = ESVSDiff)) +geom_bar(stat = "identity")


p + geom_bar(stat = "identity", aes(x=Year, y=ESVSDiff), fill="#7BAFD4", width=0.5) +
  labs(x="Year", y="ESVSDiff",
       title="Carolina: Difference Between Offensive and Defensive ESVS Since '03-04",
       subtitle="ESVS is a team’s offensive rebound percentage added to its percentage of effective (turnover-less) possessions per John Gasaway.",
       caption="Brought to you by dadgumboxscores.com, data via Kenpom.com.")  +
       scale_x_continuous(name="Year", breaks=c(2004:2018), labels=c(2004:2018)) +
  theme(plot.title = element_text(hjust = 0.5)) + 
  theme_ipsum(grid="XY") 

ESVS DIMEDIAN LINE CHART 
ofo.data <- read.csv(file="ofo.csv")
View(ofo.data)

ggplot(ofo.data, aes(x = Year, y= OFF, colour = variable)) + 
  geom_line(aes(y = OFF, colour = "OFF"), size=1.5) +
  geom_line(aes(y = DEF, colour = "DEF"), linetype="dotted", size=1.5) +
  geom_line(aes(y = DIMEDIAN, colour = "DIMEDIAN"), linetype="dashed", size=1.5) +
  labs(x="Year", y="ESVS",  
    title="ESVS: Carolina Compared to Division I Median Since '03-04", 
    subtitle="ESVS is a team’s offensive rebound percentage added to its percentage of effective (turnover-less) possessions per John Gasaway.",
       caption="Brought to you by dadgumboxscores.com, data via Kenpom.com")  +
    scale_x_continuous(name="Year", breaks=c(2004:2018), labels=c(2004:2018),limits=c(2004,2018)) +
    scale_colour_manual("", 
                      breaks = c("OFF", "DEF", "DIMEDIAN"),
                      values = c("OFF"="#7BAFD4", "DEF"="#CC6666", "DIMEDIAN"="#191919")) +
    theme_ipsum(grid="XY") 


DEFENSE ESVS BAR 
season <-rep(c("2018", "2017", "2016", "2015", "2014", "2013", 
               "2012", "2011", "2010", "2009", "2008", "2007", "2006", "2005", "2004"), 2)
OR <-c(25.5, 25.0, 29.9, 31.2, 31.3, 31.6, 26.4, 27.9, 30.1, 30.1, 27.2, 27.4, 29.0, 29.5, 32.0)
TO <-c(83.7, 81.4, 81.8, 82.3, 80.7, 78.5, 81.8, 80.3, 81.3, 79.6, 79.4, 78.6, 79.5, 77.0, 76.4)
values <-c(OR, TO)
type <-c(rep("OR", 15), rep("TO", 15))
ddata <-data.frame(season, values)

p <-ggplot(ddata, aes(season, values))
p +geom_bar()

ggplot(ddata, aes(x=season,y = values)) +geom_bar(stat = "identity")

p + geom_bar(stat = "identity", aes(fill = type), width=0.5) +
  labs(x="Season", y="ESVS",
       title="ESVS: Carolina Defense Since '03-04",
       subtitle="ESVS is a team’s offensive rebound percentage added to its percentage of effective (turnover-less) possessions per John Gasaway.",
       caption="Brought to you by dadgumboxscores.com, data via Kenpom.com.")  +
  theme(plot.title = element_text(hjust = 0.5)) + 
  coord_flip() +
  scale_fill_manual("Legend", values = c("TO" = "#7BAFD4", "OR" = "#13294B")) + 
  theme_ipsum()



library(ggplot2)
library(hrbrthemes)

bad.data <- read.csv(file="hiunc.csv")
View(bad.data)

ggplot(bad.data, aes(x = GameNumber, y= WinPct, colour = variable)) + 
  geom_line(aes(y = MackBrown, colour = "MackBrown"), size=1.5) +
  geom_line(aes(y = CarlTorbush, colour = "CarlTorbush"), size=1.5) +
  geom_line(aes(y = JohnBunting, colour = "JohnBunting"), size=1.5) +
  geom_line(aes(y = ButchDavis, colour = "ButchDavis"), size=1.5) +
  geom_line(aes(y = EverettWithers, colour = "EverettWithers"), size=1.5) +
  geom_line(aes(y = LarryFedora, colour = "LarryFedora"), size=2.5) + 
  labs(x="Game Number", y="Win Percentage",  
    title="North Carolina Football: Head Coach Win Percentage Game-by-Game Since 1988", 
  subtitle="How the win percentage of the last six North Carolina head coaches has changed game-by-game, 1988 season to present.",
       caption="Brought to you by dadgumboxscores.com")  +
    scale_x_continuous(name="Game.Number", limits=c(1,116)) +
    scale_colour_manual("", 
                      breaks = c("MackBrown", "CarlTorbush", "JohnBunting", "ButchDavis", "EverettWithers", "LarryFedora"),
                      values = c("MackBrown"="#CC79A7", "CarlTorbush"="#009E73", "JohnBunting"="#F0E442", "ButchDavis"="#0072B2", "EverettWithers"="#D55E00", "LarryFedora"="#56B4E9")) +
                       geom_vline(xintercept=c(62,78), linetype="dashed") + 
    theme_ipsum(grid="XY")


coach <-rep(c("MackBrown", "CarlTorbush", "JohnBunting", "ButchDavis", "EverettWithers", "LarryFedora"), 2)
G <-c(116, 35, 72, 51, 13, 78)
WPCT <-c(59.9, 48.6, 37.5, 54.9, 53.8, 55.1)
values <-c(G, WPCT)
type <-c(rep("G", 6), rep("WPCT", 6))
mydata <-data.frame(coach, values)

mydata$coach <-factor(mydata$coach, 
                      levels = c("JohnBunting", "CarlTorbush", "EverettWithers", "ButchDavis", "LarryFedora", "MackBrown"))

ggplot(mydata, aes(x=coach,y = values)) +geom_bar(stat = "identity")

p + geom_bar(stat = "identity", aes(fill = type), position = "dodge", width=0.5) +
  labs(x="coach", y="Games",
       title="North Carolina Football: Head Coach Win Percentage Since 1988",
       subtitle="Win percentage of the last six North Carolina head coaches, 1988 season to present.",
       caption="Brought to you by dadgumboxscores.com")  +
  theme(plot.title = element_text(hjust = 0.5)) + 
  coord_flip() +
  scale_fill_manual("Legend", values = c("g" = "#e6194B", "wpct" = "#3cb44b"), labels=c("Games", "WinPct")) + 
  theme_ipsum()

Takeaways

See all notes