2008

Backing the Truth into a Corner

Presented at Agile 2008

Projects that fail do so mostly because they build the wrong thing, not because they do a bad job building whatever they do build. A big part of the difficulty is getting the users to tell us what they want. Traditional requirements engineering approaches have had mixed results, but requirements capture through "checked examples" (eg Fit -style tests) seems to work very well. Why should that be? Are there clues to be had from post-Aristotelian notions of category in the cognitive sciences? If so, how can that help find better examples?

the presentation is available as pdf

Challenges of Agile Adoption

Presented at a QCon event.

What can you expect to happen when you move to adopt Agile practices? What should be true before you start? Where can you expect to end up?

The presentation is available as pdf. My work on this session was supported by Zühlke.

Measure for Measure

Presented at a QCon event.

Programmers love the programmer-centric technical practices common in Agile development at large, most of which are derived from the programmer-pleasing method called Extreme Programming. That's fine, but do they work? Those who pay for development to occur are often unmoved by anecdotal evidence and lyrical descriptions of the beauty of "well factored" code. They want objective evidence. It is starting to appear.

The presentation is available as pdf. My work on this session was supported by Zühlke.

Automated Testing in Practice

Presented at a Unicom event.

Some examples of automated testing projects in industry and the real benefits realised by the teams that carried them out.

The presentation is available as pdf. My work on this session was supported by Zühlke.

2007

Measuring the Effect of TDD, updated

An update of the Spa session. Presented at Agile 2007 (and also XpDay) Outputs from the session are available here.

This presentation has been retired.

Building (and Enjoying) an Effective Testing Culture

Presented at a Unicom event.

If automated testing represents a safety culture for programmers (as I argue), then which part of a high-wire artist's kit is it most like: the safety net or the balance pole?

The presentation is available as pdf. My work on this session was supported by Zühlke.

Measuring the Effect of TDD, updated

More science around TDD, an significant update of the XPDay session. Presented at Spa 2007 Outputs from the session are available here.

This presentation has been retired.

2006

Measuring the Effect of TDD

An attempt to do some science around the effects of TDD. Presented at XPDay 6

An overview of the wide-ranging science of "scale-free" or "power-law" distributions will lead into a discussion of the literature concerning how these can be observed in the run time and the compile time structure of object-oriented software, which will be carrtied forward again into an exploration of how some of these properties differ between codebases known to have been written TDD and otherwise.

This presentation has been retired.

Agile Architecture

Presented at Agile 2006. An update of the XPday 2005 session.

The presentation is aviable as PowerPoint. My work on this session was supported by WDS Global and Zühlke.

2005

Agile Architecture

A Co-presentation with Tim Joyce. Presented at XPDay 5

How can a Lego model of a steam locomotive provide deeper insights into architectural choice in an agile environment? Join this interactive presentation/workshop to experiment, challenge and debate ideas about "architecture" and "merciless refactoring".

This presentation has been retired.

Distributed Agile Software Development

An repeat giving of Around the World in 80 Standups, presented at London Agile Seminar

2004

Around the World in 80 Standups

A co-presentation with Tim Joyce. Presented at XPDay 4

WDS have had three teams running an international agile project for six months in Seattle, Poole and Singapore. Every working day, they use internet video to run distributed stand-ups to hand over between the teams in different time zones. Starting with a case-study, Tim and Keith will present the background to their project and describe their experience of distributed agile development, including some retrospective data and video clips from the stand-ups. They will then open the session for discussion and sharing experiences.

The presentation is available pdf My work on this session was supported by WDS Global.

How I Learned To Stop Worrying And Love Metrics

A co-presentation with Ivan Moore. Presented at OT 2004

Suitable quantitative information about project status is invaluable for project management, developer motivation and process improvement. However, many traditional metrics programmes struggle to get project staff to gather any numbers, what numbers are gathered are often of dubious utility, and are misinterpreted and abused. A development team using Extreme Programming gathers accurate, useful quantitative data without significant overhead, and uses these data to aid clear, effective decision making.

This presentation has been retired.

How to Fail at XP

A repeat giving of the sesison first given at XPDay 3 Benelux. The session at OT 2004 was blogged by James Robertson. My work on this session was supported by WDS Global

2003

How to Fail at XP

A co-presentation with Steve Freeman at XPDay 3 Benelux

You've convinced the management and the developers, rearranged the furniture, and even agreed a chocolate brownie budget for your meetings. Somehow, however, the XP migration just doesn't seem to be working. The build keeps breaking or delivery seems to be taking forever. How could this be? They never said anything about this in the books...

This presentation has been retired.

Everything You Know About Software Engineering Is Wrong!

First presented as part of the first annual series of Sociotech North lectures, then repeated at the inaugral meeting of the Edinburgh Agile Seminar.

Even after three decades and more, the "Software Engineering" approach to development often fails to deliver customer (or developer) satisfaction. Despite the best intentions of its authors Software Engineering in practice is too often tardy, wasteful, and bureaucratic. Recently, a reassessment of core development practices, values and principles (known as Agile Development) has come to offer a real alternative. Agile Development provides a framework within which all the stakeholders in a development project can maximise their ROI, in monetary and emotional terms.

The slides are avilable as pdf (not reccommended, the presentation makes much use of animation. Please email me for a Quicktime version). My work on this session was supported by Penrillian

XP for Embedded Software

A co-presentation with Nancy Van Schooenderwoert. Presented at XPDay 3

We'll look at the ways that embedded development is different from other kinds of software development, what that means for toolchains, and for Test Driven Development. A range of embedded systems experience from mobile phone applications to scientific instruments provides the backdrop for examples we will give. The intended audience is software developers who anticipate doing embedded work in future, as well as those now engaged in embedded development. The focus will be on how embedded work is different and what benefits XP brings to it.

This presentation has been retired.

Why Java Programmers Should Learn Python

A co-presentation with Ivan Moore. Presented at OT2003

This tutorial explores the benefits of learning a dynamically typed OOPL for someone who only has experience of a statically typed OOPL.

The slides are avilable as pdf. My work on this session was supported by Penrillian

2002

First-order Project Management

A co-presentation with Rachel Davies. Presented at OT 2002

Weinberg's "diagram of influences" provide a powerful yet simple framework for understanding project management issues in a semi-quantitative way. In this workshop this technique will be demonstrated and explored using the twelve practices of eXtreme Programming as an example. XP is well suited to this purpose as it has a small set of well-defined practices.

The session description is available here. This presentation has been retired.

Coaching Tips

A co-presentation with Tim Bacon. Presented at XPDay 2

Advice on the role of the coach in an XP team.

This presentation has been retired.

2001

Kick-starting XP

A co-presentation with Paul Simmons. Presented at XPDay

So you've read the books. Now what stops you doing XP?

This presentation has been retired.

Accentuate the Positive

A co-presentation with Ivan Moore. Presented at OT2001

This workshop is an attempt to discover those practices that contribute to making a software project successful. By the end of the session, participants should feel both positive about projects that they have worked on, and about introducing or changing practices to improve their current projects.
The session description is avilable here, and the output is captured here.