This is the sixth in a continuing series of blog posts describing simple coding rules that help keep bugs out of embedded C programs. Rule: Whenever the width, in bits or bytes, of an integer value matters in the program, fixed width data types shall be used in place of char, short, int, long, or long long. The signed and […]
Month: March 2009
Coding Standard Rule #5: Only use Comments for Commenting
This is the fifth in a continuing series of blog posts describing simple coding rules that help keep bugs out of embedded C programs. Rule: Comments shall neither be nested nor used to disable a block of code, even temporarily. To temporarily disable a block of code, use the preprocessor’s conditional compilation feature (e.g., #if […]
Efficient C Tips #8 – Use const
One of the easiest ways to make your code more efficient is to use const wherever feasible. Just like declaring local functions as static, this is one of those changes that makes your code more robust, more maintainable and faster – a true win-win situation. So how does this work? Well you get the most benefit […]
Coding Standard Rule #4: Use volatile Whenever Possible
This is the fourth in a continuing series of blog posts describing simple coding rules that help keep bugs out of embedded C programs. Rule: The volatile keyword shall be used whenever appropriate, including: To declare a global variable accessible (by current use or scope) by any interrupt service routine, To declare a global variable accessible (by […]
New Mobile Phone OS Market Share Data
Fast Company magazine yesterday reported the latest statistics on mobile web browsing. Not surprisingly, people with iPhones are the dominant users of mobile Internet. Included in the article are statistics about the market for mobile phone operating systems. The shakeup in the OS market share mix over the past six months (August 2008 to February 2009) […]
Coding Standard Rule #3: Use static to Enforce Encapsulation
The third in a continuing series of blog posts about simple rules for keeping bugs out of embedded software written in the C programming language. Rule: C’s static keyword shall be used to declare all functions and variables that do not need to be visible outside of the module in which they are declared. Reasoning: C’s static keyword has […]
Calling all Embedded Systems Bloggers
I am currently doing research for an in-depth blog post or series about the online social networking community of individuals and companies with blogs, facebook pages, twitter feeds, etc. about embedded systems development. If you are involved with any part of the online embedded systems community and think I may not have already heard of […]
The meaning of Life, or at least, of words
Federico Fellini, the Italian film director said “A different language is a different vision of life.” I find this rule applies to spoken dialects, but also to the differences in the language used by engineers and that used by their customers or end-users. I have written previously about the usefulness of a glossary when working […]
Coding Standard Rule #2: Use const Wherever Possible
Another in a continuing series of blog posts about simple rules for keeping bugs out of embedded software written in the C programming language. Rule: The const keyword shall be used whenever possible, including: To declare variables that should not be changed after initialization, To define call-by-reference function parameters that should not be modified (e.g., char const […]
Demand more time off!
I’ve been posting on a lot of technical issues lately and so I thought I’d turn to a less cerebral topic – but one which I feel quite passionate about. First off – some background. I’m British by birth and was raised in Europe (UK & Germany) before moving to the USA in my early […]