Robert C. “Uncle Bob” Martin has written two books on software craftsmanship, a half-dozen on programming and patterns, was the CEO of Object Mentor, signatory of the Agile Manifesto, a master craftsman at 8th light, and has decades of programming experience.
Just a few months ago we interviewed Uncle Bob about his new book, The Clean Coder, but given that this is also the tenth anniversary of the signing of the Agile Manifesto, we thought it was time to take a look back, reflect on what's changed , and find out what he is working on next.
InformIT: You were a co-author of the Agile Manifesto in 2001. What drew you to the gathering?
Bob: In 2000 I asked Martin Fowler to lunch to talk about the idea of a "Lightweight Process Summit." We were both part of the Extreme Programming movement, but we had seen that there were several other similar processes, most notably SCRUM, FDD, DSDM, and Crystal. We thought it would be a good idea to get the advocates of all those processes together with other industry leaders to see if there wasn't some way to find and define common ground. I suggested to Martin at the time that we might be able to create some kind of manifesto. He and I put an invitation list together. I composed the invitation and sent it out. After that the process took on a life of its own.
InformIT: Ten years ago, what were your predictions and expectations for the Agile movement?
Bob: My goal was a manifesto declaring the unity of purpose amongst all the lightweight process advocates. I feared that without such a stated unity of purpose we would be seen as competing factions and would not be able to break the inertia of waterfall. I foresaw nothing more than that, and wasn't even sure the manifesto could be achieved.
InformIT: Since the manifesto was signed in 2001, we've seen the Agile movement spawn a dozen conferences, several associations, hundreds of books, and even new movements like Software Craft. How does this differ from your wishes and predictions from ten years ago? In hindsight, do you see any downside to the direction Agile has taken, or do you see more possible benefit if it had taken a different direction?
Bob: Oh I have my quibbles with the Agile movement. I don't much like the current certification mania, and I think the project managers have become too powerful a faction in the Agile movement in general. However, the overall effect of the Agile movement has been enormously positive. Thousands and thousands of teams are working in short cycles with lots of feedback. Continuous Integration has become commonplace. And a significant number of developers are even practicing Test Driven Development. This exceeds my wildest dreams.
InformIT: What do you find to be new and exciting in the world of Agile software? Where do you predict the world of software development is heading next?
Bob: I'm not looking for anything new and exciting to come out of Agile. What I'm looking for is consolidation and adoption! We have made significant inroads into the waterfall mindset; but we've got a long way to go before we actually turn software development into a true profession. For example, there are still programmers out there who don't write tests and think it's OK to ship bugs. There are managers who think the fastest way to market is to overwork programmers and force them to write dirty code. There are project managers who think software projects can be planned in advance with Microsoft Project. So the last thing the Agile movement needs is the randomizing effect of a whole bunch of grand new ideas. The more we appear to be zealots in constant search of the new true path, the less effective we'll be at solving the real problems.
InformIT: If you could go back and give advice to yourself ten years ago, knowing what you know now, what would it be?
Bob: I should not have sold the XP Universe conference to the Agile Alliance. I think that was a huge mistake. At the time we had two conferences. Agile 200X and XP Universe. The two conferences were virtually identical. They had the same speakers, the same topics, and the same attendees. It was embarrassing. So I sat down with Ken Schwaber, who was the chair of the Agile Alliance, named a price, and told him that I'd either sell him XP Universe for that price, or I'd buy Agile 200X for that price. He nodded and said he'd buy XP Universe. What I did not foresee was the loss of the technical emphasis that rapidly followed. The Agile conference has become a conference for project managers, not for programmers. And regardless of how hard the organizers try to fix this, the overwhelming influence of the project managers remains. Had I not sold the conference, I think the two conferences would have quickly diverged and we would currently have two very healthy conferences, one for PM's and one for programmers, with plenty of overlap. Now, unfortunately, things are pretty unbalanced, and that's causing some strife. The Software Craftsmanship movement is an attempt to repair that rift, but Agile has a huge head start.
InformIT: What are you working on now?
Bob: Videos. I'm having an absolute blast creating the video episodes at cleancoders.com. These videos are all about Agile, Clean Code, Principles, Programming, Refactoring, and anything else I can think of. There's also a fair bit of astronomy in them. Of course I continue to travel the world teaching courses on Agile, Test Driven Development, Clean Code, Principles of OO, etc. I also do a lot of speaking and keynoting for various conferences and companies. For fun, I'm learning Clojure. I think the functional languages are in the ascendancy, and I think Clojure is the best of the current batch. And, of course, I still maintain FitNesse at fitnesse.org. For non-technical fun, I ride my bike a lot and go camping with my family.
InformIT: Thank you for participating.
Bob: Always my pleasure.