From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1696ae,de62d506c7cf194a X-Google-Attributes: gid1696ae,public X-Google-Thread: fc89c,de62d506c7cf194a X-Google-Attributes: gidfc89c,public X-Google-Thread: 1014db,d95b511473b3a931 X-Google-Attributes: gid1014db,public X-Google-Thread: 109fba,d95b511473b3a931 X-Google-Attributes: gid109fba,public X-Google-Thread: f43e6,8ff817fc5c863f82 X-Google-Attributes: gidf43e6,public X-Google-Thread: 103376,d95b511473b3a931 X-Google-Attributes: gid103376,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: software engineering and the notion of authorship Date: 1996/07/17 Message-ID: #1/1 X-Deja-AN: 168653983 references: <4quk22$78@krusty.irvine.com> <4r059t$2at0@info4.rus.uni-stuttgart.de> <4r3bp1$cea@Starbase.NeoSoft.COM> <4rg3ph$2on4@info4.rus.uni-stuttgart.de> <4rjhv6$ilu@mulga.cs.mu.OZ.AU> <4sdhbg$r7e@nntp.seflin.lib.fl.us> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++,comp.unix.programmer,comp.dos.programmer,comp.software-eng Date: 1996-07-17T00:00:00+00:00 List-Id: Ralph Silverman asks a closely related question is: if persons who are supposed to be programmers can usefully work in groups or teams were such persons not able to program individually... ? generally, one may suppose, those capable of programming individually would be accepting of individuality I have worked completely on my own (e.g. several complete operating systems written for Honeywell and the first version of Macro-SPITBOL), in small teams (SPITBOL 370 was a 2-person effort, Realia COBOL was a 3-peson effort), and in larger groups (GNAT is a several person effort). I see no real differences. In each case, an absolute standard of consistency is essential throughout the program. Remember that one of the major needs for consistency is for maintenance, and how many people developed a project is rather irrelevant when considering maintenance needs (all the programs I mention abvove have been maintained by multiple people over the years). When you are working alone, you can of course set your own standards of consistency, but in fact I see many 1-person programs that are a mightmare (oops typo, but rather nice one, I will leave it in :-) nightmare of inconsistency. I couldn't possibly work that way myself. When you are working together, you have first to agree on the standards of consistency that you will use. That means you don't get to choose yourself every detail, so what? For example, in the GNAT project, as I have mentioned before, I was forced to change from ALL_UPPER_CASE_IDENTIFIERS to the more usual Mixed_Case_Identifiers since that is what the team preferred. It was awkward at first (you always find it easier to do what you are used to, and to read code in the style you are used to), but it would never have occurred to me to react to that awkwardness by insisting on continuing to SHOUT when I wrote MY_IDENTIFIERS! Instead I conformed and quickly got used to the new style (now it would be hard to go back). However, I see many programmers for whom not only does it occur to them to react in this situation by insisting on using their own style, but they do it and their management permits it. I am certainly capable of programming individually, but I am definitely NOT willing to accept this particular brand of individuality, not for a moment! The team effort issue of course only applies to groups, but there is another factor that I think is important. Whether you are working alone or in a group, an elegantly structured and consistently presented source code is a source of pride, and that is definitely a positive dynamic in any project.