[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: eXtreme Programming



Corey,
 
I like the way you think. I wrote my last response before I opened this email. I believe my comments in that last email both address and support your second paragraph in the response to Angus. I am also in complete agreement with your last two sentences in the first paragraph and the pretext of the entire paragraph. Too bad the keyword matching of the monster.com's of the world make it basically impossible for the types you refer to in that 2nd to last sentence to be recognized or even considered for employment (speaking from experience :-().
 
As one of my mantra's says: "Good judgment comes from experience, and experience comes from bad judgment". This is why books like Joshua Bloch's "Effective Java Programming Language Guide" are so valuable, at least to me.
 
Brad
 
 
 
 
 -----Original Message-----
From: Corey [mailto:corey@spectrumsoftware.net]
Sent: Sunday, November 09, 2003 5:30 PM
To: angus.berry@elken.com; Jason Chambers; 'Atlanta Java Users Group'
Subject: Re: eXtreme Programming

 
    Hi Angus,
 
    Would I use XP with an experienced team on a project using technologies that
    they may not have encountered yet? Yes. In terms of experience I'm talking about
    the most basic fundamentals of programming and software design, which includes
    knowledge of data structures,  interprocess communcations, threading, memory
    management, performance tuning and all of those other fundamentals that one
    accumulates over the years. The technology itself is not so much an issue if you
    have a solid background in the pure fundamentals. An experienced programmer
    can smell a bottle neck a mile away, while an inexperienced person will have to
    find out what's good and what's bad through trial and error, unless they're willing
    to accept others experiences on face value ( many don't and must learn for themselves ). 
    On more than one occasion I have seen guys with 20+ years of application programming
    experience pick up a new technology literally overnight. And I have also seen neophytes
    struggle with a basic linked list assignment for days on end.
 
    Do Agile techniques make better programmers out of the inexperienced faster than
    early design/implementation techniques. Maybe, as long as you have enough experienced
    people around to guide them in the right direction.
 
    Just my $0.02
 
    --Corey
______________________________________________________
William C. Brown
Chief Architect. Spectrum Software Inc.
 
11445 Johns Creek Pkwy
Duluth, GA. 30097.
Suite 300.
Tel > 770.813.4952
e   > corey@spectrumsoftware.net
web > www.spectrumscm.com
yahoo > caldron68
----- Original Message -----
Sent: Sunday, November 09, 2003 10:35 AM
Subject: RE: eXtreme Programming

Corey,
 
I'm interested in Jason's thread and wonder if I might draw out your experience a little more.
 
Trying to sum up one aspect of what you're saying:
You'd use XP with an experienced team, using their skills on a new business requirement.
 
However, would you use XP with the same team using (and thereby acquiring) new skills on a new business requirement? For example an XP Swing team doing JWS or an XP Struts team doing J2ME.
 
I'm sure there's quite a gray area here, in how far the skill set stretch is, but I appreciate any insight that enables me to look before it comes time to leap... hindsight is 20/20 :-)
 
Angus
-----Original Message-----
From: Corey [mailto:corey@spectrumsoftware.net]
Sent: Saturday, November 08, 2003 7:42 PM
To: Jason Chambers; 'Atlanta Java Users Group'
Subject: Re: eXtreme Programming

 
    Jason,
 
    Personally I think that TDD (test driven development) as one aspect of XP
    is a very good thing and have used it successfully myself. On other aspects
    of XP or Agile methodologies, I believe that the level of maturity of the team
    makes all the difference in the world. I know for a fact that you can't take a
    bunch of inexperienced programmers and have them implement a project
    successfully with XP. Knowing what will work and what will require further
    attention requires experience, there is no substitute for it and no amount of
    "refactoring" is going to change that fact. Rework in any form, regardless
    of what you call it, is still rework. An experienced team can visualize the
    framework for a project and can set about breaking it apart for incremental
    development. An inexperienced team cannot visualize the whole to begin
    with and will spend a great deal more time refactoring work that they have
    already done in order to make everything work together in the end. Of course
    these are my personal thoughts and experiences on the subject. I'm sure there
    are plenty of XP zealots in this crowd that would gladly take a flame thrower
    to everything that I have just said :-/
 
    But with that said, is Agile development a bad thing? Of course not! We have
    a very strong team where I am currently at and Agile methodoligies work very
    well. In the dot.com days I worked at a startup with a mix of completely inexperienced
    programmers and some very experienced programmers. The desire to implement
    XP was there, but the ability to execute was not. We spent a great deal of time
    analyzing the requirements (which were changing constantly) and putting together
    our base framework. Once we had completed our analysis and design of the
    basic framework, we were able to split the work up in a more XP like fashion and
    were able to easily accept the changes to the requirements as the customer changed
    their mind.
 
    --Corey
______________________________________________________
William C. Brown
Chief Architect. Spectrum Software Inc.
 
11445 Johns Creek Pkwy
Duluth, GA. 30097.
Suite 300.
Tel > 770.813.4952
e   > corey@spectrumsoftware.net
web > www.spectrumscm.com
yahoo > caldron68
----- Original Message -----
Sent: Saturday, November 08, 2003 3:22 PM
Subject: eXtreme Programming

XP’ers

 

I am very interested to hear about your experiences with XP. Do you follow XP to the letter of the law? What bits did you leave out? What bits did you add? What team sizes? What kind of projects? What was the fallout after you implemented XP? How many just wouldn’t accept the change? Did you have any issues maintaining the XP discipline? What was the general feeling from the team? Which aspect of XP had the most controversy with your team?

 

I have been reading about aspects of agile methodologies for a while now and am a big proponent of the philosophy on the whole. However, I have yet to convert theory to practice. I was lucky enough to see an XP lab this past week in operation and was mostly taken aback by the level of energy in the lab and the camaraderie amongst the team.

 

Please share your experiences – good, bad or ugly.

 

Jason