Exploring automation through computer science
In automation, software is often seen as a second-class citizen to the hardware. If you speak to an automation professional, chances are they are going to tout the hardware as the main focal point of the system. Automation engineers love to brag about the latest controllers that are being utilized, how they integrated the finest motors and motor drives into the system, and so on. However, it is rare to hear a typical automation engineer brag about the efficiency of the software or tout the design patterns they used to architect the software.
A lot of this attitude towards software boils down to tangible assets. Often, an engineer can hand a customer the latest power supply or brag about how easy it is to swap out a new motor drive. If the customer ever sells the machine off, they can use all those features as selling points to raise the value of the machine. However, there is a major flaw in this logic. Without quality software, the...