you are not a craftsman

58
You Are Not A Craftsman H. Alan Stevens

Upload: alan-stevens

Post on 20-May-2015

169 views

Category:

Technology


0 download

DESCRIPTION

Despite the existence of a Software Craftsmanship Manifesto on the web, the majority of software development does not require a craftsman to build. In this session we will examine the conflicting priorities software development teams must navigate and discuss various definitions of craftsmen and how they relate to building software. This session will be a mix of prepared content and discussion in which the audience will be asked to evaluate the role of well crafted code in the context of their own development team.

TRANSCRIPT

Page 1: You Are Not a Craftsman

You Are Not A Craftsman

H. Alan Stevens

Page 2: You Are Not a Craftsman
Page 3: You Are Not a Craftsman

Email/IM: [email protected]

Blog: http://halanstevens.com

Twitter: @alanstevens

Contact Me

Page 4: You Are Not a Craftsman
Page 5: You Are Not a Craftsman
Page 6: You Are Not a Craftsman
Page 7: You Are Not a Craftsman
Page 8: You Are Not a Craftsman
Page 9: You Are Not a Craftsman

Grow, don't build, software.

Fred Brooks

Page 10: You Are Not a Craftsman
Page 11: You Are Not a Craftsman
Page 12: You Are Not a Craftsman

I'm fundamentally uninterested in whether software development is a craft, an art, a trade, or a dessert topping.

Martin Fowler

Page 13: You Are Not a Craftsman

Software CraftsmanshipEXERCISE

• Software Craftsmanship means...• Software craftsmen value...• Developers who are not craftsmen value...•We need a Software Craftsmanship movement to...

• The purpose of a Software Craftsmanship group is...

Page 14: You Are Not a Craftsman

noun /ˈkraf(t)smənˌSHip/ craftsmanships, plural

Skill in a particular craft- I admire his engineering skills and craftsmanship

The quality of design and work shown in something made by hand; artistry

- a piece of fine craftsmanship

crafts·man·ship

Page 15: You Are Not a Craftsman

Craftsmanship is a self-sustaining system in which masters arrange for the training of their replacements and where status is based purely on the work you've done. Dave Thomas

Page 16: You Are Not a Craftsman

A collective form of self-preoccupation.

Michael Feathers

Page 17: You Are Not a Craftsman

Pete McBreen

In the end, software development is a craft skill that subtly blends art, science, and engineering.

It's not just a day job; it can be a passion.

Page 18: You Are Not a Craftsman
Page 19: You Are Not a Craftsman
Page 20: You Are Not a Craftsman
Page 21: You Are Not a Craftsman

Being against craftsmanship is like being against World Peace, kittens or sliced bread.

David Harvey

Page 22: You Are Not a Craftsman

Skepticism is not

pessimism

Page 23: You Are Not a Craftsman

Corey Alan Leon

Page 24: You Are Not a Craftsman

SkillEXERCISE

• The most important skill for a developer is...• To improve my skill by 5% I would...• If I ship crappy code...• Sometimes, very skilled developers...

Page 25: You Are Not a Craftsman

Great design does not come from great processes; it comes from great designers.

Fred Brooks

Page 26: You Are Not a Craftsman

I can teach you anything I need you to know, except how to care.

H. Alan Stevens

Page 27: You Are Not a Craftsman

My first proposal is that each software organization must determine and proclaim that great designers are as important to its success as great managers are, and that they can be expected to be similarly nurtured and rewarded. Fred Brooks

Page 28: You Are Not a Craftsman
Page 29: You Are Not a Craftsman

People with little skill have created

plenty of successful software.

Page 30: You Are Not a Craftsman

Aesthetics

Page 31: You Are Not a Craftsman

Martin Fowler

When you say 'craft' to people, they imagine fine workmanship, leather panelling, smooth joints - and consequently higher costs. The word 'craft' reinforces the tradable quality hypothesis

and that's a crippling disadvantage to those of us who know that speed requires good design. 

Page 32: You Are Not a Craftsman

Pretension

Page 33: You Are Not a Craftsman
Page 34: You Are Not a Craftsman
Page 35: You Are Not a Craftsman

LOTRO: The Cave Troll Picture by Devon Cady Lee Gorrem

Page 36: You Are Not a Craftsman

The Design Stamina Hypothesis

http://martinfowler.com/bliki/DesignStaminaHypothesis.html

Page 37: You Are Not a Craftsman

Let’s not devalue true craftsmen by

overstating the craft in software development

Page 38: You Are Not a Craftsman

www.ryanguitars.com

Page 39: You Are Not a Craftsman

www.ryanguitars.com

Page 40: You Are Not a Craftsman
Page 41: You Are Not a Craftsman

Monoculture

Page 42: You Are Not a Craftsman

That dialog box in Windows that asks you how you want your help file indexed does not in any way, shape, or form resemble what any normal English speaker would refer to as "craftsmanship."

Joel Spolsky

Page 43: You Are Not a Craftsman

Good EnoughEXERCISE

• At the thought of good enough I...• The minimum acceptable code quality...• Code that works is...• If I don’t have schedule or budget to build it right...

Page 44: You Are Not a Craftsman

Optimalist

Page 45: You Are Not a Craftsman

Minimum Viable Product

Page 46: You Are Not a Craftsman

Building the right thing is always more important than building it right.

H. Alan Stevens

Page 47: You Are Not a Craftsman

My biggest challenge as a developer is coding the right thing, rather than coding the thing right.

Liz Koegh

Page 48: You Are Not a Craftsman

I’m not going to mandate test-driving anything

(which is a huge about-face from what I was saying a year ago),

unless it will help.

Dan North

Page 49: You Are Not a Craftsman

WAT?

Page 50: You Are Not a Craftsman

Values

Page 51: You Are Not a Craftsman

Humility

Page 52: You Are Not a Craftsman

Sir Laurence Olivier

I think a poet is a workman.I think Shakespeare was a workman.And God is a workman.I don't think there is anything better than being a workman.

Page 53: You Are Not a Craftsman

Communication Over

Procedures

Page 54: You Are Not a Craftsman

Companies are like families.They are all dysfunctional.The key is to find a loving one.

H. Alan Stevens

Page 55: You Are Not a Craftsman

LOVE

Page 56: You Are Not a Craftsman

Understanding is more important

than coding.

Page 57: You Are Not a Craftsman

the moon

It's like nothingthey compare it to

Unknown

Page 58: You Are Not a Craftsman

Thanks For Listening!

Email/IM: [email protected]

Blog: http://halanstevens.com

Twitter: @alanstevens