1) I will work hard to elicit correct specifications, insofar as humanly possible, before starting a project.
2) I will work with the hardware people to produce firmware-friendly hardware.
3) I will carefully document all of my code, including tests and prototypes, as prototypes have a nasty habit of becoming products.
4) I will collect metrics about bugs and examine their root causes.
5) I will carefully measure the real-time behavior of real-time code, like interrupt handlers, to insure adequate margin and to improve my time-domain estimates.
6) My tests will be extremely comprehensive, and will check boundary conditions.
7) I will petition management for funds for high-quality tools.
8) I will write warning-free code.
9) I will not use global variables unless there is no alternative.
10) I will continue to study the fascinating world of software engineering.
11) I'll keep having fun!
Wish you a happy and prosperous New Year ! :)
More blogs this year :). Keep visiting...
Cheers! I'm Chandra, .