The best search terms of 2009

One of the interesting things about writing a blog is looking at the search terms that result in people visiting the blog. The vast majority of the search terms are quite reasonable. However, every once in a while a term pops up that brings a wry smile to my face. With that being said, I […]

Read More

Terrorist engineers

From time to time I comment on things related to engineers (as opposed to engineering). This is one of those times! Anyway as you may know, someone tried to blow an airliner out of the sky the other day. What you may not know is that once again the perpetrator was an engineer. I say […]

Read More

Engineering A Rebate

I hate rebates. They are incredibly annoying and force me to do work to keep the manufacturer honest. In the early days of rebates I religiously kept a folder where I filed copies of all the receipts and papers for all my outstanding rebates. I had to use this archive a number of times as manufacturers claimed they […]

Read More

Hardware costs versus development costs

Earlier this year I posted about how to solve the problem of PIC stack overflow. As part of that article I asked the question as to why does anybody use a PIC anyway when there are superior architectures such as the AVR available? Well, various people have linked to the posting and so I get a […]

Read More

Is Reliable Multithreaded Software Possible?

Until earlier this month, I’d overlooked a most interesting May 2006 article in Embedded Software Design magazine by Mark Bereit titled “Escape the Software Development Paradigm Trap“. The article opines that the methods we use to design embedded software, particularly multitasked software with interrupt service routines and/or real-time operating systems, are fundamentally incompatible with reliability. Here’s the critical analogy: […]

Read More

Automated kiosks

I’m not prone to rants on this blog, but I think it’s time to vent about automated kiosks. Automated kiosks are popping up everywhere – airline check in, the movies, grocery stores and so on. While it’s true that as a consumer I can’t say I particularly like these beasts, I think it’s the engineer […]

Read More

Century Post

My blogging software tells me that this is the one hundredth posting to this blog. I have to admit I’m somewhat astonished to find that not only have I found so many things to write about, but that the list of topics seems to be growing rather than shrinking. Anyway, rather than post on my […]

Read More

Embedded Java Lives!

Reading the latest embedded software market survey highlights from VDC Research I was surprised to note two data points indicating new upward momentum for Java as an embedded software development language. First, of those survey respondents using an operating system on their current project 11% indicated that a Java Virtual Machine is required in their product.  Second, Java was […]

Read More

Verification vs. Validation

The FDA 510(k) guidelines for medical device software leave something to be desired in the poor differentiation of two important and distinct software development practices: verification and validation.  In particular, the FDA often uses the word ‘validation’ to describe both types of activities.  (See, for example, the General Principles of Software Validation; Final Guidance for Industry and FDA […]

Read More

Effective C Tip #8 – Structure Comparison

This is the eighth in a series of tips on writing effective C. Today’s topic concerns how best to compare two structures (naturally of the same type) for equality. The conventional wisdom is that the only safe way to do this is by explicit member by member comparison, and that one should avoid doing a straight bit […]

Read More