Pragmatic Thinking and Learning

Table of Contents

Resources

  • Mind Over Machine: the power of human intuition and expertise in the era of the computer
  • Design Patterns: Elements of Reusable Object-Oriented Software
  • paper: Unskilled and Unaware of It: How Difficulties in Recognizing One’s Own Incompetence Lead to Inflated Self-Assessments
  • J.T. Hackos and D.M. Stevens. Standards for online communication. John Wiley and Sons, Inc., New York, NY, 1997.
  • Patricia Benner. From Novice to Expert: Excellence and Power in Clinical Nursing Practice. Prentice Hall, Englewood Cliffs, NJ, commemorative edition, 2001.
  • Hans Conkel. How To Open Locks With Improvised Tools. Level Four, Reno, NV, 2001.
  • Guy Claxton. Hare Brain, Tortoise Mind: How Intelligence Increases When You Think Less. Harper Perennial, New York, NY, 2000.
  • Betty Edwards. The New Drawing on the Right Side of the Brain. HarperCollins, New York, NY, 2001.
  • Daniel H. Pink. A Whole New Mind: Moving from the Information Age to the Conceptual Age. Penguin Group, New York, 2005.
  • Nicholas Negroponte. Dont’ dissect the frog, build it. Wired, 2.07, July 1994
  • Emotional design : why we love (or hate) everyday things
  • Kurosu, M., and Kashimura, K. (1995, May 7-11). Apparent usability vs. inherent usability: experimental analysis on the determinants of the apparent usability. Denver, Colorado. Conference companion on Human factors in computing systems. 292-293. Tractinsky, N. (1997). Aesthetics and Apparent Usability: Empirically Assessing Cultural and Methodological Issues. CHI 97 Electronic Publications: Papers http://www.acm.org/sigchi/chi97/proceedings/paper/nt.htm
  • Ashby, F. G., Isen, A. M., Turken, A. U. (1999). A neuropsychological theory of positive affect and its influence on cognition. Psychological Review, 106, 529-550.
  • William J.J. Gordon and Tony Poze. Conscious/subconscious interaction in a creative act. The Journal of Creative Behavior, 15(1).
  • George Lakoff. Women, fire, and dangerous things : what categories reveal about the mind. University of Chicago Press, Chicago, 1987.
  • Albert Rothenberg and Carl R Hausman. The Creativity question. Duke University Press, Durham, N.C., 1976.
  • Norman Doidge. The brain that changes itself : stories of personal triumph from the frontiers of brain science. Viking, New York, 2007.
  • Carol S. Dweck. Mindset : the new psychology of success. Ballantine Books, New York, 2008 ballantine books trade pbk. ed edition, 2008.
  • Danesi, M. (1994). The Neuroscientific Perspective in Second Language Acquisition Research. International Review of Applied Linguistics 22: 201-228.
  • The Emergence of Abstract Representations in Dyad Problem Solving http://www.stanford.edu/~danls/Dyad%20Abstraction.pdf.
  • Win Wenger and Richard Poe. The Einstein factor : a proven new method for increasing your intelligence. Prima Pub., Rocklin, CA, 1996.
  • Julia Cameron. The Artist’s Way. Tarcher, New York, NY, 2002.
  • Gerald M Weinberg. Weinberg on writing : the fieldstone method. Dorset House Pub., New York, N.Y., 2006.
  • Roger von Oech. A Whack on the Side of the Head. Warner Business Books, New York, 1998.
  • Gary Klein. The Power of Intuition: How to Use Your Gut Feelings to Make Better Decisions at Work. Doubleday Business, 2004.
  • Charles Weir and James Noble. Process patterns for personal practice: How to succeed in development without really trying. http://www.charlesweir.com/papers/ProcessPatterns.pdf, 1999.
  • Dan Ariely. Predictably Irrational: The Hidden Forces That Shape Our Decisions. HarperCollins, New York, 2008.
  • Nassim Nicholas Taleb. The Black Swan: The Impact of the Highly Improbable. Random House, New York, 2007

Tips

  1. Always consider the context
  2. Use rules for novices, intuition for experts.
  3. Know what you don’t know.
  4. Learn by watching and imitating.
  5. Keep practicing in order to remain expert.
  6. Avoid formal methods if you need creativity, intuition, or inventiveness.
  7. Learn the skill of learning.
  8. Capture all ideas to get more of them.
  9. Learn by synthesis as well as by analysis.
  10. Strive for good design; it really works better.
  11. Rewire your brain with belief and constant practice.
  12. Add sensory experience to engage more of your brain.
  13. Lead with R-mode; followup with L-mode
  14. Use metaphor as the meeting place betweenand.
  15. Cultivate humor to build stronger metaphors.
  16. Step away from the keyboard to solve hard problems
  17. Change your viewpoint to solve the problem.
  18. Watch the outliers: “rarely” doesn’t mean “never.”
  19. Be comfortable with uncertainty.
  20. Trust ink over memory; every mental read is a write.
  21. Hedge your bets with diversity.
  22. Allow for different bugs in different people.
  23. Act like you’ve evolved: breathe, don’t hiss.
  24. Trust intuition, but verify.
  25. Create SMART objectives to reach your goals
  26. Plan your investment in learning deliberately.
  27. Discover how you learn best.
  28. Form study groups to learn and teach.
  29. Read deliberately.
  30. Take notes with bothand.
  31. Write on: documenting is more important than documentation.
  32. See it. Do it. Teach it.
  33. Play more in order to learn more.
  34. Learn from similarities; unlearn from differences.
  35. Explore, invent, and apply in your environment—safely.
  36. See without judging and then act.
  37. Give yourself permission to fail; it’s the path to success.
  38. Groove your mind for success.
  39. Learn to pay attention.
  40. Make thinking time.
  41. Use a wiki to manage information and knowledge.
  42. Establish rules of engagement to manage interruptions
  43. Send less email, and you’ll receive less email.
  44. Choose your own tempo for an email conversation.
  45. Mask interrupts to maintain focus.
  46. Use multiple monitors to avoid context switching.
  47. Optimize your personal workflow to maximize context.
  48. Grab the wheel. You can’t steer on autopilot.

Chapter 2

They developed the Dreyfus Model of skill acquisition,1 which out- lines five discrete stages through which one must pass on the jour- ney from novice to expert.

Their research showed that quite a bit changes as you move from novice to expert. You don’t just “know more,” or gain skill. Instead, you experience fundamental differences in how you perceive the world, how you approach problem-solving, and the mental models you form and use. How you go about acquiring new skills changes. External factors that help your performance—or hinder it—change as well.

  • Stage 1: Novices Rules can only get you started, they won’t carry you further.
  • Stage 2: Advanced Beginners
  • Stage 3: Competent
  • Stage 4: Proficient Proficient practitioners need the big picture. They will seek out and want to understand the larger conceptual framework around this skill. They will be very frustrated by oversimplified information.

    But proficient practitioners make a major breakthrough on the Dreyfus model: they can correct previous poor task performance. They can reflect on how they’ve done, and revise their approach to perform better the next time. Up until this stage, that sort of self-improvement is simply not available.

  • Stage 5: Expert

The journey from novice to expert involves more than just rules and intuition, of course. There are many characteristics that change as you move up the skill level. But the three most important changes along the way are:10

  1. Moving away from reliance on abstract principles to past experience.
  2. A change in perception, where a problem is no longer a collection of equally relevant bits, but a complete and unique whole where only certain bits are relevant.
  3. Finally, a change from being a detached observer of the problem to an involved part of the system itself.

And hard work it is—merely working at a subject for ten years isn’t enough. You need to practice. Deliberate practice, according to noted cognitive scientist Dr. K. Anderson Ericsson, requires four conditions:

• well-defined task • appropriate difficulty • informative feedback • opportunities for repetition and correction of errors.

Do that sort of practice, steadily, for ten years, and you’ve got it made.

outlines some of the dangers of over-reliance on formal models

  • Confusing the model with reality
  • Devaluing traits that cannot be formalized
  • Legislating behavior that contradicts individual autonomy
  • Alienating experienced practitioners in favor of novices
  • Spelling out too much detail
  • Oversimplification of complex situations
  • Demand for excessive conformity
  • Insensitivity to contextual nuances
  • Confusion between following rules and exercising judgement
  • Mystification

Chapter 3

For instance, have you ever had the experience of trying to describe a dream when you first wake up? Many times it seems that a crystal clear, vivid dream evaporates from your memory as soon as you try to describe it in words. That’s because the images, feelings, and overall experience are R-mode things: your dream was generated in R-mode. As you try to put your dream into words, you experience a sort of bus contention. L-mode takes over the bus, and now you can’t get at those memories any more. In effect, they aren’t verbalizable.

Have you ever had the solution to a vexing problem (a bug, a design problem, the name of a long-forgotten band) come to you while you’re in the shower? Or sometime the next day, when you aren’t thinking about it? That’s because R-mode is asynchronous. It’s off as a background process, churning through old inputs, trying to dig up the information you need. And there’s a lot for it to look through.

And you might already be reaching for synthetic learning more often than you think. When faced with a difficult design problem, or an elusive bug, good programmers generally have an urge to reach for code, and build something that they can learn from. That’s R- mode synthesis, as opposed to the L-mode based analysis. That’s why we like prototypes, and independent unit tests. These give us the opportunity to learn by synthesis—by building.

Yes, it can. In fact, additional studies have shown exactly that: positive emotions are essential to learning and creative thinking. Being “happy” broadens your thought processes, and brings more of the brain’s hardware online.

The converse has been well-established. When you are fearful or angry—filled with negative emotions—your brains starts shutting down extra resources in preparation for the inevitable fight or flight. We’ll look at that side of the reaction in the (as yet) unwritten TryingTooHard. For now, just remember that aesthetics make a difference, whether it’s in a user interface, the layout of your code and comments, choices of variable names, arrangement of your desk top, or whatever.

“Metaphor, a common ground for both verbalizations and images, is a way to voyage back and forth between the subconscious and conscious, between right and left hemispheres.”

The use of metaphor is a powerful technique to open up creativity.

This notion of combining two different, incompatible ideas is the very definition of creativity according to researcher/philosopher Arthur Koestler. In his model, some particular topic area forms a particular frame of reference. The sudden switch from one selfconsistent frame of reference to a different, unexpected, incompatible frame of reference is the basis of a strong metaphor. That junction of the two different frames is called a bisociation.

I was talking to Kent Beck, the father of XP, about metaphors in general and he said:

“Metaphorical thinking is fundamental in programming, as it is in all abstract thought. When we aren’t aware of our metaphors we can lead ourselves astray. Mixing metaphors negates much of their power. Why do we override a method in a subclass? Clear metaphors make it easier to learn, reason about, and extend code.”

Humor is neither a waste of time nor a harmless diversion; instead, it reflects an important ability necessary for thinking, learning, and creativity.

In either case, the talent for humor comes from drawing or extending relationships beyond the norm, truly seeing “out of the box.” A quick wit—being able to draw connections between things that aren’t related, or to extend an idea past it’s breaking point—is a skill well worth practicing and honing, and encouraging in your team.

For more in-depth exploration, try playing with WordNet, available from http://wordnet.princeton.edu for all major platforms. This gives you not only synonyms, but also antonyms, hypernyms, hyponyms, and other derivations of various flavors.

Skills and abilities that you constantly use and constantly practice will begin to dominate, and more of your brain will become wired for those purposes.

At the same time, lesser-used skills will lose ground. “Use it or lose it” is perfectly accurate in this case, as your brain will dedicate more resources to whatever you are doing the most.

Chapter 4

Drawing is an R-mode activity.

First of all, drawing really isn’t about making marks on paper. Anyone with normal physical abilities can put the appropriate marks on paper as required for drawing and sketching. The hard part isn’t the drawing end, it’s the seeing. And this sort of visual perception is very much an R-mode task.

So it was Dr. Edwards who first suggested that to get at the real perception, you need to shut down the L-mode and let the R-mode do the task for which it is best suited. To accomplish this, she recommends an exercise similar to the following to help you experience a cognitive shift:

• Allow 30-40 minutes of quiet, uninterrupted time • Copy a simple image like the one shown Figure 4.2, on page 77 • DO NOT re-orient the page • DO NOT name any parts you recognize • Just say to yourself up, over, this goes that way a little bit, and so on

Why does this work?

It works because you’ve given your L-mode a job it doesn’t want. By consistently refusing to name the parts you see, the L-mode finally gives up. This isn’t a task it can handle, so it gets out of the way, and lets the R-mode processing handle it instead—which is exactly what you want.

That’s the whole point of Drawing on the Right Side of the Brain. It’s all about using the correct tool for the job.

How did you feel during this exercise? Did it feel “different”? Did you get a sense of losing track of time, and being immersed in flow? Did the drawing turn out better than had you tried to just copy it normally?

Dr. David Galin is a noted researcher at the Langley Porter Neuropsychiatric Institute, University of California at San Francisco. He believes that teachers these days have three main responsibilities to the whole student:

  1. Train both hemispheres. not only the verbal, symbolic, logical left mode (as is traditional), but also the spatial, relational, holistic right mode.
  2. Train students to use the cognitive style suited to the task at hand.
  3. Train students to bring both styles to bear on a problem in an integrated manner.

    Pair Programming

One of the more effective—and controversial—practices espoused by Extreme Programming is pair programming. In Pair Programming, you have two programmers working at a single keyboard and monitor. One person types code in the IDE (the driver) while the other (the navigator) sits back and offerssuggestions, advice, and kibitzes in general.

One reason this might work so well is that while the driver is locked in verbal mode at a particular level of detail, the navigator is free to engage more non-verbal (right side) centers.

When you talk to another person, or work hand in hand with someone at a whiteboard or a paper, your thinking tends to get more abstract. You are more likely to discover new abstract patterns, which is what all of us programmers are trying to achieve.

Image streaming is a technique designed to help harvest R-mode imagery. The basic idea is to deliberately observe mental imagery: pay close attention to it and work it around in your mind a bit.

First, pose yourself a problem or ask yourself a question. Then close your eyes, maybe put your feet up on the desk (this is perfect for doing at work) for about ten minutes or so.

For each image that crosses your mind:

  1. Look at the image and try to see all the details you can
  2. Describe it out loud (really use your voice; it makes a difference. Now you’re sitting with feet up on the desk and talking to yourself)
  3. Imagine the image using all five senses (or as many as practical)
  4. Use present tense, even if the image was fleeting

    Morning Pages

Here are the rules:

  1. Write your morning pages first thing in the morning. Before coffee, before the traffic report, before talking to Mr. Showerhead, before packing the kids off to school or letting the dog out.
  2. Write at least 3 pages, long hand. No typing, no computer.
  3. Do not censor what you write. Whether it’s brilliant or banal, just let it out.
  4. Do not skip a day.

It’s okay if you don’t know what to write. One executive taking this program loudly proclaimed that this exercise was a complete waste of time. He defiantly wrote three pages of “I don’t know what to write. Blah blah blah.” And that’s fine.

Because after a while, he noticed other stuff started appearing in his morning pages. Marketing plans. Product directions. Solutions. Germs of innovative ideas. He overcame his initial resistance to the idea, and found it to be a very effective technique for harvesting thoughts.

Why does this work? I think it’s because you’re getting an unguarded brain dump. First thing in the morning, you’re not really as awake as you think. Your unconscious still has a prominent role to play. You haven’t yet raised all the defenses and adapted to the limited world of reality. You’ve got a pretty good line direct to your R-mode, at least for a little while.

Chapter 5

We’ll look at four broad categories of problems: • Cognitive biases: How your thinking can be led astray • Generational affinity: How your peers influence you • Personality tendencies: How your personality influences your thoughts • Hardware bugs: How older portions of your brain can override the smarter portions

Defer Closure That means you’ll be at your peak of intelligence at the very end of the project and at your most ignorant at the very beginning. So, do you want to make decisions early on? No; you want to defer closure for as long as possible in order to make a better decision later. But that means critical issues may stay unsettled for a long time, which makes many people acutely uncomfortable.

Resist the pressure. Know that you will reach a decision, and the matter will be settled, just not today.

Agile software development embraces the idea of working with uncertainty. Early on, you don’t know what the project end date will really be. You’re not 100 percent certain which features will be present in the next iteration. You don’t know how many iterations there will be. And that’s perfectly OK: that’s the sort of uncertainty you want to be comfortable with. You’ll find answers as you go along, and by the end, everything will have been answered.

You can, of course, take some concrete steps to try to reduce uncertainty. You might talk the matter over with peers, google around for more information, or build a prototype—that sort of thing. But although these steps might help a little or a lot, they’re not a cure. There will always be elements that are just plain uncertain, and that’s not a bad thing. Chip away at it, but don’t be in a rush to nail down details if it’s not ready yet. Be comfortable with the fact you don’t know.

Author: Shi Shougang

Created: 2015-03-05 Thu 23:21

Emacs 24.3.1 (Org mode 8.2.10)

Validate