Slide 1

Slide 1 text

I, Programmer Dan North @tastapod

Slide 2

Slide 2 text

The Old Testament

Slide 3

Slide 3 text

In the beginning… 1844: All the code in the world

Slide 4

Slide 4 text

In the beginning… 1844: All the programmers in the world

Slide 5

Slide 5 text

100 years later…

Slide 6

Slide 6 text

Necessity is the mother of invention… 1944: Programmers hack on a Colossus Mk 2

Slide 7

Slide 7 text

People begin to specialise… 1960s: Debugging a “WITCH” mainframe in academia

Slide 8

Slide 8 text

Then we get commercial… 1974: Writing business software on an IBM S/360

Slide 9

Slide 9 text

There are Commandments… You shall have a Business Requirements Document You shall have a System Design Specification You shall have a Detailed Functional Specification You shall program in the manner of the Specification You shall have no other Specification before me Analysts shall Analyse, Architects shall Design Programmers shall Program, Testers shall Test

Slide 10

Slide 10 text

And more Commandments… You shall complete a Formal Change Request You shall provide Release Documentation You shall not release to Production yourself, lest you incur the wrath of the Support Engineers You shall not hack on that which is in Production* 
 * more of a guideline really

Slide 11

Slide 11 text

The New Testament

Slide 12

Slide 12 text

Then comes a new Covenant… 2001: Programmers drafting the Agile Manifesto, Utah The Agile Manifesto We are uncovering better ways… Individuals and interactions over processes and tools 
 Working software over comprehensive documentation 
 Customer collaboration over contract negotiation 
 Responding to change over following a plan

Slide 13

Slide 13 text

The teachings of the prophet Bezos All teams shall expose Service Interfaces Teams shall only communicate through Interfaces There will be no other form of communication You shall do this in the manner of your choosing All services shall be designed for external use There will be no exceptions …as revealed to us by his servant Yegge

Slide 14

Slide 14 text

The Book of Revelation

Slide 15

Slide 15 text

I, Programmer

Slide 16

Slide 16 text

You, Programmer You are …a programmer …working in a team …building a product …on a platform …in a department …in an organisation.

Slide 17

Slide 17 text

…a programmer learns the language learns the libraries monitors the alternatives learns the toolchain engages with the community

Slide 18

Slide 18 text

You, Programmer You are …a programmer …working in a team …building a product …on a platform …in a department …in an organisation.

Slide 19

Slide 19 text

…working in a team understands the process understands the roles collaborates with others …all the others! contributes to the team’s health

Slide 20

Slide 20 text

You, Programmer You are …a programmer …working in a team …building a product …on a platform …in a department …in an organisation.

Slide 21

Slide 21 text

…building a product understands the business objective studies the domain knows the stakeholders …all the stakeholders! contributes to the product

Slide 22

Slide 22 text

You, Programmer You are …a programmer …working in a team …building a product …on a platform …in a department …in an organisation.

Slide 23

Slide 23 text

…on a platform understands the path to production cares about runtime concerns values automation …not all the automation! contributes to the platform

Slide 24

Slide 24 text

You, Programmer You are …a programmer …working in a team …building a product …on a platform …in a department …in an organisation.

Slide 25

Slide 25 text

…in a department understands the wider context makes local trade-offs shares their knowledge across teams …all their knowledge! contributes to the department

Slide 26

Slide 26 text

You, Programmer You are …a programmer …working in a team …building a product …on a platform …in a department …in an organisation.

Slide 27

Slide 27 text

…in an organisation. projects the organisation’s values cares about organisation’s reputation shares their knowledge externally …all their knowledge! contributes to the organisation

Slide 28

Slide 28 text

You, Programmer You are …a programmer …working in a team …building a product …on a platform …in a department …in an organisation.

Slide 29

Slide 29 text

Thank you Dan North 
 @tastapod 
 http://dannorth.net