In September 2011, I have been contacted by CATA‘s Jean-Guy Rens who was doing a study regarding the embedded systems industry in Canada titled “The Other Computing : Is Canada ready for the Internet of Things ?“. You can freely access his full study here.
We had an interview together to get my insights regarding future development of this industry. He finally decided to place this interview as the foreword of his study and called it “The Virtualization of Embedded Computing”. Here are some parts of this interview :
Being fluent in embedded software engineering is not enough
“Embedded systems are a horizontal technology, but their applications scopes are vertical. Many people are studying the embedded system itself, but the real challenge is to apply this knowledge to vertical applications. That is why I introduce myself as a software engineer who migrated to energy applications. I speak both “electric motor” and “embedded software”. Too often, electric motors specialists are not knowledgeable about embedded software and vice versa. Alizem’s expertise is to translate the needs of electric motor-based system designers into embedded software solutions. It is not sufficient to be an expert in C programming to be able to design an application that will fully satisfy a particular need. Too often, developers think they are able to create all purpose applications. That’s why the cost of embedded systems software development is skyrocketing. For my part I tend to consider that software programming is an engineering core skill. It’s like reading and writing: it is not because someone can write that he is equally capable of writing novels, political speeches and pamphlets for department stores. For an engineer, the challenge is to design solutions that encapsulate application knowledge (complex, rare and expensive to develop), within a short time to market, but without compromising product quality and performance. The technology of embedded systems is known and accessible to all. The challenge is to quickly and efficiently integrate modules that work first time around.”
Software now comes first, electronics second
“It is possible to compare the embedded system to a home. For centuries, it is the people who were makers of brick and cement that built the houses. The design, modeling and decoration of the house came as an afterthought. This process has changed beyond recognition when we started asking architects to make plans for our houses – or to program them virtually, if we are to continue our analogy. Even decorators – more often referred to as interior designers – are consulted from the start of the house project. It is they who define the plans of the house – the contractor comes later, to handle the actual construction. Everything happens exactly the same way in the embedded world. The engineer in microelectronics is the contractor with the bricks and mortar. If a microelectronics firm persists in programming an embedded system application from ‘a’ to ‘z’, it behaves like the ancient contractor who made himself the bricks with which he built a house, then would seek the aggregate of the mortar on the side of the river and so on. Such behavior was probably justified for the early embedded systems when devices had limited computing power and range of applications. Developers who all belonged to the world of electrical engineering approached their various projects from a hardware perspective: they had to practically invent their work tools as well as the final product. The rudimentary software used, a few hundred lines of code, was a detail they did not care about too much. But times have changed and electronics has become a commodity: the bulk of the value is migrating towards the software side. Today, embedded systems are software-driven. It is up to the software engineer to be both the architect and the decorator – he is the natural project manager. This role reversal is hard to accept by traditional electronic engineers. The result is a culture shock.”