Sunday, January 25, 2015

Why is working harder such a popular management strategy?

The short answer: Working harder gives a short-term performance boost, but leads to a long-term decline in capability.

Organizations that commit to working smarter pay a short-term dip in output, but in the long-term enter into a virtuous cycle: improvement reduces effort for the same results, which is re-invested in further improvement.

Unfortunately, the opposite, vicious cycle is far more common. A decision to cut costs leads to working harder, which leads to a short-term performance boost with an unseen (delayed) trade-off. The decision-maker thinks "I got it right", feels vindicated, and applies linear thinking: more of the same should lead to further gains. This is wrong, but the bad effects -- losses in quality, capability, etc. --  are not be felt for some time. Meanwhile, committing to work "harder, not smarter" crowds out learning and process improvement.

Reference: Repenning and Sternan, Nobody ever gets credit for fixing problems that never happened [pdf]

Friday, January 23, 2015

Learn or Lose: Agile Coaching and Organizational Survival

by Daniel Prager
The illiterate of the 21st century will not be those who cannot read and write, but those who cannot learn, unlearn, and relearn. 
― Alvin Toffler 


Overview: Change and evolve, or wither and die

For organizations to survive and thrive in the Information Age they must become truly adaptive. This will require a huge cultural transition away from the mechanistic, hierarchical, command-and-control approaches that were highly successful through the recent Industrial Age, but have now expired.

What is needed for survival is a transformation into true Learning Organizations. The essential cultural change is from a rigid focus on performance and risk-avoidance around a fixed (or infrequently changing) business model, to one that embraces continual learning, experiments, and small, typically reversible, changes.

Agile and Lean methods talk about learning and change, but I want to emphasize these facets as the central factor to cultural change. Without embracing ongoing learning and change, one may well upgrade one’s old approaches by cherry-picking elements of the new “Agile” way, but this is likely to only be a short-lived improvement. It is not enough.

Read the rest of my article on InfoQ

Monday, January 19, 2015

Adding triangles to YouPatch

The Racket Logo
Following my talk at RacketCon 2014 a few participants expressed interest in getting a quilt based on the Racket programming language logo (right).

Since I used Racket extensively both in inventing and developing YouPatch ( I thought it would be a nice gesture to make a free quilt design available to members of the Racket community.

However, just running the Racket logo through the YouPatch process (as it stood) made for an unsatisfactory result on two fronts:

  1. The curves of the original design are excessively pixelated
    Original design: 230 pieces
    at a low resolution (right).
  2. YouPatch's aggregation algorithm combines neighboring squares of the same color into larger pieces to reduce the amount of cutting and sewing— a key feature. Unfortunately it did badly in a few cases (especially so on simple logos like this) because it was based on the somewhat simplistic idea of chopping each block repeatedly into quarters. By looking at the original design you can probably see several places where neighboring pieces should have been combined.
So I improved the aggregating algorithm, achieving typically a reduction of 20% in the total number of pieces. [There's a trade-off here against the number of distinct shapes involved. I could get 30%, but we decided to restrict shape dimensions to reduce confusion during construction.]

Improved aggregation: 191 pieces

And I added an option to take a pixelated design and automatically and selectively add half-square triangles to reduce the "stair-casing" effect.

With half-square triangles: 279 pieces

Without the schematics, here's the triangle design in all it's glory:

The Racket Logo as a pixel quilt design with triangles
Racketeers, if you'd like this design free-of-charge, let me know and I'll generate and send you the pdf with all the instructions. You'll still need to buy the fabric and find a friendly quilter. [Try your local modern quilt guild if you don't know one.] 

Let me know what size you'd like: 
  1. Small wall hanging: 32" x 32"
  2. Medium wall hanging: 48" x 48"
  3. Double bed or lap quilt for the couch: 64" x 64"
  4. Queen bed: 80" x 80"
Now, in case you prefer another programming language to Racket, here's a sample of what happens to the logos of some other awesome languages that also have a liking for the greek letter lambda (λ):

Top-to-bottom:   1. original image    2. YouPatch squares   3. YouPatch triangles
At the time of writing the triangle-generating technology has not been built into YouPatch's self-serve features, nor have we finalized pricing.

I think you can see that this facility makes a big difference to logo-style pixelation (simple design, few colors, low-ish resolution), and of course it can be used for non-programming language logos! ;-)

It also can produce interesting arty effects on photographs. Here's the first pixel quilt featuring half-square triangles that we've actually made, featuring my daughter blowing bubbles:

1. Original image  2. YouPatch schematic  3. Actual quilt

The Racket logo is available for free, and we'll be making a triangle option available in 2015 as part of YouPatch, but the technology exists to do it now, so get in touch if you're keen!

My talk at RacketCon 2014

In September 2014 I was invited to speak at RacketCon, which was co-located with the larger and also excellent Strange Loop conference, both held in St Louis.

Here's my talk (and slides), which was well-received by a very nice and supportive audience:

In it I talk (for a bit over 30 minutes) about my overall philosophy, Lean Startup, Racket, and mainly about the YouPatch journey to date.