Professional Programmer Notes

or just call this my soapbox

Archive for January 2009

(Reminder) How to reset my environment settings in Visual Studio 2008

leave a comment »

A co-worker once asked me how to reset his environment settings. His environment was set to Visual Basic, but he wanted to change it to C#. Both of us are very experienced .NET programmers, but neither of us could remember how to do it. Here is a reminder to us all:

Goto Tools > Import and Export Settings > Reset all settings

Goto Tools > Import and Export Settings > Reset all settings


Written by curtismitchell

January 30, 2009 at 8:16 am

Posted in .net, CSharp

Tagged with , ,

What I learned about Kanban from Linda Cook

with 3 comments

Last night, Jan. 13, 2009, Linda Cook visited the Agile RTP user group and did a presentation on Kanban. I was an attendee.

Linda Cook’s presentation was my formal introduction to Kanban, as well as one of the few presentations that featured Lean principles.  So, here is what I learned:

Kanban is a Japanese word meaning sign board or billboard.  It describes a signaling system to trigger action.  And, it describes a “pull” system where workers/employees pull work from the system, as opposed to work being assigned to a worker.

Work in managed in queues.  Once queue management is optimized, a Kanban team will improve incrementally.

Kanban does not require:

  • big upfront planning
  • estimates
  • fixed cycles (iterations)
  • a dedicated team (team members can use part of their time for Kanban projects)

Linda mentioned the “Train Station Model” that one of her teams employed.  It is the idea that code is waiting at the station to be deployed.

Challenges & Criticism

  • Kanban is sort of like Waterfall
  • It is difficult to determine when to do a retrospective in an iteration-less workflow
  • How do you focus on small changes when the team wants a whole new system
  • There are limited tools available to support Kanban

Flow rate = the average time it takes for a task to go from creation to completion.  Flow rate can help determine estimates of future work.  *I wonder if this can lead to dynamic estimates?  As flow rate changes, projections on future work should change also.

Tools and supplies

For one of Linda’s teams, she used the following tools to manage the Kanban process:

  • A Whiteboard
  • Stickies, three colors (Yellow to record tasks, Pink to record problems, and Green to record acceptance criteria)
  • Marker pens
  • A rubber date stamp (to stamp the “born-on-date” on the stickies)

In practice, she suggests the following:

  • Measure flow rate constantly
  • Graph your flow rate
  • Planning is ad hoc and should not require a meeting
  • Plan constantly
  • Allow stories to be added when they are discovered
  • Don’t allow changes to anything that is in the Work-In-Progress queue
  • Per task, only use the necessary people for the task to plan

General Kanban process

  • All tasks are stored in a “pool”
  • The Business moves items from the pool into the Backlog queue
  • Workers/Employees move items from the Backlog queue to the Work-In-Progress queue (someone suggested using a Specify queue between the Backlog and WIP queue for task-specific requirements gathering)
  • After WIP, the tasks are moved to a Testing queue
  • From Testing, the tasks move to Done

Written by curtismitchell

January 14, 2009 at 10:13 am

Posted in Agile

Tagged with , , ,