• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

XP for Solo Programmers

 
Ranch Hand
Posts: 52
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I've always thought that one of the major ideas of XP was paired programming, but I'm curious if anyone has had success implementing XP principles as a solo programmer? And if so, which principles?
 
Author
Posts: 53
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I do much of XP if working solo: test first, refactoring, simple design, planning....
I am slower working alone and make more mistakes. But sometimes you have to do that.
Martin
 
Greenhorn
Posts: 7
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Almost everything about XP except for pair programming can be done by a solo programmer.
One of the first concepts I started using was "Do the simplest thing possible." In the past, when I developed classes, I had often added functionality that was not needed and might never be used. Now, when I create a class, I try to follow that concept. Write enough code to do the job, don't add anything that doesn't immediately contribute to the functionality.
You can also implement unit testing as well. That's another feature of XP that I have started doing. However, you have to truly be a solo programmer for this to work. What I mean is that if you are on a team but everyone programs solo, then doing unit testing will not be much help if the others on your team are not also doing unit testing. When others make changes, they won't run your unit tests, and they won't know if they've broken functionality elsewhere in the system.
I have also tried using CRC cards recently. I don't know if I'm using them properly, but they seemed to help me understand a system I recently worked on.
Kevin Mukhar
[This message has been edited by KMukhar (edited December 15, 2000).]
 
Sheriff
Posts: 7001
6
Eclipse IDE Python C++ Debian Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Please note that The Java Ranch has a naming policy, described here and "KMukhar" is not a valid name. Please choose one which meets the requirements.
Thanks.
 
Frank Carver
Sheriff
Posts: 7001
6
Eclipse IDE Python C++ Debian Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I have also done a lot of "Solo XP". As I do more, I'm definately getting better at it, and less likely to skip the tests, add in extra fuctionality in advance, or whatever, but the temptation is still there...
For me the hardest thing about Solo XP is definately that you have to be so disciplined. Full XP, including Pair programming, seems largely self-balancing. Peer presure takes care of keeping you on the straight-and-narrow, and something as simple as a raised-eyebrow during a pairing session is enough to make sure you keep to the principles. When alone, I have to be both programmer and conscience, which sure is tough.
 
Ranch Hand
Posts: 142
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Martin,
Which process would you say is better suited for a team of 15-20 in a fairly rapid development mode? XP or RUP or something else?
Ease of use and understanding are our primary concerns. Plus, we're limited to COM+ primarly in Visual Basic.

------------------
David Roberts, SCJP2
 
martin fowler
Author
Posts: 53
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by David Roberts:
Martin,
Which process would you say is better suited for a team of 15-20 in a fairly rapid development mode? XP or RUP or something else?
Ease of use and understanding are our primary concerns. Plus, we're limited to COM+ primarly in Visual Basic.


The team has to pick a process it's comfortable with. At that size I would run with XP if that's what the team wanted to do, but they need the desire so that they will stick with the discipline. Until you get used to it, XP does require discipline.
Alistair Cockburn has a lot of good papers on this topic - take a look at http://members.aol.com/acockburn/

 
That's a very big dog. I think I want to go home now and hug this tiny ad:
a bit of art, as a gift, that will fit in a stocking
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic