First of all, this isn’t another post about how to be “a”gile and not do “A”gile. Neither it is about if Scrum is better than Kanban or XP. This post is all about the psychology behind the raw nature of human tendencies, it’s about professionals working in IT and having a simple question about why moving from Waterfall to Agile Mindset is often a tedious task and shockingly tough even though we know it improves productivity.
Let’s start with few ludicrous questions (or are they?). When you answer them hopefully I can stir up your thoughts and by the end of this post you may realise what I am talking about.
Are you Selfish?
Are you a Hypocrite?
Do you lie?
If you said “Yes” to all these questions then please read on. If you said “No” then that’s just a confirmation that you do lie, even to yourself (so keep reading !).
Being said that, the writer of this post is fearlessly accusing you of being a liar, hypocrite and selfish – what’s his answer?
Honestly – YES to All !!
Because, I am a human not an Alien or a Robot or a Furniture. It’s the obvious human thing to do/be. We can get millions of examples like that in any country, any religion, any race and many events of our personal lives. Let’s move back into the topic though and do something what you might have done during your nursery sessions as the cutest kid, according to your mum. Repeat this sentence twice in your head –
To some extent every human lie, act selfish and of course is a hypocrite by Nature !
Offended yet? No? Then you, my friend, understand what Agility means in Software Development. Yes, I am referring to those 4 Manifesto for Agile Software development and 12 Principles Behind Agile Manifesto. You are a frank, confident person who loves improving and Accept the truth – that’s how you improve.
Talking about Mission Impossible – I was referring to the Tom Cruise starer epic action movie series – love all of em. The “Mission” always feel impossible but somehow it gets sorted, often sacrificing one of a lead character and we see a happy ending overall. But here is a truth we all know, we as professionals know that professional life is cruel, misguided at times and not really a happy ending instead is just a constant struggle to achieve better than the last time.
Agile Mindset Adoption – is that Mission which is somewhat Impossible. The culprit is that “Being Human” nature and sadly we do come back to that basic nature quite often. The art is to quickly realise that you are falling back. Agile mindset teaches us that control.
What Agile principles teaches us is to NOT be Selfish, Hypocrite or a Liar – bloody opposite to human’s basic instinct.
Knowing that we humans are never 100% certain about our behaviour all the time, we are bound to fall back at times and sabotage agility for our own need. That can be for anything starting from getting a lazy day off, love for the code you write, sheer dedication towards the spreadsheet that you just made from scratch or just loving that fact that you are the Boss. This is the very reason we don’t want to be Agile in personal life.. at least I don’t. It feels restrictive, not fun and often unnatural.. which it is.
Now that we established we cannot get around it (correct me if I am wrong), the best thing we can do is to control them in professional life as much as we can. To become a successful company, all employees needs to be co-operative, adaptable, organised and communicate clearly, listen carefully and respect customers. The more you go against your human instinct.. the more successful you be as a professional. This will reassure the fact that you can’t stop it but you CAN control it for the sake of the business.
Scenario #1 : I am a developer who have 100 awesome ideas.
Road to Disaster – Although great, none of them has a real benefit to the company I work for. I am selfish so I will pitch for it, screw others it’s my area of expertise. I love thinking Lean but for this one time lets be a hypocrite and lie about the real value.
Road to Success – They are great but can’t see the value for the product. Let’s work on them on my personal time in place of the regular gaming session. If I find a connection which “solves a problem” I can pitch for it then.
Scenario #2: I am a developer who worked my arse of for a feature, which has to be rebuilt on client request
Road to Disaster – Although I know it is right, I would rather be a hypocrite, make an issue about it saying how upset I am, how it is not right as the requirements should be spot on in the first place. Name and blame Scrum or just Agile in general as it’s asking me to throw out my beautiful work.
Road to Success – Think Lean and ask why. Get a clear reasoning and get to it. Person who changed the requirement most probably know more than you about the market research or client request and they also must have considered the consequences. This may potentially overcome those and create more value. Embrace change very late while being agile (I invented that line.. stop laughing.. I did).
Scenario #3: I am a Boss (any kind) and believes that I can control development by pressurising
Road to Disaster – I have told to get the Feature X done in a Quarter. It can be done and I kind of don’t give a shit (selfish) what the estimates are as I have already given my words to the partners that it will be done (lie). They are giving us Millions for it so we have to hire more people instantly to get it ready quickly as we know 10 women can deliver 1 baby in 1 month (hypocrite).
Road to Success – I have “asked” the Development teams if we can do the Feature X done in a Quarter, before I give a “sane and realistic” date to the clients. We found out that around 70% is possible in the time frame which can produce a working iterations with all functionality but may have bugs. Clients are adamant that they need it polished with no bugs, in any cost or loose the deal.
I can do one of these or a combination of few –
- Get help from an agency to work on side with established Agile practices for the extra work “without” hiring new people.
- Tell the truth to keep it clean and save reputation. Clients are demanding sometimes not stupid. They are humans too and most humans have one thing in common.. common sense. They will respect you more for telling truth.
- Communicate every action clearly and show that you care. Developers will respect you more as they can feel your pain.
- Pressuring the way towards an impractical deadline (the decade old mentality) will only push it back and you will end up with 5 unfinished products rather than one strong “valuable” product.
- Fight your human instinct if you know you can control it.
That’s all folks !