comp.lang.ada
 help / color / mirror / Atom feed
From: sb463ba@l1-hrz.uni-duisburg.de (Georg Bauhaus)
Subject: Re: Bad coding standards
Date: 18 Dec 2000 22:20:18 GMT
Date: 2000-12-18T22:20:18+00:00	[thread overview]
Message-ID: <91m2j2$bkn$1@news-hrz.uni-duisburg.de> (raw)
In-Reply-To: 3A3E5E7E.67817482@acm.org

Marin David Condic (mcondic.nospam@acm.org) wrote:
: Consistency
: means that someone reading your code within a project will more immediately
: recognize what they are looking at.

Having to live in a world with several styles in a
set of files belonging together, or even in the same
files, I've come to think of these not-easy-to-maintain
but still usable files as plays, not monographs.
The perspective of watching many actors is a helpful
relief when one has to adapt ones code recognition apparatus
to others' ways of writing their code.

I understand that Robert Dewar prefers strict stylistic
unification, for reasons that he has restated in this
thread, namely being advantageous for maintanablility,
and fostering egoless programming.  What is missing in
this argument however, is, I think, on what particular
view this is based.  Is it true that egoless
programming is a good thing, _economically_?
The argument is incomplete if it does not show why
it is preferable, if programmers don't see who wrote what,
and if programmers are (possibly) forced to write to that
effect.   I'm reminded of the "Motivation" article in the
Emacs distribution. If you care about your Ego and connect
a reason to be proud or satisfied or motivated with your name
appearing and your style showing up, with the idea in mind,
that people will be noting this, then Egos programming could be an
economically relevant factor. Are there measurements?
Are there arguments that are stronger? (Well, I think so ;-)


:  Slowly, I was persuaded to use mixed case. I think I've grown to like
: the appearance of mixed case because it just looks nicer. But its a matter of
: taste  (...) 
: like the rest of the code in the project (unless it is hopelessly messy!) and
: you're doing a favor to those that come after you.

Now there are some things that need to be noted when it
comes to chosing upper and lower case characters, as is known
to typesetters. Everything depends largely on the font!
As an analog, count the books not using letters with serifs
for the main text, this is not just a matter of taste, but
of readability, there are very few fonts granting readabilyty
without serifs. Same for all upper case: The font (plus kerning)
chosen has a strong influence on whether or not most readers
will have difficulties reading a longer passage. (There is
a note concerning this in N. Cohens book.)

Try formatting some mixed case Ada program
in ALGOL 60 style ("Description" book, reserved words bold
sans serifs, identifiers in italics, all lower case, operators,
parens upright symbols) (i.e. one deviation: mixed case)
and see if you still think you are reading the same source
code.

Try some letter combinations in upper and lower case with a left
parenthesis somewhere in between. Have you ever seen a typeset
math book leaving a space between f(x)'s f and (?  This is not an
argument for forcing no space between subprogram identifiers and
parameter lists in monospaced source code, say.  Rather, it shows
that an italic f, a roman (, and an italic x make the paren stand
out in these fonts. This is not  always guaranteed in monospaced
fonts.

So, aesthetics (there is no one character th in either American
or British (or Irish?) English, after all ;-) is not just
prettyness or beauty or looking nice, in the sense that these
have effects.  Before trying variations, and measuring the
effects (or trying to do so), the perspective may be considered
incomplete.

Georg Bauhaus



  reply	other threads:[~2000-12-18 22:20 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-12-14  2:32 Bad coding standards Beard, Frank
2000-12-14 12:19 ` Robert Dewar
2000-12-14 13:03   ` OT ae [was Re: Bad coding standards] Philip Anderson
2000-12-14 14:08     ` Ken Garlington
2000-12-14 14:19   ` American English (was: Bad coding standards) John English
2000-12-14 15:07     ` Graeme
2000-12-15 13:16       ` The Design Zone (was Re: American English) Marc A. Criley
2000-12-14 15:14     ` American English (was: Bad coding standards) Marin David Condic
2000-12-14 17:38     ` Brian Rogoff
2000-12-15 16:12       ` John English
2000-12-14 14:03 ` Bad coding standards Ken Garlington
2000-12-14 20:14   ` Robert Dewar
2000-12-15  1:10     ` Ken Garlington
2000-12-18 16:09     ` Tucker Taft
2000-12-18 18:59       ` Marin David Condic
2000-12-18 22:20         ` Georg Bauhaus [this message]
2000-12-19 15:51           ` Tucker Taft
2000-12-19 16:12             ` Marin David Condic
2000-12-19 16:01           ` Robert Dewar
2000-12-19 15:49         ` Robert Dewar
2000-12-19 16:36           ` Marin David Condic
2000-12-20  1:52             ` Ken Garlington
2000-12-20 12:58               ` Marin David Condic
2000-12-20 14:27                 ` Ken Garlington
2000-12-21 23:19                   ` Marin David Condic
2001-01-03 19:49                     ` Wes Groleau
2001-01-06 19:45                       ` Lao Xiao Hai
2000-12-20 11:56             ` Mario Amado Alves
2000-12-19 18:05           ` Larry Kilgallen
2000-12-19 15:42       ` Robert Dewar
2000-12-15  0:52 ` Georg Bauhaus
  -- strict thread matches above, loose matches on Subject: below --
2000-12-19 17:46 Beard, Frank
2000-12-15  5:00 Beard, Frank
2000-12-15 14:14 ` Ken Garlington
2000-12-16  1:28 ` Robert Dewar
2000-12-18 20:00 ` Robert L. Spooner
2000-12-13 22:23 Beard, Frank
2000-12-13 23:56 ` Ken Garlington
2000-12-14  0:37   ` Ken Garlington
2000-12-14  4:08 ` Robert Dewar
2000-12-14 14:06   ` Ken Garlington
2000-12-14 20:15     ` Robert Dewar
2000-12-15  5:55 ` Keith 
     [not found] <910u3p$v9j$1@nnrp1.deja.com>
     [not found] ` <3A3445A8.8FC404D5@acm.org>
     [not found]   ` <912ut9$fga$1@nnrp1.deja.com>
2000-12-12  4:56     ` constant string array Jeff Carter
2000-12-12 20:57       ` Beard, Frank
2000-12-13  0:39         ` Robert Dewar
2000-12-13  2:02           ` Beard, Frank
2000-12-13  2:33             ` Robert Dewar
2000-12-13  2:55               ` Beard, Frank
2000-12-13  4:00                 ` Ken Garlington
2000-12-13 13:38                   ` Bad coding standards Marc A. Criley
2000-12-13 13:54                     ` Ken Garlington
2000-12-13 20:55                     ` David Emery
2000-12-14 13:07                       ` Robert Dewar
2000-12-14 14:21                         ` Ken Garlington
2000-12-15  0:08                           ` Wayne Magor
2000-12-15  1:40                             ` Ken Garlington
2000-12-15  3:18                         ` DuckE
2000-12-15  4:45                           ` Ed Falis
2000-12-15 15:44                           ` Robert C. Leif, Ph.D.
2000-12-15 16:34                             ` Ted Dennison
2000-12-16  6:08                               ` Robert C. Leif, Ph.D.
2000-12-16  1:16                             ` Robert Dewar
2000-12-16  1:19                             ` Robert Dewar
2000-12-17  5:49                               ` Robert C. Leif, Ph.D.
2000-12-17  8:24                                 ` Robert Dewar
2000-12-15 15:56                       ` Charles H. Sampson
2000-12-15 20:43                         ` Wayne Lydecker
2000-12-16  4:31                           ` Ken Garlington
2000-12-16 11:36                           ` Robert Dewar
2000-12-15 21:36                         ` tmoran
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox