For Writing Software, a Buddy System
nytimes.com
For Writing Software, a Buddy System
1–10 of 34 posts
Re: For Writing Software, a Buddy System
#2Re: For Writing Software, a Buddy System
#3Re: For Writing Software, a Buddy System
#4I agree with the statement about how programming is creative work, and I disagree with the 'only way to work' statement. Pair programming is a great tool, but it doesn't have to be always used. When you adopt a methodology or process like XP or Scrum, we don't always have to adopt it wholesale - just pick the pieces that work. Pair programming, in my experience is excellent at solving difficult issues under deadline and/or implementing brand new features. For everything else, it may be overkill. Plus, with pairing, it's hard to get your mental breaks in while you simmer a problem in your mind (e.g. check out News.YC).
It's kind of like the concept of scrum rooms. We had a critical iteration and flew everyone in for a conference room-based intense week-long session. We got a lot done - much more than we could have done over WebEx. However, at the end, I wanted to kill the guy with the noisy trackball. Close quarters can become trying over time (extended family meetings anyone?)
Hashrocket may be a notable exception to the norm of programmers working in isolation/cubes (especially in larger companies)
Re: For Writing Software, a Buddy System
#5Re: For Writing Software, a Buddy System
#6In this environment, pair programmed got us both past the logjam we were both experiencing on this codebase and we were able to get things into the sort of shape that working alone became not only palatable but enjoyable again.
We also did some API work together, and I think if you're writing interfaces and the like, working on that with someone who will be using it can be helpful in getting a good initial API out there.
There are also other sorts of programming tasks where I don't feel pair programming was very productive (for me/us anyway).
Re: For Writing Software, a Buddy System
#7I've pair programmed before, and in my experience it's great when the codebase and job at hand is so terrible, that when working individually it's hard to have the will to live, let alone be productive. In this environment, pair programmed got us both past the logjam we were both experiencing on this codebase and we were able to get things into the sort of shape that working alone became not only palatable but enjoya…
And really, 90 percent of programming is more "typing" than programming because the work is straightforward.
Re: For Writing Software, a Buddy System
#8I've pair programmed before, and in my experience it's great when the codebase and job at hand is so terrible, that when working individually it's hard to have the will to live, let alone be productive. In this environment, pair programmed got us both past the logjam we were both experiencing on this codebase and we were able to get things into the sort of shape that working alone became not only palatable but enjoya…
Yes, in practice, everybody pair programs, on an as-needed basis. When it's not needed...well, you shouldn't be doing it. I seriously think that non-stop pair programming is just a way to keep people from goldbricking (as the article hinted at the end). And really, 90 percent of programming is more "typing" than programming because the work is straightforward.