Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!unmvax!pprg.unm.edu!hc!ames!amdcad!sun!pitstop!sundc!seismo!uunet!algor2!jeffrey From: jeffrey@algor2.UUCP (Jeffrey Kegler) Newsgroups: comp.unix.wizards Subject: Re: Structured Programming Summary: Structured programming-yes and no Message-ID: <226@algor2.UUCP> Date: 3 Feb 89 20:53:53 GMT References: <18291@adm.BRL.MIL> <9574@smoke.BRL.MIL> Organization: Algorists, Inc., Reston VA Lines: 50 (Michael J. Chinni, SMCAR-CCS-E) writes: >After accepting the job we found to our horror the the code was >TOTALLY unstructured. This structured controversy has me strongly agreeing with both sides. Code which can only be read by the programmer who wrote it for some weeks after he wrote it gives all us hackers a bad name (and, unfortunately, we do have a bad name). I think the structured versus unstructured controversy contains two controversies. The first is a important debate that will help us refine good programming standards. The second really is about the question of hacker "professionalism". Having once taught Structured Programming for Yourdon, Inc., I have frequently been asked to assist in advice about "structuring" code. This is on the borderline between hacking and management consulting--basically not a good place to be. Programming standards and code review committees attract all the jerks trying to angle their way from the ranks of us hackers into the Vice-Presidency of the Division. While these characters are deceiving themselves into believing they have a career path, they cause everyone else a good deal of trouble. (Has a programmer ever become a VP in a Fortune 500 company? Not that I know of, and if he did I bet it was not by being a star on the code review committee). "Professionalism" in our business is a double-edged term. When hackers use it they mean things like writing code according to standards agreed on by those of our fellows whose competence we respect. The word is often perverted to justify whatever rinky-dink rule has emanated from the top. While wearing blue jeans at work and never cleaning your coffee cup is not behavior I endorse, it does not reflect on the "professionalism" of the people doing it. In fact, in the area of professionalism, I have taken many a cue from people whose coffee cups I would only touch with rubber gloves. Professionalism would mean we hackers set our own standards of ethics and competence, and membership. That is what the professions (lawyers, MD's, CPA's) do. Professionalism in that sense would get you in big trouble in most organizations I know of--faster than blue jeans or a dirty coffee cup. I believe in Structured Programming in the sense that a programmer should write code to be read by others according to standards accepted by the best of the programmers. What goes on in this news group is part of that process (which process I fear this long posting may be delaying). But Structured Programming is often the buzzword for an attempt to routinize and deskill programming work to reinforce the control of hierarchy over the programming process--separate from and sometimes different from, improving quality. In terms of quality, innovation procedes from the bottom, and, alas, often from desks with dirty coffee cups. -- Jeffrey Kegler, President, Algorists, uunet!jeffrey@algor2.UU.NET 1788 Wainwright DR, Reston VA 22090, 703-471-1378