Friday, June 26, 2015

To be a Profession or to Unionize in the Software Industry?


Which form of industry growth would you prefer - why?

Which path leads toward the culture you desire in a software development organization?

This is a wonderful article on the topic - read it and discuss with your colleagues.


Programmers don’t need a union. We need a profession.  BY 


"Unions work best for commodity labor, and I use that term non-pejoratively. Commodity work is easily measurable and people can often be individually evaluated for performance. For example, a fishing boat operator is measured according to the quantity of fish she procures. A lot of very important work is commodity labor, so I don’t intend to disparage anyone by using that term. Commodity work can be unionized because there aren’t large and often intangible discrepancies in quality of output, and collective bargaining is often the best way to ensure that the workers are fairly compensated for the value they produce. Software is not commodity work, however. It’s difficult to measure quality, and the field is so specialized that engineers are not remotely interchangeable. When the work is difficult to measure and large disparities of quality exist, you have a situation in which a certain less-egalitarian (in the sense of allowing top performers to receive high compensation, because it’s essential to encourage people to improve themselves) and more self-regulatory structure is required: a profession."
"A profession is an attempt to impose global structure over a category of specialized, cognitively intensive work where the quality of output has substantial ramifications, but is difficult (if not, in the short term, impossible) to measure, giving ethics and competence primary importance. A profession is needed when it’s clear that not everyone can perform the work well, especially without specialized training. Here are some traits that signify the existence of a profession."
1) Ethical obligations that supersede managerial authority.
2) Weak power relationships.
3) Continuing improvement and self-direction as requirements.
4) Allowance for self-direction.
5) Except in egregious cases, an agreement between employee and firm to serve each others’ interests, even after employment ends.
 



Friday, April 17, 2015

Topics for Lunch-N-Learn



Brainstorming a list of topics for a Scrum/Agile lunch-N-learn session.


Slicing Stories – resources to slice vertical stories of value
Story Writing techniques:  w/ Q&A based upon participants real stories
Estimation techniques:  Affinity Estimation; T-shirt sizing -> converting to numbers; Planning Poker (the rule book)
Team building tools:  Infinite Loops; Helium Stick; Warp Speed;  Pair Drawing, etc.
Definition of Done/Ready exercise
Release Planning   How to derive duration with a complicated backlog
Agile Library Initiation  Bring books, make the rules, get funding, 1,2,3, GO!
Management 3.0 Book Club - join a group reading the best Agile book written.
Making Visual Information Radiators - define Radiator/Cooler;  elements of a Scrum board
Aspects of an effective Product Backlog
Agile Portfolio Planning - tools and techniques; estimation, cost of delay, prioritization, deciding what NOT to do
The principle of TDD via LEGO building;  anyone can learn the power of test first development
Does you development rest on a SOLID foundation - an overview of the SOLID principles
Collaboration Games to understand the customer;   12 Innovation Games;  Other resources
User Story Maps technique to achieve higher level understanding of the backlog
Launching a Team;  what’s required, best practices, examples and techniques
Team Practices:  a collection of quick tools to increase team work and collaboration
Learn Backlog Prioritization techniques:  Cost of Delay,  Perceived ROI,  Delivery Order, Gut Feeling, Loudest Yeller


see also:


Monday, February 23, 2015

Why Visual Management Techniques are so Powerful



How does the brain process visual clues to the environment and synthesize meaning about an ever changing landscape?  Tom Wujec explains the creation of mental models and why AutoDesk invest in visual management techniques to plan their strategic roadmaps.




Also in one of Tom Wujec's talks on How to Make Toast, he explains another important point of visual management - system's thinking and group work.

Don't worry... the mind will do all the work.  It will fill in the missing details, and abstract the patterns into the concept.  Here's an exercise, Squiggle Birds by David Gray, to experience this.




See Also:

Visual Management Blog

Visual Thinking - Wikipedia

David Gray on Visual Thinking

Ultimate Wallboard Challenge 2010  time-lapse of Vodafone Web Team's board

iPad Interactive Whiteboard Remote

Multitasking: This is your brain on Media
Multitasking: This is your brain on Media - Infographic by Column Five Media.

Wednesday, February 11, 2015

The Simplest Systems Thinking Exercise - How to Make Toast.

For many years one example of process thinking, resource gathering, requirements, implementation and acceptance criteria has been the exercise - make PB&J sandwiches.  I've done this with groups to discuss the simple task that we typically overlook as "experts" in sandwich making, that perhaps a 5 year old will find difficulty glossing over the - get bread - instruction.


Here's a TED Talk by Tom Wujec who has analyzed a similar exercise and draws some powerful conclusions from many iterations.  Watch it and then rethink the simple acts in your life.




So tell me again why group collaboration is important when you are solving wicked problems?

See Also:

Visual Thinking


Wednesday, December 24, 2014

Your Optimistic Bias won't Allow Your Estimate to Improve

When asked, many people wish to get better at estimation by tracking actuals and then assuming that some form of reflection upon those actuals will lead to better estimation.  I've long held a belief that it doesn't happen quite so simply in reality.  There are many assumptions in that proposal that are just glossed over.   Let's list a few (just for fun):  Actuals are accurate and precise representations, time will be allotted to reflections and learning,  people (teams of people) will all arrive at similar conclusions and learn from the reflection of estimate not equal to actual, future behavior will change significantly and quickly, among other assumptions.



Well finally science has something to say about this.  A study: "How unrealistic optimism is maintained in the face of reality" by Tali Sharot, Christoph W Korn & Raymond J Dolan published in Nature Neuroscience (2011) has some fMRI proof that these behaviors are hard to change.

In the study the authors find:
"Unrealistic optimism is a pervasive human trait that influences domains ranging from personal relationships to politics and finance. How people maintain unrealistic optimism, despite frequently encountering information that challenges those biased beliefs, is unknown. We examined this question and found a marked asymmetry in belief updating. Participants updated their beliefs more in response to information that was better than expected than to information that was worse. This selectivity was mediated by a relative failure to code for errors that should reduce optimism. Distinct regions of the prefrontal cortex tracked estimation errors when those called for positive update, both in individuals who scored high and low on trait optimism. However, highly optimistic individuals exhibited reduced tracking of estimation errors that called for negative update in right inferior prefrontal gyrus. These findings indicate that optimism is tied to a selective update failure and diminished neural coding of undesirable information regarding the future."
So, is this scientific challenge to your ability to get better at estimation enough for you to quit tracking actual time spent on stories/tasks?  The evidence is that your bias will keep you from learning except in the cases that prove you are faster/better/more awesome than you estimated you were.  Which leads many managers to decide that there teams are sand-bagging and just not as good as "we were in the older days," a different human behavior to study.

See Also:
Your Brain won't allow you to Believe the Apocalypse could actually happen


Wednesday, December 17, 2014

The ROI of Multiple Small Releases

In a few minutes how do you explain the benefits of multiple incremental releases to someone new to this agile mindset?  I'm convinced that if I try to use words (which is typically the case when caught in a hallway conversation) or even words and a few quick sketches - I will not do justice to the complex concept.  Why?  Because this concept deals with multiple what if scenarios that play out in long timeframes with little feedback.

So needing to have this conversation today, I had the time to do a search for some help.  And I found this wonderful article and video with a voice over explanation.

Business Benefits of Software Release in Multiple Increments

And there is an interactive Wolfram graphic you can play with yourself.


Now with this link and the video explanation (done with a german accent I think, gives it real authority) - I can solve the problem of coming to that shared understanding.

See Also:
Why one should quantify the Cost of Delay (video & article) by Black Swan Farming