Friday, January 20, 2017

Zen and the Art of Motorcycle Maintenance

About 8 years ago, I discovered Zen and the Art of Motorcyle Maintenance when I did a search for "Best software engineering books". Its not a typical software engineering book. In fact it is categorized as a philosophy book. But because it is NOT a software engineering book it allows us engineers to think of our work deeply in general and deconstruct some of the basic principals. I was just re-reading the book and I feel like I've learned so much more the second time around. I think its because the book is filled less with facts but more with questions and since I've added a lot of experience since I've last read it, I'll be able to think a bit more deeply on these topics, and thus the reading experience seemed completely different. Here's some of my notes
  • Don't ask "what's new?" Instead ask "what is best?". The latter cuts deep while the former is broad. (I have a note to test this out more. Regardless I want replace the "whats up/whats going on" question for something better)
  • Physical discomfort is important only when the mood is wrong. When you are having fun you rarely notice how bad the weather is. But once you are in a bad mood, then everything about the weather sucks. The weather was the effect not the cause
  • Signs of possible poor work
    • listening to music - You can't think hard about what you are doing and listen to the radio at the same time. 
    • Going fast - When you want to hurry that means you no longer care about it and want to get onto other things.
    • Being detached from the job. Not caring. Cutting off at 5pm
  • "It was the attitude that found it, nothing else". Pirsig is talking about finding the issue with a motorcycle through careful testing and contemplation. I think this is brilliant think back that the hard software bugs that I have found were more due to my attitude
  • Some things you miss because they are so huge. We were seeing,looking at the same things but from a completely different dimension
  • Motorcycle riding is romantic, motorcycle maintenance is purely classic. People tend to think and feel exclusively in one mode or the other and in doing so tend to misunderstand and underestimate what the other mode is about
  • We can't remember every detail or else our mind would be too cluttered to think. We take a handful of sand from the endless awareness and call it the world
  • The ultimate test’s always your own serenity. If you don’t have this when you start and maintain it while you’re working you’re likely to build your personal problems right into the machine itself. (Don't program when anxious, frustrated, angry, etc.)
  • The only real learning results from hang-ups, where instead of expanding the branches of what you already know, you hve to stop and drift laterally for a while until you come across something that allows you to expand the roots of what you already know. An example is Newton expanding reason to account for instant rates of change.
  • Remove the degrees and grading system and you get real education. After removing grades it turns out that the more serious students were the least desirous of them. The more lazy ones wanted the grades because it told them if they were getting by. Grades cover up a failure to teach. When removed people have to question what is really being taught.
  • Mountains should be climbed with as little effort as possible. The reality of your own nature should dictate the speed. If you get bored, speed up. If you get tired, slow down. Then each footstep isn't just a means to an end but an event in itself. The middle of the mountain sustains life, not the top. (This remind me of a Sivers article)
  • Ego goals are destructive. Victories are hollow, you will need to prove yourself over and over again. The ego climber rejects here, wants to be there. Gets there and is unhappy with it. He just wants to be further up the trail.
  • Your mind gets stuck when you try to do too many things at once such as writing what to say and also what to say first at the same time. Try splitting this out by brainstorming
  • Stuckness should not be avoided. It's a predecessor to all real understanding. Egoless acceptance of stuckness is a key to understanding Quality.
  • If you’re going to repair a motorcycle an adequate supply of "gumption" is the first and most important tool. The thing that must be monitored at all times and preserved before anything else is the gumption.
There's also so much deep discussion on Quality and what it is and why it cannot be defined. Its funny because even at work we were having a discussion with management as the engineers felt we were sacrificing quality and then it led into a discussion on what quality was.