In December, my wife kicked my ass into gear about preparing for my own future. The clock's ticking on her educational career; in fact, she graduates from college in April, and will only have about 3 semesters left at university to hammer out a degree. Until then, I'd only ever really thought about getting her there. My job as a computer repair supervisor at a local Geek Squad has served me quite well in doing so.
So we sat down, took some career quizzes, explored some universities, yada yada yada, and here I am today with an application in progress to Brock University for a degree in Computer Science with a minor in Business. Awesome. However, I can't go full-time until Amy graduates. What do I do 'til then? I mean, besides part-time classes (I'll get a good head start...with transfer credits and a couple years of part time study, I hope I can trim a year off my full-time degree).
The answer, of course, is self study.
Computer Science has a lot to do with programming, or otherwise getting computers to do what we want them to do. Like anything to do with computers, there are a hundred different kinds of programming languages, and each one of them expires not long after it's fully quantified and standardized. This is why most Comp. Sci. programs minimize actual language learning and focus more on programming theory and technique. A lot of the actual language learning is on your own. So why not get a head start?

I've got some background in HTML and CSS. When I was 13, I dug out a giant HTML 3.2 reference book from my dad's library and thought "omg making web pages is kewl". The best part about my HTML 3.2 past is that my first website, entitled "Link's Oracle", is still live! It was about the Legend of Zelda: Ocarina of Time, pretty much the best Nintendo game every made. And yes, I use an awesome URL shortener. I think I had seven or eight of them, to be honest, but I can only remember ZAP.TO!
I dropped out of web development during most of my teens, not doing anything really substantial. When I moved to Edmonton for music school, I met a friend through D&D who was a computer science major. This really revitalized my interest in programming and computers in general. He showed me Linux (yay!) and taught me about XHTML and how it tried desperately to put some standards over a markup language battered and bruised by the first browser wars. He showed me CSS, the new way to paint a site, and taught me the importance of design.
I was running a home campaign of The Shackled City, and it became apparent I needed a web site to centralize some information flow and storage. Using my newfound powers and some generously donated server space off my friend's Debian box, The Cauldron Chronicle was born. Sadly, she no longer graces the web, but it was my first experience with building an XHTML website with CSS, and I also got to play around with SSIs (something that served a purpose but didn't impress me greatly).
Once again, however, as the campaign finished and Amy and moved to Ontario, so too did my web development. We did some travel, searched for jobs, and eventually planted Amy at a local college while I got the job at Best Buy. Since then, my interest has floated mainly to computer hardware as I started with Geek Squad and focused on repairing and servicing consumer laptops and desktops. I built a sweet rig by using some great retail reward programs through Intel and Microsoft, and played a lot of video games. My life was coasting along pretty good. Until December, when Amy virtually slapped me upside the head and said "your life is important, too". But don't worry, I bought something like 8 new games during Steam's holiday sale, so my gaming will continue for awhile.
I began researching programming and web development and all the things I thought it would be useful to know going into a computer science program. It turns out that there is a metric ton of different stuff to learn. I began making a list, and wondered how I would do it all in time. Panic set in! I didn't know javascript, or any of its popular libraries, or C, C++, C#, Java, Ruby, Python, .NET or PHP or MySQL. I've never set up a LAMP stack, I've never done databases, and I hadn't even heard of AJAX.
I decided that it would be prudent to make sure I liked programming. Amy's school was running a continuing education course called "Programming for Absolute Beginners". I was an absolute beginner. I had never programmed anything. So, I signed up, and started brushing up on C, which the course was using. Found a nice C tutorial and began learning the basics. Figured out some real fundamental stuff like variables, functions and arrays. But, it turns out I was a bit overzealous, because when I started the course, I realized I had taught myself virtually everything on the syllabus in the 2 weeks leading up to it. Oops. Withdrew. Got my money back.
Luckily, I had a backup plan. Since I had a background in web development, I decided it was finally time to complete the trifecta of web technologies and learn javascript. After all, you can't realistically write any webpage worth visiting without knowing javascript. And as you guessed, there are a lot of javascript tutorials online.
Eventually, I stumbled across something really quite amazing. It's called P2PU (Peer to Peer University), and it's an online, community-driven free university run by volunteers on a variety of subjects. They have a special branch called the School of Webcraft, which is sponsored by Mozilla (maybe you've heard of them). And, they were starting a semester on January 26th. BAUM!
So today, I am starting my first assignment in a course entitled "jQuery: For the Love of Dollar". And so begins my journey to a computer science degree.
I might still have Shackled City kicking around somewhere. I *did* ask you if you wanted it ported when I started my migration!
ReplyDeleteI'm not lamenting its demise by any means. I'm sure if I looked at it now I'd cringe, anyway.
ReplyDeleteMy favourite part was "Best viewed in Microsoft Internet Explorer 4.0+. Do not use Netscape!"
ReplyDeleteI was going to mention that in the post, but I decided to leave it as an easter egg :) I recently watched a seminar online with Douglas Crockford (who is a javascript guru at Yahoo!) and he mentions the first browser war and how all these websites had those kinds of banners. It was nostalgic.
ReplyDelete