|

Embedded systems are notoriously delivered late, over budget and bug-ridden. Heroic efforts are often required to get these monstrosities to market, often leaving the engineering team exhausted and unappreciated. In a society that is dependent on such systems functioning reliably, we are quickly heading for disaster if we continue to develop products in a hap-hazard, fly by the seat of our pants ways.
Beningo Engineering serves two purposes. The first, is to provide engineering services to companies that are in need of a high-quality supplier. Beningo Engineering has the experience to design embedded hardware and software, build prototypes, develop appropriate system tests and bring the system to manufacturing reliably, on-time, within-in budget and bug-free. The second, is to help embedded developers produce quality systems that are delivered on-time, on-budget and bug-free. This website is designed to be a resource that developers can use to get the latest tips, methods and procedures to build reliable systems.
You can learn more about Beningo Engineering and the services we offer by exploring the company and services menu. If you are interested in contacting us or having us quote on a project, please use the contact information found under contact us.
Fellow embedded developers looking to improve themselves will find a growing library of information within the design articles and book reviews sections of this website. Our hope is that this information will help you to become better developers. We would greatly appreciate user feedback and would love to hear your thoughts so please don't be shy.
Documenting Code the Easy Way - Part 1
Introduction
One of the most important yet most neglected tasks in embedded software development is writing and maintaining documentation. As software engineers we usually start strong by documenting everything but when the pressure is on, the boss is breathing down our necks, the client is antsy to see a functional prototype and the world is falling to shambles, we bury our heads in the code and just crank it out as fast as possible. We trick ourselves into believing that we’ll update that software document as soon as this deadline is met and things slow down a bit. In reality, the code either goes undocumented or is sprinkled here and there with half thoughts and gibberish in a rushed attempt to provide illumination into what has become the chaotic.
Documentation is a tedious and unrewarding part of our jobs. None of us want to do it, yet if we don’t, maintaining and updating the code can be become a nightmare for fellow developers or even forgetful future versions of ourselves. Luckily for us, documentation challenged developers have gone before us and a number of unique tools for easing our burden exist. These tools scan our source code and allow us to auto-generate our documentation by turning the comments that we already include in our code into documentation. A few examples of software tools that perform this function are JavaDocs, NaturalDocs and my all time favorite and primary focus of this article, Doxygen. Read More
Documenting Code the Easy Way - Part 2
Advanced Configuration File Setup
The wizard tab within DoxyWizard allowed us to quickly get Doxygen up and running. However, there are many customizable options which can be used that are only available from within the Expert tab. So before we begin talking in detail about how to work with our source files, we’ll first explore a few very useful options that are available to expert users.
The JAVADOC_AUTOBRIEF option under the project topic enables Doxygen to recognize the first line of a comment as the brief description. This allows us to save time by not explicitly specifying \brief command within our commands. Therefore, we will always assume that the first line of a statement is a brief overview. Read More
Differentiating Yourself as an Engineer
The field of engineering has always been a competitive field to work in but recently with down turns in the global economy and outsourcing of engineering services to foreign companies, our field has become even more so as we compete for fewer and more specialized opportunities. So how can a young motivated engineer rise above the background noise and get the attention of employers? In my experience, there are three primary ways to turn heads; earning an advanced degree, becoming a licensed professional engineer and earning an IEEE professional certificate.
Earning a bachelor’s degree in the engineering field is quickly becoming .... Read More |