Locker Room

Just as soon as we started describing Twitter as a micro-blogging/text-messaging tool, a well-oiled jealousy engine, and a scalable narcissism platform, it seems to have evolved into something beyond all that. Judging by my list of favorites, as well as those of others, Twitter has become a venue for sharing your profanity-laden sexual innuendo with a willing, self-selecting audience.

Not that I’m complaining. I’m just saying. I mean seriously, listen to the art that Twitter has made possible.

Wait, did I say innuendo? I meant penis.

Self-Interest

As a society, we have a moral imperative to protect the cultures of indigenous tribes such as this one, heretofore unmolested by the modern world. For if we do not preserve their unique languages, where will our next crop of great domain names come from?

The Gallery of The Awesome II

I have journeyed far and wide of late, from the hot and dusty reaches of eastern Washington to the harshly lit bowels of Wal-Mart. In these journeys I have seen Things, Great and Amazing Things that Thrill the Senses. The incredibility I have seen is such that it is worth another visit, yes, a return of sorts, to The Gallery of The Awesome.

Some of this may be new to you, some may be downright frightening, but I recommend you stay with us until the end, keeping your hands and feet inside the car at all times.

This post card can be found outside the office of one of Kate’s favorite geology professors. It goes without saying how he feels about dams:

Place Explosives Here

In case there is any question, here’s the door to his office:

Bob Carson's Door

He will retire soon, and when he does the school will need to buy a new door.

Here we see a sign for the Bing Bang Blow Out Sale, which is happening right now at the independent record shop in Walla Walla:

Bing Bang Blow Out Sale

Actually, this sign has been in their window ever since Kate was a prospective student for Whitman College, five long years ago. It is likely a nod to the song “Witch Doctor” by David Seville, with its chorus line all “walla walla bing bang” and such. The shop boasts what is hopefully eastern Washington’s largest collection of VHS tapes and 8-tracks, despite having been blowing them out for the last five years. Say, what the hell kind of independent record shop is this?

Hot Poop

That’s right. The shop is named Hot Poop. Right there in downtown Walla Walla. Bing Bang. Judging by the number of Zappa posters in the window, I would bet it’s named after the Frank Zappa song of the same name. Based on Zappa’s character, as well as the degree of censorship that the album apparently experienced, I’m willing to bet that Frank didn’t want the song to be named “Hot Poop” at all, but rather “Hot Shit.” Ironically, the phrase “hot poop” is far more disgusting and offensive than “hot shit.”

Speaking of shit:

Squirrel Feeder

The above is a Premium Eastern Red Cedar Squirrel Feeder, available at Wal-Mart. Unless those wood screws are intended for permanently mounting the squirrel to the platform, this feeder is far more humane than the electric squirrel feeder that my father invented:

Electric Squirrel Feeder

Actually, it’s a bird feeder that he’s rigged up in such a way to discourage squirrels from draining it on a daily basis. It plugs directly into a regular wall outlet. He added the 60 watt light bulb so that when a squirrel completes the circuit, the bulb would take out a lot of the current and not cook the squirrel. Even so, there’s still a lot of squirrel poop all around this thing.

Speaking of unfortunate surprises, the Hood River Hotel features fine dining and vintage charm. How fine, and how vintage, you may ask? Here we see the worst table in the joint:

The worst table in the joint.

Speaking of vices, here we witness a grim milestone:

Grim Milestone

A gallon of gas costs nearly as much as a pack of Marlboros! Speaking of gas, these beautiful turtle figurines are available at the gas station near the Hood River Bridge:

I mean really.

Either a poor artist somewhere has a great sense of humor despite living in wrenching poverty, or the turtle’s likeness to a wrinkly penis happened completely by accident.

Last, but certainly not least, Dr. Bronner called. He wants his superlatives back:

SUPERthrive

I hope that this packaging has won design and typography awards the world over. In an effort to keep your eyes from melting, I have transcribed the top portion for you:

#1 PLANT HEALTH EXTRA LIFE
Greatest Guarantee-Offer PROOF Ever
67 YEARS, unchallenged, $5,000. GUARANTEED to be
World CHAMPION
#1 ACTIVATOR, #1 REVIVER, #1 Trans/PLANTER, #1 Extra GROWER, #1 PERFECTER
WORLD’S FAIR SCIENCE-MEDAL-WINNING
SUPERthriveTMs 50 IN ONE
VITAMINS-HORMONES

Those are some bold claims. I don’t know whether to give it to my plants or pour it on my turtle.

Quantum Entanglement – Part II

This is Part II. Read Part I.

As I mentioned earlier, Siskiwit and Rosco were unintentional BFF. When I launched Rosco I wanted to preserve the link structure of Siskiwit, because people were still way into searchin’ for and diggin’ on that stuff.

Siskiwit had a long and colorful history of publishing platforms, but a number of years ago it settled on Movable Type, where it has remained ever since. Recently I tried upgrading its circa-2005 installation to the latest and freshest version, Movable Type 4.1, and I nearly fell out of my chair because it executed so flawlessly. Seriously, nothing went wrong. This made me realize that Siskiwit was far more portable than I gave it credit for, and I began strategizing on how to move it away from brainsideout.com/weblog and onto its own subdomain.

Transmit Textmate BBEdit

Up until recently, I have done all of my development on my server at DreamHost, hosting them at super-secret subdomains. The majority of my development cycle would involve launching Transmit, opening a file on the server in TextMate (or BBEdit if I need to do some heavy-duty regex), editing that file, saving it, and refreshing my browser window. I don’t know how many web designers work this way, but I’m willing to bet a fair amount of them.

If I’m installing a package of software (say, Movable Type or WordPress) I’ll often FTP into my server to upload the tarball or .zip file, SSH into my server to expand the file, and then return to Transmit to move the expanded folders and files to their proper locations. Ditto for large image directories, or other cases where I have multiple files to upload at once. All the goddamn handshaking that goes on with an FTP transfer makes it a horrible tool for uploading multiple files, and if your connection drops halfway through a transfer, it’s difficult to figure out what got copied successfully and what didn’t. I don’t know how many times I’ve been hosed by a file that appears to have transferred successfully, but turns out later to have been only a 0 KB placeholder.

This, this development process is dumb. I never realized how dumb until I started working with Jason, and we did all of our development in Subversion.

Subversion: Time Machine for Your Project

If you’ve never used a version control system you may have no idea what all the fuss is about. Once you’ve used one, though… no, once you’ve lived in one for a few weeks, you’ll wonder why everything in the world isn’t done this way. Seriously, everywhere I look now I see opportunities for version control. I wish I could rollback the street in front of my house, so I could drive on it at a moderate speed without bottoming out on this year’s crop of potholes. I wish I could form a branch for this day, which has been kind of cloudy and crummy but altogether windy, and see what would have happened if I chose to go kiteboarding instead of writing all afternoon. The planet? Sheesh, talk about something that needs to be loaded into Subversion, like, yesterday.

Subversion is a popular open-source version control system, which stores and tracks every change made to every folder and file that you load into it. Well, not every change, as it only tracks changes that you “commit” to it. Anywho, it’s like Time Machine for code. Your entire Time Machine drive would be called a “repository” in Subversion parlance, and every snapshot of your computer (or project) at a particular moment in time would be considered a “revision”.

Phew! Being a noob myself I’m in no place to teach you everything you need to know about version control with Subversion, but fortunately there’s an excellent book on that very subject. If nothing else you should read chapter one, which covers the fundamental concepts of version control, and shows some examples of Subversion in action.

If you’re used to developing on a web server, applying version control to your development requires a fundamental shift in practice. Fortunately, this shift is one that turns out to be rewarding in many ways, including speed of development, robustness of your code, and ease of deployability. Your Subversion repository lives in the cloud, so to speak, and you download, or “checkout”, the most recent revision to a folder on your local machine to do your work.

OS X Leopard has just about everything you could ever want in a web server already installed on it, including Subversion, Apache 2, mod_rewrite, PHP 5, Ruby, Ruby on Rails, and MySQL, so creating a local web development environment is a pretty straightforward deal. That said, a lot of these fixin’s aren’t enabled out of the box, and they will take a bit of mucking around to get running. You need to turn on mod_rewrite and PHP, you might want to upgrade Rails and other preinstalled Gems, and installing the MySQL preference pane might make your life easier. At a later date I’ll try to outline my experience of getting my own OS X development environment running. For now, just trust me.

A step-by-step manual for setting up your local machine for version-controlled development is outside the scope of this article, but at the very least I want to give you a cursory glance of what my current setup looks like. This all came into being within the last few weeks, but already it hands-down beats the knickers off Ghetto-Ass Subdomain Remote Web Server FTP Development.

Non-Ghetto-Ass Local Development

First off, if you need a Subversion repository look no further than Beanstalk, who definitely put the sexy in version control. Honestly, if my first time had been with anyone but Beanstalk, I would have sworn off the whole thing entirely, given the craptastic nature of most Subversion applications. Most host and client setups assume prior knowledge of Subversion, incredible technical aptitude, and hella-tolerance for lousiness. Beanstalk makes it really easy to import your initial project into Subversion, and offers a free account with up to 20 MB of space, which will be fine out of the gate unless you’re planning on working with tons of images. Or, perhaps, if you’re planning on using the SQL on Rails framework.

The cool thing with Subversion is that every time you commit a revision to your project, it doesn’t need to make new copies of all the files. It hardly even makes a copy of the updated files. Nay, it just tracks and records the changes within the files. Thus, a 2 MB project with 10 revisions will not weigh 20 MB. For instance, I have a current project where my working copy weighs 11.5 MB, but the repository (with 69 revisions already) only weighs 3.4 MB. Wow, that’s a surprise. I have no idea how that works, in that my working copy weighs more than the entire repository. Perhaps there’s some voodoo magic going on, but I’m not gonna argue!

svnXOnce you have a repository, you’ll probably want to install a Subversion client on your local machine to make it easier to interact with the repository. Subversion is built with the command-line in mind, but a lot of us don’t think that way. I’ve been using the svnX client for a number of months now, and while it’s incredibly goofy I believe it’s the best one available for OS X. You can configure it to connect to a repository, and then checkout a revision to make a working copy on your local machine.

HeaddressManaging, hosting and testing multiple web design projects can be a pain, however, especially if you don’t want to muck around inside Apache’s httd.conf file. I use Headdress, a tiny application that helps you manage virtual hosts in OS X, to handle all of my local development websites. The free version of Headdress lets you host two sites simultaneously, and if you want to run more it’s a lousy $14.99.

Ahem. Welcome to your new workflow, where you edit your local working copy while testing it in a browser window. When you feel like you’ve reached a comfortable point in your development, or if you’re about to try something risky, go ahead and commit the changes you’ve made to your working copy to the repository. This is how I do it now. Edit locally, refresh locally. Edit locally, refresh locally. Time to fix another cup of tea? Commit all local changes to the repository as a new revision.

“What about launching? What about deploying? What good is all this work if no one can see it?” I’m glad you asked! I still maintain a number of super-secret subdomains, where I can test my development work directly on the web server that will ultimately host its production version. Remember, the working copy of your website on your local machine is just that: a copy from the repository. So long as you’ve committed all your changes, the exact same site exists inside the repository as the most recent revision of your project.

Deploying your site, whether it’s deploying on a testing domain or deploying for realz realz, is just a matter of “checking out” a fresh copy from the repository. This is pretty easy, so long as you have Subversion installed on your web server. I’ve found the easiest way to do this is to SSH into my server, navigate to the parent directory that holds the folder in which I would like to expand the copy, and using the svn checkout command to checkout the most recent revision from the repository into that folder. After I’ve done that, I can continue to freely edit my working copy on my local machine, and commit those changes to the repository, without worrying about messing up the copy on my web server.

Once I’m happy with some new changes I’ve made, however, it’s easy to bring the version on my web server up to speed. All I do is SSH into my server, navigate to the child directory into which I originally checked out the copy, and type svn update. Bam! Everything that was out-of-date is now up-to-date! It can certainly be a lot more complicated than this, which is why there are services like Capistrano that automate the deployment and updating process, but at its most basic this is what’s going on.

“Dammit, Dane!” you’re saying. “What about my database? What about my needs?” Indeed, to make this work well you need to have a database that your local working copy can connect to. Sometimes you can use a remote server, which is what I did until I found a better solution. Currently I run a few MySQL databases on my local OS X machine, which I connect to via localhost and manage through CocoaMySQL. Getting WordPress to connect to a local MySQL database took a bit of finagling, but a quick search revealed an easy solution.

Disentangling Siskiwit

So. I wanted to move Siskiwit, and each and every part of it, out of Brainside Out and onto its own domain. The fact that I was able to upgrade Movable Type made me realize that Siskiwit was likely more flexible and portable that I had thought. To test this theory, I created a new project on my local machine, did a fresh install of Movable Type on it, and imported its current MySQL database onto my local MySQL server.

After changing a few configuration files to reference the new local database, I told Movable Type to rebuild all the weblogs, which it did flawlessly after only a few initial hiccups. I had a few stray layout, design and container files that I had to bring down from the live server, but the amount of customization necessary to get the site working was minimal.

At this point, the old skool way of doing things would have been to wrap up my local copy of the site in a zip file, FTP it to its corresponding subdomain on the server, and SSH in and expand the file. As if! Instead I created a new Subversion project at Beanstalk and imported my local copy of Siskiwit as a starting revision. From there I SSH’d into my server and ran svn checkout to put a copy at its new subdomain. I changed a few configuration options to make the site reference its live MySQL server, had it rebuild all the weblog files, and it all worked like gravy.

It’s worth noting that I left all the “rebuilt” weblog files out of the Subversion repository, and I left out the actual Movable Type install as well. With the former, Movable Type creates the static rebuilt files based on the content in the database, so they’re completely unnecessary so long as Movable Type has a database to work with and rebuild from. With the latter, since I’m never going to edit the Movable Type system files there’s no need to keep them under version control, so I just uploaded the .zip to the server and expanded it.

Likewise, since my images directory for Siskiwit is pretty huge, and since I don’t plan on making any changes to it, I left it out of the repository as well. This can be some fairly subtle and complicated stuff, and I mention it just to be clear that it doesn’t make sense, nor is it necessarily advantageous, to store everything in version control. Your own mileage may vary.

Before nuking every last trace of Siskiwit from Brainside Out, I wanted to make sure that visitors accessing pages at their old locations (either through search engines or through a crazy-good memory) would be seamlessly redirected to the page’s new location at the site’s new subdomain. I did this by adding the following rule to my .htaccess file in the root of brainsideout.com:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?brainsideout\.com$
RewriteCond %{REQUEST_URI} ^(/weblog|/photolog|/sundries|/classics|/av)
RewriteRule (.*) http://siskiwit.brainsideout.com/$1 [R=Permanent]

I have a few more rules besides this one, but they relate to CodeIgniter and aren’t relevant here. Also, if you want to monkey with .htaccess files on your locally hosted OS X websites you’re going to have to turn on mod_rewrite. It’s a bit of a thing, but you probably won’t die trying to do it. Headdress does have a bad habit of occasionally overwriting changes that you’ve manually implemented in your httpd.conf, especially when you add or remove a site from within Headdress. Yeah. Good luck with that.

With Siskiwit under version control and relocated to its new subdomain, and Rosco versioned and backed up as well for some inexplicable reason, I was finally ready to nuke everything at brainsideout.com and deploy the new, CodeIgnited version. I SSH’d into the server, navigated to the corresponding directory, and with cautious fingers typed rm -Rv --preserve-root *.

I then left my computer and fixed myself a drink. Upon returning I checked, double-checked and triple-checked my work, and pressed return. Then, with a haste matched only by the files scurrying up my screen, I deployed the new edition of Brainside Out from the repository.

Spring is here, and comments are open.

That’s right, comments. It’s gonna be that kind of spring.

End Part II. Read Part I.

Quantum Entanglement – Part I

This is Part I. Read Part II.

Over the last few weeks I’ve been working diligently on a few personal web projects, and what you have in front of you now is the most recent incarnation of Daneomatic, which was launched last night. There’s also a new version of Brainside Out, which has already been puttering about the neighborhood for the last week or so.

Brainside Out

The original plan was simply to rebuild Brainside Out, but I was so fancied with the results from that project that I felt compelled to bring it over to Daneomatic. The act of “porting” the design and integrating it into the slapdash theming engine of WordPress took more effort than I expected, but I still figure a three-day turnaround from naked idea to launch isn’t that bad a churn.

The Problem With Supermodels

While it was definitely a fun challenge to piece together, in the end I was never too fond of the previous redesign of Brainside Out, launched in 2006 and codenamed Rosco. It always felt too heavy, confining and noisy. I was aiming for a funky private jet with shag carpeting and a rotating bed, and I feel like I hit a threadbare middle seat in coach. What’s more, the previous site was built to drum up work for an independent business that has since been pushed mostly aside to make room for a full-time job. This particular event happened more than a year ago, and if there’s one thing that supermodels, pets and websites don’t thrive on, it’s neglect. Unless they’re sea monkeys. sea monkeys dig that neglect shit. Kate and I are so gonna get some sea monkeys when we move into our new place.

More insidiously, the files that drove the Rosco edition of Brainside Out were intertwined with those for Siskiwit, the previous-previous version that was a weblog of sorts, a culmination of all the writing and web design I had done since 2001. The two sites existed side-by-side, confusingly wrapped around each other in a suffocating embrace, one stiff and businesslike, and the other bent low with a millstone of archives around its neck.

With the repositioning of Brainside Out as a business it didn’t really make sense, nor would it have been worth the effort, to bring Siskiwit and its thousands of archives forward into the Rosco design. Daneomatic would carry forth the Brainside Out weblogging tradition, but with five years’ worth of blood, sweat and tears put toward its name (or rather names, for those with ancient memories) I wasn’t about to nuke Siskiwit’s archives.

And so it came to be that I erected a crude scaffold around Siskiwit, allowing me to leave it fully intact while supplanting its front-facing views with Rosco. This worked. This worked just fine, and it very well would have continued to work if I hadn’t been born such a wild and restless child.

Bootstrapping in Flip-Flops

For years, up until just recently, all the sites I’ve built have been propped up with a laughably crude, but impossibly handy, PHP bootstrapper of my own devising. Calling it a bootstrapper may be too generous, as it’s nothing more than a glorified include file. Despite its inelegance it filled that void between “static website” and “dynamic template engine” with remarkable effectiveness, to the point that there was never really any incentive to improve upon it.

I’m a control freak when it comes to file structures and resource hierarchies, and as a code snob I am loathe to subject myself to the default outputs (or, gasp, the default layouts) of anyone’s content management system. With my simple bootstrapper I could build and deploy a site extremely quickly, all the while putting everything precisely where I wanted it to be. I wasn’t about to adopt another convention until I discovered something that was remarkably better.

And then I discovered something remarkably better.

Something Remarkably Better

Bixby BaconDuring SXSW I shared my experience with building Bixby Heart Dot Com (that’s B-I-X-B-Y Heart Dot Com) with the EllisLab folk, but unless you were one of the twenty people attending their open panel, this anecdote likely bears repeating.

Jake and I had limited time to work on the Bixby Heart project and we wanted to get it out the door in time for SXSW, so throughout our development process the focus was always on “light is right”. Jake is one of the most talented designers I know, and I’m a great front-end (and lousy back-end) developer. Thus, perhaps inevitably, Jake did all of the design and much of the front-end development, and it somehow fell to me to write the back-end code. Yikes.

I wrote all of Bixby Heart in PHP, and I felt I did a fairly decent job at it. I compartmentalized all my functions and fine-tuned them for robustness. In the interest of simplifying the development process, one of my earliest decisions was to use flat files, rather than a database, to store incoming data. Databases are one of the most fickle, insecure, time-consuming and misunderstood subjects of web design, and I wanted nothing to do with any of it. I figured if I sidestepped the issue it would just go away.

Boy was I wrong.

I set up a buffer flat file that intercepted incoming data, and rotated every few minutes on a cron to dump its contents into the primary flat file. At first it recorded boolean values for “bacon” or “juice”, and soon it recorded timestamps along with them. Then it recorded IDs to prevent writing the same entry multiple times. I’d parse the flat file with string compares, searching for tabs or newlines or what-have-you. I even set it up to increment through the contents of the flat file, in case it became so huge that the entire file couldn’t be held in memory at once.

It was when we actually wanted to do something with the data that it all fell apart. Display the number of bacons? How about the number of juices? Oh dude, how awesome would it be if we could graph the heart rate over time! Say, do we even know how to compute the current heart rate?

SXSW was in two days and I was at an absolute dead end. We were taking in test data but I couldn’t figure out how to work with it in any reasonable fashion. I tried tweaking the flat file setup. I tried setting up a database. I panicked, and even tried installing Pear DB. Before long the entire application was completely fucked up and I didn’t even have a working copy to roll back to. In a single night we went from having a semblance of an application to having an unmanageable rat’s nest of broken code. It could not be saved. I gave up. I gave the fuck up. I cried and screamed and pummeled at my pillow with tiny little fists.

And then I found CodeIgniter.

Code IgniterCodeIgniter is a lightweight MVC framework, brought to you live in PHP by the same guys who gave you ExpressionEngine. I had installed and tinkered with CodeIgniter before, and of all the application frameworks I had experimented with (CakePHP, Symfony, Django, Rails, etc.) it was by far the most clearly documented and easiest to install. It’s worth noting that the upcoming version of ExpressionEngine is written entirely in CodeIgniter, and it’s so hot it will make you cry. With less than 24 hours between us and SXSW, I realized that this was our best, and perhaps only, chance of finding a database class that would suit even our meager purposes.

I decided I would give it a shot, and eight hours later I had completely rewritten Bixby Heart in CodeIgniter. We had a fully-functional application to bring to SXSW. I built all the necessary database hooks, and Jake thusly grabbed them and wrote the front-end hotness. Before long we were soaked in whiskey and vodka, presenting Bixby Heart Dot Com to a private audience as we struggled to keep our balance in an RV lumbering through downtown Austin.

After that experience I decided any application, nay any website, that I built from thenceforth would be written in CodeIgniter or a suitable equivalent. I make a lousy zealot and thus am open to other options, but as an individual I have by far made the most progress working in CodeIgniter. When rebuilding the Big Winds website in Ruby on Rails I worked with Jason Ives, a talented local developer, but without his canny knowledge of server configurations, database schemas and all-around Ruby l33tness, I am but a lost little puppy.

And so it came to pass that the new version of Brainside Out is written in CodeIgniter. In its current state it’s skimpy as far as content goes, and I’m still debating how best to go about resolving that. The site still suffers from a modest identity crisis, especially since the majority of my web activity has moved offsite, but now it is far less confused than it was during the “is a business, is not a business” phase. More than anything, I needed to shrug off the yoke of all its legacy innards, and figure out an elegant way to store that stuff elsewhere.

And that, my friends, is our next story.

End Part I. Read Part II.

Rhythm

Yesterday: Kiteboarding. Beer. Late night with friends.
Today: Kiteboarding. Beer. Late night with friends.

More like this, please.

97 Miles to Kentucky

While speaking to some friends recently I realized that I have been unnecessarily vague about our plans for the future. This ambiguity came purely by accident, and it will likely come as a disappointment to know that I have not been subtly manufacturing a story arc of impossible genius. Rather, it’s this damned fracturing of one’s online identity, shattered and cast across a dozen sites in the name of social networking, that’s rendered any loose shard near incomprehensible when considered absent its brethren.

It is in the interest of clarification, and yet still in convolutions such as these, that I write to you now, to let you aware of our current situation.

Indeed, Kate and I have settled on a graduate school. This coming August we will relocate to the bluff country of southern Indiana to attend Indiana University Bloomington. It is in this setting that we will eat at Chick-Fil-A, cultivate our southern drawls, and enjoy glasses of sweet tea that sweat in the late summer heat. Kate will pursue a Master of Public Policy with a focus on environmental issues, and I will be collecting syllables by going after a Master of Science in Human Computer Interaction Design.

My goal, ultimately, is to build kick-ass interfaces that are so beautiful they make people want to cry, perhaps similar to the way this turns me into a blubbering pile of snot every time I watch it. Kate’s goal is to work for a groovy non-profit that advertises in High Country News, perchance entertaining a position that keeps her above the poverty line. Our mutual goal is to move back to the West, the Pacific Northwest in particular, upon finishing our programs. This is not a goal so much as it is a promise.

And while it may be 97 miles to Louisville, it’s only 56 miles to French Lick.

Familiar

It’s been over a week since I watched Into The Wild, and the convolutions of my brain are still busy processing it. I was prepared to be consumed by a brilliant fire of jealousy, but in the end I was completely blindsided by the familiarity of the story. The parallels between our journeys, our desires to seek out new adventures, I realized that the differences between our individual experiences were only a matter of degree.

I am drawn to the story of Christopher McCandless not because it represents the extreme, but because it represents the familiar. As Krakauer states in his foreword, “…were it not for one or two seemingly insignificant blunders, he would have walked out of the woods in August 1992 as anonymously as he had walked into them in April.” Though our paths were different, I believe McCandless and I pursued them for similar reasons, with similar philosophies and a similarly intense passion for life.

When they showed Emile Hirsch traveling through the Pacific Northwest, tromping around Sahalie Falls and McKenzie Pass, I felt a slight tinge as my life twisted in and amongst this work of fictionalized non-fiction. These are all places that I myself have visited, and at times while watching the movie it felt as though I was witnessing my own journey through the landscape.

While I haven’t enjoyed nearly the hardscrabble life as McCandless, I do have friends scattered throughout the world who are living out similar experiences. From squatting at Camp 4 and sneaking half-eaten meals from tourists, to shoveling snow at the South Pole, to spending a sleepless month exploring Alaska, my friends make it clear that McCandless is not alone in giving his middle finger to conventional living.

I’m currently rereading Into The Wild, and I find that Krakauer paints the story in a very eerie, very chilling light. In the movie, Sean Penn has made a great effort to capture that passion for life, that mighty yawp of existence that all who knew McCandless say he possessed. To that end, what Eddie Vedder has done is magic in its purest form, and the soundtrack for Into The Wild resonates to the very marrow of my soul.

Load-Bearing

After finishing some client work this evening I intended on watching Into The Wild, which just arrived from Netflix. For ten years it has been one of my favorite books (its challengers include Fear and Loathing in Las Vegas and The Rand McNally U.S. Road Atlas) and I have to admit I was a little bit apprehensive to watch the movie.

My nerves about it are prickly not because of the usual “OMG they better not ruine mine favorite Book!!1!” but because I’m afraid of what I might find out about myself. You see, aside from the whole “starving to death in the wilderness” thing (which I’ll admit has a fair amount of romance to it), I want to be Alexander Supertramp.

At least, I used to want to.

Or do I still?

My post-collegiate path has been a winding one, both of place and of being. The spring I graduated from college I skipped my graduation ceremony so I could leave Minnesota and start driving to Oregon just one day sooner. I loaded up all my worldly possessions in the Green Dragon Wagon, not knowing if I would be gone for three months or three years. In the end, I worked as a windsurfing grunt until I ran out of summer, a snowboard instructor until I ran out of unbroken legs, and a web designer until I ran out of Vicodin.

I stayed in Oregon for two years and lived in two towns, moving back and forth between them until I moved back to Minnesota to work as a wilderness guide. I took an eight-day Wilderness First Responder course. I met someone lovely. I spent three months growing a beard and living in the woods. That fall, my reintroduction to civilization involved getting choked up over such amenities as toothpaste and ice water.

The following summer I did it all again, only this time I was joined by someone lovely. I grew a beard. I stomped through Yellowstone for twenty days with five guys and three mohawks. That fall I moved back to Oregon as my love traveled all over the Western United States, living outside and learning about land rights and trying not to freeze to death. We reunited that December, though she was kind of freaked out that I had shaved my beard.

For 1 1/2 years now I have been planted in Hood River, working with the intertubes, kiteboarding during the summer, snowboarding during the winter, and occasionally visiting Walla Walla for some reason or another. In four months Kate and I will be moving across the country to attend graduate school at Indiana University, she to study environmental policy and me to study interaction design. After finishing my program I want to be involved in some Pretty Big Shit in my industry, which likely means I will no longer be taking three months off at a time to guide trips or teach snowboarding or fret about not having work during those unfortunate “in between” seasons.

Aye, and there’s the rub.

Part of me thinks that I’m ready to move on from this lifestyle. Another part of me fears that for all these nomadic experiences, for all this living in the outdoors, I have still managed to miss something, some hidden meaning. This elusive nugget of truth drove Christopher McCandless in his travels, and is what gave rise to Alexander Supertramp. I’m certain that Christopher would agree with me when I say that the logical conclusion of this journey is something besides starving to death in the backcountry of Alaska. What it is, however, I haven’t figured out yet.

I’ve changed a lot over the last five years, especially over the last two, and I’ve noticed my nagging sense of wanderlust begin to fade. With it I fear my curiosity goes as well, my unconventionalism, my identity. I speak of piling all my furniture on the front lawn and burning it, and people laugh as though I speak in hyperbole. I do, to be sure. But for me, owning more stuff than will fit in my car is painfully embarrassing, every bookcase and file cabinet a trophy to defeat. I have lost my mobility, but I have gained… what, a sofa? A coffee table? These are changes I have not been dealing with well.

It was in this context that I started to watch Into The Wild.

I got as far as the DVD menu. I watched it loop a dozen times. My vision blurred and my chest tightened. A dozen times Christopher burned his money, hitchhiked to Alaska, grew a beard, and posed in front of the bus.

I turned off my television.

Objects Are Not Closer Than They Appear

In Bloomington, Indiana there is a University, namely Indiana University Bloomington. Near this Place of Higher Learneding there are Places of Higher Dwellering, where people sleep and copulate and make Cup ‘o Noodles over hot plates. Some of these hot plates are closer to campus than others, and thus are in high-demand. They are demand because no one wants to wake up early and commute to school, because they realize they’ll soon enough finish school and commute for the rest of their miserable lives.

One of these hot plates in particular is so close to campus, and so in-demand, that they’re now leasing for the 2009-2010 academic year, which is so far in the future that by then we’ll be “so over” jet packs and will have moved on to Pogs and slap bracelets.

How close, you ask, is this hot plate to the University? That’s difficult to say. Like Digg, Brownstone Terrace seems to have a difficult time separating truth from falsehood. I present to you the following map, which I found on their Intertron Perma-Location Space:

Original Brownstone Terrace Area Map

“Note: Map is not to scale.” Perhaps no ill was intended, but it’s interesting that this map selectively omits roads that would have inconveniently placed their property further from campus than would be desirable. Upon further investigation, it becomes clear they have compressed four north-south blocks and six east-west blocks into one single block. They even went so far as to remove the train tracks that run a mere fifty feet from their property. Awesome!

Now, as entertaining as this misrepresentation might be, I’m a sucker for reality, and thus took it upon myself to make a more accurate map. I turned to the only source of objectivity left in the world (because if Google says so, it’s got to be true!), worked out an overlay in Google Maps, and updated their map to reflect distances more accurately:

Fixed Brownstone Terrace Area Map

Click the image for a full-size version because, like, shit’s a lot further away than it used to be and it doesn’t all fit anymore. As it turns out, about the only thing they got correctly to scale was the size of their property itself.

Here’s an animation that layers the new map on top of the old map, and shows the overlay from Google Maps. Again, click for a mo’ bigga version:

Thrill at This Amazing Brownstone Terrace Area Map Moving Picture Invention

And you thought you had better things to do with your time.