comp.lang.ada
 help / color / mirror / Atom feed
From: andy.glew@amd.com (Andy Glew)
Subject: ISO Studies of underscores vs MixedCase in Ada or C++
Date: 25 Sep 2003 21:32:40 -0700
Date: 2003-09-26T04:32:43+00:00	[thread overview]
Message-ID: <2cfd1a4e.0309252032.3e3c0a1a@posting.google.com> (raw)

I am in search of any rigourous,
scientific, academic or industrial studies
comparing naming conventions in
C++ or similar languages such as
Ada:

Specifically, are names formed with
underscores more or less readable
than names formed with MixedCase
StudlyCaps camelCase?

...and similarly, any measurements
of programmer productivity, bug rate,
etc.; although IMHO readability matters
most.


* Religion - NOT?!

I understand that this is a religious issue
for many programmers, an issue of programming style.
I am not interested in a religious war.
I obviously have my own opinion, but I am
open to scientific evidence.


* Ada Studies?

I thought that I had seen studies like
this in some of the early design documents
for Ada, but I have not been able to find
such references on the web. Which is not
entirely surprising, since Ada was designed
prior to the web.

The Ada 83 and 95 Quality Guidelines recommend
underscores to improve readability, but provide
no source justifying this statement.  


* What such studies might look like

Simple readability and recall:
   - present a test subject with 
     a list of compound words
     formed with underscoresand mixed case
   - remove the list, and ask test subject
     to write it
   - score on accuracy

Program debugging
   - present programs that are otherwise identical,
     differing only in their use of underscores/MixedCase
     to test subject programmers (e.g. a CS class)
   - program has a known bug
   - ask test subjects to find bug
   - score on accuracy locating bug

Cruel TA study:
   - Two sections of a CS class
   - Enforce programming standards,
     underscores vs MixedCase
   - Pose a programming problem
   - Score according to success
     completing assignment

Empirical:
   - Given version control databases
     of large programs, some written in underscore
     style, others in MixedCase
   - Total bug rates normalized by LOC, name count, etc.
   - OR: count only bugs that can be attributed
     (after inspection of checkins) to misnamed variables

For that matter, I would be interested in any surveys
folks may have done that count projects and their
coding standards, possibly weighted
   - open source (e.g. sourceforge)
   - industrial
   - textbooks, weighted by sales
   - websites of coding standards, weighted by Google score...
Although this is less convincing than a rigorous study.


* Explanation of Newsgroups Chosen

I hope it is obvious why I have chosen these
newsgroups to post this search to:

comp.software-eng, comp.programming, 
   - an issue of software engineering
comp.lang.c++, 
   - the language I am most interested in
comp.lang.ada
   - because I vaguely recall historical work



             reply	other threads:[~2003-09-26  4:32 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-09-26  4:32 Andy Glew [this message]
2003-09-26  5:43 ` ISO Studies of underscores vs MixedCase in Ada or C++ Attila Feher
2003-09-26  5:54 ` Jakob Bieling
2003-09-26  7:11   ` Matt Gregory
2003-09-26 17:12     ` Matt Gregory
2003-09-26 18:25       ` tmoran
2003-09-26 18:41       ` Michael Feathers
2003-09-26 13:43   ` Steve
2003-09-26  7:27 ` Ludovic Brenta
2003-09-26 15:40   ` Frank J. Lhota
2003-09-27 11:18     ` Mad Hamish
2003-09-28  9:26       ` Martin Dowie
2003-09-29 17:34     ` Georg Bauhaus
2003-09-29 23:19       ` Mike Bandor
2003-10-03 11:53         ` Spell-checking source code (Was: ISO Studies of underscores...) Leif Roar Moldskred
2003-10-03 14:13           ` William
2003-10-03 14:20             ` William
2003-10-03 18:39               ` Leif Roar Moldskred
2003-10-03 22:04                 ` Kevin Morenski
2003-10-04  9:49                   ` Leif Roar Moldskred
2003-10-05 15:16                     ` William
2003-10-06 12:58                   ` Robert Stankowic
2003-10-03 19:48               ` Jim Rogers
2003-10-05 15:08                 ` William
2003-10-04  3:07           ` Steve
2003-10-04  9:44             ` Leif Roar Moldskred
2003-10-04 10:41               ` Jakob Bieling
2003-10-04 18:29                 ` Leif Roar Moldskred
2003-10-04 19:06                   ` Jakob Bieling
2003-10-07 18:56                     ` Spell-checking source code Jacob Sparre Andersen
2003-10-12  8:07                       ` Jakob Bieling
2003-10-14 13:41                         ` Jacob Sparre Andersen
2003-10-14 15:30                           ` Jakob Bieling
2003-10-14 15:50                             ` Peter Bushell
2003-10-14 16:46                               ` Jakob Bieling
2003-10-14 17:34                                 ` Alan Balmer
2003-10-15  5:34                                   ` Jakob Bieling
2003-10-15 15:02                                     ` Alan Balmer
2003-10-16  8:57                                     ` Frank Schmitt
2003-10-20  7:42                                 ` Jacob Sparre Andersen
     [not found]                             ` <h51pov4t28ujj3bqlareldhsiie0m4ljre@4ax.com>
2003-10-15  5:43                               ` Jakob Bieling
2003-10-20  7:44                             ` Jacob Sparre Andersen
2003-10-24 11:55                               ` Stephen Baynes.
2003-10-07 18:47           ` Jacob Sparre Andersen
2003-10-10 11:52       ` ISO Studies of underscores vs MixedCase in Ada or C++ Stephen Baynes.
2003-10-13  9:32         ` Georg Bauhaus
2003-09-26 16:22 ` Randy King
2003-09-26 16:51   ` Hyman Rosen
2003-09-26 18:02     ` Mike Smith
2003-09-26 19:05       ` Hyman Rosen
2003-09-26 19:56       ` Default User
2003-09-26 17:24 ` Jack Klein
2003-09-26 17:44   ` Programmer Dude
2003-09-27 11:44     ` Gerry Quinn
2003-09-26 19:57   ` Default User
2003-09-27 16:35   ` Richard Heathfield
2003-09-28  0:23     ` Ian Woods
2003-09-28 10:17   ` James Dow Allen
2003-10-04  8:45     ` Matt Gregory
2003-10-04 18:41     ` Default User
2003-10-04 22:13       ` Frank J. Lhota
2003-10-20  7:40     ` Jacob Sparre Andersen
2003-10-21  1:08       ` Wes Groleau
2003-10-02  4:20 ` Peter Ammon
2003-10-02 14:35   ` Programmer Dude
2003-10-03 22:42     ` Peter Ammon
2003-10-04  0:10       ` Wes Groleau
2003-10-04  1:03         ` Peter Ammon
2003-10-04  8:48       ` Matt Gregory
2003-10-04 10:19         ` Martin Dowie
2003-10-04 12:13           ` Corey Murtagh
2003-10-04 13:29           ` Georg Bauhaus
2003-10-04 22:15             ` John W. Krahn
2003-10-04 12:28         ` CBFalconer
2003-10-06  6:02       ` Dave Thompson
2003-10-08 16:22       ` Programmer Dude
2003-10-28  1:16       ` Gene Wirchenko
2003-10-28  3:01         ` Oplec
2003-10-28  3:29         ` Dave Vandervies
2003-10-08 15:07 ` Isaac Gouy
  -- strict thread matches above, loose matches on Subject: below --
2003-10-02  9:36 Lionel.DRAGHI
2003-10-02 11:37 ` Peter Hermann
replies disabled

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