Monday, February 5

Random Quotes

I have this habit of jotting down quotes that strike my fancy in my teams wiki. No-one else seems to pay much attention to them however I find it useful to re-read them every now and again.

Quotes and Concepts

  • 25-to-1 productivity ratio: the observation that there is a 25-to-1 productivity ratio between the best and worst developers. Some sources insist it is 64 to 1 or higher. Fred Brooks?
  • 6 degrees of Separation
    the idea that everyone on earth is connected to everyone else by a few intermediary relationships from an experiment by psychologist Stanley Milgram in the late 1960's involving a chain letter passed from Omaha, Nebraska to Boston, Massachusetts
  • Chasm between Early Adopters and the Early Majority
    Geoffrey Moore Crossing the Chasm
  • Code Smell
    a hint that something has gone wrong somewhere in your code More
  • Conway's Law: - commonly stated as ``If you have four groups working on a compiler, you'll get a 4-pass compiler''. The original statement was more general: ``Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations.'' We might put it more succinctly as ``The means determine the ends'', or even ``Process becomes product''. More
  • Cost of Variety - Industrial cost goes down by about 15% to 25% per unit every time volume doubles, but goes up by 20% to 35% when variety doubles.
    George Stalk
  • Empirical vs. defined processes
    Consider making cookies. You have a recipe, and you follow it. If you make another batch, with the same ingredients, in the same proportion, in the same oven, you expect to get the same result. This is an example of a defined process.
    Consider instead the process of creating a cookie recipe. The value comes from its originality. You might try a number of variations, to get just the right result. Iteration is inherently part of the process; this is an empirical process.
    See Methods and Tools Winter 2002 page 10
  • Estimates
    • estimates prepared by those who will do the work are better than estimates prepared by anyone else
      Nine Management Guidelines For Better Cost Estimating. Communications Of The ACM 35:2 (Lederer 1992)
    • the people most competent in solving the task should estimate it
      (Jørgensen 1991)
    • Studies have shown that we are best at estimating when comparing things that fall within one order of magnitude
      • Improving Subjective Estimates Using Paired Comparisons. IEEE Software, 18:1 (Miranda 2001)
      • Multi-criteria Decision Making: The Analytic Hierarchy Process (Saaty 1996)
    • There is evidence that an estimate based on a developer's intuition is more accurate than other, more analytical approaches.
      Empirically Guided Software Effort Estimation. IEEE Software 17:6 (Johnson et al. 2000)
    • Popular method of agile estimating is by playing planning poker Planning Poker (Grenning 2002)
    • averaging individual estimates leads to better results (Höst and Wohlin 1998)
    • group discussions of estimates leads to better results
      A Review of Studies on Expert Estimation of Software Development Effort (Jørgensen and Moløkken 2002)
    • we are better at estimating “this is like that” than we are at estimating the absolute size of things
      (Lederer 1998; Vicinanza 1991)
  • Form follows function - Louis Sullivan
  • Form follows failure: "the form of created objects is always subject to change in response to their real or perceived shortcomings, their failures to function properly" Henry Petroski - The Evolution of Useful Things
  • Freezing Design As soon as one freezes a design, it becomes obsolete
    Fred Brooks
  • Fundamental Attribution Error
    human beings invariably make the mistake of overestimation the importance of fundamental character traits and underestimating the importance of situation and context.
  • Interruptions
    managers are able to work an average of only five minutes between interruptions
    Time Power (Hobbs 1987)
  • Parkinson's Law
    Work expands so as to fill the time available for its completion (1957)
  • Planning
    • Planning is everything. Plans are nothing.
      Dwight D. Eisenhower
    • No plan survives contact with the enemy.
      Field Marshal Helmuth Graf von Moltke
    • A good plan violently executed now is better than a perfect plan executed next week.
    • If you tell people where to go, but not how to get there, you’ll be amazed at the results.
      General George S. Patton
  • Queuing Theory
    • Little's Law
      states that in a stable system, the average amount of time it takes something to get through a process is equal to the number of things in the process divided by their average completion rate
  • Reaction to a new methodology
    three-step sequence of reactions that meets the introduction of a new methodological principle: (1) “it’s trivial”; (2) “it cannot work”; (3) “that’s how I did it all along anyway”. The order may vary from Object-Oriented Software Construction by Bertrand Meyer
  • Rule of 150
    150 is the maximum number of individual with whom human beings can have a genuinely social relationship. Groups work together more effectively when they are kept under the 150 member limit. From the theories of anthropologist Robin Dunbar
  • SNAFU Principle: ``True communication is possible only between equals, because inferiors are more consistently rewarded for telling their superiors pleasant lies than for telling the truth.'' More
  • Transactive Memory
    Close knit groups develop joint memory where each member is responsible for remembering a different portion of the joint memory - Daniel Wegner
  • Triumph of Truth A new scientific truth does not triumph by convincing its opponents and making them see the light, but rather because its opponents eventually die, and a new generation grows up that is familiar with it.
    Max Plank
  • User Stories
    • Aspects
      • alliteration - Card, Conversation, and Confirmation - by Ron Jeffries
    • Attributes
      • acronym INVEST -Independent, Negotiable, Valuable to users or customers, Estimatable, Small, Testable - by Bill Wake (Extreme Programming Explored)
  • Zero One Infinity
    Beware of arbitrary constants or limitations. The maximum size of a collection should be either Zero, One or Infinity - Professor van der Poel

No comments: