October 28, 2008 in Software Development by Mark Levison
A few years ago Bas Vodde defined a simple test to help his coaching group determine whether teams were trying to be agile and whether it would be worth investing coaching time with these teams.
As described by Joe Little, the test is:
The Nokia Test is in two parts.
First, are you doing Iterative Development?
- Iterations must be timeboxed to less than 4 weeks
- Software features must be tested and working at the end of each iteration
- The Iteration must start before specification is complete
The experience is that if you ask a lot of “Scrum” teams if they can pass this part of the test, they can’t. If you are at a conference, often not a single team in the room.
The next part of the test checks whether you are doing Scrum (in Nokia’s opinion):
- You know who the product owner is
- There is a product backlog prioritized by business value
- The product backlog has estimates created by the team
- The team generates burndown charts and knows their velocity
- There are no project managers (or anyone else) disrupting the work of the team
in Software Development by Mark Levison
I wrote about this last week on InfoQ but I thought it worthwhile to call out the games I think are the
most useful and interesting. In the news item I used a quote from Mike Sutton, that neatly sums up the value of games to my mind: "There is nothing as effective to accelerate learning as a physical immersive game. The simpler the better, better still with near to no props. As low tech as possible. You get to see the penny actually drop with some folks too – and that is a great moment".
October 23, 2008 in Software Development, TDD by Mark Levison
A few weeks ago I ran my first Coding Dojo/Randori and while the participants learned from the session there had been a few key flaws:
- The problem was too big
- The problem was in a domain that was unfamiliar to everyone
- The facilitator (me) participated too much Ouch. It was true.
This week we ran a second session and had a much better time. The key to success – pick a smaller problem and let people struggle for a good long time before making suggestions. In addition remind them frequently to ask the audience for help.
This week's problem:
Score a bowling game, (credit to Bob Martin and Ron Jeffries for the idea) based on the following rules:
- A single bowling game consists of ten frames.
- For each frame, a bowler is allowed a maximum of two rolls to knock down all ten pins
- When a Strike is thrown, the current frame is finished
- Scoring:
• 0-9 pins knocked down: score the number of pins
• Spare: 10 + number of pins knocked down by the next throw
• Strike: 10 + number of pins knocked down by the next two throws.
Effectively this means the ball after a Spare is counted twice – once for the spare and once for the strike. With Strikes the next two balls are counted twice.
October 17, 2008 in Photography by Mark Levison
I’m looking for one or two Lightroom 2 books.
First I’m looking for a book (or even website) that provides a rock solid (fast, fast, fast) workflow. I’m reasonably proficient in Lightroom 1 – but am finding I have ever shrinking quantities of time to spend working with my images. Anything that can help save me even a few minutes everytime would be a god send.
The more difficult problem. I would like a book that gives me a deeper understanding of the develop module. I have got a fair understanding of the basic controls (white balance, exposure, fill, highlight recovery, vibrance, clarity etc.). But I get lost when I’m looking at the Curves, HSL controls, … – 2.0 has just made my life more complicated (in a good way). For Lightroom 1 I bought the O’Reilly Lightroom Adventure and its a good book, but I found the section on the develop module focused only the what. What effect does each control have? Good to a point – but I struggled to figure out when and why I would want to use the Curves (etc). Are there better books for 2.0? Martin Evening’s book gets great reviews but I’ve no idea about the depth in this area.
Other candidates include:
What can you recommend? If you happen to be Martin can you tell me – does your book have alot of depth in the develop section?
Caveat Emptor – if you buy any of the books after clicking on my link I get 4% of the price. In all likelihood that means I might be able to afford a coffee or two.
If you enjoyed this post, subscribe now to get free updates.
October 14, 2008 in Software Development, TDD by Mark Levison
During last weeks TDD Randori session I was asked, what are the advantages of TDD. Here is my short list:
- Writing tests first require you to really consider what you want from the code
- Short feedback loop
- Creates a detailed specification
- Reduced time in rework
- Less time spent in the debugger and when it is required you usually get closer to problem quickly
- Tells you whether your last change (or refactoring) has broken previously working code
- Allows the design to evolve and adapt to your changing understanding of the problem.
October 8, 2008 in Software Development, TDD by Mark Levison
We're ran out first TDD Randori session at lunch today (approx 15 attendees). I was inspired by Dave Nicolette's session at Agile 2008 and used the Danilo Santo's paper on their Brazilian Coding Dojo as a guide.
In a Randori we work as a group trying to solve a small problem using TDD:
- There is one computer with the video output projected on a screen so all participants can see it.
- Coding is done at the single computer by a pair of developers.
- One half of the pair switches out every 5 or 10 minutes.
- The pair on the keyboard should continuously explain what they are doing.
- The pair on the keyboard should stop when someone from the audience falls off the sled — and only continue when that someone is back on track again.
- The audience should give comments on design only when there is green bar. (During red bar audience can only ask questions)
- The pair should not continue on writing new code if other participants are not happy with the current design (The code should be always well refactored before starting to write new code)
- The pair will use TDD (Test-Driven Development).
I picked the problem based on a complaint I've heard from people after many of the TDD classes: "the examples are too trivial and don't speak to real world problems. I also hear that we don't enough chance to practice TDD"
October 6, 2008 in Software Development by Mark Levison
I keep on stumbling across posts about Agile 2008 and thought it might be worth sharing.
Karl Scotland: Agile Business Conference 2008 Review, Agile 2008 – Wednesday, Agile 2008 – Thursday, Agile 2008 – Friday
Lyssa Adkins: Deep Learning at Agile 2008
Eugene Nizker: 7 Agile Leadership Lessons for the Suits
Jeff Sutherland: Agile 2008 – Money For Nothing and Secret Sauce for Distributed Scrum
Gerry Kirk: Money For Nothing: Deliver More Value For Your Client (And You); We do Agile, but Where is the Quality?; Effective Pairing: Good, Bad and the Ugly and Challenges Distributed Agile Teams Face, and Ways to Overcome Them
Luke Hohmann: Agile-08 Repeat Performance and Slides
David Anderson: Future Directions for Agile (from Agile 2008)
Machiel Groeneveld: Agile 2008 – ideas and inspiration
Ryan Shriver: Thoughts on Agile 2008
Richard Durnall: Reflections on Agile 2008
Artem Marchenko: Trends in the world of Agile: Notes after Agile 2008
Kent McDonald: Agile 2008 – Starting out With The Best of Intentions; Agile 2008 – Solving problems requires asking the right questions.; Agile 2008 – Define Roles as Who Decides What, Not Who Does What; Agile 2008 – What simulations can teach us about our decision making process and Agile 2008 – Clearing the bridge on the move to agile – how to apply focus to removing obstacles.
Jason Mawdsley: Agile 2008 – Part II, Agile 2008 – Part III, Agile 2008 – Part IV and Agile 2008 – Part V
Agile Tools (no name?): Agile 2008 – Day 2, Agile 2008 – Day 3, Agile 2008 – Day 4 and surprisingly: Agile 2008 – Day 5
Lisa Crispin: Back from Agile 2008 – what did I learn?
Clinton Keith: Agile 2008 Conference
Gojko Adzic: James Surowiecki: The Wisdom of Crowds, Henrik Kniberg: 10 ways to screw up despite Scrum and XP, Aslak Hellesøy: Executable User Stories with RSpec and BDD, Marry Poppendieck: The elephant in the room, Robert C. Martin: Quintessence, Marcus Evans: the FrAgile organisation and Agile 2008: the end
Mishkin Berteig: First Day of Agile 2008 Conference
Ade Miller: Agile 2008 – Distributed Agile, Agile 2008 – Conway’s Law and Distributed Teams, Agile 2008 – Industrial Logic’s Agile eLearning, Agile 2008 – Something is wrong but why?, Agile 2008 – Scrum and Kanban, Agile 2008 – One Hundred Days of Continuous Integration
Pascal Van Cauwenberghe: Agile2008 – Opening, Agile 2008 – Tuesday sessions, Agile 2008 – Wednesday morning, Agile 2008 – Wednesday afternoon pt. 1, Agile 2008 – Wednesday afternoon pt. 2, Agile 2008 – Thursday, Agile 2008 – Friday pt. 1, Agile 2008 – Alan Cooper keynote, Agile 2008 – Final sessions, leaving Toronto, The Business Value Game: v1.0 released
Dave Hoover: Uncle Bob On Craftsmanship At Agile 2008, Craftsmanship over Heroics
Damon Poole: Deep Agile 2008 – Not as Easy as You Thought!
Josh Sherwood: Agile 2008 – Agile Skeptic?
Johannes Link: Sleepless in Toronto
Eric Lefevre: The Pomodoro Technique: can you focus – really focus – for 25 minutes?, Craftsmanship over Execution
Valtech French Blog
Danilo Sato: Learning Kaizen from Toyota, New Product Development @ Toyota, Starting a Kanban System for Software Engineering with Value Stream Maps and Theory of Constraints, Come and Take it! Lean Pull Applied, Expanding Agile: the Five Dimensions of Systems, Coding Dojo @ Agile 2008, My Agile 2008
David Starr: My Life in a Bush of Legacy Code – Michael Feathers and Value Stream Mapping.
MSDNRSS (clearly wants to remain anonymous): A summary of an Agile 2008 summary
Gatorxero (why can’t people use their real names?): Questioning Agile with Scott Barber
Eric Babinet and Rajani Ramanathan: Dependency Management in a Large Agile Organization
James Shiell: Agile 2008, The Wisdom of Crowds, Agile Game Development, Hiring for an Agile team, XP – J. B. Rainsberger’s Greatest Misses and Embrace Uncertainty.
Michael Tardiff: Feeling Agile
Raghav Ramesh: Agile2008
Allan Shalloway: Time for Agility to Truly Come of Age – Reflections on Agile 2008
My own efforts:
Agile 2008 a Personal Retrospective and on InfoQ: Agile Alliance Functional Test Workshop
Coaching Self Organizing Teams and Part Two (Joseph Pelrine)
Touchy Feely Impediments to Agile Adoption (Amr Elssamadisy)
Beginner’s Mind – An Approach to Listening (Jean Tabaka and David Hussman)
Overcoming Resistance to Change (Dave Nicolette and Lasse Koskela)
I’m sure there’s lots I’ve missed – but after crawling through the top 200 results on google et al, I’ve had enough.
If you enjoyed this post, subscribe now to get free updates.