Poor little neglected blog. I can tell you exactly when it went into a prolonged coma: Oct 6th, 2008. AIP Fall Term Begins. Goodbye to reading books that aren’t assigned textbooks and goodbye to writing anything that won’t be turned in to an instructor
Fortunately I can finally see the light at the end of the tunnel. Also fortunately, this term seems to be all about writing so the least I can do is post some of it in this poor little ghost town.
Last term I dove into Ruby with an independent study of Ruby on Rails. There are not any full time instructors at school who know anything about Ruby, but fortunately, my coworker at the time, @vosechu, is a Ruby nut and was happy to stay late one evening and give me enough guidance to get my environment up and running. From there, I dove into 12 hours of tutorials from Lynda.com that actually were quite good. I went through almost the entire series in less than 48 hours and was able to get my first project up and running and learn a few things about setting up a database and running migrations.
But learning RoR before I actually studied the Ruby language is by any measure, a little backwards. So I was happy to see a Ruby course offered this term that starts from the beginning and builds up the basics.
When I started my first term at the Art Institute 3 years ago, I remember clearly Chappy telling us in the first class that if we got out school without knowing how to learn a programming language on our own, then they hadn’t done their jobs. Now I understand what he was talking about. Having dipped my toe into the waters of Python, Javascript, PHP, SQL and Actionscript, there are many aspects of programming that are found across all these similar languages. Once you understand the structures and the concepts of programming, picking up a new language can be largely a matter of syntax. A loop is a loop is a loop after all.
There are a lot of basic principles I’m still learning so I’m definitely not past the struggling phase. But I do finally have the confidence to keep digging into things until I figure them out. The other thing I figured out pretty quickly is that if I have a problem, I am likely not the first one to have it. Google knows all, sees all, and until it turns on us in Skynet fashion, I continue to rely on it to learn from other people’s mistakes (which I much prefer to making my own).
One thing I’ve noticed when I have the chance to observe people who have been programming for a while is that they tend to be heavy users of the Terminal or Unix shell. When I started as an intern at Metal Toad, Chuck blew my mind with all the things that were possible with the terminal and I’ve been a devoted user ever since. I’m not doing anything earth shattering, but it has been useful to at least get more comfortable with the basic commands, and it’s been great for getting cozy with Git, which I now use every day. The Unix tutorials that Steve gave us in the first week, are some of the clearest and simplest explainations I’ve seen. If you’re interested in dipping your toe in, I definitely recommend it.
I also found just under 7 hours of Ruby Essential Training on Lynda.com. I know a lot of students might not have the budget to spend $25/month on a tutorial site when there’s so much out there for free. For me, I don’t really learn practical things that well from programming books. I’ve been a devoted fan of Nettuts since my second term of school. Being able to follow along with what is happening, and having a pause button, are a lot more valuable for me when I’m trying to learn something new.
So far I haven’t gotten too far with the actual Ruby tuts that Steve assigned for week one but this one looks pretty good (and it’s free). I have a habit of trying to extend my school break by an extra week and scheduled a ton of social activities, including an out of town guest who left today. It’s been an extra busy week, keeping up with my two compressed (5.5 week) online classes (procrastination is so not an option with remote classes). Yeah, I should have done one at a time, but I’d rather get the pain over with early and not have a four class pile up at the end of the term like last time. Now that I work three days a week on top of all of this, I’ve become one of those insane people that I looked at when I started here and wondered A) how they did it and B) if they slept at all.
I guess I’ve figured out the answer at least for me is, A) Because I really want to graduate in September instead of December so I can get my freaking life back and B) Not much.