While I was still an industrial electrician I learned to program with BASIC ( which I later learned to hate ), 'C' ( which I love ), and PLC Ladder Logic. All mostly self taught. I think this was a big part of why I later got a much better job in process automation.
Our processes were controlled by a hybrid system, a DCS ( distributive control system ) did all of the analog stuff ( flows, temperatures, etc ) and a PLC ( programmable logic controller ) handled the digital logic ( motors, bindicators, interlocks, etc ).
In addition the DCS handled the operator consoles, originally using DEC PDP-11-73s running RSX, later with DEC Alphas running VMS. and finally ( much to my disgust ) a PC running Windoze.
When I was assigned to do the automation programing in a plant, I did the all the programming on both systems, and also drew the operator console graphics with ACAD
At first, I found my job fascinating, but some years before I retired, I was sick of the whole thing. When you've written code that people use every day, you don't own the program - it owns you!
All of those of 3:00 am phone calls, where 99.999 percent of the time it's either operator error or a hardware problem. Very rarely is it what we called in the department a "logic bomb". IOW where code that's run perfectly for years encounters a unique set of circumstances that makes it blow up.
Hey, I just realized that my Hughes data usage problems may have turned ME into to one of those 3:00 am callers! :>)>
"Enough about me, let's talk about you for a a minute"
Alanis Morissette
Been there. There's no debugger for Operator Headspace problem.
I always build the user flow/interface first, engine(s) second, then everything else in-between. There's still no excaping Operator Headspace.
@MarkJFine wrote:
I always build the user flow/interface first, engine(s) second, then everything else in-between. There's still no excaping Operator Headspace.
Actually, most our operators were pretty good. I think a lot of the time everybody was just stumped as to what the real problem was, and they knew that I could connect to the plant from home, and many times tell them the solution.
Usually took me less than a half hour, but I charged them two hours overtime. There were nights I could have charged them 24 hours overtime in a single night. The company would have gladly paid it, but I never charged more than eight.
BTW I was one of those lucky people who were straight salary but still got evertime pay also.
Haven't worked in over fourteen years. I still have dreams about it though.
ALONE, adj. In bad company.The Devils Dictionary