Sunday, January 11, 2026

A Bunny We Don't Know

This morning, woke up earlier than expected, looked outside in the back, and saw a bunny. It did not run away but remained way. I spoke softly to it.

Yesterday, Melissa had noted some rabbit droppings -- the rabbit had marked its territory -- so I was not surprised to see it.

Wednesday, December 31, 2025

NHL By the Numbers: How a five point game may have doomed Olofsson to the bottom six

 Ex-Sabre and current Avalanche team member Victor Olofsson is skating on Colorado's third line and PP2

On October 28, 2025, Oloffson had 3 goals and 2 assists, as his game log shows -- it also shows he has not had a similar night since. 

In that game. Colorado beat New Jersey 8-4. As the box score shows, Olofsson was a -1 with 2 power play points, meaning that he was on ice for 5 goals for, and 4 goals against. 

Colorado without Olofsson on the ice won a 3-0 game. Colorado with Olofsson on the ice won a 5-4 game. A coach will _always_ choose a 3-0 win over a 5-4 win.

Olofsson's ice time in that game: 14:37, including 4:17 on the power play (and 7 shots).

Olofsson's ice time in the Avs' recent victory over Los Angeles: 12:02 including 3:04 on the power play, two shots, no points, and a plus zero. 

Olofsson can change this if he is less of a defensive liability -- he can rise through the ranks if he improves his defense. 


Many teams like to take players from Buffalo on the assumption that those players will do better in a new home, and there is substantial evidence, starting with Ryan O'Reilly (Stanley Cup with St. Louis), Jack Eichel (Cup with Vegas), and Evan Rodrigues (Cup with Florida). Other Buffalo players do poorly, such as Jeff Skinner and Tyler Myers.

Tuesday, December 30, 2025

By the numbers: How to win an NFL game in the first 8 minutes of play

 On Dec. 27, 2025, the Houston Texans beat the San Diego Chargers 20 to 16, after scoring 14 points in the first half of the first quarter

Monday, December 29, 2025

By the numbers: 20 years ago, the NFL Vikings eliminated an opponent while gaining nearly zero yardage

 The game in which the Vikings eliminated the Lions while gaining little positive yardage is similar in its statistical oddity to a game played 20 years ago. 

First, the recent game. The Vikings won the game in Detroit with 3 net passing yards, winning 23-10. The Lions had 6 turnovers -- 4 fumbles and 2 interceptions. The Vikings' first touchdown came from a fumble recovery on the 16 yard line. All of the yardage on the 16 yard drive came from running plays. The other touchdown came from a 65 yard running play. Meanwhile, Vikings QB Max Brosmer, who played for the University of Minnesota and is thereby a fan favorite, had 51 passing yards but lost 48 yards on 7 sacks, for a net of 3 passing yards. 

On November 13, 2005, the Vikings beat the Giants in the Meadowlands 24-21 without scoring an offensive touchdown. They returned an interception for a touchdown, a kickoff for a touchdown, and a punt for a touchdown. The defense scored 7 points, special teams scored 14 points, and the offense scored 3 points. 


Wednesday, November 26, 2025

Perhaps the NFLPA can explain why the Buffalo Bills lose their road games

The NFL Players' Association (NFLPA) has posted its report cards, which are based on interviewers with players. The players rated Buffalo the worst in the league on team travel, and 23rd out of 32 teams.

"players feel that travel continues to be the worst part of their experience. Players do not have a comfortable amount of space when traveling, and the travel schedule itself is a source of significant dissatisfaction."

On the year that the Bills played in London, they arrived the day before the game. I'm not a football player, but I'd find it difficult to give a 30 minute presentation at a trade show if I arrived the day before. The Bills are cutting costs on travel to the point where they may be losing games for that reason alone.

As of the time of writing, the Bills have four losses -- three of them on the road. The Bills' home record is 6-1 (beating the Chiefs and Ravens but losing to the Patriots). Their road record is 2-3, including surprise losses to the Falcons and Dolphins.

The Bills' next game is in Pittsburgh.

Fan are noticing the inconsistent road form (Reddit).

An SB Nation commentator asked, "was the offensive line asleep" during the Houston game. The problem may have been caused by coach seats on the flight from Buffalo -- the offensive line comprises the biggest guys on the team. 

 

Tuesday, August 19, 2025

I asked ChatGPT to analyze the top 50 defencemen for a banger NHL league

 Banger leagues score for PIMs, hits, and blocked shots. The top defensemen in such leagues are different than those that make most of the published rankings, except that Cale Makar is still #1. 

Please note that this ranking _does not_ adjust for total number of games played, so that those who were injured last year, such as Ekblad, are penalized in this ranking for the games they missed.

Also note that some statistics (such as goals) are rarer than others. As you'll see, I tried to adjust for that. I do not understand why no player received 10 fantasy points in several categories (I asked ChatGPT to explain why and it stated, Each stat is scaled so that the player with the top raw value gets 10 points.

Example: Cale Makar’s 62 assists were the most, so he earns 10 A points; everyone else is scaled to that). 

Note that Weeger and Makar get similar scores for dominating different categories.

Here's the prompt:


Twelve teams are drafting at least four defencemen each for the NHL fantasy season. For each of the top 50, use the attached spreadsheet.

 

The significant statistics are in the following 9 columns: G (goals), A (Assists), PPP (power play points), PIM (Penalties in Minutes), +/-, SHOTS, HITS, and BS (blocked shots)

 

Each statistic is worth up to 10 fantasy points

 

For each player and for statistic except +/-, find the player who is listed in the table who has the highest score in that statistic, which we will call HIGHEST SCORE. Use the following formula to derive fantasy points: ([player’s score] / [HIGHEST SCORE]) * 10.

 

For +/-, the HIGHEST SCORE is the highest positive number. The LOWEST SCORE is the largest negative number. The fantasy points number is: (([player’s score + (-1 * LOWEST SCORE)) / (HIGHEST SCORE + (-1 * LOWEST SCORE))) * 10

 

Rank players by total fantasy points. Produce a table with the following columns:

 

[Rank] [player name] [team] [G] [G points] [A] [A points] [PPP] [PPP points] [PIM] [PIM points] [+/-] [+/- points] [Shots] [Shots points] [Hits] [Hits points] [BS] [BS points] [Total fantasy points]

 

Make the table exportable to excel.

 


Here's the table:


Rank

Player name

Team

G

G points

A

A points

PPP

PPP points

PIM

PIM points

+/-

+/- points

Shots

Shots points

Hits

Hits points

BS

BS points

Total fantasy points

1

Cale Makar

COL

30

10

62

10

35

10

14

1.94

28

9.47

246

8.26

51

2.29

128

6.67

58.62

2

Mackenzie Weegar

CGY

8

2.67

39

6.29

21

6

33

4.58

18

8.13

184

6.17

223

10

192

10

53.85

3

Zachary Werenski

CBJ

23

7.67

59

9.52

25

7.14

31

4.31

12

7.33

298

10

19

0.85

131

6.82

53.64

4

Rasmus Dahlin

BUF

17

5.67

51

8.23

21

6

54

7.5

11

7.2

200

6.71

100

4.48

98

5.1

50.89

5

Moritz Seider

DET

8

2.67

38

6.13

24

6.86

40

5.56

-5

5.07

162

5.44

210

9.42

181

9.43

50.56

6

Victor Hedman

TBL

15

5

51

8.23

26

7.43

30

4.17

18

8.13

181

6.07

39

1.75

133

6.93

47.7

7

Evan Bouchard

EDM

14

4.67

53

8.55

26

7.43

32

4.44

14

7.6

235

7.89

31

1.39

108

5.62

47.59

8

Darnell Nurse

EDM

5

1.67

28

4.52

2

0.57

72

10

11

7.2

188

6.31

161

7.22

136

7.08

44.57

9

Quinn Hughes

VAN

16

5.33

60

9.68

29

8.29

29

4.03

2

6

192

6.44

13

0.58

67

3.49

43.84

10

Jakob Chychrun

WSH

20

6.67

27

4.35

15

4.29

52

7.22

17

8

179

6.01

59

2.65

87

4.53

43.71

11

Josh Morrissey

WPG

14

4.67

48

7.74

22

6.29

22

3.06

17

8

172

5.77

49

2.2

113

5.89

43.6

12

Brandon Montour

SEA

18

6

23

3.71

11

3.14

70

9.72

-22

2.8

231

7.75

84

3.77

100

5.21

42.1

13

Jake Sanderson

OTT

11

3.67

46

7.42

30

8.57

12

1.67

-14

3.87

195

6.54

38

1.7

163

8.49

41.93

14

Mikhail Sergachev

UTA

15

5

38

6.13

23

6.57

32

4.44

-8

4.67

132

4.43

61

2.74

140

7.29

41.27

15

Lane Hutson

MTL

6

2

60

9.68

26

7.43

34

4.72

-2

5.47

91

3.05

40

1.79

123

6.41

40.55

16

Neal Pionk

WPG

10

3.33

29

4.68

12

3.43

44

6.11

21

8.53

123

4.13

113

5.07

101

5.26

40.54

17

Thomas Harley

DAL

16

5.33

34

5.48

15

4.29

16

2.22

32

10

171

5.74

33

1.48

110

5.73

40.27

18

Adam Fox

NYR

10

3.33

51

8.23

18

5.14

32

4.44

9

6.93

135

4.53

40

1.79

108

5.62

40.03

19

John Carlson

WSH

5

1.67

46

7.42

14

4

22

3.06

17

8

167

5.6

49

2.2

131

6.82

38.77

20

Shayne Gostisbehere

CAR

7

2.33

38

6.13

27

7.71

52

7.22

1

5.87

122

4.09

40

1.79

66

3.44

38.59

21

Thomas Chabot

OTT

9

3

36

5.81

8

2.29

24

3.33

17

8

179

6.01

58

2.6

145

7.55

38.59

22

Jake Walman

EDM

7

2.33

33

5.32

8

2.29

42

5.83

4

6.27

164

5.5

57

2.56

145

7.55

37.65

23

Dougie Hamilton

NJD

9

3

31

5

15

4.29

30

4.17

8

6.8

186

6.24

73

3.27

85

4.43

37.19

24

Shea Theodore

VGK

7

2.33

50

8.06

19

5.43

26

3.61

18

8.13

128

4.3

6

0.27

82

4.27

36.41

25

Jackson LaCombe

ANA

14

4.67

29

4.68

9

2.57

28

3.89

0

5.73

134

4.5

69

3.09

129

6.72

35.85

26

Devon Toews

COL

10

3.33

34

5.48

3

0.86

26

3.61

30

9.73

138

4.63

40

1.79

103

5.36

34.81

27

Noah Dobson

NYI

10

3.33

29

4.68

12

3.43

28

3.89

-16

3.6

196

6.58

56

2.51

126

6.56

34.58

28

Aaron Ekblad

FLA

3

1

30

4.84

11

3.14

53

7.36

11

7.2

106

3.56

90

4.04

64

3.33

34.47

29

Brandt Clarke

LAK

5

1.67

28

4.52

9

2.57

46

6.39

13

7.47

131

4.4

22

0.99

121

6.3

34.29

30

Bowen Byram

BUF

7

2.33

31

5

2

0.57

46

6.39

11

7.2

94

3.15

74

3.32

117

6.09

34.06

31

Colton Parayko

STL

16

5.33

20

3.23

1

0.29

8

1.11

12

7.33

125

4.19

92

4.13

149

7.76

33.37

32

Seth Jones

FLA

9

3

27

4.35

19

5.43

22

3.06

-24

2.53

129

4.33

96

4.3

109

5.68

32.68

33

Erik Karlsson

PIT

11

3.67

42

6.77

15

4.29

20

2.78

-24

2.53

191

6.41

29

1.3

94

4.9

32.64

34

Noah Hanifin

VGK

10

3.33

29

4.68

10

2.86

14

1.94

8

6.8

145

4.87

42

1.88

106

5.52

31.88

35

Mattias Ekholm

EDM

9

3

24

3.87

7

2

30

4.17

11

7.2

143

4.8

42

1.88

95

4.95

31.87

36

Vince Dunn

SEA

11

3.67

28

4.52

12

3.43

33

4.58

-3

5.33

137

4.6

29

1.3

79

4.11

31.54

37

Morgan Rielly

TOR

7

2.33

34

5.48

14

4

21

2.92

-8

4.67

126

4.23

21

0.94

131

6.82

31.39

38

Justin Faulk

STL

4

1.33

28

4.52

12

3.43

30

4.17

-9

4.53

124

4.16

78

3.5

108

5.62

31.26

39

Brady Skjei

NSH

10

3.33

23

3.71

10

2.86

42

5.83

-24

2.53

156

5.23

51

2.29

93

4.84

30.63

40

Filip Hronek

VAN

5

1.67

28

4.52

7

2

40

5.56

0

5.73

83

2.79

89

3.99

75

3.91

30.15

41

Ivan Provorov

CBJ

7

2.33

26

4.19

3

0.86

31

4.31

11

7.2

100

3.36

28

1.26

127

6.61

30.12

42

Jared Spurgeon

MIN

7

2.33

25

4.03

9

2.57

14

1.94

8

6.8

107

3.59

53

2.38

119

6.2

29.85

43

Alex Pietrangelo

VGK

4

1.33

29

4.68

2

0.57

16

2.22

11

7.2

123

4.13

41

1.84

139

7.24

29.21

44

Roman Josi

NSH

9

3

29

4.68

17

4.86

18

2.5

-26

2.27

150

5.03

42

1.88

95

4.95

29.17

45

Matt Grzelcyk

PIT

1

0.33

39

6.29

15

4.29

16

2.22

-6

4.93

94

3.15

43

1.93

101

5.26

28.41

46

Luke Hughes

NJD

7

2.33

37

5.97

16

4.57

16

2.22

-9

4.53

121

4.06

19

0.85

60

3.12

27.67

47

Cam Fowler

STL

9

3

31

5

8

2.29

14

1.94

12

7.33

88

2.95

8

0.36

87

4.53

27.41

48

Darren Raddysh

TBL

6

2

31

5

9

2.57

14

1.94

9

6.93

108

3.62

38

1.7

68

3.54

27.32

49

Owen Power

BUF

7

2.33

33

5.32

6

1.71

16

2.22

-13

4

139

4.66

26

1.17

109

5.68

27.1

50

Mason Lohrei

BOS

5

1.67

28

4.52

16

4.57

16

2.22

-43

0

92

3.09

25

1.12

103

5.36

22.55