Programming Beyond Practices

  • November 05, 2016 How important is it to work efficiently?

    Today I'd like to talk a little bit about the idea of effectiveness vs. efficiency, and how it fits into your daily work.

  • September 20, 2016 Oscillations make our systems difficult to maintain

    One of the most difficult thing about designing systems (both in the technical and human sense) is figuring out how to keep oscillations under control.

  • September 18, 2016 The nature of deep thinking and deep work

    Once in a while, someone will ask me how to "go deep" in their work or studies. Usually, my answer to this question is mediocre at best: spend lots of time studying, spend lots of time practicing, wor...

  • September 16, 2016 Inflection points in incremental design

    I hope you're having a great weekend. Before I start my own, I wanted to share a little thought experiment that you might find interesting.

  • September 15, 2016 Hard work is not enough

    Today I have a message to share that I think may be the most important I've ever shared. It's not anything profound, but it's super important. Especially if you know someone who works very hard but of...

  • August 18, 2016 Building momentum in a direction you choose

    Lately, I've been thinking about how people work, what motivates them, what leads to good results, etc. What follows are some notes about my own path through life, which hopefully will be relevant to ...

  • July 31, 2016 The difference between "learning for fun" and "learning for work"

    I have to say I was surprised by the many thoughtful replies I received to my last email... I thought of it more like notes scribbled in the margins rather than a proper essay, but it generated some v...

  • July 30, 2016 Sharpening the wrong axe

    I hope you have a wonderful weekend. Before I start mine, I wanted to share a quick question that I think is worth ruminating on...

  • July 18, 2016 Four great articles on ways we misunderstand our own systems

    Failure is something that fascinates me, because it often comes down to not just doing the wrong thing, but thinking about things the wrong way. Systems thinking is hard even when you've studied it, a...

  • June 22, 2016 The most important skill you can learn as a software developer...

    A few years ago, I missed a flight (and the first night of a conference) because well...computers are terrible.