11,896 reputation
52742
bio website
location
age
visits member for 3 years, 9 months
seen 8 hours ago
Very senior embedded real-time systems programmer (Texas law is very picky about the use of the term "engineer"), unsuccessful candidate for U.S. Congress, and unreconstructed Cold Warrior.

Feb
6
comment When should pointers be checked for NULL in C?
@James: The problem with error codes is that programmers almost never bother to check them. Throwing an exception or tripping an assert FORCES them to deal with the problem.
Feb
6
comment When should pointers be checked for NULL in C?
@detly: If you are in a function that requires a non-NULL pointer, and you don't have a mechanism to return a fatal error to the caller, you throw an exception or trip an assert. I personally prefer throwing an exception, as that pretty much guarantees a traceback with the crash-and-burn. (I caught a lot of static on this some years ago, on an Ada project. I had to educate several people, including my manager, on the concept of policy/mechanism separation.)
Feb
6
answered When should pointers be checked for NULL in C?
Feb
5
comment How can I deal with a team member who dislikes making comments in code?
Have you considered an alternate hypothesis, that the code is perfectly understandable to him AND TO ANYONE ELSE WITH HIS WIZARD LEVEL OF SOPHISTICATION, but not to people who have barely achieved Journeyman or are still Apprentices? I have seen cases like this, in specialized real-time image-processing applications, and, as it turned out, it was absolutely necessary to train up to Wizard to be able to work on the code, NOT because it was undocumented, but because the problem domain was inherently hard. By the time I understood the domain, his code WAS self-documenting (and CLEAN!).
Feb
5
comment Objective Metrics for Software Quality
@locster: Given two 100 SLOC modules, one with a CC of 47 is likely to have more problems than one with a CC of 3. HOWEVER, for real-world code, in large quantity, one finds that short modules tend to have low CC and long modules tend to have high CC, to the point that knowing the SLOC gives you a very good guess at the CC, and vice versa. This is what is meant by "very strongly correlated." AS SUCH, on real code, any benefit you get from noticing CC = 47 is MORE EASILY gotten from noticing SLOC = 1500. (Numbers pulled at random, principle is the same.)
Feb
4
answered Objective Metrics for Software Quality
Feb
4
comment Is the average number of bugs per loc the same for different programming languages?
Unfortunately, Hatton's paper is paywalled by the IEEE, so it is impossible to determine whether it says anything useful. (That the second comment compares C and C++ seems to argue against it.)
Feb
4
comment Is the average number of bugs per loc the same for different programming languages?
Let me ask you this question. Does the answer actually matter to you? If, for example, you were told that a particular higher-level language offered, say, doubled programmer productivity and 1/4 the defect rate, across the board, what would you do with that information?
Feb
1
comment Will experience suffice for a Computer Science degree
Something you might want to look at: argee.net/DefenseWatch/…
Feb
1
comment What can I do to strengthen up my pen and pencil coding skills?
Same way you get to Carnegie Hall: PRACTICE, PRACTICE, PRACTICE!
Jan
24
comment Is the number of bugs in a section of code proportional to the # of lines ? The square of the # of lines ?
Saying that "the validity of Halstead's metrics have been questioned" does not begin to tell the tale. Halstead's metrics have all been shown to be strongly correlated with raw SLOC (source lines of code). The implications are obvious.
Jan
23
comment Why has C prevailed over Pascal?
I think that your comment ".. and all the MS/Windows operating systems" may be factually incorrect. Windows was originally designed and coded in PASCAL. From en.wikipedia.org/wiki/Talk:X86_calling_conventions: "Just thought I would weigh in here. I looked up the __pascal keyword in the Watcom C/C++ User's Guide, and its clear that: __pascal calling convention was used for OS/2 1.x and Microsoft Windows 3.x APIs "
Jan
22
comment What programming language generates fewest hard-to-find bugs?
@Malfist: Let me clarify it for you. My personal experience was that it didn't take significantly longer to get Ada code COMPILABLE than it takes C/C++ or FORTRAN. By that, I mean "It compiles without errors or warnings."
Jan
20
awarded  Nice Answer
Jan
20
comment CLISP Common Lisp license - can it force my code to be released under GPL?
@NeuronQ, the CLISP summary says you may distribute commercial applications, and refers you to the detailed COPYRIGHT page.
Jan
20
comment What are the warning signs of impending doom to watch out for on a project?
I'm going to put my karma in danger here and point out that "heroic coding" is a late indicator. Projects get into trouble long before they get to the phase where "heroic coding" starts happening. There are usually lots of early trouble indicators, that pop up long before coding gets under way in earnest. They are, unfortunately, all too frequently ignored. Robert Glass has written extensively on this subject, in "The Universal Elixir", and in other books. Ignore him at your peril.
Jan
20
answered The most human language like programming language
Jan
20
revised CLISP Common Lisp license - can it force my code to be released under GPL?
Update to remove CLISP vs CMUCL in question call-out. Questioner fixed it.
Jan
20
answered CLISP Common Lisp license - can it force my code to be released under GPL?
Jan
20
comment What are the warning signs of impending doom to watch out for on a project?
Robert Glass wrote "Universal Elixir and Other Computing Projects Which Failed". Published in 1977, the book was a collection of columns he'd written earlier, each one looking at a project that failed, looking for the reasons behind the failure. The book makes an EXCELLENT list of warning signs.