On May 28, 2014, at 11:17 PM, Riley Childs wrote:
> I was curious about the type of degrees people had. I am heading off to college next year (class of 2015) and am trying to figure out what to major in. I want to be a systems librarian, but I can't tell what to major in! I wanted to hear about what paths people took and how they ended up where they are now.
What paths we took? Well, I'm in the mood for procrastinating, so here goes.
Mine started well before college.
My dad got our family a computer (Apple IIe) when I was in 3rd or 4th grade ... so I learned Basic back in the days when you'd copy program listings from magazines.
In middle school, I learned Logo, and in 8th grade was a aide for the computer lab. One summer I went to a two week camp, and learned Pascal, and the difference between Basic and Basica. During this time, my mom worked for a computer company, and we upgraded to a Apple ][gs.
My high school was a 'science and tech' school. I had 2.5 years of drafting, 2 years of commercial graphics, and by senior year I was working as a TA in the computer lab, and had an independent study in the school's print shop. Through this time, we upgraded to a Macintosh SE/30 and then a Macintosh IIci.
For summers in high school, I was working as an intern for an office of the Department of Defense (my dad was military), and I learned a few other OSes, including ALIS (a window manager for Sun UNIX boxes). I was also calling into BBSes quite regularly (had started back in middle school w/ a 1200 baud modem).
In college, I had planned to work towards a degree in Architectural Engineering, but my dad taught at a school that didn't offer it ... so I started a degree in Civil Engineering.
After my freshman year, I started working in the university's academic computing center. (They managed the computer labs & the general use UNIX & CMS machines). I started off doing general helpdesk support, but by my junior year that whole 'world wide web' thing was getting popular.
As I had experience with computer programming, databases, desktop publishing, graphics, etc ... so I ended up splitting my time between the helpdesk, and the newly formed 'web development team' ... which was two of us (both students), working half time. And I was getting to be a fairly fast typist from mudding.
After my sophomore year, Tim, the other member of our 'web development team' graduated, and went to work full time, while I was half time. We grew to four people (3 half time, as we were full time students), and we did some cutting edge stuff to get all of the university's course information online (required parsing quark xpress files to generate HTML, parsing dumps from the university's course registration system, and generating HTML, etc) ... and so Tim got offered a job to go work for Harvard.
Through this time, I helped out on the university's solar car team, and got distracted and never got around to switching to a school for architecture.
I ended up taking over in managing the university's web server while they tried to find a new manager for our group. (this was back when 'webmaster' meant 'web server administrator' and not 'person who designs web pages') I learned Perl, to go along with the various shell scripting that I had already learned. I picked up the 'UNIX System Administration Handbook' and learned from our group's sysadmins until I was trusted to manage that server.
While all of this was going on, as I had taken enough classes to be 1/2 a semester off from my classmates, I never realized that I was supposed to take the EIT (Engineer in Training test) ... so I was a bit screwed if I wanted to be an engineer. After graduation, I went to resign, as I wanted to look for a full time job, but the director said that they were putting in for a new position for me.
By the middle of summer, my new manager told me that the director had told her that under no circumstances was she to hire me for the job that was being created. He really didn't like guys with long hair.
... but through this time, I spent some of my savings to help one of the folks on the mud to start an ISP (so they could host the mud which was getting kicked out of the university it was at). I was working as their webmaster, remotely. After all of this crap went down at my university, I got offered to do some contract work at that ISP, so I moved out to Kentucky. The first contract fell through, but I kept doing various coding projects for them, did tech support (phone and still the days when we'd drive out to people's houses to set up their modems). I learned mysql in the process.
The contracting side of our company merged with another contracting company, but then everything fell through ... and oddly I was the only employee that suddenly found themselves working for a different company. Through this time, I did mostly web & database work ... the ISP that I worked for started a website, what we now call a 'blog'. (they called 'em 'weblogs' for a while, but that really pissed me off, as that's what we called the webserver log files) ... ... from consulting jobs, I learned VBA & MS Access. But I got pissed off at my new manager (who I had never really agreed to work for), and quit.
I found out that the director who blackballed me had left, so went back to the university ... and started working for the person who got that job that I had been told was being created for me. (who I also had to train for my last two weeks). The web development group had grown to about 7 people, but the whole academic computing group had been completely re-arranged.
I worked for them for a couple of years, learning Cold Fusion, Oracle, etc. but got fed up when we kept being told that the UNIX group didn't have time to work on the webserver replacement, and our webserver was limping along since an upgrade that I had done back when I was still an undergrad ... so I jumped ship to work as a programmer for the UNIX group. At some point I took all of the classes to be an Oracle DBA, but refused to take the certification classes, and a lot of PL/SQL and data modeling classes. I managed web, mail, LDAP and database servers. At this time, I was using my staff status to get cheap classes, and had started taking classes towards a degree in Engineering Management (computer security, project management, etc.).
... and I found out later, that one of the project managers had been told by the assistant director to harass me until I quit ... which I now know is called 'constructive discharge', and is illegal in most states, even 'right to work' states. Anyway, after rebelling against the dress code, and trying to inform them that a t-shirt is a 'shirt with a collar' as it has a crew-neck collar, I was finally fired for use of sarcasm.
I bummed around for a bit, as I didn't want to go back into contracting, and sure as hell didn't want to commute to Virginia ... but after a few months, one of my former co-workers mentioned that one of her drinking buddies had a programming job opening ... so I applied for a job that I was over qualified for (they wanted someone w/ 2-3 years experience) ... I thought it was a 6 month contract, but on my second day, someone quit, and I got handed his task load (this was a huge problem, as even though I informed the contracting company's HR department that my job had significantly changed, they did nothing about it ... and I had taken low pay thinking it'd be a short job ... it took me almost 2 years to get the pay rate fixed ... part of the reason I didn't want to be in contracting, because most contractors are scum).
My new task was a federated search engine for solar physics data ... but after a few months, I realized that the issues weren't technical -- it was that no one could agree on what to call things ... so I applied for a master's program in Information Management. (and they accepted 9 transfer credits from my earlier classes) ... but I took more library-science focused classes, like thesaurus design & classification.
So, my path:
high school print shop
civil engineering classes
computer lab helpdesk
web server admin + unix sysadmin
helpdesk + web developer + database developer
contractor (web & databases)
web developer + unix sysadmin
engineering management classes
programmer + web developer + webserver admin + dba + unix sysadmin + ldap admin
programmer + web developer + webserver admin + dba + unix sysadmin
information management classes
programmer + web developer + webserver admin + dba + unix sysadmin + software/systems architect
programmer + web developer + webserver admin + dba + unix sysadmin + software/systems architect + town commissioner
programmer + web developer + webserver admin + dba + unix sysadmin + software/systems architect
I have no idea what the hell I am now. NASA lists me as a 'programmer/analyst'. My company rents me to NASA as a 'software engineer'. I've been trying to deal more w/ archiving aspects (as it's something our group is sorely lacking), but I have to keep up with the rest of my tasks along the way.
The only thing I can say that really helped me was that I had enough experience and skills in odd things that people were willing to pay me for my time. It also helps that I had made some useful connections (eg, mudding; co-workers who went drinking w/ sysadmins from NASA) before I managed to piss them off (I had a falling out w/ Drew over the use of synonyms for classifying articles on Fark, getting fired, etc.)
Interning likely helped me get my foot in the door at the university helpdesk, and I was in the right place at the right time (with the right skills) for much of the rest of it. Some of it's luck, I guess ... if I had followed my original architecture or civil engineering plans, I'd not be doing this now.