Sunday, May 31, 2009

Road Thoughts - History

While driving last Friday from Miami to Orlando, I stopped and recorded a road thoughts video. I was planning to talk about something else, but the location inspired me to talk about history.

Here is the link to Michael Feathers' 10 Papers Every Programmer Should Read (At Least Twice).

I'll also be collecting links to people to read about, as well as important topics after the embedded video. If you have other people that are worth reading about, please leave links in the comments, and I'll promote them up to this post.

At the end of the 4th week of this tour, and with this week marking the 6 month mark since I first got on the road, I wanted to take a moment to thank everyone who has supported me through it, both hosting me and sponsoring me financially. Also, to all of you who have been following my videos, commenting, blogging about my tour, coming up and talking to me when I am out, I want to thank you, too. It has been a sincerely amazing time for me, and I look forward to what the future holds. My current plans have me returning to Cleveland around the 3rd of August; it is still a long ways to go.

Enjoy the road thoughts! As usual, I love to read comments, emails, read blog post with responses to some of what I talk about.

Road Thoughts - History from Corey Haines on Vimeo.

Here's some links to people to read about:

In the comments, Bil Kleb mentioned my plug for the Thomas Jefferson Hour podcast. I'm a big fan of Jefferson, and I love this podcast. You really should start listening to it. Unless you hate America, of course.

Saturday, May 30, 2009

Intro To Ruby slides from Day of Ruby

I was invited to give an Intro To Ruby talk at the Tampa and Orlando Day of Ruby events organized by Cory Foy. It was a lot of fun, and, of course, I love sharing the love of Ruby. Here's the slides:

Thursday, May 28, 2009

Journeyman Calendar Up!

Interested in finding out where and when I am and who I'm with?

I'm keeping a calendar and map updated with my schedule. You can always find the link off my homepage at, but here's a direct link:

Journeyman Tour Calendar

Wednesday, May 27, 2009

Open Agile Romania

Last week, I had the incredible opportunity to speak at the first Romanian Open Agile conference. Maria Diaconu invited me to come over and talk to their conference about Software Craftsmanship, including how it relates to Agile. I gave two talks: on the role of a tester through the agile lifecycle (slides); and, how Software Craftsmanship relates to the inherent problems with Scrum and XP (slides).

All-in-all, I had a great time, and I'm honored that Maria invited me to talk. The Romanian development community is lucky to have someone like her. I look forward to seeing where things lead. The conversations I had with the people there really sparked a lot of thoughts in my head, and I look forward to exploring them further with people.

Maria, with help from her husband, Alex, is putting a lot of effort into organizing the Romanian agile community, starting 3 different user groups in Bucharest, Brasov and Cluj. She also organized this conference and is starting to talk about the next event. We talked briefly about possible getting sponsorship enough to bring a couple people over to organize a Code Retreat over there, as well as other possible events to further solidify the community there.

I arrived on Tuesday, May 19th, after a rather uncomfortable Air France flight (somewhere between purchasing the ticket and getting on the plane, the 'vegetarian' request for my meal got lost). From the airport to Maria's house was possibly the most...ahem...interesting taxi ride I've ever had; while there are definite lane markers on the road, the drivers in Bucharest don't seem to actually know what they are for. Someone told me that this was because they didn't have lane markers for so long, they just ignored them when people finally put them down.

On Wednesday, I had the pleasure of speaking to the Bucharest agile user group, then going out for a beer, or two, with them. We had some great conversations with topics ranging from agile all the way to the American education system.

On Thursday night, we had a speaker dinner, where I met the fellow speakers: Ovidiu Negrean, Jurgen Appelo, Lucian Parvu, Razvan Gliga. Mihnea Giurgea and Mircea Pasoi couldn't show up, but I met them on Saturday. The speaker dinner was very nice, and I got the opportunity to argue with Jurgen about Scrum and its adoption patterns. I can say that this discussion was very enlightening, because it sounded exactly like the one I had with Cory Foy less than a week earlier. The idea is that Scrum makes an implicit assumption that developers are responsible enough to change their practices to fit into the iterative, incremental model. I really enjoyed talking to Jurgen, and I'm eager to catch up with him again at the Agile 2009 conference.

The conference was at a university and part of a larger open-source-oriented one called eLiberatica. I had definite flashbacks of being in school.

Friday went well, with just a few hiccups. Sadly, one of the hiccups was poor bandwidth during Ken Schwaber's video conference/presentation. At times, it was a bit difficult to hear what he was saying, but enough came through to get the main points of his talk. One main point that rang true with me, and also segued really nicely into my own talk, was that a major surprise to them was that developers didn't handle incremental delivery very well. This realization has led to the development of the Scrum Certified Developer program. Talking to Cory and a couple other people, this 'certification' sounds like the developer side of an XP training.

My talk on Friday was about the role of a tester on an agile team. I based it a lot on person experiences mapped through Lisa Crispin and Janet Gregory's Agile Testing book. Lisa was kind enough to send me 2 copies of the book to take to the conference, so we handed one out at the end of each day during the panel session.

On Friday night, we all went to a restaurant to continue our conversations from the day. Maria's friend, Paula, had come up from Brasov to the conference (she's a developer at Siemens), and, being a native Hungarian speaker, she was kind enough to let me spend some time speaking it again. I haven't spoken Hungarian that much for many years now, and it was great to switch over into it for a while.

My talk on Saturday was about 'How Agile Can Fail.' The main point of the talk is that Scrum alone leads to crappy code bases (Ken Schwaber's point was re-iterated), while XP has the practices but can kill productivity in the short- to medium-term while the developers learn to use them effectively. And, of course, in swoops Software Craftsmanship as a way to minimize the effect of learning on the organization through a focus on directed practice. I thought the talk went fairly well, although I could feel my energy level a bit low, having only slept around 4.5 hours the night before (no, it wasn't because of drinking).

I was leaving early Sunday morning, so I decided just to go to the airport at midnight and spend the night there. Ugh! That was a bad move. Bucharest has an incredibly uncomfortable airport. Plus, when I finally was able to checkin, they told me that they didn't have my ticket marked as vegetarian, and they couldn't change it. GRRR!!! I was tired, uncomfortable, hungry and a bit sad about leaving. I bought a small sandwich with the last of my money, and watched Jim Weirich's talk from Scotland on Rails, which cheered me up a bit. I was settling in for an unpleasant 14 hour, or so, trip back to Miami.

Whoa! The flight back was really nice. The flight from Bucharest to Paris was uneventful, but Paris to Miami was a dream. We were flying a 747, which meant that there was an upper deck. Somehow, I ended up there (no, not business class, or anything, just kind of overflow). The seats were more comfortable, the place was less crowded, the stewardesses were cute. I drank whiskey and watched movies (read: slept through movies) the whole way home. The meal was a very tasty spinach lasagna, and did I mention the free whiskey?

Two great things from the movie, Nick and Norah's Infinite Playlist:
- You guys are one arm short of a Def Lepard cover band
- The Beatles had it right. Most bands sing about sex, but the Beatles just sang 'I want to hold your hand.' In the end, we just want to someone we can spend the rest of our lives holding hands with.

Monday, May 18, 2009

Road Thoughts - Time to Learn

Kent Beck recently wrote a blog post entitled 'To Test or Not?' There has been some discussion on both the XP list and the Software Craftsmanship list. On the SC list, after some discussion, we made the point that it was really the 'no time to LEARN to test a certain thing' not 'no time to test.' The culture you reside in is important, your goals and values will dictate what you do and what you value. I stopped on my way from Tampa, FL, to Miami, FL, to record some thoughts about it.


And, yeah, the audio on this one is one of the lowest in the bunch. Sorry about that; I still stink at audio editing.

Road Thoughts - Time To Learn from Corey Haines on Vimeo.

Sunday, May 17, 2009

Map of route at end of week 2

Well, it is the end of Week 2 of 12 on this pair-programming tour. I've been to a lot of great places, and, while I'm going to be building a more permanent map to track where I'm at, here's a google map to show my route so far! You can zoom out, or click on the 'Larger Map' link to see more information. I'm going to be building two more pages to link off that include the running "where's corey?" map and the complete planned map for this trip.

My odometer has me currently at 1376.4 miles.

(note: if anyone knows how to embed a google map zoomed out to show the whole route, instead of just the final destination, please email me)

View Larger Map

Saturday, May 16, 2009

First 1000 Miles

As outlined in the skeleton post for my May through August road trip/programming tour, I've got a lot of miles over the next three months that I'll be putting on my car, around 6000, as well. In December, on the first tour, it took me 2 weeks to make it to 1000 miles.

Well, this time, it only took a week. This happened on Sunday, May 10th, on the way from Aiken, SC, to Jacksonville, FL.

I believe I have about 5 more of these over the next 10 weeks.

First 1000 Miles of 2009 Summer Tour from Corey Haines on Vimeo.

Wednesday, May 13, 2009

Conversation with Gustin Prudner

Gustin Prudner, owner of Entryway Software, was kind enough to sit down with me and talk about the philosophy of his company, life in a small town and his ideas on success. I had a great time in Floyd, VA, with Entryway, and I really appreciate his willingness to host me. Entryway is where Jonathan Greenberg works; if you haven't watched that conversation, I highly recommend it.


Conversation with Gustin Prudner from Corey Haines on Vimeo.

Tuesday, May 12, 2009

Road Thoughts - Frameworks (and Honesty)

While back in Cleveland for what seemed like an eternity, I had the opportunity to pair with some local companies, as well as have some great conversations with people. Some of those conversations spurred some thoughts in my head, so I'm slowly moving my notes into road thoughts videos.

Honesty about one's skills is an important part of craftsmanship, and I think that it is nowhere more obvious than in the decision to build frameworks. Here's some thoughts of mine.

Road Thoughts - Frameworks from Corey Haines on Vimeo.

Sunday, May 10, 2009

Conversation with Jonathan Greenberg

While at Entryway Software, I had the opportunity and pleasure to pair with Jonathan Greenberg for several days. We spent the majority of the team fixing some failing acceptance tests (using Cucumber) and specs (using RSpec), which set us up for the last day, when we were able to build a great set of Cucumber features for some new functionality that we started implementing in one of their applications.

Jonathan and I had some fascinating conversations, as he is an experienced gardener, and he has some great insights on commonalities between gardening and programming.

Floyd, VA, was amazing. I really enjoyed the atmosphere in the town, the people I got to meet (including the Entryway folks and other people in the area), the work I got to do, and the jamming (trying to keep up with the bluegrass players) and dancing (not caring about keeping up with the flat-footers) I got to do on Friday night!

Enjoy this conversation with Jonathan Greenberg; I had a great time talking to him.

Conversation with Jonathan Greenberg from Corey Haines on Vimeo.