[ Thanks to Sanjiv
Lavangare for this link. ]
“Portions of code have to be changed while other
portions are written. They often lead to redundant code or
uninitialized variables, partially covered conditions, and wrong
return results. Code gets a “do not touch” reputation because
changing anything renders the whole project unstable. Often the
code works, but the project is more a failure than a success
because it cannot be extended or re-used.“Another reason for planning is the ease of bug fixing and the
costs associated with it. Open source developers often do not think
about it until they start selling their services or work to
commercial companies.”