Notes to self

Not gold alone brought us hither

Dec 20, 2016

One on ones (howto)

Andy Grove explains how to have effective 1x1s in his classic management book High Output Management.

Setup:

  • Block regular time; tune frequency for individual
  • Show up on time; don’t cancel at the last minute
  • Prepare discussion points; ask him/her to do the same

Remember:

  • Be flexible; some structure but not too much
  • Do some “loose timeboxing”; ensure time to cover most pressing points
  • Set expectations around what is most important; create an incentive to focus
  • Be fully present; shift gears and get out of autopilot
  • Make a difference in the life of this person; devote full attention
  • Strike a balance between asking questions and listening; consider it a precious moment of connection
  • If the conversation diverges, get it back on track
  • Give them time and space to think about what they want to express

Meet:

  • Start positive by sharing a win
  • Ask direct but open-ended questions about goals
  • Ask questions about career plans; do not neglect the personal
  • Ask strategic questions (e.g. are we focused on the right things?)
  • End with a note of appreciation and gratitude; words of affirmation mean a lot

Nov 7, 2016

Crocker's Rule

Crocker’s rule:

Declaring yourself to be operating by “Crocker’s Rules” means that other people are allowed to optimize their messages for information, not for being nice to you. Crocker’s Rules means that you have accepted full responsibility for the operation of your own mind - if you’re offended, it’s your fault. Anyone is allowed to call you a moron and claim to be doing you a favor. (Which, in point of fact, they would be. One of the big problems with this culture is that everyone’s afraid to tell you you’re wrong, or they think they have to dance around it.) Two people using Crocker’s Rules should be able to communicate all relevant information in the minimum amount of time, without paraphrasing or social formatting. Obviously, don’t declare yourself to be operating by Crocker’s Rules unless you have that kind of mental discipline.

Note that Crocker’s Rules does not mean you can insult people; it means that other people don’t have to worry about whether they are insulting you. Crocker’s Rules are a discipline, not a privilege. Furthermore, taking advantage of Crocker’s Rules does not imply reciprocity. How could it? Crocker’s Rules are something you do for yourself, to maximize information received - not something you grit your teeth over and do as a favor.

“Crocker’s Rules” are named after Lee Daniel Crocker.

The above originally appears here. Crocker’s wikipedia page is here.

Nov 6, 2016

Get Unstuck

When learning a new programming language, a new framework, or a new technology, there will be times when you will get stuck. When you are stuck, do the following:

  1. RTFM
  2. Ask the rubber duck
  3. STFW
  4. Ask a friend or colleague

This order is important for maximizing learning.

Oct 28, 2016

Teaching

Teaching is most effective when done by a practitioner of the subject matter. That is why Bret Victor says this:

Real teaching is not about transferring “the material”, as if knowledge were some sort of mass-produced commodity that ships from Amazon. Real teaching is about conveying a way of thinking. How can a teacher convey a way of thinking when he doesn’t genuinely think that way?

The entire blog post is worth a read – and a re-read.

Oct 26, 2016

Pull request checklist

Open source projects have styleguides, and this one is one such example. What caught my attention is the code review checklist, though there are other nuggets in there.

Checklist

Before you submit your patch for review, look at the diff. Consider running through a quick mental checklist of all the things discussed above before submitting your patch for review:

  • Did I write tests and update docs?
  • Can it be any clearer?
  • Can I delete more lines of code?
  • Does the diff overall look reasonable?
  • Is there any cruft like stray blank lines or debugging output or irrelevant trivial refactorings?
  • Should the change be broken into multiple meaningful pieces?
  • Is this change really necessary at all?

(You might be surprised how often the answer to that last one is “no”.)

Jan 3, 2016

Advice from an astronaut

To the question: “What advice would you give a 13-year-old who wishes to become an astronaut in the future?”, the astronaut Chris Hadfield answered:

3 things:

  1. keep your body in shape. You get strong at the gym and thin in the kitchen
  2. get an advanced technical education, one that challenges you, at least a Master’s degree
  3. make decisions, and stick to them. It’s a skill that gets better with practice.