Software Craftsmanship

41
Software Craftsmanship Sandro Mancuso @sandromancuso http://leanpub.com/socra

Transcript of Software Craftsmanship

Page 1: Software Craftsmanship

Software Craftsmanship

Sandro Mancuso@sandromancusohttp://leanpub.com/socra

Page 2: Software Craftsmanship

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 toolsWorking software over comprehensive documentationCustomer 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 3: Software Craftsmanship

“This Agile thing looks great. We want to ‘do’ it.”… and the Agile Transformation Era began.

Page 4: Software Craftsmanship

And then we spent over 10 year focusing on...

… process, people, interactions, team building, reducing waste and bureaucracy, the

ecosystem…

Page 5: Software Craftsmanship

… and processes and tools became more important than technical excellence.

Individuals and interactions over processes and toolsHmm! I forgot that manifesto

thing…

Page 6: Software Craftsmanship

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

software.

The Agile Hangover

Page 7: Software Craftsmanship

But what is to be Agile anyway?

Page 8: Software Craftsmanship

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 toolsWorking software over comprehensive documentationCustomer 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 9: Software Craftsmanship
Page 10: Software Craftsmanship

The invisible threat

Code quality

Time per feature

Page 11: Software Craftsmanship
Page 12: Software Craftsmanship

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:

Page 13: Software Craftsmanship

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

Page 14: Software Craftsmanship

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

Page 15: Software Craftsmanship

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

Page 16: Software Craftsmanship

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 17: Software Craftsmanship

What is Software Craftsmanship?

Software Craftsmanship is all about putting responsibility, professionalism,

pragmatism and pride back into software development

Page 18: Software Craftsmanship

Building the right thing right.

Page 19: Software Craftsmanship
Page 20: Software Craftsmanship

Adding Value

Through Practices

Page 21: Software Craftsmanship

Don't discuss practices, discuss value

~ Corey Haines

Page 22: Software Craftsmanship

… and that's why we practice

Mastering practices is hard …

Page 23: Software Craftsmanship
Page 24: Software Craftsmanship

The Quality Myth

Page 25: Software Craftsmanship

Quality cannot be measured.

Page 26: Software Craftsmanship

Code coverage is a dangerous metric and should never be used as a target or management tool.

Page 27: Software Craftsmanship

Software Craftsmanship is a long journey to mastery

Page 28: Software Craftsmanship

Software Craftsmanship Attitude

PassionCareer ownership

Deliberate practice

Boy scout rule

Page 29: Software Craftsmanship

If you want to be treated as a professional, start behaving like

one.

Page 30: Software Craftsmanship

Herbert de Souza (Betinho)

Page 31: Software Craftsmanship

Good practices are good until we find better ones to replace them.

Page 32: Software Craftsmanship

Agile software development is not Scrum

Page 33: Software Craftsmanship

Software Craftsmanship is not about beautiful code, TDD, or any technical practice.

It's about continuously delivering value via well-crafted software

Page 34: Software Craftsmanship

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 35: Software Craftsmanship

What does it mean to be a software craftsman?

Page 36: Software Craftsmanship
Page 37: Software Craftsmanship

How it is done is as important as getting it done

~ Eduardo Namur

Page 38: Software Craftsmanship
Page 39: Software Craftsmanship

take control of your career

Page 40: Software Craftsmanship

@sandromancuso

Page 41: Software Craftsmanship

Thank You

@sandromancuso