If you like this presentation – show it...
How to avoid screwing up technology (and how product managers can help) Paul Lomax, CTO, Dennis Publishing @PaulLomax
Felix Dennis (1947-2014)
So, how do you do tech if you’re not a tech company?
The problem with technology is people.
Buy, build or rent? “If it flies, floats or fornicates, always rent it.. It's cheaper in the long run.” – Felix Dennis (1947-2014)
Problem people #1: Developers
Writing code should be a last resort.
"We'll just build our own..."
Pragmatism (Your job is to stop this!)
“You’re not here to write beautiful code. You’re here to create business value.” Me, to developers
Technical debt W User story What was shipped
The vicious circle of technical debt
Record all borrowings Agree a repayment plan
Problem people #2: Customers & Stakeholders
“I’ll know what I want when I see it…”
Problem people #3: Product managers
Solution people! Product managers
Requirements re·quire·ment n. 1. Something that is required; a necessity. 2. Something obligatory; a prerequisite.
Requirements Discovery Ban ‘requirements’! Everything is negotiable
As an Account Holder I want to withdraw cash from an ATM So that I can get money when the bank is closed Scenario 1: Account has sufficient funds Given the account balance is \$100 And the card is valid And the machine contains enough money When the Account Holder requests \$20 Then the ATM should dispense \$20 And the account balance should be \$80 And the card should be returned Story: Account Holder withdraws cash Scenario 2: Account has insufficient funds Given the account balance is \$10 And the card is valid And the machine contains enough money When the Account Holder requests \$20 Then the ATM should not dispense any money And the ATM should say there are insufficient funds And the account balance should be \$20 And the card should be returned Scenario 3: Card has been disabled ... Behaviour Driven Development (BDD) http://dannorth.net/whats-in-a-story/
Be lean & agile.
Beware half-arsed agile Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan Whilst the items on the left sound nice in theory, we’re an enterprise company, and there’s no way we’re letting go of the items on the right. www.halfarsedagilemanifesto.org
Eliminate waste Amplify learning Decide as late as possible Deliver as fast as possible Empower the team Build integrity in See the whole Adopt lean principles
Ban 'requirements'. Focus on objectives. Address technical debt & a repayment plan. Communicate business value through BDD. Wield a pragmatism stick: beat developers and stakeholders with it. Help developers spot the icebergs. Avoid waste, prototype, spike, test & learn. Control scope, focus on a quality MVP. Kanban! Kanban! Kanban!
Paul Lomax Chief Technology Officer, Dennis Publishing t: @paullomax e: email@example.com
Picture credits Men's Fitness: http://www.mensfitness.co.uk/ Silicon Way: https://www.flickr.com/photos/iamadonut Code: https://www.flickr.com/photos/110751683@N02/ Donuts: https://www.flickr.com/photos/cobalt/ Post-it notes: https://www.flickr.com/photos/roxocubes Ship-wreck: https://www.flickr.com/photos/102537907@N03/ WTFs/min: http://www.osnews.com/story/19266/WTFs_m Tech debt matrix: http://philippe.kruchten.com/ Kanban: http://commons.wikimedia.org/wiki/User:Jeff.lasovski XKCD on Arbitrary Condiments: http://xkcd.com/974/ Mastercard: https://www.flickr.com/photos/shuttercat7 Technical Debt https://twitter.com/khellang Product Management Venn diagram: http://www.mindtheproduct.com/ Iceberg: http://ralphclevenger.com/portfolios/earth/ I'll Know What I Want When I See It: http://sharpsuits.net/Home Baby Squirrels: http://www.flickr.com/photos/_crazysanman/2391480258/ Lean Startup: http://lean.st/ Agile Manifesto: http://blog.theworkinggroup.ca/ Dilbert on Requirements: http://dilbert.com/strips/comic/2006-01-29/ MVP: https://twitter.com/jopas