I am extremely stubborn, and I loathe even the implication that I can’t do something. So, naturally, when my partner, C, told me I could use WordPress (which installs in 5 minutes) or I could check out Octopress (which would probably prove too hard) I went with Octopress.
I took a Unix class. In college. Ten-ish years ago. I got this. Ruby, you say? I know some Java, I’m sure they’re the same, right? Git. OK, is this some clever new technology, or did someone just phoenetically spell ‘get’ in some tragic parody of the English language? (Spoiler: It’s clever new-to-me technology).
So, I began my adventure. First thing was to upgrade Ruby to 1.9.3, DreamHost runs 1.8.7 by default. There were also some fairly ominous warnings about only upgrading Ruby if you really know what you’re doing. DreamHost won’t help you when you screw it all up. Hmmmm, sounds like I’m a prime candidate. I began wildly copy-pasting bits of code from this awesome website I found. You did get that I was pulling this all out of my ass, right?
Anyway, my liberal use of paste got me some ugly red text pretty quick. Turns out tutorial sites are most helpful when you read them rather than ripping out anything that looks like code (OOHH! A hashtag, quick get it!) you should READ it. Half the things I was pasting were mean to be copied into files so the other half of the things I was pasting could reference them. Uh, wait, make files? I was quickly ehausting my Unix knowledge (ls, cd, pwd, that’s it, right?). So a bit of helpfulness from C woke up the old synapses that knew about vi. OK, files made.
So Ruby was good to go. Next I had to get (git??) Octopress. I clicked on the link expecting some nice popup with a nice exe that would know exactly where it needed to be. I got a list of files and directories. What the hell am I supposed to so with this crap?!? I was fairly certain I was not supposed to download everything individually. Real haxors would never! It was at this point things went downhill. C jumped in and did some lightning fast stuff and Voila! Octopress was in. Some other fast magic involving raking things happened and suddenly I had a very gross looking directory where my beautiful blog should have been! We then tried the rsync step. Being unclear on why we needed to sync my blog to itself, we had created the /octopress directory inside the /travel directory. Turnsout when you try to sync things to themselves it goes badly. Octopress didn’t know what to think about trying to sync with its containing directory. /travel didn’t haveanything in it, so it made the only obvious choice. It deleted everything. WHAT?!?! Great, 2 hours down the tubes. Bastard.
By this time C was clearly over it and I was on my own. I made a SEPARATE directory for Octopress, but had no clue how he had actually gotten it from magical internet land into my server. So I went off in search of my next tutorial. Git. I found yet another awesome site. I actually read it this time. SEE, I’M LEARNING :D I learned all about commits and nodes and pulls and pushes and branches and merges. Now I’m a super git genius! I even made a github account and started a repository for my awesome new blog!
Unfortunately this is not the happy ending. I had git working, I had my repository but I still clearly lacked a fundamental understanding. Once I changed my source from Octopress my repository everything went away! (Shocking, I know. Like I said fundamental understanding not in place). I figured I’d screwed it up by simultaneously changing the blog to reside in /travel, I found some neglected instructions and, of course, decided to immediately and forecfully implement the changes with no testing. When my site disappeared I figured the changes had hosed it. I later realized I actually needed things in my repostory for things to show up. Imagine! But at the time the best course seemed to be to delete everything (again) and start over. Sigh.
Sidebar: I’m now lightning fast at Ruby upgrades and Octopress installs.
I updated the /travel stuff first, I changed my _config.yml, in short, I was on a roll! Things were awesome. Then it happened, the bulb turned on. I needed to push my changes to my repository! Hallelujah, the angels were singing! I committed and pushed and deployed and I had a real live blog! Success! 8 hours of banging on a keyboard… to enable myself to bang on a keyboard around the world. Worth it.