Category Archives: Thinking

PMI — Plus Minus and Interesting

A technique for thinking from De Bono's Thinking Course

One of the first techniques introduced in the book De Bono's Thinking Course is the PNI approach.  In this approach you pick a problem (and a potential solution), and work through the Positive, Negative and Interesting points around the problem.

The goal is to spend a short (about 2-3 minutes) amount of time brainstorming the different ideas around a problem, doing this before investing energy or effort in attacking or defending a particular point of view.  By doing this, you are actually thinking about the problem rather than thinking about the attack or defense of a particular position.  This is important as it is easy to make the investment more in the attack/defense of a position, than in actually thinking about the problem itself.  This is particularly true for smart people.

Some examples of the PMI approach follow. I’m taking one pretty technical example (JavaScript on Rails), and using one of the exercises from the book. I think these examples highlight that the categorisation of ideas could easily differ depending on who is performing the exercise. In particular the idea of not using Ruby might be a plus for many people.

JavaScript On Rails

This issue is based around the idea of re-implementing Ruby on Rails in JavaScript (as done by Steve Yegge).


  1. Can use rails ideas in JavaScript
  2. Can use rails ideas in places where ruby isn’t possible
  3. deploy easily to JVM


  1. not using Ruby
  2. fewer languages in the mix


  1. Rails in an ECMA standard language
  2. JavaScript gives a C like language.


All Children Should Adopt a Senior Citizen


  1. Learn from their elders
  2. elders are cared for
  3. cheap care
  4. cheap babysitting
  5. learn responsibility


  1. not enough elder people
  2. children have enough on their plate already, and need time to just be kids
  3. will end up as a responsibility and chore for parents
  4. what happens if something goes wrong for the children


  1. less need for carers

The above gives some general ideas on the PMI approach. It might be worth trying it yourself. Perhaps you could play with the ideas:

  1. Safari on Windows
  2. Having all Staff Working a 20 hour week
  3. All Developers should use Laptops
  4. Use IntelliJ as an IDE
  5. Use OSX for Java Development

Naturally (since I’ve gone to the effort of writing this article), I plan to use this technique in my daily life (professionally and otherwise). It provides a useful tool for helping thinking.

Edward De Bono on Thinking

First on series of articles talking about thinking and learning

As an IT professional, my work is thinking and intellectual.  One of the ways to do better and improve as an Engineer is to improve my thinking abilities.  In this light I have been reading some of the works of Edward De Bono on thinking.  In order to best reflect on what I am reading and learning, I plan to blog about this.  We'll see how this goes in practice, but the definite plan is to regularly blog my thoughts.