Old skills and scaring myself
Apr. 9th, 2003 02:24 amI started programming in 6th grade, on a TI 99/4a back in 1982 if I have the year right. It was an experimental class to bring computer training to Jr. Hi folks. Or was it 7th grade? I don't remember exactly. I just fondly remember the TI itself, with it's casette drive, floppy drive (the school had the deluxe expansion), voice module and extended basic cartridges. Oh, how I loved sprites. I coded like a mad creature for many following years, and went on to win some awards in Michigan statewide competitions in high school. College brought more coding fun and lots of rather deep projects. Among those projects was my first commercial job: writing a Computer Based Training design and player application for the as-yet-unreleased PC-VCR project.
Ever wanted to know why I hang around coders, and am a really technical person -- but I can't currently code my way out of a wet paper bag? Well, read on.
The PC-VCR was a device designed as a low-cost prototype tool for the hot thing of the day: Computer Based Video Training. This was where you'd have a pre-made laserdisc with video material hooked to a computer. The computer would control the lesson, varying it depending on user input to 'tests' given throughout. Think of it as halfway between watching a training tape and playing Dragon's Lair. While this was great and dandy, it required the creation and very-bloody-expensive pressing of a laserdisc. The PC-VCR was the first low-cost VCR to have full timecode and computer (serial-port) control that directly emulated the video-disc players of the day. The only functional difference was instead of a near-instant chapter shift on a laserdisc, you got a blue screen with "Please Wait..." displayed while the PC-VCR high-speed forwarded/rewound to the next segment as necessary. You traded speed of output for price of production. Great for development and small scale end-user use.
I was given a PC-VCR and a small up-front cash payment in order to write a basic CBVT authoring program (and an associated player). Due to the machine requirements they wanted it written in structured basic with some rudimentary assembly calls for serial port handling -- yet they had a big group of UI enhancements that simple structured-basic simply wasn't designed to do. If I finished the project the program would be included with PC-VCRs sold throughout the Michigan educational system and I'd get a royalty per part sold. All this while in the 1st quarter of my 2nd year of school. I was picked for the proejct not only because of my 'resume' of past programming works but because of my unique position of being the only person at my University persuing a dual degree in Computer Science and Television/Video Production.
I wrote the damn thing between 22 credit hours of core classes (I'd tested out of most all my fluffy ones) and 40-hour-a-week full time work (half at the radio station, half in a boiler room doing telemarketing: it was the only way to stay funded while in school). It pretty much near-killed me. My grades suffered, even after dropping one class (I had 26 credit hours at the start of the term, see...) and at times I was anything from giddy to hallucinatory from extreme lack of sleep and pressure-stress (the folks behind this project were really damn demanding and held the tiny pre-payment they'd given me over my head on a daily basis). In the end I finished it to spec -- and it worked great. Just in time for NEC (the manufacturer) to drop the project in the face of the now-obvious death of the CVBT way of learning... and thus the University system people who hired me to say "thanks for the work, but no royalties; we're not going to deploy the PC-VCR.".
This programming project and the stress it caused had a decided "Brewster's Millions" type effect on me. For those not familiar with the term, here's another analogy (and a true one at that): When I was a farm-kid, my cousin and I once stole my Uncle's last beer from the fridge while he was out. We sipped at it, acting like Big Bad Men, though it tasted nasty as all hell. When Uncle Ron got back from a hard day's construction labor and found his last beer in the hands of his son and nephew (both in 5th grade or so) he was enraged. As punishment he bought a 40oz Bull Malt Liquor and forced us to split it and drink it, every last drop. It made us both sicker than hell. Hurl, puke, gag... nope, keep drinking until it's alllll gone. The result? For the rest of my life I've associated the taste of beer with getting physically ill and/or punishment. I credit this experience for the reason that I never got into liking beer and alcohol in general.
The PC-VCR project was like that. From that point on through the end of college, I couldn't sit down and get into the groove of coding without completely stressing out. Hell, the last thing I wanted to do was to be near a computer. I'd finished most all my CS degree side anyways and was now deep into the Video Production part and gladly left the computer coding behind. I only returned to get into 3D graphics and computer video editing -- but that's being a user, not a programmer. I think the closest I let myself get was using AREXX on the amiga to chain image processing programs together. Simple scripting.
My college career ended early with the lack of funds forcing me to find work as a video editor. I never went back to school. I went from video editor to retail store worker to computer graphics person (yes, I actually put food on the table for a period of time by selling flying logos and scientific illustration)... to returning to my computer roots in the form of setting up networks for rendering farms. This led to my move to the Silicon Valley and my now 12-year-long career as a Network Administrator -- nowadays a Network Architect, setting up wide-area enterprise systems for a living. Through all this time I never got back into coding, and in fact actively avoided it. I'd let myself script things now and then if forced, but otherwise I've always had an excuse or a group of minions to do the coding for me. During this last decade the world of computer programming has changed in impossibly complex ways. I don't know a single snippet of object oriented programming, Win32 APIs, portable languages, or anything. Sheer disuse has driven all my old-school knowlege (assembler, pascal, draco, structured basic, c, some c++, cobol, jcl, and even standard SQL coding) from my brain, with only occasional LSD-like flashbacks to it when thinking through complex problems.
I can feel how I used to code. I just can't touch it. At times this makes me feel guilty for giving up. Other times, sad.
I've had no real reason to return to doing it. Lordy knows I'm too late in my career to jump into being a programmer, and seeing the conditions the programmers around me have to live in I sure as hell wouldn't want to. Now and then I've got 'the itch' to code something to fill a need, but each time I've found some willing victi--- uh, helper to do it for me: Revar, Sandy, Nightwind and any other of a number of coder-friends I've got. Heck, I rely on Reality_fox to script unixy things for me even.
The bug is just coming back, I guess... and I'm not sure why. I think a good part of it is Revar's fault. Being around that coding madskills-machine does inspire. I also think that the tools for rapid-prototyping and higher-end scripting have become a lot more accessable and a lot more powerful at the same time, to where it's now a lot more realistic to code complex things without having a bookstore of knowlege memorized. Over the last year I've dipped a toe or two into the programming waters, but I've yet to jump back in. That may be changing, though, as I find myself staying up until 2:30am reading a PHP manual and thinking "holy cow... this can't be _this_ easy..." I may take an experimental cannonball-leap into it and see what splashes. It's not like I don't have a few dozen projects that I've put on Revar's plate that I should probably put back on my own. I know I still dislike programming. In fact, I can still feel the stress/worry cropping up in the back of my mind as I think about doing this... but this time it just doesn't feel so scary. It doesn't feel so impossible.
I miss being 133t, even though we never called it that back in the 80's. But moreso, I miss the ability to solve my own problems on my own computer when I needed to. It's time to scare myself a little and try to code again.
Ever wanted to know why I hang around coders, and am a really technical person -- but I can't currently code my way out of a wet paper bag? Well, read on.
The PC-VCR was a device designed as a low-cost prototype tool for the hot thing of the day: Computer Based Video Training. This was where you'd have a pre-made laserdisc with video material hooked to a computer. The computer would control the lesson, varying it depending on user input to 'tests' given throughout. Think of it as halfway between watching a training tape and playing Dragon's Lair. While this was great and dandy, it required the creation and very-bloody-expensive pressing of a laserdisc. The PC-VCR was the first low-cost VCR to have full timecode and computer (serial-port) control that directly emulated the video-disc players of the day. The only functional difference was instead of a near-instant chapter shift on a laserdisc, you got a blue screen with "Please Wait..." displayed while the PC-VCR high-speed forwarded/rewound to the next segment as necessary. You traded speed of output for price of production. Great for development and small scale end-user use.
I was given a PC-VCR and a small up-front cash payment in order to write a basic CBVT authoring program (and an associated player). Due to the machine requirements they wanted it written in structured basic with some rudimentary assembly calls for serial port handling -- yet they had a big group of UI enhancements that simple structured-basic simply wasn't designed to do. If I finished the project the program would be included with PC-VCRs sold throughout the Michigan educational system and I'd get a royalty per part sold. All this while in the 1st quarter of my 2nd year of school. I was picked for the proejct not only because of my 'resume' of past programming works but because of my unique position of being the only person at my University persuing a dual degree in Computer Science and Television/Video Production.
I wrote the damn thing between 22 credit hours of core classes (I'd tested out of most all my fluffy ones) and 40-hour-a-week full time work (half at the radio station, half in a boiler room doing telemarketing: it was the only way to stay funded while in school). It pretty much near-killed me. My grades suffered, even after dropping one class (I had 26 credit hours at the start of the term, see...) and at times I was anything from giddy to hallucinatory from extreme lack of sleep and pressure-stress (the folks behind this project were really damn demanding and held the tiny pre-payment they'd given me over my head on a daily basis). In the end I finished it to spec -- and it worked great. Just in time for NEC (the manufacturer) to drop the project in the face of the now-obvious death of the CVBT way of learning... and thus the University system people who hired me to say "thanks for the work, but no royalties; we're not going to deploy the PC-VCR.".
This programming project and the stress it caused had a decided "Brewster's Millions" type effect on me. For those not familiar with the term, here's another analogy (and a true one at that): When I was a farm-kid, my cousin and I once stole my Uncle's last beer from the fridge while he was out. We sipped at it, acting like Big Bad Men, though it tasted nasty as all hell. When Uncle Ron got back from a hard day's construction labor and found his last beer in the hands of his son and nephew (both in 5th grade or so) he was enraged. As punishment he bought a 40oz Bull Malt Liquor and forced us to split it and drink it, every last drop. It made us both sicker than hell. Hurl, puke, gag... nope, keep drinking until it's alllll gone. The result? For the rest of my life I've associated the taste of beer with getting physically ill and/or punishment. I credit this experience for the reason that I never got into liking beer and alcohol in general.
The PC-VCR project was like that. From that point on through the end of college, I couldn't sit down and get into the groove of coding without completely stressing out. Hell, the last thing I wanted to do was to be near a computer. I'd finished most all my CS degree side anyways and was now deep into the Video Production part and gladly left the computer coding behind. I only returned to get into 3D graphics and computer video editing -- but that's being a user, not a programmer. I think the closest I let myself get was using AREXX on the amiga to chain image processing programs together. Simple scripting.
My college career ended early with the lack of funds forcing me to find work as a video editor. I never went back to school. I went from video editor to retail store worker to computer graphics person (yes, I actually put food on the table for a period of time by selling flying logos and scientific illustration)... to returning to my computer roots in the form of setting up networks for rendering farms. This led to my move to the Silicon Valley and my now 12-year-long career as a Network Administrator -- nowadays a Network Architect, setting up wide-area enterprise systems for a living. Through all this time I never got back into coding, and in fact actively avoided it. I'd let myself script things now and then if forced, but otherwise I've always had an excuse or a group of minions to do the coding for me. During this last decade the world of computer programming has changed in impossibly complex ways. I don't know a single snippet of object oriented programming, Win32 APIs, portable languages, or anything. Sheer disuse has driven all my old-school knowlege (assembler, pascal, draco, structured basic, c, some c++, cobol, jcl, and even standard SQL coding) from my brain, with only occasional LSD-like flashbacks to it when thinking through complex problems.
I can feel how I used to code. I just can't touch it. At times this makes me feel guilty for giving up. Other times, sad.
I've had no real reason to return to doing it. Lordy knows I'm too late in my career to jump into being a programmer, and seeing the conditions the programmers around me have to live in I sure as hell wouldn't want to. Now and then I've got 'the itch' to code something to fill a need, but each time I've found some willing victi--- uh, helper to do it for me: Revar, Sandy, Nightwind and any other of a number of coder-friends I've got. Heck, I rely on Reality_fox to script unixy things for me even.
The bug is just coming back, I guess... and I'm not sure why. I think a good part of it is Revar's fault. Being around that coding madskills-machine does inspire. I also think that the tools for rapid-prototyping and higher-end scripting have become a lot more accessable and a lot more powerful at the same time, to where it's now a lot more realistic to code complex things without having a bookstore of knowlege memorized. Over the last year I've dipped a toe or two into the programming waters, but I've yet to jump back in. That may be changing, though, as I find myself staying up until 2:30am reading a PHP manual and thinking "holy cow... this can't be _this_ easy..." I may take an experimental cannonball-leap into it and see what splashes. It's not like I don't have a few dozen projects that I've put on Revar's plate that I should probably put back on my own. I know I still dislike programming. In fact, I can still feel the stress/worry cropping up in the back of my mind as I think about doing this... but this time it just doesn't feel so scary. It doesn't feel so impossible.
I miss being 133t, even though we never called it that back in the 80's. But moreso, I miss the ability to solve my own problems on my own computer when I needed to. It's time to scare myself a little and try to code again.
no subject
Date: 2003-04-09 02:37 am (UTC)But left to my own devices, after being online for ages (for me at least) I'd be hard pressed to embed a photo in this reply, I would have to look over my notes. Sad, eh?
But there are other things I am good at, I dont NEED to program, so I dont.
Its kinda like my PC to Mac switch. I used to LOVE building PCs. LOVE IT! Then configuring, getting them all set up, it was FUN. I would BEG for friends to let me futz and fix their computers.
Now, I hate my PC and every little tweak I have to make and can't wait for my damn mac to get a videocard so I can just do my 'stuff' without bothering.
No need to do what you can, all the time, sometimes its ok to just let it be. (But yes you do bring up good reasons for at least trying again. Maybe one day, I too will futz with stuff again. But I have a list THIS LONG of better things than that. )
no subject
Date: 2003-04-09 03:18 am (UTC)no subject
Date: 2003-04-09 05:50 am (UTC)Sounds like art to me. *grin*
no subject
Date: 2003-04-09 06:58 am (UTC)In truth, these systems were once so easy we could be experts on them. Now they're so mindbogglingly complex that you can know only one area of them (hardware/software/OS) but knowing more than one area in depth takes a lot of study.
Plus, I don't get the skills on the job. Right now I'm a webmonkey working in plain old HTML and I think they'll have to move me into something else now that they've got a content management system and all the departments will be doing their own sites. I don't want to go back into hardware support -- I loved it at one time, but grew to loathe it.
no subject
Date: 2003-04-09 11:17 am (UTC)Coding has a very fickle muse, whose main criterion is elegance.
Most of the gain of a program to a programmer is satisfaction, I think.
The program can be really pointless to anyone else, but if it's elegant, it can be very satisfying.
Unfortunately, half the time, only another programmer would appreciate the elegance.
I have a difficult time forcing myself to write code that I'm not inspired about.
Unfortunately, inspiration usually has to be found by digging for an elegant solution. That's work.
When I do find the inspiration, though, the code flows from the fingers and the outside world ceases to exist.
And when the code runs perfectly... That's glorious.
Until, of course, that annoying muse comments, "But it could also do this..."
no subject
Date: 2003-04-09 05:34 pm (UTC)no subject
Date: 2003-04-12 11:07 am (UTC)I use the markup language/javascripting/form creation/web work to feed my need to program. It is easy enough to wrap my head around, quick enough were I can produce something without feeling like a complete and utter fool. And more so, I get the muse to quiet down for a while, until the need is back again.
The other thing you might try is tool is developing something for your own practical usage. I know
I just envy those like