Xref: utzoo comp.sw.components:361 comp.software-eng:2207 Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!accuvax.nwu.edu!delta.eecs.nwu.edu!travis From: travis@delta.eecs.nwu.edu (Travis Marlatte) Newsgroups: comp.sw.components,comp.software-eng Subject: Re: Maintenance Summary: Maintenance != Training; Licensing != Quality Message-ID: <1337@accuvax.nwu.edu> Date: 19 Oct 89 01:32:07 GMT References: <1271@accuvax.nwu.edu> <1989Oct18.170532.1586@mrspoc.Transact.COM> Sender: news@accuvax.nwu.edu Reply-To: travis@delta.eecs.nwu.edu (Travis Marlatte) Organization: Northwestern U, Evanston IL, USA Lines: 45 The discussion was kind of heading in the direction of using maintenance as a training vehicle for new engineers. I think most of us agree that this is wrong. Exposure only to maintenance is probably not the way to bring a new programmer up to speed for design. Whoops. There I said it again. The goal is create good designers. Somehow, to be a good programmer, I believe one has to become a good designer. Even in maintenance, and we all know I think that job is scum, good design techniques are paramount to making sound revisions - whether defect fixes or enhancements. Contrary to my sarchastic comment above, I love maintenance. I have always been one to enjoy tearing something apart, figuring out how it works, and how to make it work better. I would think that most engineers have this same attitude. I do think that maintenance as a training vehicle is a waste of time. The trainee learns nothing except how stupid past developers were. The company may benefit from freeing up its more highly prized programmers but there certainly is a cost of poorly done maintenance. Actually, maintenance is an important part of new design as well. I can't count how much time I've saved by striping a piece of code from a past product and using it in a new design. Gosh - reusable software. To reiterate my position - apprenticeships or something similar seem like a pretty clean way of approaching training. Note that this does address the new employee whether novice or experienced. Some formal program to help the experienced programmer fit in with the company is just as appropriate as a formal program to bring the novice up to speed. A few comments on licensing: (are you out there Ms. Richards?) Licensing does not prove competence or ability. It merely transfers liability. And that usually doesn't work either. Licensing should mean nothing to a fellow programmer (or engineer). It is only a stamp of approval from a publicly recognized body and it is for the benefit of the public. Licensing can only be used as a first defense against blithering idiots passing themselves off as professional programmers. I am quite confident that the programmers responsible for recent widely publicized software failures were nothing but professionals and would have gained a license if such were required. Travis