There is a pleasant dream where the world is black and white, problems are discreet, and solutions are straightforward. People that live in this dream are an obstacle unto themselves. The harsh reality is that we struggle daily to simplify things because they tend to be so complex. Most choices lead to outcomes that have both positive and negative aspects. This includes the choice of inaction (wrongfully referred to as "not choosing"). When presented with options, by and large people tend to make decent choices. The conundrum is identifying good options when none are presented. This skill, in many people, just plain sucks.

There is an old proverb: "Give a man a fish and you have fed him for today. Teach a man to fish and you have fed him for a lifetime." Perhaps I am oversimplifying fishing, but I struggle to adapt this proverb to systems operations. Perhaps it is due to the intangible nature of computing, but the one-step-closer proverb fits better (at least in my twisted brain): "Fix a man's car, and he can drive to the repair shop. Teach man to fix his car and he can go where he pleases." Why is this better? Perhaps it is just how my mind works. Perhaps it is because of the way symptoms present:

Dave: my car has issues.
Carl: what's wrong with it?
Dave: not sure.
Carl: why do you think it has issues?
Dave: It seems sluggish when pulling onto the interstate.
Carl: so it accelerates inadequately?
Dave: I guess.
Carl: What kind of car do you have again?
Dave: a brown one.
Carl: Uh, I mean make and model.
Dave: a Ronda Jackel.
Carl: is that carbureted or fuel injected?
Dave: um... um... it's got carbs.
Carl: really? what year?
Dave: oh, 2007.
Carl: okay, it's fuel injected.
Dave: oh, yeah.. That's right.. it's the Jackel GT, with the sports pack.
Carl: That has low-profile tires; are they properly inflated?
Dave: I think so, they look good.
Carl: when was the last time you checked?
Dave: last week, when I filled up. It costs like $58 to fill up. Gas prices are crazy!
Carl: *thinks*
Carl: Wow, where did you find high-test gas at that price?
Dave: Oh, I put 87 octane in that... that expensive stuff is a sham...
Carl: really? who told you that?
Dave: Alan
Carl: Who's Alan?
Dave: This great guy who taught me to fish.

Most people simply have no idea how their systems operate. They just know they are supposed to "go." Now, the purpose of this rant is really not to complain about car owners and their lack of knowledge (I'm one of them!), but rather to ask a wider audience about techniques to make the Carl's of the world better at their jobs.

Computing systems, like cars, can be immensely complex systems. When things go wrong, as they so often do, I feel you need someone who knows every single part. Not only should they know the part, they should know who built the part, why they built the part, when it was introduced into the system, what component it obsoleted, and what general advantages (and disadvantages) the newer part has over the older part. In car-speak, you should know who invented fuel-injection and when the industry transitioned, what advantages (and disadvantages) FI has over carburetor-based design. That should extend to every other part of the car down to the rubber on the tires and the stitching method used on the seat upholstery.

Note that I said "I feel you need someone..." I know a few people that can walk into a room with systems engineers and (knowing nothing about systems operations) assess a situation, ask a handful of high-level questions that results in at least two engineers slamming their heads into their desks. I call these people "Critical Thinkers." Critical Thinkers have the ability to critically think (surprise surprise), as well as understand other people's thought processes and deduce where they did not think critically.

Critical Thinkers are hard to come by, but they are out there. People with experience in computer science and operations are a little less hard to come by. It would make sense to take a Critical Thinker and teach them systems. However, to be really good at operations work, it takes years (probably five to ten). What is more challenging is finding a good Critical Thinker that actually wants to work in systems operations. What I constantly strive to do is mold people with solid technical skills and knowledge into critical thinkers. This brings us to the heart of this post.

I can hardly articulate my method of teaching critical thinking skills. Much of it is teach-by-example, but that has serious shortcomings in critical thinking scenarios. I could really use some breadth in my teaching/mentoring techniques. Does anyone have any good training materials that could be used to develop critical thinking skills? How do you cultivate and improve intuition?