Archive for the 'Practices' Category

Reading List (1st Half of 2010)

August 23, 2010
posted by Carlton

Wow!  I have read a LOT in the last six months!  I guess that is one of the advantages of being on the road for about six months.

  1. Understanding A3 Thinking – excellent description of how to use and create an A3: a Lean tool for executing Plan-Do-Check-Act (the Deming cycle).  This is the definitive source on A3, Henrik Kniberg has an Agile example and template on his site.
  2. Getting the Right Things Done – good description of the concept of True North, developing strategy from True North and the respectful nature of Lean, the rest is kinda dull.
  3. Pedagogy of the Oppressed – unique perspective on the characteristics of oppression, the oppressed and the oppressors; liberation for both the oppressed and the oppressors originates when the oppressed become fully engaged in the human dialogue of being, not simply exchanging roles with the oppressors.  Interesting connections to corporate life in the 21st century.
  4. Project Retrospectives – discussion on the importance of making a deep-dive examination of a software project when it finally is complete with detailed exercises and agenda.  This is great book if you want to know more about retrospectives.
  5. More Secrets of Consulting – just brilliant!  If you liked the first book, this one has so many practical gems for the consultant.  The only tedious parts of this book are the references to his other books.  My favorite tool: the Wishing Wand.
  6. The Future of Management – this book was a favorite of the CEO at my last client.  There are many Scrum concepts in the case studies provided.  Too bad that many of the principles of self-organization and empowerment supported by the executives never filtered down to the teams :(
  7. Coaching Agile Teams – WOW!  This is an awesome book, deep and rich with many profound insights on the various roles of an Agile coach.  In addition, Lyssa provides practical tools to improve both the coach and the individual.  This is definitely a book to return to again and again.
  8. Training From the Back of the Room – this is my favorite book from the last six months since it has had the most impact on my personal performance.  It has changed my perspective on how to train adults with its sound theory of education and myriad of exercises which bolster learning.  Share this book with anyone who trains adults (thanks to “Agile Bob” Hartman for tweeting this book title!)
  9. Practices for Scaling Lean & Agile Development – comprehensive companion book to Scaling Lean & Agile Development (which is very good on Lean and Scrum).  This book is full of good stuff, but just too long.  Unless you are a guru (or wanna be), stick with the first book.
  10. Succeeding with Agile – Mike Cohn has put out another great book based on his years of practical experience with Scrum.  This book is also pretty long, but not tedious.  A great read if you have some experience with Scrum, but want to improve the overall experience, apply targeted improvements or figure out how to expand the reach of Scrum in your organization – it covers it all.
  11. The Back of the Napkin – provides a framework on how to apply visual thinking tools to explain and sell ideas.  Since most of the work I do is conceptual, being able to draw a powerful picture is a useful skill.  A nice addition to my consultant toolkit and I look forward to sharing it with others (I didn’t find the companion book that useful, so skip it).
  12. Hitchhiker’s Guide to the Galaxy series (not pictured) – these books were consistently entertaining, surreal and light; most were less than 200 pages.  The pace slows down around book 3 (Life, the Universe and Everything), but delightful nonetheless.  I cannot believe I just discovered them in my mid-30′s!

Believe it or not, there are a few books I did not get a chance to read.  I guess these will have to wait until after vacation.

  • Leading Out Loud – about finding your authentic voice in business.  I bought this to get some ideas about leadership and self-organizing teams.
  • Hope is Not a Strategy – I need to understand the sales process better and improve my ability to sell.  This looked interesting.

Best Links of the Week – July 30th 2010

July 30, 2010
posted by Carlton

More great writings gathered from far and wide.

  1. Scrum at Mind Candy – brief video of a task board in action over a three month period.
  2. Confessions of an Agile Project Manager – PMI sponsored a video contest among PMP using Agile – check out the results on YouTube!
  3. Thoughts on two months pairingSarah Mei reflects on her experience pair programming and the benefits it has provided her professional & personal life.
  4. Can Agile Learn Anything from PMBOK?Dennis Stevens looks at how the PMBOK supports, compliments and impedes Agile and proposes some solutions to make the two synchronize better.
  5. Multitasking Gets You There LaterRoger Brown discusses a common paradigm in project management when dealing with too many projects and too few people.
  6. Waterfall, Lean\Kanban and Scrum – Ken Schwaber, co-creator of Scrum, discusses why Scrum relies on empirical process control theory and why they did not choose Lean or a defined process.
  7. The Role of Middle Management in Toyota or a Lean System – special post on the new focus of management in Agile organizations.
  8. Team Room – want to get increased focus, quality and retention from your Team?  Check out this team room article by Martin Fowler.
  9. Agile + UX: six strategies for more agile user experience – how Comcast is combining good user experience (UX) practices with Scrum.
  10. June 2010 CSM class – very cool visualization of a Certified ScrumMaster class taught by Tobias Mayer and Bachan Anand.

Best Links of the Week – Mar 27th 2010

April 27, 2010
posted by Carlton

More good links to share with others.

  1. Ouija Board Estimation\Seance Sizing – a new method for estimation that relies on team, not the undead.
  2. Is the Agile Community Being Unreasonable? – InfoQ takes a look at the friction between the PMBOK and Agile principles.
  3. Toyotas’ Journey from Waterfall to Lean Software Development – Henrick Kniberg takes a visit to Toyota and peaks under the hood to see how a Lean company develops software.  What he finds will surprise you!
  4. Defining the Last Responsible MomentKarl Scotland puts some meat on this fuzzy Lean concept by looking at the cost vs benefit of delay.
  5. Managing vs. Coaching vs. MentoringJurgen Appelo makes the distinction between these three concepts.
  6. The Problems With Acceptance Testing – thoughtful entry by Jim Shore reevaluating the importance of automated acceptance testing on Agile projects.
  7. Alternatives to Acceptance Testing – more from Jim Shore on what can be used in place of automated acceptance testing.
  8. More on Automated Acceptance TestingGeorge Dinwiddie adds his perspective to the topic of automated acceptance testing.
  9. The Path to Frequent Deployments – a report from Kent Beck, author of Extreme Programming, on how to  increase development speed by moving from annual to quarterly to monthly to weekly and finally to daily deployments.
  10. How to Be a Great Tech Leader – Richard Kasperowski talks about the technical elements needed to succeed when running an Agile project.

Best Links of the Week – Feb 22nd 2010

February 22, 2010
posted by Carlton

Links to share with your friends and co-workers

  1. Is an Agile PMO possible? – Curt Finch talks about the values of both Agile practices, PMI standards and how to marry the two.
  2. Self-organization: the secret sauce for improving your Scrum team – In this 90-miute video for Google, Jeff Sutherland talks about the role of self-organization and other advanced Scrum techniques.
  3. The Agile Flywheel – a short experience report describing how one company melded Scrum with their mature ITIL processes.
  4. Just do it: a quick intro to Agile’s technical practices – a summary of the technical core of Agile software development by Abby Fichtner.
  5. I love pair programming – Discussion on the effectiveness and the challenges of pair programming after a five month trial.

Best Links of the Week – Jan 12th 2010

January 12, 2010
posted by Carlton

Here are some links to the best of the blogs since the beginning of the year.

  1. The Role of Leaders on a Self-Organizing TeamMike Cohn talks about the important role management continues to play on Scrum teams.
  2. Agile Scales, Waterfall Doesn’t – or so claims Vasco Duarte during this 48-minute video from the Agile Eastern Europe 2009 Conference.
  3. Scrum, But – in this 10-minute video Scrum co-founder, Ken Schwaber, explains the negative impact on your business of “We use Scrum, but…”
  4. Management 3.0: The Era of ComplexityJurgen Appelo describes the new role of social networks as management dives into the 21st century.
  5. Faster, Better, Cheaper! TDD wins in a simple experiment – a side-by-side comparison of two software developers working on the same project – one using Test-Driven Development (TDD), the other not; the developer who used TDD increased his productivity by 50%!
  6. Agile Game Interview: Simplicity is HardClinton Keith interviews Chris Ulm, CEO of Appy Entertainment, about why Agile is an essential factor in their successful launch of high quality, iPhone games.
  7. Embedded CollaborationDave Rooney kicks off this post with a classic quote from “The Princess Bride” to explain the real meaning of collaboration.
  8. Agile Office Space – the Motley Fool shows off their cool Agile workspace and describes the principles they used to create this space.
  9. Wives of Rockstar San Diego Employees Have Collected Themselves – apparently some people are fed-up with yet another death march in the gaming industry and interesting from commentary from Clinton Keith that Scrum is not the solution, but provides visibility and a reality check to wishful thinking.

Best Links of the Week – New Year Edition

January 5, 2010
posted by Carlton

New Year links, a little late, but ready for your review.

  1. Defense Procurement Goes Agile – a summary from the Agile Process Leadership Network’s (APLN) October 2009  meeting describing how the DoD is moving away from waterfall to an iterative, incremental processes.
  2. Mixing it up with Agile & PMI – Orange County PM, Donna Reed, makes the claim that to be a successful Agile PM one needs to “move away from ACTIVITY-BASED project management toward VALUE-BASED project management.”
  3. Starting Scrum: What Would be the Logical Position of a Classic PM – SM or PO? – a Google groups discussion posed by a member with some excellent commentary.
  4. Synchronize Rather than Overlap SprintsMike Cohn explains why aligning Sprint end dates within one or two days of each other is a much better way to coordinate multiple Scrum teams.
  5. Agile Antipattern: Changing the Definition of Done – Bob Hartman discusses how the pressure to meet deadlines is simply “deficit spending” on your project with a bill that will get paid off sooner than you think.
  6. Welfare CSM Day 3: Experimental Mobiles & Rainforest Birds – interesting experience report about a different type of Certified ScrumMaster trainer; be sure to read the comments for additional insights and reflections by the other participants.
  7. UI Test Automation Tools are Snake Oil – an opinionated piece from Michael Feathers on the value of that expensive UI test tool gathering dust in your organization.

Ways Pair Programming Can Suck

March 2, 2009
posted by Carlton

flavor-tripping-2William Pietri has come up with a list of ways to do pair programming badly.  My favorites – #4 and #8.  Seriously though, these are anti-patterns to avoid, not to emulate.  Pair programming is a very powerful tool, we just need to get eliminate some of the misconceptions out there.

Excellent Blog Entry on Pair Programming

February 23, 2009
posted by Carlton

Jim Shore has linked to an excellent discussion on pair programming from the perspective of an experienced programmer being asked to pair full time.  Short summary – everything you thought pair programming was, it is not.  This blog entry is definitely worth a read!

Social-Only Scrum

February 4, 2009
posted by Carlton

Seems like Martin Fowler is adding more to the Scrum dogpile.  I have written about this concept here and here.  Again, I agree that it is up to us practitioners to make sure the technical practices are applied rigorously or you get a big Scrum mess.

Pair Programming Might Not Work For You,

January 30, 2009
posted by Carlton

… but don’t prohibit other people from giving it a try.

I heard the MOST ignorant statement the other day while facilitating a workshop.

“Pair programming is useful when you’re 23.  When you turn 24, there is no need for pair programming.”

From the tone of the speaker’s voice, I knew this individual was not interested in dialogue.  I also could not let their comment go unanswered and be accepted as a true, so I responded:

“I have had a different experience and I disagree with you.”

pears

Pair programming – probably the most controversial practice to come out of Kent Beck’s Extreme Programming Explained and continues to remain controversial almost 10 years later.  The practice has evolved over the years, but it is still essentially two people working together at one keyboard solving a code and design problem.  Since I have had such a different experience pair programming, I am not sure why some people have such a knee-jerk hatred for it.  Some of the most productive code and the best designs have come out of my pair programming sessions.  In my experience pair programming is a practice that allows the sum of two programming minds to exceed the individual parts.  

So where does this resistance come from?  I think much of it comes down to fear – fear that we are not as good as we think and the other person we are coding with will find that out.  As I have heard Ron Jefferies say, “You are not as bad as you think.”  Since I am not a zealot, I will be the first to admit pair programming is not for everyone.  It is an extremely intense shared design experience.  If you are not good at expressing yourself and having your ideas challenged, you will not like pair programming.  If you simply work best by thinking in silence and hammering away at the keyboard until the app is done, then pair programming probably will not be for you.

However, just because pair programming might not fit your personal style of writing code, that does not mean no one should be allowed to use it.  Let other people try and figure out how to succeed where you might have faltered.  There are a lot of ways to write high quality code and for some people, pair programming is their way of doing that.  Let us have some variation and see what produces the best code before limiting our options.