agile day | think you don't need software craftsmanship? | sandro mancuso

34
Think you don't need Software Craftsmanship? http://www.londonswcraf @londonsw Sandro Mancuso @sandromancuso

Upload: jax-london

Post on 20-May-2015

1.064 views

Category:

Technology


0 download

DESCRIPTION

2011-11-01 | 12:10 PM - 01:00 PM | Victoria So you think you don't need craftsmanship? That it doesn't apply to your company? No time and it's just about silly exercises? Your company has no technical debt. Maybe you have a long career path ahead of you with lots of options besides management. Motivation, quality and agility are always high. If so, count yourself lucky. For everybody else: can you afford to ignore craftsmanship any more?

TRANSCRIPT

Page 1: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Think you don't need Software Craftsmanship?

http://www.londonswcraft.com@londonswcraft

Sandro Mancuso@sandromancuso

Page 2: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

I'm an artist

I love my beautiful code

Customers, deadlines, adding value? You are kidding right?

Page 3: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Agile Software Development

We are uncovering better ways of developing software by doing it and  helping others do it. Through this work we have come to value:

Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

That is, while there is value in the items onthe right, we value the items on the left more.

Page 4: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

We adopted Agile and now things will be OK

… and the Agile Transformation Era began.

Page 5: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

And then we spend 10 year focusing on...

… people, interactions, team building, the ecosystem

Process and Interactions became more important than technical practices

Page 6: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

  

Many Agile projects are now, steadily and iteratively, producing crap mediocre software.

The Agile Hangover

Page 7: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

We want to get things done...

… but we are under pressure

Page 8: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

The wrong notion of time

Page 9: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

It's all about feedback!

Page 10: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Agile Software Development

We are uncovering better ways of developing software by doing it and  helping others do it. Through this work we have come to value:

Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

That is, while there is value in the items onthe right, we value the items on the left more.

Page 11: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

The invisible threat

Code quality

Time per feature

Page 12: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Manifesto for Software Craftsmanshipraising the bar

As aspiring Software Craftsmen we are raising the bar of professional software development by practising it and helping others learn the craft. Through this

work we have come to value: 

            Not only working software,                             but also well-crafted software            Not only responding to change,                              but also steadily adding value            Not only individuals and interactions,                             but also a community of professionals            Not only customer collaboration,                             but also productive partnerships 

Page 13: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

What is Software Craftsmanship?

Software Craftsmanship is all about putting responsibility, professionalism, pragmatism and pride back into software development

Page 14: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Does context matter?Does it always matter?

Page 15: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

How do we know we are building the right thing?

How do we know we are building the thing right?

Page 16: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso
Page 17: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Adding value through practice

Automated testing Test first Test-Driven Development Pair-programming Continuous Integration

Page 18: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Don't discuss practices, discuss value.

Page 19: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Healthy Intolerance

How can you add more value and/or have smaller feedback cycles when not using our

practices?

Page 20: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Mastering the practices is hard …

… and that's why we practice

Page 21: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Perfect practice(narrowing the gap)

Page 22: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Software Craftsmanship is a long journey to mastery

Page 23: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Software Craftsmanship Attitude

- Owning your career- Not a 9 to 5 profession- Practice- Boy scout rule

Page 24: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

The attitude towards legacy code

Page 25: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Why do we want to be better developers?

Page 26: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Software Craftsmanship Movement

- Pragmatic Programmer and Software Craftsmanship books are published (1999 and 2001)

- Dec, 2008: Meeting in US defining a set of principles for Sofware Craftsmanship

- Feb, 2009: First Software Craftsmanship Conference in London

- Mar, 2009: Software Craftsmanship Manifesto

- Apr, 2009: Craftsman swap between Obtiva and 8th Light

- Aug, 2009: First SCNA conference in Chicago

- Oct, 2009: Apprenticeship Patterns is published

- Aug, 2010: LSCC was founded

- Oct, 2010: Second edition of conferences in London and Chicago

- Sep, 2011: Software Craftsmanship Conference in Germany

Page 27: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Software Craftsmanship is not...

… a church, trying to convert all developersIt's about leading by example and showing how we can

be better

… about beautiful codeIt's about continuously delivering value not writing

crap code

Page 28: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Raising the Bar

Page 29: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Stop...

… being miserable and negative… spreading your frustrations

Page 30: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

The only way to have people buying into what you believe is if they see you happy.

Page 31: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Craftsmanship is not enough to guarantee the success of a project but the lack of it can be the main cause of its failure

Page 32: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Agile and Craftsmanship complement each other and both are necessary.

Agile processes assume technical excellence and a professional attitude.

Software Craftsmanship takes technical excellence and professionalism to a whole new level.

Page 33: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

London Software Craftsmanship Community - LSCC

http://www.londonswcraft.com

Page 34: Agile Day | Think You Don't Need Software Craftsmanship? | Sandro Mancuso

Thank you

@sandromancuso

http://craftedsw.blogspot.com

http://www.londonswcraft.com