Interview with Kent Beck, creator of Extreme Programming

Kent Beck is a giant in software development.

Currently the founder and director of Three Rivers Institute (TRI), during his long career he rediscovered test-first programming and invented Extreme Programming. He now splits his time between writing, programming, and coaching.

Kent Beck is also a co-author of the Agile Manifesto, a way of thinking that profoundly influenced us here at Azullo.

This follows our recent interview with Robert C. Martin, which you can read here.

Almost a decade has passed since you co-wrote the Agile Manifesto. What were you expectations for Agile then?
I expected that by picking a universally attractive name everyone would say they were agile without doing the hard work to actually become so. Eventually the name would lose its meaning.

Have those expectations been met?
Yes, they have. A discipline like Extreme Programming requires a radical upgrade in both technical and social skills, especially for programmers. It requires become transparent, accountable, and responsible. Mostly I see people trying to get different results with basically the same techniques they always used, just rearranged slightly.

The good news is that the interest in Agile software development demonstrates that customers and developers want things to be different. It’s still not clear what constitutes an effective path to fundamental change, though.

Were there any specific experiences that led you to start thinking in terms of Agile?
Working in Smalltalk, working in an agile style was just part of the culture. If you could, you would get feedback about a programming idea with code snippets, without writing and formal classes or methods. You would immediately demo your results. And then you’d iterate from there.

What your advice be to developers that are starting out today?
Learn deep technical skills. Take courses in interpersonal skills. Be curious. And don’t take old programmers too seriously.

Do you think businesses outside of software development can apply Agile principles to the way they work?
I was talking to a CEO yesterday who told me how his conduct of business had been changed through contact with agile software development. By making marketing and sales activities clear and transparent he and his team were about to do a better job.

What do you see as the future for Agile?
It could go two ways that I can see. The word could continue to be watered down and end up meaning nothing, or the community could decide that substance is important and insist that some term, “lean” perhaps, be used to mean this style of software development that we envisioned–accountable, effective, collaborative, and ultimately far more valuable than what we are doing now.

The frontiers of software engineering are in startups now. A company applying continuous deployment has to adhere to outstanding engineering practices or they can’t survive. Big companies should be studying what’s happening there to understand the social and technical practices they’ll be using in ten years.

What are you currently working on?
JUnit Max continuously tests Java code written in Eclipse. It saves programmers time by reducing the wait for test results and helping them stay focused on programming. See www.junitmax.com for more details.

As I started running tests more often, I discovered that I was spending more time waiting for test results. Fortunately, tests don’t fail at random, so it’s possible to deliver results sooner on average by running the riskiest tests first.

I am also working on a long-term project to understand software design called the Responsive Design Project. You can find more details at http://bit.ly/buHMLC. One thing I have discovered is that I only use a few strategies when introducing design changes. I find this taxonomy helpful when deciding what to do next.

About Guy Cookson

Guy Cookson is the co-founder of Azullo and co-creator of Respond: a simple way for online publishers to earn extra revenue with contextual call-to-action buttons. Follow Guy on Twitter.
This entry was posted in Think Agile. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>