Tag Archives: philosophy

Lean or Agile? Pick any two.

I still see many people writing about adopting Lean and/or Agile software development. I can remember how difficult it was for my team to work out what ‘Agile’ was and I think it has got harder since, as growing popularity has drawn charlatans into the area. I see two main types of useful articles.

  1. What (theory) : “It’s a philosophy” articles which usually point first towards the different values of agile and lean practitioners. But you can’t “do” a philosophy, so we get:
  2. What (practice) : Methodology – the study of methods that embody the philosophies. Many will say that Lean & Agile are not processes but I disagree; I think they are ‘software development process’ change processes.

I’d like to try something different: WHY?

The old ways of planning engineering projects, used for building a tower block, didn’t work for software. We don’t know enough, with sufficient certainty at the beginning of development to design top-down and are rarely sufficiently constrained by physics to be forced to build bottom-up.

Unusually for computing, the words ‘lean’ and ‘agile’ have useful meanings.

Lean is about ‘travelling light’, by avoiding waste in your software development process. It uses observation and incremental changesĀ of your current process, while you incrementally deliver business value via working software.

Agile is about doing only valuable work, being nimble and able to change direction, in response to changed requirements or better understanding. It recognises that there are very few completely stable business processes, so software developers need to identify changes that will have impact on the software under development and apply effort in a new direction.

I recommend that you consider both approaches, as they are complementary. Neither removes the need for appropriate engineering practices. We’re only throwing out hard-engineering stuff we packed but didn’t prove useful on a software journey. We throw out what we don’t need, to prevent the weight of unecessary baggage holding us back.

Talking to People IRL

I don’t know what I was thinking, but a few months ago I VOLUNTEERED to give a talk; in a room, with an audience of 50 people, all looking at my face. In theory, that should be fine. Put someone else in the metaphorical spot-light and I’ll happily ask them questions or debate with them about what they’ve said. I run workshops with a simple structure and a lot of ‘make it up on the fly’ in my work as a business analyst. I can do that, so I know that my dislike for ‘making presentations’ is completely irrational. Sadly, that doesn’t help.

Last Thursday, I faced my fear in the friendly environment of Web Staffordshire Meetup. I had my slides about ‘Fixing Intertwingularity’ to flick through, printed notes made of mind-maps, with a few red scribbles on them to guide me, based on my timed practice runs at home. I knew that if I stuck to the script, I could fit the content into my 15 minute slot, with a minute to spare.

I wasn’t nervous before I went up. When I was introduced, my ‘spontaneous’ quip about it being “a big crowd for a philosophy gig” went down well. I’m not sure what happened to the second half of that joke, or indeed to about a third of the first page of notes, carefully crafted to set my book as the context of where the weird ideas came from. I’d decided on a character I was going to play, to give myself a virtual cloak to hide in. He was running for the door at this point. From there on, I stuck to the script. Apart from stumbling over a few words I’d normally be fine with, and not being able to read some of my notes, I don’t think the rest sucked too badly.

I think I understand the problem now – it’s trying to do All The Things at once. I’ve already had the ideas and built a framework to constrain my words to a path heading in the right direction but with the added adrenalin, new words arrive uninvited when there’s nowhere to fit them in. I need to act as doorman to interruptions from my subconscious, deliver the talk, keep my place, look ahead to what’s coming next, make eye contact with the audience and remember when to change to the next slide. I can’t do that. I also need to not deliver a live commentary on what is going wrong.

Afterwards, I had some great chats with people who had found the subject “thought provoking” and I think I presented other ideas more lucidly. Maybe I need a shorter path with more gaps in the fence, so I can run free. I’ve put my career as a standup comedian on hold for now.