On Sat, Sep 16, 20
​ ​
17 at 2:05 PM, Toby Thain <toby@telegraphics.com.au> wrote:
​...
 I believe being a maintenance programmer on other
people's code is so important; you'll be left with a real understanding
of why good practice is important, and, quite likely, a fiery desire to
try to make things better.

I think any junior programmer would benefit from at least five years of
maintenance experience. Giving them greenfield projects out of the gate,
especially unsupervised, merely adds to the pile of unmaintainable stuff
- while teaching them very little.

I hear you and I agree in so many ways but .. but its hard to get someone, particularly some one young and eager to to see that value.​   This is why I like to have them work side-by-side with my my senior folks.   And everyone does maintenance - everyone working on the same project.   I'll carefully pick something for them to do.   But some of my best and creative work, has come from some of my most junior folks - because they did not know it was hard.  That said, it's my job to keep a weather eye on them.

But I want the sr folks doing the maintenance work also.   Just like when is a system programmer, I was required to be and system operator (the grunt task - changing tapes, paper, answering questions) at least 4 hours a week.  Why?   because it was incentive to make sure we had the procedures right and easy.



Jon described the effect of putting everyone together at Bell Labs (and Tektronix).  I admit, Jon and I were lucky.   We grew up in environments were we got to working most anything, but we were next to pros (if not geniuses).   But we knew them as people and colleagues and they quietly taught us.  And I picked up 'good taste' by readying their code, looking at their designs; have been comment on mine.  Having them show me something...

Clem