Showing posts with label Collaboration. Show all posts
Showing posts with label Collaboration. Show all posts

Monday, June 24, 2013

Kanban bubbles

Recently, a sunny day when my son and I went to the playground, there was a child blowing bubbles. The soap bubbles were flying higher and higher, sometimes they seemed to just hoover high up over the ground, suddenly take a dive and then back up in the air again. Both of us were fascinated.

"-Kanban bubbles."

I liked the sound of it. I guess there was some work issues processing in my head and the brain felt like combining work and play: Kanban bubbles.

At work, I am a part of a small team. We are about four team members working with software development, Kanban style. During the year we have changed stuff, improved things and experimented with tools like test driven development, pair and mob programming. We do, reflect and adjust.

We use a pretty standard way of visualizing our work, a Kanban board with swim lanes. In our agreed definition of done we have feedback (peer review) and exploratory testing as required activities after writing the code. One team member mostly gets to be the tester. The rest of us are mostly coders and peer reviewers

Our swim lane board doesn't really show that when all steps are passed, the release to production is done by the same team members that perform the first step. What goes around comes around. I tend to focus too much on the coding swim lane and too often miss what is happening at the right side of the board. Can our work be visualized in a different way?

Here is a suggestion, Kanban bubbles style.
The Whiteboard has two sections, the to-do area and the work in progress area. The to-do area is where we add stuff, prioritize and estimate. Important stuff at the top, not-so-important stuff at the bottom and we pick the most important stuff to work with.

Let's take a look at the work in progress area. In this drawing I have also added an imaginary circle.


Here I (sort of) have added our team definition of done steps and also tried to avoid those robotic terms that we usually see in Kanban and Scrum boards. After all, coders are humans, believe it or not.


In this picture one of the team members, let's call him Dave, has chosen something from the to-do area to work with. He moves the note to somewhere near Coding… word, draws a circle around it and a connector line to the word (make sure to only use those whiteboard pens, folks).
 

After some time the work in progress bubbles might look something like this.


What about limiting the work? By visualizing this way, there isn't very much space to add items, the actual (limited) space at the whiteboard is used for that. I think this way of visualizing probably is better suited for small teams.

The Kanban bubbles board is just an idea materialized from a moment of inspiration. Maybe our team will try this out in the real world, maybe not. The real world at the office is probably the only way to actually know if ideas are good or not. Or is it in the playground?

Friday, June 8, 2012

Code Food


Recently I got the chance to develop some really nice html5 features, learn new concepts and write code according to those strict JavaScript Douglas Crockford practices that I am a huge fan of. I want to share this knowledge, but how and when?

Most projects I've been a part of during my career has been sort of a silo development environment: experts doing this, other experts doing that. And when they finally meet it’s called “the Integration phase”. Sounds familiar?

I think silo expertise is bad, really bad, because nobody in the project will get the big picture.  When panic hits the project plan (it always does), developer X probably will need hours to figure out what developer Y has written. Start counting the number of WTF’s per minute! Who's paying for that? How can we break this Team Anti Pattern?

Here's a simple idea: have some lunch. Eat, drink and talk with your team - at least once a week. One of you will have something to share, maybe new insights in html5 development or a Visual Studio add in that makes our coding days brighter. It’s not a presentation, it’s just you talking about what you have learned the last couple of days while working in the project. The Project budget can probably afford to pay for the lunch session. If not, go get some pasta salad for your friends, bring your laptop, speak about something during 25 minutes and expect to be served lunch by one of your team members next week. Feeling hungry?