Nick Coghlan writes:
Even if we had unlimited reviewer resources (which we don't),
Raymond said "interns". We at least have a mentor.
There's a reason the desire to "throw it out and start again with a clean slate" is a common trait amongst developers:
You mean the Cascade of Attention-Deficit Teenagers development model?
I believe Raymond's concern (and mine) is that if the challenges of maintenance programming aren't made clear to potential contributors up front,
So make it clear when the assignment is given. Remember, the point I'm making is that it's an investment for the intern, not for Python. If their code eventually gets relegated to a branch the may never ever get merged, that's a learning experience too -- they may have been told, and thought they signed up for that up front, but it's different when you actually get told, "it could be useful, but on balance let's not touch this code" or even "the 'owner' of the code doesn't have time to look at changes".
It's not something I suggest as a "rite of initiation" for all interns. I just think it would be overkill to prohibit it in principle -- I have a couple of (non-Python) interns who would benefit from the exercise (their projects are greenfield code, so they have no "model code" to start from). It wasn't clear to me whether Raymond meant to go that far as a general prohibition.