George V. Reilly

Brilliant Jerks in Engineering

Brendan Gregg’s Brilliant Jerks in En­gi­neer­ing is an excellent discussion of the "No Asshole Rule" applied to software engineers.

He posits two kinds of brilliant jerks, the selfless and the selfish. You might call them unempathic and so­cio­path­ic, re­spec­tive­ly. The former, if they develop some emotional in­tel­li­gence, are worth saving. The latter are simply toxic and probably need to be fired.

How to talk to people you disagree with

I came across an in­ter­est­ing post on Medium earlier tonight, How to talk to people you disagree with.

It can be hard to have a fruitful con­ver­sa­tion with people you’re at odds with, especially online.

Jeremy Caney has 10 sug­ges­tions:

  1. Leave the insults at the door
  2. Understand what’s driving their views
  3. Speak to their values
  4. Know what you’re talking about
  5. Ac­knowl­edge when you’re wrong
  6. Stay focused on the issue at hand
  7. Be prepared to take heat from your team
  8. Don’t expect ca­pit­u­la­tion
  9. Know when to walk away
  10. Be mindful of the onlookers

Git Diff Tips

The Git Diff utility is much more functional than the standard command-line diff.

To see changes relative to the staging area (aka the index), use git diff.

To see staged changes, use git diff --staged (or --cached).

To see changes side by side on a line (where it makes sense), use the --color-word option.

To compare two arbitrary files in the file system, use git diff --no-index.

To try some other diff algorithms, use the --patience, --histogram, or --minimal options. The default diff algorithm is --myers.

Lots more at the docs.

Review: Coco

Title: Coco
Director: Lee Unkrich
Rating: ★ ★ ★ ★ ½
Released: 2017
Keywords: animation
Country: USA
Watched: 25 December, 2017

Coco is another delightful movie from Pixar: It’s a magical tale of a Mexican boy who pas­sion­ate­ly wants to play music, even though his shoemaking family has rejected music ever since his great-great-grand­fa­ther pursued his own musical ambitions and abandoned his wife and child—the eponymous Coco, who is now ancient. Miguel discovers that his despised ancestor is none other than Ernesto de la Cruz, the most famous musician of his time. In order to enter a talent com­pe­ti­tion on Día de los Muertos, he steals Ernesto’s guitar from his mausoleum, whereupon he is trans­port­ed to continue.

Seattle: Overturned Truck

Seattle traffic ground to an eight-hour standstill today after a propane truck overturned on southbound I-5. Both directions of I-5 were closed until the truck had been emptied enough so that it could be righted. The wet winter weather didn’t help, as snow fell in­ter­mit­tent­ly.

Given the danger of a massive explosion, this was the right thing to do. Had the truck gone up, the outcome would have been much, much worse.

Still, it drives home (heh) the fragility of our in­fra­struc­ture. The closure’s effect rippled throughout the region’s roads, causing a systemic failure of the road network. Snarled traffic and chaos everywhere for miles.

We’ve had two similar incidents in recent years, both involving spillages of continue.

Stitches in my Finger

I’ve had stitches before, but never from a self-inflicted cut. Five stitches this morning from a bread knife slipping on a stale loaf that I was going to toast. I never did get that snack.

For­tu­nate­ly, it hasn’t been painful. The stitches should come out in 7–9 days. Meanwhile, typing is awkward and slow.

My brother David when he was eight or nine nearly ruined his thumb with a chisel. He was using it to make a wooden sign for his cub scout troop. The chisel slipped and jammed into the back of his left thumb. He didn’t sever the tendon and he got the full use of his thumb back, but he continue.

I Haz Shoes

I’ve been wearing a surgical boot since my heel surgery six weeks ago. The first month I spent getting around on a knee walker or crutches. For the last couple of weeks, I’ve been walking more and more, but always wearing the boot. The doctor told me today that I could start weaning myself off the boot, but not to rush it.

I wore shoes on my right foot tonight for the first time. I tried on a Doc Marten shoe but found it too stiff. It rubbed against the scar at the back of my heel. A pair of sneakers were more com­fort­able. I’ll bring the right sneaker to work continue.

OrderedDict Initialization

An Or­dered­Dict is a Python dict which remembers insertion order. When iterating over an Or­dered­Dict, items are returned in that order. Ordinary dicts return their items in an un­spec­i­fied order.

Ironically, most of the ways of con­struct­ing an ini­tial­ized Or­dered­Dict end up breaking the ordering in Python 2.x and in Python 3.5 and below. Specif­i­cal­ly, using keyword arguments or passing a dict (mapping) will not retain the insertion order of the source code.

Python 2.7.13 (default, Dec 18 2016, 07:03:39)
>>> from collections import OrderedDict

>>> odict = OrderedDict()
>>> odict['one'] = 1
>>> odict['two'] = 2
>>> odict['three'] = 3
>>> odict['four'] = 4
>>> odict['five'] = 5
>>> odict.items()
[('one', 1), ('two', 2), ('three', 3), ('four', 

Review: Skinny Dip

Title: Skinny Dip
Author: Carl Hiaasen
Rating: ★ ★ ★ ★
Publisher: Warner
Copyright: 2004
Pages: 496
Keywords: humor, crime
Reading period: 18–19 February, 2017

Joey Perrone is very surprised to find herself thrown off a cruise ship on her second wedding an­niver­sary. After a night of swimming, she washes up on a small Florida island in the company of a pre­ma­ture­ly retired in­ves­ti­ga­tor. Joey persuades Mick Stranahan not to report the attempted murder, but instead to in­ves­ti­gate and torment her worthless husband, Chaz, who turns out to be a biostitute for a major polluter of the Everglades, as well as a relentless pussyhound, an inept killer, and an all-round shitheel.

Hiaasen has a lot of continue.

HTML5 tables require tr inside thead

When I learned HTML tables back in the 90s, at some point I discovered the <thead> element for grouping the <th> column headers. What I missed was there should be a <tr> element between the two. In other words, a well-formed HTML table with a header looks like this:

Previous »