patkua@work

The intersection of technology and leadership

Page 24 of 53

Swarming on Stories

On leading a new team, I’m definitely trying to be as open to trying new practices particularly as I feel it is an important part of The Beginner’s Mind (topic to be talked about at InfoQ). One of the new practices we tried last week was swarming work on a user story.

Normally, our natural work in progress limit for development is limited by the number of pairs we have on the team (although not all tasks need pair programming). This time, I’m the odd one out, acting as tech lead and needing to do a handful of other activities including working to maintain constant flow between our BA and QA functions and guiding the development in the right direction. In a different world, I would have started a story and with other duties, probably be quite interrupted in flow to completion.

This time, we broke down a story into as many tiny tasks as possible, discussing those that needed some design elements, or identifying those tasks that could be taken in solo (such as knowledge gathering with report back) and the three of us worked on the same story. The result was a very minimal work in progress limit and actually, we made a lot of progress in a rich environment where we are learning about not only the constraints of the current build and development systems, but working out the best ways to implement what we need and deliver value.

I’m quite happy to report that I’m really liking the swarming on stories. It helps me feel involved in the way that things are going, rather than keeping on top of too many ongoing threads. I do wonder how many people it would be to scale to, but for now, it’s working for us. Inspect and amplify, or inspect and adapt!

Picture kindly borrowed from Max xx’s Flickr stream under the Creative Commons licence.

java.io.tmpdir on Mac JDK1.6

Diagnosing a test failure on a new machine today, I stumbled across this different behaviour in JDK1.6 on my Mac, running OSX10.6.6 where:

System.getProperty("java.io.tmpdir")

was returning a strange value of /var/folders/Ob/Ob-aqIAEG2WzgTa5ezd5qU+++TM/-Tmp-/ (note the plus characters) instead of the normal value of /tmp it used to return. Fortunately this property can also be set at on JVM start, by passing it in as an environment variable

-Djava.io.tmpdir=/tmp

UTF-8 not supported by ResourceBundleMessageSource

Every time I return to Java, I’m reminded by how hard simple things seem to be. Localisation is often quite important for applications, so I expected UTF-8 support out of the box with Spring Framework and Java via their ResourceBundleMessageSource and standard ResourceBundle classes.

Things are never that simple as pointed out by the following articles:

Despite the poor documentation not noting this, there are work arounds described in the links above. Alternatives include using the, much longer named, ReloadableResourceBundleMessageSource and InputStreamReader classes.

Putting the “user” into user stories

I’m helping to kick start a project where we’re identifying enough user stories to help build a solution towards a tight deadline for legal compliance. We’ve been making great effort at identifying and talking through the users of the system, particularly exploring how difference users have different needs. We’ve managed to talk to existing users of a similar system, and talked to people who will manage the new users. The hard bit is that our real system users don’t even exist yet.

My work colleague, Alex McNeil, will be proud that I’m pushing for the UX flag and we’ve finally got a UX person onboard which I’m delighted with. I think it’s worth fighting for guerilla UX whenever and however you can get it. In this case, more is always a better thing for end users. I want to be proud that users actually use all the features we build and enjoy using them at the same time. Without properly understanding who they are and what they are trying to accomplish, I’m confident we would have ended up with a naff system.

Also, unlike some developers who want to jump in and start coding, this part of getting into the mindset of a user you’re targeting is a key attribute to the proper use of user stories. Focusing first on understanding what problem your users are trying to solve is the key to building what is actually neeed. I’m not the only one in the agile community to feel this way, with many people inverting the classic and now dated, “As a … I want … so that … “ story format made popular in User Stories Applied.

We’ve made plenty of headway in the right direction and although I know we can take the UX much further, constrained by client expectations, time-conscious of a pending legal deadline. Don’t worry though. We’ll be trying to live out another agile principle of getting fast feedback, even if its done using other guerilla user experience methods.

I care about emphasising the user in user stories because I don’t want to be responsible for one of those systems people loathe to use. I hope you will care about it too.

Disabling Flip Screen

When using R#, or IntelliJ, the keyboard shortcuts often involving hitting some combination of CTRL, ALT, SHIFT. Unfortunately my laptop (using an Intel graphics card) for Windows 7 has CTRL+ALT+UP and CTRL+ALT+DOWN bound to flipping the screen.

Really surprising the first time and grew troublesome when I wanted to rearrange the order of some methods.

Disable this keyboard short cut on the dialog as shown above. This was accessed via the Control Panel – Intel (R) GMA Driver for Mobile.

Speaking at QCon London 2011

This year marks the 5th QCon London conference to be held on March 7-11, 2011. The program is full of strong and interesting topics. This year, I’ll be speaking on the Software Craftsmanship track.

I’ll avoid getting drawn into the arguments around all the blog posts going back and forth about whether Software Craftsmanship is a craft, and whether or not it’s good or bad in its current incarnation. I’ll assume that people attending this track care about getting better at what they do, focusing on how you go about doing this with a talk, “The Beginner’s Mind“.

Better yet, save £100 by using the following code to register: KUA100. Hope to see you there.

It’s never been about what you do

I find it fascinating talking to people about their agile implementation. Some people immediately claim they’re agile by describing the practices they use. I often ask a few more questions such as, “How is that working for you?” and they start to describe a number of problems they have. Another answer people often give is, “We’ve been doing agile for ages!”

“Doing agile” has never been the point. The agile mindset is about working with customers or stakeholders to deliver solutions whilst always continually improving. The practices are simply ways of getting there. It’s never been about what you do. What matters is how you do it.

Improving how you do something is easy yet requires constant discipline. First, you need to be continually asking yourself, “How does this practice help us?” and searching for answers to another, “How can we get better at this?” Talking to people outside your organisations often help, as does following what other people do around the world (made easy through social channels like twitter and blogs).

Reflecting on how I use twitter

Thanks to Mike Jones, my twitter life sprung out of nowhere just over a year ago. Reflecting on 2010 got me thinking about what impact it had on my life. Twitter is a mixed bag – just like facebook is. There’s a blurring about who you are, what your interests are and what you focus on.

Most of my connections on twitter tend to be focused on my profession – those people in the development, lean, agile and systems thinking space. Less of who I follow tend to be about things going on around London. There’s this slight blurring between professional and personal lives. I don’t think this is necesarily a bad thing. Where facebook, at least how I previously used it, was more focused on the social connections, Twitter provides connections to people across the Internet I wouldn’t normally make so many connections to.

The beauty of how it works is the simplicity and openness. While facebook is infamously open with your personal data, to the degree that they’ve now changed some of that, twitter is simply open with ideas. You don’t necesarily need to “accept invites” to send messages, don’t need to join groups to participate in conversations. Where the Interent and Google provide long term storage for ideas and the enabling infrastructure, twitter is definitely more the “hive mind” of humanity as it evolves. Memes, or ideas, cascade across through retweets. More relevant, though sometimes at a cost of polish and filtering, news arrives faster than through typical avenues. Observing this phenomenon intrigues me. For that, I’m indebted to Mike Jones to setting me up.

I’ll admit I’m not the earliest adopter of technology amongst my peers. Part of twitter’s problem, for me, is simply dealing with its large volumes of data. It’s not like we’re in need of it. Emails, web pages, and RSS feeds. Twitter is yet another source to add to the list. My information coping strategy for email doesn’t translate well into how I use twitter. I operate strict, near-to-zero inbox policies, responding quickly where possible to emails, or choosing to digest and never respond.

The sheer volume of tweets sometimes forces me to discard inforamtion much more readily than I’d like and that makes me slightly uncomfortable. I’m surprised how people can follow well over 200 people, even up to 1000s and cope with effective filtering of information. I’m all about the quality, not the quantity and I’m not employed to crawl through that information for my day job.

Still, I’ve found it much more interesting participating in the experiment and seeing where it takes me. I’d be interested to hear from you on how you use twitter, or what surprises it’s led you to.

Argyris’ article: Good Communication that blocks learning

Benjamin Mitchell asked for my thoughts on this article at the start of the month. I’ve finally had some time to read it so I thought I’d share my thoughts. It’s much easier to blog about it than to tweet it. Mitchell is a big proponent of Arygris’ work and a lot of what Mitchell talks about resonates a lot about with my own observations in the world.

This very old article, published in 1994, still holds relevance to today’s organisations and managements. I think, if anything, it’s even more relevant as organisations look to adopt agile methods and thinking to help improve responsiveness. Argyris links back stories and observations back to some of the ideas he is well known for including the difference between single loop and double loop learning and theory in use versus theory in action (what you say versus what you really do).

What stood out for me was Argyris’ interpretation of “good communication”. He uses plenty of examples where managers focus on the “positive” to the detriment of covering over their own opinions and what they really think. These examples naturally fuel his arguments between unsustainable change and how these very actions prevent people from accomplishing any learning. For me I find it fascinating his association with “good communication” meaning communication that solely focuses on “positive” emotions.

When I think of “good communication”, I more think of effective communication. For me, this is more of the idea behind the interests-based negotiation talked about in the book Getting to Yes, or the ability to really talk about the matters that really matter like in the books, Crucial Conversations and Crucial Confrontations. Lying, or hiding what you think is not what I’d call effective, or good, communication.

I still think that Argyris’ article has value and relevance for today. I see many of the examples of behaviours he writes about in managers trying to flex authority in order to empower people. I liked his description of a CEO “lending power” to people instead of trying to question why the system prevents people from taking action on their own. My only issue with the article is that he’s examples do not resonate strongly for me for demonstrating good communication.

Systems Thinking: The Leaders Summit

I was fortunate enough to attend The Leaders Summit organised by John Seddon’s company, Vanguard. The day unfolded with plenty of people talking about applying systems thinking/lean thinking to various environments.

Given Seddon’s experience with the public sector, I wasn’t surprised by the large number of people from other public sector organisations. In fact, given the perceived ineffectiveness of many public services, I’m all for this enthusiasm and interest.

Some of my key takeaways follow, however it’s definitely worth while checking out the, very much more detailed and thorough, blogging from Benjamin Mitchell here.

Change is hard – agile transformations, same for systems thinking transformations
A lot of the presenters talked about the difficult positions they were in before looking toward systems thinking. They all had their critics, all the usual people not wanting to do things differently, and support or lack of support from management. For example, one speaker, Denise Lyons from East Devon District Council encountered the “That’s how we’ve always done it around here” mentality.

Another speaker had to sneak their change program through existing mechanisms for change and business efficiencies. Even the questions asked by the audience reflected this.

I found this interesting as these are often the same problems we see, trying to introduce agile values into the software delivery capabilities of organisations. Even many of methods for helping people with change were the same.

Pragmatic Improvement
One of the questions we often struggle with, applying lean and agile to the software delivery part of an organisation, is should we really be working on the entire organisation structure. Listening to some of the speakers is that it’s worth starting somewhere and build on that success.

Rob Brown talks about the long changes still to go rolling systems thinking out to the rest of the organisation, but there was plenty of value already generated by implementing it in that area. For example, they still have to deal with the HR challenges of annual appraisals and all the budgeting games of the larger organisation.

All the speakers emphasised the way of starting small, and building on that success. Of course, this still ensures that you take as large of a systemic view as much as possible. Some of the constraints will be out of your control.

Labels don’t really matter
As much as everyone used the labels of the Vanguard consultants, I found it refreshing to hear about people really understanding the ideas behind lean thinking from a systems perspective without getting too hung up on the labels. One of the people talked about instead of “interventions”, they did “reviews”. It was also refreshing to get Dr Steven Allder, someone who came to systems and lean thinking through Peter Senge who didn’t use the same labels but you could see the same thinking behind it.

« Older posts Newer posts »

© 2024 patkua@work

Theme by Anders NorenUp ↑