Click here to Skip to main content
15,891,708 members

Survey Results

What are the worst programming habits

Survey period: 7 Jul 2014 to 14 Jul 2014

Inspired by a rant-fest

OptionVotes% 
No comments in code1,05740.95
Terrible variable names1,35752.58
Bad / dangerous code formatting69526.93
Mystery side-effects in code1,07641.69
Using magic numbers64424.95
Leaving commented-out code hanging around too long60923.60
Repeating code (Cut and Paste programming)1,28549.79
Poor program structure1,10742.89
Writing code that assumes a default behaviour67326.08
Swallowing errors95036.81
Not checking input parameters / return values / null testing1,05840.99
Respondents were allowed to choose more than one answer; totals may not add up to 100%



 
GeneralAlmost all PinPopular
Nelek6-Jul-14 22:58
protectorNelek6-Jul-14 22:58 
GeneralRe: Almost all Pin
Gary R. Wheeler7-Jul-14 2:58
Gary R. Wheeler7-Jul-14 2:58 
GeneralRe: Almost all Pin
Nelek7-Jul-14 11:38
protectorNelek7-Jul-14 11:38 
GeneralNone of the above? Pin
SteveTheThread6-Jul-14 22:00
SteveTheThread6-Jul-14 22:00 
GeneralRe: None of the above? Pin
Nelek6-Jul-14 22:36
protectorNelek6-Jul-14 22:36 
GeneralRe: None of the above? Pin
KarstenK6-Jul-14 23:57
mveKarstenK6-Jul-14 23:57 
GeneralMessage Removed Pin
7-Jul-14 2:45
professionalN_tro_P7-Jul-14 2:45 
GeneralRe: None of the above? PinPopular
Gary R. Wheeler7-Jul-14 3:15
Gary R. Wheeler7-Jul-14 3:15 
"If you can say it in code, do so. Otherwise, say it in a comment.

    - Dan Saks, one-time secretary of the ANSI/ISO C/C++ standardization committee

Comments should describe your intent, not what the code is doing (or what you think it's doing). They can also correlate requirements to features, and describe interactions between components. Identify the algorithm if it's noteworthy. Comments can aid source code navigation.

Having comments in your code is not a blind indicator that refactoring is in order. The KISS rule applies here. I've seen several projects that used esoteric language features to force the compiler to process 'self-documenting' code (C++ template meta-programming comes to mind). The end result is that the intent is obfuscated by the syntax, the code itself is difficult to read and impossible to debug, not to mention the concomitant obscure compiler diagnostics.
Software Zen: delete this;

GeneralRe: None of the above? Pin
Ravi Bhavnani7-Jul-14 7:30
professionalRavi Bhavnani7-Jul-14 7:30 
GeneralRe: None of the above? Pin
SteveTheThread8-Jul-14 21:34
SteveTheThread8-Jul-14 21:34 
GeneralRe: None of the above? Pin
Mark_Wallace9-Jul-14 17:49
Mark_Wallace9-Jul-14 17:49 
GeneralLong Column Name Pin
Meysam Toluie6-Jul-14 21:50
Meysam Toluie6-Jul-14 21:50 
GeneralRe: Long Column Name Pin
Dan Neely7-Jul-14 2:30
Dan Neely7-Jul-14 2:30 
GeneralNot checking input parameters / return values / null testing Pin
Gandalf_TheWhite6-Jul-14 20:56
professionalGandalf_TheWhite6-Jul-14 20:56 
GeneralRe: Not checking input parameters / return values / null testing Pin
KarstenK6-Jul-14 23:59
mveKarstenK6-Jul-14 23:59 
GeneralRe: Not checking input parameters / return values / null testing Pin
Philippe Mori7-Jul-14 15:53
Philippe Mori7-Jul-14 15:53 
GeneralAdd: leave code with this kind of problems to me PinPopular
Davide Zaccanti6-Jul-14 19:56
Davide Zaccanti6-Jul-14 19:56 
GeneralRe: Add: leave code with this kind of problems to me Pin
DaveAuld6-Jul-14 20:24
professionalDaveAuld6-Jul-14 20:24 
GeneralRe: Add: leave code with this kind of problems to me Pin
Mark_Wallace9-Jul-14 17:50
Mark_Wallace9-Jul-14 17:50 
GeneralAll of the above Pin
Abhinav S6-Jul-14 19:31
Abhinav S6-Jul-14 19:31 
GeneralRe: All of the above Pin
DaveAuld6-Jul-14 20:22
professionalDaveAuld6-Jul-14 20:22 
GeneralRe: All of the above Pin
KarstenK7-Jul-14 0:01
mveKarstenK7-Jul-14 0:01 
GeneralRe: All of the above Pin
Abhinav S7-Jul-14 0:43
Abhinav S7-Jul-14 0:43 
GeneralRe: All of the above Pin
KarstenK7-Jul-14 1:19
mveKarstenK7-Jul-14 1:19 
GeneralAll of the above... Pin
Brisingr Aerowing6-Jul-14 18:08
professionalBrisingr Aerowing6-Jul-14 18:08 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.