Welcome to Dream.In.Code
Getting Help is Easy!

Join 131,784 Programmers for FREE! Get instant access to thousands of experts, tutorials, code snippets, and more! There are 1,900 people online right now. Registration is fast and FREE... Join Now!




Extreme Programming (XP)

 
Reply to this topicStart new topic

Extreme Programming (XP)

skyhawk133
post 19 Mar, 2007 - 01:00 PM
Post #1


Head DIC Head

Group Icon
Joined: 17 Mar, 2001
Posts: 14,833



Thanked 45 times

Dream Kudos: 1650

Expert In: Web Development

My Contributions


Extreme Programming seems to be the most popular agile process for software development. Do any of you use this or any other process when you develop??

User is online!Profile CardPM

Go to the top of the page

Nova Dragoon
post 19 Mar, 2007 - 03:19 PM
Post #2


The Innocent Shall Suffer, Big Time

Group Icon
Joined: 16 Aug, 2001
Posts: 6,128



Thanked 4 times

Dream Kudos: 515

Expert In: Python, Linux

My Contributions




EDIt:
Looks like theres been a new definition added to it. I remember it being much more limited when I first heard about it.
User is online!Profile CardPM

Go to the top of the page

1lacca
post 20 Mar, 2007 - 12:38 AM
Post #3


code.rascal

Group Icon
Joined: 11 Aug, 2005
Posts: 3,822



Thanked 11 times
My Contributions


Haven't tried it yet.
And for those, who don't have a clue what's this all about.
User is offlineProfile CardPM

Go to the top of the page

ajwsurfer
post 20 Mar, 2007 - 01:58 PM
Post #4


D.I.C Regular

Group Icon
Joined: 24 Oct, 2006
Posts: 292



Thanked 2 times

Dream Kudos: 50
My Contributions


I have a lot of bosses are pushing for Extreem Programming. However, when the rubber meets the road, and the project is really large, or there is little understanding, or defiinition, of the original problem, a fall back to traditional project management practices is a life saver.

I guess threading in peices to a large existing project doesn't need much planning, but it does requires a lot of experience with the original program before it can be done. Unfortunatly, most of the work that needs to be done is doing just this. And it usualy needs to be done on the spot, whether you have 10 years experience on the project or 10 minutes.

I would say I have had good results by using as many case tools as needed, to gain an understanding of the project, before diving in. Once a good understanding, and communication, about the project are reached, the process can be streamlined (even to a "Extreme").
User is offlineProfile CardPM

Go to the top of the page

ProfessorWC
post 20 Mar, 2007 - 11:25 PM
Post #5


New D.I.C Head

*
Joined: 4 Mar, 2007
Posts: 21


My Contributions


I have actually never seen this programming style until now... being just a student though, I would probably try it to see how it works out.
User is offlineProfile CardPM

Go to the top of the page

NickDMax
post 23 Mar, 2007 - 11:06 PM
Post #6


2B||!2B

Group Icon
Joined: 18 Feb, 2007
Posts: 2,856



Thanked 47 times

Dream Kudos: 550
My Contributions


Sometimes I am glad I am unemployed. This, like so many design systems, is about the most irritating thing I have seen. Lets take an example: paired programming - two coders working on the same computer. I would end up killing someone. Sounds to me like you will have one coder and one "sitting on my ass making smart comments so I can irritate this guy so he will get up off the keyboard and let me get to work." Most programmers I know may be good at playing well with others in a team environment, but get too close and they bite.

optomize last - God I hate this. Its like keeping your space clean in kitchen, yes it is easiest to do at the end of the night, but if you keep up with it as you go then the end of the night goes by with so much less hastle, and should the customer ever take a peek in the kitchen they will still eat there. It is not that you need to spend all you time trying to write the fastest code and worrying about clockcycles, but if you keep you eye on doing it right the first time, then when it comes time to optomize you are not saying, "well we could, but that would require rewrites here, here, and here, and that would push us past release data, and put us over budget... so we will just go with this crap."

It is not the spirit of the system that I disagree with. Large software projects really do require management (and "large" does not have to be all that big). The problem is that management philosophies are often based upon garbage fads. For example the "optomize last" craze that really misses the point.

Example: The last team project I was involved in was a fuzzy logic circuit design program. The project head wanted to write problem spacific code. I convinced him to take a more general aproach (I had the advantage as I would be coding the key components). The result was that when the customer went, "wow cool, can you make it do *this* too" we were able to turn the newer requirements arround in hours. Had we taken the original design pattern (which granted would have been faster in inital coding) we would have had to answer, "well, not as currently designed no." The project head later thanked me for saving his neck.

The mannager was not a bad programmer he was just caught up in what he thought was the best philosophy for the project: take the customer requirements and make each one a reality. I had a different aproach based upon many more years of experiance. He makes more money than I do. (yea, I am a little bitter sometimes).
User is offlineProfile CardPM

Go to the top of the page

salindor
post 24 Mar, 2007 - 07:44 AM
Post #7


D.I.C Head

Group Icon
Joined: 10 Nov, 2006
Posts: 156



Thanked 4 times

Dream Kudos: 50
My Contributions


QUOTE(NickDMax @ 24 Mar, 2007 - 12:06 AM) *

Sometimes I am glad I am unemployed. This, like so many design systems, is about the most irritating thing I have seen. Lets take an example: paired programming - two coders working on the same computer. I would end up killing someone. Sounds to me like you will have one coder and one "sitting on my ass making smart comments so I can irritate this guy so he will get up off the keyboard and let me get to work." Most programmers I know may be good at playing well with others in a team environment, but get too close and they bite.

optomize last - God I hate this. Its like keeping your space clean in kitchen, yes it is easiest to do at the end of the night, but if you keep up with it as you go then the end of the night goes by with so much less hastle, and should the customer ever take a peek in the kitchen they will still eat there. It is not that you need to spend all you time trying to write the fastest code and worrying about clockcycles, but if you keep you eye on doing it right the first time, then when it comes time to optomize you are not saying, "well we could, but that would require rewrites here, here, and here, and that would push us past release data, and put us over budget... so we will just go with this crap."

It is not the spirit of the system that I disagree with. Large software projects really do require management (and "large" does not have to be all that big). The problem is that management philosophies are often based upon garbage fads. For example the "optomize last" craze that really misses the point.

Example: The last team project I was involved in was a fuzzy logic circuit design program. The project head wanted to write problem spacific code. I convinced him to take a more general aproach (I had the advantage as I would be coding the key components). The result was that when the customer went, "wow cool, can you make it do *this* too" we were able to turn the newer requirements arround in hours. Had we taken the original design pattern (which granted would have been faster in inital coding) we would have had to answer, "well, not as currently designed no." The project head later thanked me for saving his neck.

The mannager was not a bad programmer he was just caught up in what he thought was the best philosophy for the project: take the customer requirements and make each one a reality. I had a different aproach based upon many more years of experiance. He makes more money than I do. (yea, I am a little bitter sometimes).


Don't get me wrong, it is possible to over optimize. For example, when I was taking a course on cryptography, we were required to work with a partner (or given the amount of work, and the deadline we were allowed towork with a partner). My partner was obsessed with optimization. The result was my code which did the job fast enough to meet all the teachers requirements and was easy to read was rewritten to be 'optimized', ya it ran 5% faster; but when it came to turn it it the 'optimized' code didn't work on the professors computer. Turns out he had optimized it for intel, cryix, windows, and red hat; but the professor was using madrake on an amd and what should not have been a problem (he swore up and down it should have worked) simply didn't.

The paired programming does sound incrediably annoying, I was under the impression it was two programmers sitting in the same room.


User is offlineProfile CardPM

Go to the top of the page

alfredjohn86
post 3 Oct, 2008 - 01:58 AM
Post #8


New D.I.C Head

*
Joined: 29 Sep, 2008
Posts: 5

thank you
User is offlineProfile CardPM

Go to the top of the page

Fast ReplyReply to this topicStart new topic
Time is now: 11/20/08 03:06PM

Live Help!

Tutorials

Programming

Web Development

Reference Sheets

Code Snippets

Bye Bye Ads

Free DIC T-Shirt

T-Shirt Example

Related Sites

Monthly Drawing

Thumb Drive

Partners

Top Contributors

Top 10 Kudos This Month