So, you see, my father purchased an Atari 800 when I was six. It had two cartridges - Space Invaders and AtariBasic. After mastering Space Invaders by age eight (discovering that it had only 99 levels, and then continued to repeat on level 99 indefinitely), nothing was left but that BASIC cartridge. By age ten, I wrote a first-person AsciiArt space shooter (although, what the Atari had wasn't quite ASCII). I recorded it on one side of a RadioShack 15-minute data casette tape, and on the other side I recorded the theme song to the Richie Rich cartoon off the TV (with a microphone). I didn't know enough trigonomotry to make true 3D navigation, so little ASCII X's gradually wandered toward your crosshairs and you shot them until you ran out of gas on the reverse-video-space gas guage. But I knew enough that I didn't know trigonomotry that I soon excelled at it and was rendering 3d cubes with vector graphics in grade school on their computer (called "the IBM").
I've gotten off my point, but that was fun.
Fast forward to 1994, hired for tech support, then transferred to a third-shift position - "watch this computer. If it freezes, press this button. Do this diagnostics checklist every fifteen minutes to make sure the ports are working and the files are coming in. Oh, and you still have to answer the phones because we have a few stores to support in the UnitedKingdom and AustraliaCountry." ("OK, now press period, er point, er full stop, or whatever the hell you call it.")
Fast forward to performance review in 1995. I say, "Oh, I've automated the whole thing. I've been using the time to learn CeeLanguage. Here's the code I wrote to automate everything." Thump. I had printed it out, punched holes in it, and placed it in a 3" wide binder for dramatic effect. It worked.
Promoted to Data Comm engineer, then programmer, then left, came back for another programmer position (better pay) ...
Now I have no college degree, just a HighSchool education. I'm a business and technology consultant.
You see, I explain it like this. In '94 and '95 there was this huge gap between demand for capable programmers and a "ComputerScience degree" barely existed. Stories about KevinMitnick whistling DTMF to thwart NORAD abounded, so it was easy for some punk kid who could hack half a dozen languages and wield a soldering iron at a RadioShack kit to get sucked into a career sans degree.
Up until the DotComBust, I thought I had it made. I had enough experience in a field with enough demand that noone would ever miss that little piece of paper. Well enough, I thought, since I got to roll my eyes plenty as the first couple waves of CS graduates couldn't tell the difference between an ASCII ESC and an ASCII '2' and '7' (try hex, someone would say, then they'd send the string "1B" to the receipt printer. Then I was called in to resolve the issue with the printer not accepting escape codes...)
But, then came the dot-com bust, and now I'm pretty screwed. At least I think I am. I haven't been on the street looking for a job in eight years.
Did anyone else get sucked into the ComputerScienceDegreeGap?
-- JasonFelice
Relax, the DotComBust was hard on just about everybody. I have a ComputerScience degree and they always found something else to reject me on during the depths of the dot-com bust. The rejection reasons were not even consistent. It was just too many people chasing too few positions. The degree helped me get scrappy short contracts here and there though to keep me afloat.
I would suggest working toward a CS degree while working. Another approach is to load up on certifications instead. With certs, you don't have to take African Basket Art 101 and the like (it can be interesting at times, but time-consuming). Also, I notice a lot more demand for IT generalists these days since cubical-factory projects are going overseas and companies don't want to pay for multiple specialists. This is where you can find positions while getting a degree.
The dot-com bust has changed the way many of us techies view our careers, somewhat similar to the way the Dust Bowl and GreatDepression changed our grandparents.
I imagine that a business degree would be more valuable to me now than a ComputerScience degree. I've participated in the hiring end, people look for "a degree" usually, not "a ComputerScience degree" (although that will do the trick). It seems that people with physics and mathematics degrees usually do better than people with CS degrees, although this is trumped by a CrustyOldUnixBastard? with an EE degree.
I would think that, after a business degree, the most valuable would be something that unlocks a specialized field. Like chemistry or physics (chaos theory-type stuff).
The business degree idea, I think, is the most useful, since you can start with a number of 2-year business degrees.
Anyone who hires or has similar experience willing to comment?
(But the original point of this page was to see who has this pattern.)
And I (an AnonymousHero) have this pattern too. I started into the computer field as a small child with an AppleTwo, and grew into a world where qualification was just slightly more important than certification. I was able to land a modicum of jobs by sounding capable, and I could keep them by getting stuff done in a hurry. However, there have been a few obstacles. Without the degree, it's hard to negotiate a raise. Without the degree, the larger companies don't take a second look. In truth, they would have wanted Math or Physics or EE or any kind of degree before the CS degree plan rose to prominence, so I didn't really ever have a serious chance with the likes of IBM. I was able to convince some people with results, and they're the ones who ultimately gave me work. But ultimately market forces squeezed my margins, so I totally changed careers. It seems that the military was hiring, and they don't demand degrees on entry. So now I'm in another land, doing God-only-knows-what, and programming on the side to make it easier and faster again.
---
I suppose I'm 'in the gap'. I typed BASIC programs from a library book on a typewriter so that I'd have 'em when I could someday get a computer. Talked my parents into getting one when we had some money, then taught myself TurboPascal, AssemblerLanguage?, etc. in middle school. When I got out of high school, I didn't happen to have tens or hundreds of thousands of dollars lying around, so I took a grunt job instead of going to college. Saved up and went a few years later to a highly-acclaimed school 'most computerized school in the region'.
Was totally unimpressed by professors spending entire classes trying to figure out how to get PowerPoint to show their "How to click a mouse" slides. The non-programming courses were interesting, but the programming stuff was all pretty much kindergarten-level. Ditched it after a couple years and went back to work. Fast-forward a few years, volunteered to help a company that I heard was in a bind, delivered two projects that exceeded expectations, and they hired me. One of the snobby senior programmers talked bad about me to the CEO - not about my work, but that I didn't even have a degree, let alone a masters and therefore wasn't a 'real programmer'. The CEO offered to pay for me to take some classes.
I decided to give it a shot. Heard good things about the school, and it was years later and across country from where I'd gone before. But once again I spent much more time on bureaucratic paperwork than actually learning anything. (I already knew what loops and conditionals were.) On one assignment, I finished the requirements in < 10 minutes, but wanted to add error handling. Spent the rest of the class trying to figure out how to hook into the primitive IO library routines that we were using to detect an error and show a useful error message, but couldn't find anything. By the time I got a return value, it had already done its equivalent of 'Abort, Retry, Ignore?' and bailed out. Called over the professor and he looked surprised and said there's no way to do that until you get to much more advanced stuff a few years later. That's when I decided that neither the language nor the school were for me. Was still at the company, ultimately in the senior position, doing the hard programming, years after that snobby senior programmer had been booted.
Later, I'm coding at a better job for more money. I'd probably make even more with a degree, but I'd have to waste years of my life for it and would have massive student loans offsetting any pay bonus. Can't see any real value to it except bragging rights among snobs. That's just my experience though. Some people seem to do well with the academic bureaucracy, it's just not for all of us. Some are more pragmatic. There's plenty of room for both types. I do admit that I have weaknesses that the more academically-accomplished don't have. In my experience, however, they also have weaknesses that my less-academic colleagues and myself do not. We balance each others' strengths and weaknesses pretty well on a good mixed team.