A fortunate move to upstate New York put me on a track to pick up some classes on BASIC and Pascal at the high school and Watfiv and assembly language at a local university that had a high school summer program. My senior project in high school was a graphing program that generated several kinds of graphs using Apple Pascal and the turtle graphics package that came with it. The system could barely handle it, but it was pretty spiffy. I wrote my own keyboard input routines that would allow me to set up fields of a specific size that would only allow certain characters to be typed into them.
College was more Basic, which I was entirely fucking sick of by then, and some scripting languages. I got my intro to REXX there, which was much nicer than Basic. I switched schools into a more CS-oriented program and picked up C, Ada and COBOL. By then I was starting to hear about this newfangled C++, which really sucked back in the early '90's, let me tell you. They didn't even have a STL yet. They started talking about adding templates to the language a few years later.
I don't see much new coming along the road.
Around the time Windows 95 came out, there was a push for all the people in the call center to get the "OS/2 Certified Engineer" rating, but IBM shut down OS/2 before anything much came of that. I got mine at the '95 Comdex, while doing volunteer support for Team OS/2. Still have the little plastic card...
But yeah, most of the level 1 guys didn't have any experience with OS/2 and a few didn't have any experience with computers, when they started. About 90% of the problems that came in were for similar issues though -- printer stuff and video problems seemed to be the most of them. I still have the command line command to reset the video drivers to VGA burned into my brain. I could actually fix your shit for a wider range of problems, if you were lucky enough to get me, but fixing your shit is time consuming and I was frequently in trouble for not answering as many calls as I was supposed to be. A lot of the techs just wanted to throw a reboot-requiring command at you and make you go away so they could keep their numbers up.
Funnily, even though OS/2 sported newfangled "threads", very few IBM applications used them -- most IBM OS/2 programs were pure windows ports. Ironically, if you ran the windows versions of those programs, you could run them in separate memory spaces so that the programs couldn't interfere with each other when doing processing in the event-handling thread. So Windows programs ran better on OS/2 than they did in windows and better than OS/2 programs ran in OS/2. You could format a disk and run a print job at the same time, as long as you did it from the command line. The GUI versions would tie the system queue up, so you could only do one at a time.
"I'm not a god, I was misquoted." -- Lister, Red Dwarf