The Power Of Iteration

June 10, 2015

Have I been down this road before...?

I have seen countless design and debug efforts focused solely on the obvious---simply making the darned thing work. All too often, these efforts solve the immediate problem, but fall woefully short of offering long-term, robust and re-usable systems and modules. The operative word is “re-usable”. As control systems designers, we need to find creative ways to benefit from iteration as doing so allows us to build on solid foundations while reducing the test space to only previously un-vetted areas.

The take-away is to design with re-use in mind.

Given the demands of project schedules, cost targets, design specifications, performance expectations, etc., we are usually required to do more with less. Modern tools help with those efforts yet the complexities of the systems we are building are increasing. It is a vicious circle indeed.

When things are going well, it seems to me that we are too often lulled into a false sense of achievement, and we often couple that feeling with the expectation that the success will continue. Former fed chairman Alan Greenspan called it “irrational exuberance”. With machines and processes, it is only “run time” that ultimately dictates how well we actually performed on the designs.

While testing, until we have objective evidence supporting otherwise, we must continue to work to expose problems lurking just below the surface. I like to apply the basic tenet: If it hasn’t been properly tested, then it doesn’t work. Of course this implies that everything needs to be thoroughly tested with appropriate assessment criteria. Just because it appears to work doesn’t necessarily mean it’s right!

One common mistake is that someone had written code to test something, yet neglected to validate the test code. It needs to be said again: If it hasn’t been properly tested, then it doesn’t work.

It is impossible to document everything and it is illogical to conduct every test with equal intensity. It is also unreasonable to expect everyone involved in a project to agree on the definition of “successful”.  That’s because we all have our own individual tendencies and filters.  Here’s a good example of human filters:  While in line at a very busy deli counter I listened as one person complained that the cheeses they had just ordered were labeled incorrectly.  The date on the cheeses was marked one day in advance, while the meats were dated correctly. I routinely visit this deli counter, and I know that they reserve one slicer and one scale specifically for cheeses, but use multiple slicers and scales for meats. Note that all of the meats and cheeses were sliced and packaged just seconds earlier while in plain view of everyone at the counter. Of the several customers at the counter, opinions ranged from the store trying to pull a fast one to the error being nothing more than a simple mistake.

So, how do we benefit from iteration, especially when we work on projects that seem to be dissimilar in needs and wants? We can find the solution in the toolboxes of talented tradespeople. Find a successful plumber, electrician, appliance technician, automotive technician, etc. and ask them where they bought their toolboxes. The most successful ones will tell you that they didn’t “buy it”; rather they built it. The cost of their toolbox: time, effort, hard work, and a significant dose of humility when they were wrong.

So the challenge is not how fast we can finish any project, but rather how well. There is an old saying that goes: “Fast, cheap, or right; pick any two”.

There is no doubt that ours is society which rewards performance. The way to get there is by learning and growing and being able to do more with less. Look forward and focus on building your toolbox with the tools that can help you now as well as in the future. At the same time have the courage to learn what not to do.

Sponsored Recommendations

2025 State of Technology Report: HMIs, IPCs and Enclosures

Industrial manufacturing equipment often relies on human-machine interfaces, industrial PCs and enclosures to ensure system reliability and optimal performance. These components...

Custom Encoder Created for Large Rotational Applications

Large rotational applications like MRI machines, excavators, mobile equipment, forklifts and stagecraft require precise motion feedback for optimal performance, safety and efficiency...

See How One Company Customized Motion Feedback for Material Handling Applications

Encoders can be used in material handling on sorters, conveyors, in automated storage retrieval systems, on mobile equipment, automated mobile robots and more. See how one company...

Absolute vs Incremental Encoders: Which One Does Your System Need?

The right encoder makes all the difference. Incremental encoders are perfect for tracking speed and direction in dynamic motion. Absolute encoders? They remember exact positioning...