Sunday, June 27, 2010

Review of "The Shack" by William Young

I loved this book. It wasn't well written (you are not surprised to find that William is a first time author), but the story and the depth outshines all it's flaws. It is not a easy read. I had to put it down several times as I couldn't take the images in my mind and I cried several times but I laughed even more.

The story is based around a fictional character, Mack, and his weekend with Elousia (El - semitic for God; ousia ancient Greek for being), Sarayo (Sanskrit for wind), & Jesus. The chapters leading up to the weekend will turn many away as it isn't a pleasant story. Make sure you have a box of tissues in easy reach for chapters 2-4.

Each chapter has a quote at the head. I liked each one. My favorites are:
Chapter 4: "Sadness is a wall between two gardens." -Kahlil Gibran
Chapter 6: " matter what God's power may be, the first aspect of God is never that of absolute Master, the Almighty. It is that of of the God who puts himself on our human level and limits himself." -Jacques Ellul
Chapter 14: "God is a verb" -Buckminster Fuller
Chapter 18: "Faith never knows where it is being led, But it knows and loves the One who is leading." - Oswald Chambers
The meat of the book has some great lines as well:
"Who wants to worship a God who can be fully comprehended...Not much mystery in that."
"Faith does not grow in the house of certainty."
"There are a lot of smart people who are able to say a lot of the right things...but they don't know me at all. So really how can their answers be right...?"
For me this book has take the place of "Mere Christianity" by C.S. Lewis as the best book for an introduction to Christianity. I plan on reading it again.

Addendum: The reason I read this book was because my father recommended it. He reminded me when we spoke :-)

Sunday, June 6, 2010

Measurement 101

When I got from spring break I noticed that most of my pants were tight and my typically lose pants fit nicely...not a nice feeling! I shouldn't have been surprised I had stopped going to the gym on a consistent basis and I wasn't watching what I ate for long (just the short time it was on my plate :-) The first step was obviously to get back in the habit of going to the gym. After about a week I noticed some pants felt better, but I wasn't happy with the "just try harder" approach. I decided I needed a change in my approach. I got up my courage and took the big step of...getting on a scale. It was not pretty. In fact it was slightly depressing, but I kept doing it every time I was at the gym.

The point of this post isn't my weight though. It is the about the saying: "If you can't measure it, you can't manage it." I have had an interesting history with measurement. I have always liked numbers. In fact I used to calculate (in my head) the estimated time of arrival (in minutes) to home every time I passed a sign with miles to home. Yes, I know I have issues. When I worked at Motorola they used to publish our software release sigma number. I found out that this number was the number of defects found in the last release divided by the number of lines of count. This was obviously wrong as I could have added NOPs and got that number lower without improving the quality at all. When I consulted with government contractors (almost all where SEI level 3 or higher) I found several measures that were more complicated but in effect similar to Motorola's sigma. When I spoke up about these measures being easily duped and misleading, the response was: what do you suggest we measure instead? Good question...I didn't have an answer. 

How do you manage if you have no quantitative way of saying you are getting better or worse? The key, I think, is something I was taught my a measurement guru a worked with once (Chris Miller, please forgive me if I butcher this:-). 

First start with the goal (i.e. improve productivity, quality, waist line). Next find some measures that are good predictors of those goals. Examples: 
  • Goal: medium rare meat - measure: internal temperature as measured by a meat thermometer.
  • Goal: smaller waist line - measure: same scale at the same time of day
  • Goal: software productivity - measure: lines of code (this is worth a whole post, but not this one)
Be careful not to believe the measures are the goal as this trap will lead to manipulation and a false sense of where you are. Now, look at your process (lots of people use an idealized process...another trap) and see what measures you can capture cheaply. Start capturing (sometimes the historical data is laying around and you can go back in time) and do some simple statistical analysis to see if any of these measures correlate with the goal measures and thus can be your predictive measure. 

Let me give me an example that most can empathize with. I have a goal of smaller waist line. My goal measure is my weight on the gym scale in the morning (experience has taught me my weight fluctuates widely throughout the day). My predictive measures eluded me until my wife introduced me to SparkPeople (image an intersection between Facebook and Weight Watchers) The web site is fairly painful to use, but the android app is quite good and lets me enter in all the food I eat fairly easily. Now I have a predictive measure that is fairly cheap. Now for the simple statistical analysis.

We are after correlation coefficient (CORREL in Google Docs Spreadsheet) . Next we square it and display it as a percentage ("The square of the coefficient (or r square) is equal to the percent of the variation in one variable that is related to the variation in the other." from The smaller the better. In my case it was .1% so I think it's a keeper.

One trap I fell into, and still do at times, is the old accuracy/precision trap. I have already described this:
I am sure there is quote out there, but here is my general rule: let the level of precision of a number be based on its accuracy. Accuracy of an estimate is always low so please don't use decimals (precision) If you don't understand, please read this explanation of the difference between precision and accuracy.
In my case it isn't estimation as much as it math. If you spend hours getting your predictive measure (i.e. calories consumed) you are wasting precious time. Let me give you an example. SparkPeople keeps my calories to 1/10 a calorie, but what if round my calories to the nearest correlation changes to .02%...yes in actually gets better (its a math trick...given different sets of data it could have gone .08% the other way) but the point is .08% or even .8% isn't worth the time it took to write it. If I round my correlation to the nearest whole percentage they both are 0% or practically perfectly correlated. So don't sweat the small stuff and keep you mind on the goal whether it be fitting into old pants or productivity improvement.