1. The document discusses how software developers often prefer technical "tools" like abstraction, logic, and decomposition over dealing with "people problems".
2. It argues that this reductionist approach can be damaging when applied to agile methodologies, as agile was originally successful because it emphasized a holistic and people-friendly process.
3. The key point is that software development depends on people, so agile needs to continue prioritizing human elements like simplification, intuition, and collective work over technical abstraction and decomposition in order to be effective.
8. Problems, problems.
In the software community we think of
ourselves, even define ourselves, as
problem solvers
But only for certain types of problem
9. People problems?
We dismiss people problems:
politics personality clash management
Identify it. Dismiss it.
10. So what?
People...
Commission, Design, Plan, Build, Install,
Operate, Fix, Support, Choose, Buy, Sell,
Use, Manage and Pay For
...Software.
But apart from that, they are irrelevant to it.
11. The right tools for the job
Technology People
Abstraction Simplification
Logic Intuition
Decompositio Holism
n
12. The trouble is...
Our preference for
Over these
these tools
Abstractio
n Simplification
Intuition
Logic Holism
Decomp
13. For example
w does this work?
wo parrots are sitting on a perch. One says
to the other Can you smell fish?
straction Holis
gic Intuiti
14. Reductionism
(its a problem)
I.T. suffers from reductionism
We have all seen the damage this does to
I.T. departments
Analyse, categorise, group, standardise,
commodatise
Leads to siloed roles, hand-offs, lack of feedback,
process over people, contracts over collaboration,
etc.
So why are we doing it to Agile?
15. Were forgetting what made Agile
work
Keep the big picture in mind
Iteration, not incrementalism
Whole team. Collective code ownership
Organise for the most important thing - people on the proje
Simplification rather than decomposition
It is taking us in the wrong direction
17. Another example:
iterations
De-humanised Human friendly
Only ever a few days from
much work to comprehend finished
ation ends ignored Manageable work load
dom feel done Genuine want to go for it at
18. Other examples
Reductionist, de- Simple, Intuitive,
humanised Holistic
r more elaborate estimation
niques Experience based estimati
arisome stand-ups Human friendly office
behaviour
i-week refactorings to
ch to an uber-design Refactoring: tidy-up as you
plethora of tooling Simple tools, e.g. cards
19. Glimmers of hope?
oQ mailer: July 27th
Social data as graphs of objects
Database migration at Netflix
Craft and engineering in the development process
Type checking in dynamic languages
New book: Individuals and interactions: An Agile Guide
Comparison of automation tooling
Example of Oozie workflow server
Tools for reverse engineering in .NET and Java
20. Glimmers of hope?
ew book: Individuals and interactions: An Agile
uide
The authors present a set of tools and techniques...
The book places a lot of emphasis on knowing yourself, and understanding how
nteract with others.
It presents the DISC framework for self- and team-discovery
How does the DISC framework compare to other psychometric tools, such as
Myers-Briggs Type Indicator? If someone knows their MBTI profile how does it m
o the DISC framework you present?
Our experience is that the majority of the really difficult problems that projects (a
even companies) face are not technology related but rather associated in some w
o problems with team dynamics, organizational behavior or communication issue
DISC is not the end all-be-all. But it is one component in helping team members
along, understand one another, and modify communication styles to maximize
21. We have seen this
before
Reductionism made Waterfall ludicrous
The tendencies are still there
Agile started with a clean slate, but its
starting to look messy
Its not the methodology - Its us
22. And my point is?
Agile was successful because it was people friendly, and
people are critical to software development.
It gave those of us who are not naturally good at people
friendly stuff, a people friendly process.
Agile wont progress unless we remember this
It needs to progress because it does not always work
Emphasis on tools is misplaced. It is of secondary
importance
People are of primary importance. They make the differenc