Brief background: 8 yrs exp in mechanical design/engineering of medical devices and CVD/PVD equipment for semiconductor B.S. in Mechanical Engineering P.E. in Mechanical Engineering (strength of materials & machine design focus) I'm looking for guidance/ learning recommendations for broadening my engineering skill set to include: competencies in C/C++ programming; setting up data acquisition test stations; and doing basic controls/automation of solenoids, stepper motors, pumps, and control valves. I'd really love to be able to write some simple c/c++ code for my computer or a micro-controller for reading pressure transducers or strain gauges, actuate a couple of solenoids off/on, sense some push buttons and ramp up/down a stepper motor or 3. It would be super helpful to be able to read and understand the software (typically in C) on legacy devices that our company has had for over 10 years after the principle engineers have retired/left. Would I need to acquire a post baccalaureate in computer science or would that have me spending 80% of the time in classes that would not benefit my goal? Is there a better focus for instrumentation and controls in electrical engineering? Currently I've bought some hobbyist books for learning to program, wire, and use Arduino's. It's been pretty fun, but I feel that they might be a little overly simplistic to get a good understanding of the fundamentals. I would feel a little embarrassed to use an Arduino for an automated test station for production of medical devices; I've never seen them used at any of the companies I've worked for. Are there any good books for just starting from scratch on your PC, write some code in C, use your serial/parallel/usb ports to sense and control projects? Thanks for any help.