Home Contents

The Ten Commandments for C Programmers
- Thou shalt run lint frequently and study
its pronouncements with care, for verily its perception and judgement
oft exceed thine.
- Thou shalt not follow the NULL pointer, for
chaos and madness awaitthee at its end.
- Thou shalt cast all function arguments to
the expected type if they are not of that type already, even
when thou art convinced that this is unnecessary, lest they take
cruel vengeance upon thee when thou least expect it.
- If thy header files fail to declare the return
types of thy library functions, thou shalt declare them thyself
with the most meticulous care, lest grievous harm befall thy
program.
- Thou shalt check the array bounds of all
strings (indeed, all arrays), for surely where thou typest ``foo''
someone someday shall type ``supercalifragilisticexpialidocious''.
- If a function be advertised to return an
error code in the event of difficulties, thou shalt check for
that code, yea, even though the checks triple the size of thy
code and produce aches in thy typing fingers, for if thou thinkest
``it cannot happen to me'', the gods shall surely punish thee
for thy arrogance.
- Thou shalt study thy libraries and strive
not to re-invent them without cause, that thy code may be short
and readable and thy days pleasant and productive.
- Thou shalt make thy program's purpose and
structure clear to thy fellow man by using the One True Brace
Style, even if thou likest it not, for thy creativity is better
used in solving problems than in creating beautiful new impediments
to understanding.
- Thy external identifiers shall be unique
in the first six characters, though this harsh discipline be
irksome and the years of its necessity stretch before thee seemingly
without end, lest thou tear thy hair out and go mad on that fateful
day when thou desirest to make thy program run on an old system.
- Thou shalt foreswear, renounce, and abjure
the vile heresy which claimeth that ``All the world's a VAX'',
and have no commerce with the benighted heathens who cling to
this barbarous belief, that the days of thy program may be long
even though the days of thy current machine be short.
Home Contents
© Francis O'Donovan
1999.