Embedded Software

  • Getting it right while getting it wrong

    I love great customer service and I do my utmost to give feedback and to celebrate companies and individuals who get it right. A couple of examples are here and here. Although it is great when a service is executed really well, the most impressive customer service becomes apparent when something goes wrong. How a […]

  • Take a break – the break statement in C

    It is a given that structured programming – in one form or another – is a Good Thing. For years, the spaghetti of GOTOs that arose in earlier programming languages has been abhorred by all right-thinking programmers. There are good reasons for this attitude. Firstly, structured code tends to be easier to debug and, second, […]

  • Going wild

    Although I can and do enjoy traveling – indeed, as I write this text, I have just checked in for flights the following day, as we are off on a short jaunt. However, there are so many times when I wonder why I go to such trouble, as we are fortunate enough to live in […]

  • Video blog – creeping elegance in embedded software

    My latest video blog is now available. I am talking about “creeping elegance” in embedded software development. This is the well known phenomenon of an engineer not being able to stand back from some work and declare it complete – there are always possible enhancements. I illustrate this using a story about a young embedded […]

  • An interesting scam

    It is my opinion that the Internet is the single most important human invention, at least since the wheel. In just a few years, it has transformed the world of business and numerous aspects of our everyday lives. I feel rather lost when its resources are not to hand. However, there are those who eschew […]

  • Variable declarations in C – plenty of pitfalls

    It is widely felt that C is a very good language for embedded applications, as it is expressive, compact and powerful. It is possible to write very clear, readable code, but that takes care. Even the simplest things, like the declaration of variables, have pitfalls for the unwary … In C, you can declare variables […]

  • Driving cars – something needs to change

    I have held a driving license for over 40 years with quite a clean record; a couple of parking tickets and speeding fines – nothing too serious. I do not specifically enjoy driving or hate it; it is a means to an end. I like the freedom that it affords me and, for the time […]

  • Embedded software article: software in cars

    My latest article at embedded.com has been published: Software in cars From an embedded software engineer’s point of view, a car has become a mobile box full of embedded systems. This article reviews all aspects of embedded software in cars, including operating systems, protocols, development tools and international standards. The software content in automotive systems […]

  • Music festivals – a big dose of live music

    As I have written about before, we really enjoy experiencing live music. There is something special about the atmosphere when music is being made by live human beings. On a good day, the energy of their performance is almost tangible. We attend performances in all kinds of places: big concert halls, village halls, the local […]

  • Video blog: volatile keyword in embedded software

    My latest video blog is now available. I am talking about the volatile keyword in C/C++, which is of vital importance to embedded developers. You can see the video here or here: Future video blogs will continue to look at topics of interest to embedded software developers. Suggestions for topics are always welcome via comment, […]


Subscribe to Embedded Software updates