InfoQ

Interview

Pragmatic Dave on Passion, Skill and 'Having A Blast'

Interview with Dave Thomas by Jim Coplien on Jan 24, 2008

Community
Agile
Topics
University Programs ,
Stories & Case Studies ,
Methodologies ,
Training / Certification
Tags
Criticism ,
Book ,
Kata ,
Complementary Practices
Summary
At QconLondon 2007 Jim Coplien spoke with "Pragmatic" Dave Thomas for InfoQ. This energetic 30-minute interview runs the gamut of Dave's wide-ranging interests: 'agile' publishing; how to turn what you love doing into a book; programming (and methodology) monocultures; staying limber with code "katas"; and advice for academics: help your students live with the passion of a 5-year old!

Bio
Dave Thomas is recognized internationally as an expert who develops high-quality software - accurate and highly flexible systems. He helped write the now-famous Agile Manifesto, and regularly speak on new ways of producing software. He is the author of six books, including the best selling The Pragmatic Programmer: From Journeyman to Master and Programming Ruby: A Pragmatic Programmer's Guide.
Jim Coplien for InfoQ: Hi Dave. Would you like to introduce yourself for our audience?
What's the most fun thing you have done in the past 5 years?
Why would a person like you, great computer guy who probably should be writing code, start up a bookstore?
That's wonderful. If someone is interested in publishing a book with you, what kind of books are you looking for? How should they approach you?
You are an Agile publisher. What does that mean, to be an Agile publisher? That's a great phrase!
Very good. And of course you know the pair programming angle with publishing, from your work in the past. When you said you were an Agile publisher, you were of course one of the signers of the manifesto. Is there a life after Agile? Where is Agile right now from where you sit?
If you were to give some advice to, respectively, a manager and a developer, on helping them understand whether they are doing Agile or not: what would you tell them - andis that the right question?
I see the same thing too. It's one size does not fit all.
And there's variety in methods. Of course there is also variety in every facet of everything we do, including programming language. I am kind of a C++ guy, becoming a Java guy, I guess you are a Ruby guy, so with respect to the whole view of programming language and where we are today, and where you would like to see people go: what are your thoughts on that?
I understand the derivative benefits very well, it's good to have seen lots of different tools to know how to more effectively use the one you are using. But there is also an issue of mastery - Alistair Cockburn called software development "group poetry writing". And the language in which you are writing it is ... the language in which you are writing it. You have to master a program pretty well and things like its idioms, so I am told, in order to be effective in it. So you said you spent a year learning a functional programming language, part of which is probably learning the computional model, and what's the advice you can give concretely for a real developer (as opposed to a manager, not someone who is going to say "What class are we going to send this people to,") but someone who will make an investment in his career: "How expert do I need to be in a language in order to avoid the sorcerer's apprentice problem?"
It is funny: you call them "katas." I misunderstood you, I thought you said "toccata," which, of course, is the same concept in music, and depending on your market, maybe you can go there too.
That's a great metaphor. Dave, have you ever been in Academia? Got the professor thing?
What advice can you give to the academics in terms of how they can help their people develop? What kind of guidelines, directions, inspirations can they give to their students to help them learn the things you feel are important? So if you were to say "Here are the 3 top things I feel that students are missing today", coming out of University, or the 3 techniques you should be using to inspire our people, what would they be? Or is this the wrong question to the wrong market?
Might it mean that computing is not a proper discipline?
So, that's for the academic side of things, and really Academia, in my experience (and I hear this from a lot of people) is a very small part of your education. And in fact there is a lot of un-learning that goes on when you have your first job. So the main focus I think, of learning and advancement, is in our own jobs, in our own careers. And you talk about passion, where does the passion come from to draw people into learning? What can we do, what can you and I do to go out there in the industry and tell them to do, to incite this passion to drive on the learning of our industry and to raise up the level of things?
I think everyone who knows you, and who's had an opportunity to see you speak in person, understands you are a passionate person. It's wonderful to see that in an individual. What are your passions today?
At 50 years old you are a 5 year-old with passion. What do you want to be when you grow up?
How long have you been in the industry now?
And it was fun then?
Is the industry still a fun place to be?
I really appreciated having the time with you here, I wish you good luck and thanks again for your thoughts and sharing with us.
show all  show all

Related Sponsor

VersionOne is recognized by Agile practitioners as the leader in Agile project management tools. Companies such as Adobe, BBC, CNN, Dow, HP, IBM, Sony and 3M have turned to VersionOne to help deliver greater value to their customers.

..of a 5 year old? by Michael Neale Posted Jan 25, 2008 1:01 AM
Re: ..of a 5 year old? by Deborah Hartmann Posted Jan 25, 2008 6:16 AM
...on helping others follow their passion... by Joe Miller Posted Jan 25, 2008 8:11 AM
  1. Back to top

    ..of a 5 year old?

    Jan 25, 2008 1:01 AM by Michael Neale

    Yes, copy the enthusiasm, but NOT THE ATTENTION SPAN PEOPLE ! PLEASE !

  2. Back to top

    Re: ..of a 5 year old?

    Jan 25, 2008 6:16 AM by Deborah Hartmann

    I have no idea what you m... Hey wanna go get a coffee?

  3. Back to top

    ...on helping others follow their passion...

    Jan 25, 2008 8:11 AM by Joe Miller

    A great resource on this subject can be found in the strengths-based books by Marcus Buckingham and Donald Clifton (some written while Marcus worked for Gallup). In many ways this is about following those things you are passionate about. This is all part of a greater strengths-based/positive physiology movement -- which I believe is very active currently. A couple excellent titles on this subject are:

    "Now, Discover Your Strengths" (2001) by Marcus Buckingham and Donald O. Clifton, Ph.D.

    "Go Put Your Strengths to Work" (2007) by Marcus Buckingham

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.