Monday, March 16, 2009

Knuckling Under

I've successfully resisted starting a blog for years (except for my Tweet Project blog, but that's a whole other story). I'm not down on the idea of blogging, mind you, I just never felt like I had anything to say that was so insightful that it warranted a public airing. I don't mean this in a self-deprecating way. On the contrary, I think I've got plenty of useful ideas to go around, but I never felt they were so significant that I had an obligation to memorialize them, and I don't love the act of writing so much that I just can't help myself. So the cost/benefit analysis just never quite came out right-side up for me. I know myself (and my ambivalence about writing) well enough to know that blogging as an exercise for its own sake would have a short and certain outcome in my hands. I'm honestly not being flippant, nor disparaging bloggers in general. While there is undoubtedly an abundance of mediocre (if not well-intentioned) blogs on the web there are a surprising number of excellent blogs out there, written by thoughtful, intelligent folks who are enthusiastic about sharing their unique perspective with the rest of the world. I wouldn't call myself an avid blog reader, but there are a handful that I follow regularly and countless more that have proved at least momentarily useful or thought provoking to me. Again, I don't have anything against blogging. I just never felt like I had a good enough reason to write one.

I've changed my mind.

Or maybe I've just changed the parameters a bit.

The bar on this blog is set pretty low. I'll try to use complete sentences and proper grammatical structure, but there won't be much in the way of evocative prose, deep insights, controversial political positions or flowery rhetoric. It's basically intended as a simple repository of stuff that I need to capture somewhere because it's value to me is greater than nothing, but not so high that it warrants some kind of formalized preservation (for example, having it tattooed on a body part).

I know, sounds pretty underwhelming. Let me try to explain.

In software development the first place you turn for information is the Internet. I know, I know... this is becoming increasingly true for most any subject, but it's always been true for software development, and specifically, web development. Over the years the quiet devotion and prudence of kind strangers has gotten me out of countless technology jams with little more effort on my part than a quick Google search. But honestly, aside from a sprinkling of Usenet postings way back in the day I've never been that person. Actually, even then I was generally the guy asking the questions, not answering them.

Recently I found myself in just such a situation and had a bit of a guilty revelation. Actually, in this particular case it was doubly bad because I knew that the vaguely obscure technical issue I was struggling with had previously visited my little world. This was a problem I had already solved at some point in the past and I had forgotten what the solution was. Needless to say, this situation is a little irritating and prompts all kinds of internal dialog along the lines of "Oh great, the beginning of the end... the early stages of old age. Soon I won't even know that I hate creamed corn, let alone remember how to fight off the nurse's aid feeding it to me." Of course, in retrospect I'm confident in knowing that this is the usual state of things. Developing software, like most any other human pursuit above Maslow's first-tier (and even some of those), is comprised of myriad tiny, interlocking bits and pieces of fleeting importance and sufficient complexity (both in their very composition and in the way they're wired together) that it's perfectly reasonable for an intelligent, non-Alzheimer's suffering person to forget many if not most of them. I suspect I'd be fully nuts by now if I didn't, actually.

So here I am, re-solving a problem because I can't remember the original solution, or even what I was doing when I last solved it [as an aside - this actually happens quite often but I'm able to remember the project I was working on when I solved the problem originally and I can just go troll my old code until I hone in on the answer]. Anyway, the first thing I do is jump on Google and start digging. And in this particular case, after a few minutes of fiddling with search terms and skimming results I not only find the solution to my problem in the form of a post on some random guy's programming blog, but I realize that this is the same place I found the answer the last time. I was ashamedly grateful enough that I actually posted a comment to thank him for saving me hours of trial-and-error, not once, but twice. It's important to note here that even the posting of a one-line comment is a bit unusual for me. It's not laziness, but instead that contributing in that way is just outside of my normal behavioral context. It sounds silly, but it's true. In fact, I'm convinced that it’s a pretty fundamental personality thing. A minority of people are content producers by nature and the rest of us are just consumers. The pigs-and-chickens thing as it applies to information sharing.

But here's where my revelation comes in. Writing stuff down is a potent form of remembering. Actually, it's the means to overcome our impressive, but still limited capacity to retain and share knowledge. Things would be very different if we had never figured this out. And props to the people who originally realized this because they actually had to invent writing too.

So here's the thing: capturing this stuff in a blog is a great way to ensure that it's close at hand if I ever need it again. This is true enough for simple things that didn't require a whole lot of effort to work out, but especially valuable for those times when the answer wasn't as obvious and I had to invest hours or even days driving to a solution. Obviously, it's preferable to not repeat that process as a sort of deja-vu problem solving exercise. Ultimately, taking a few moments to scribble some notes about the solution is a remarkably valuable investment. Even if it's only a small percentage of cases where I actually need that information again in the future, the potential time-savings far outweigh the cost. So from a purely self-serving standpoint it passes the cost/benefit test and is probably something I should've been doing all along. As a blog post, it reaps all the benefits of being a centralized repository of stuff that Google will at some point index, making it really easy for me to find later. Altruistically, this also makes it accessible to anonymous strangers half-way around the planet who happen to share the unique kinship with me of trying to solve that particular problem. Maybe it saves them a bunch of time. Maybe it helps them to come up with an even better solution, and maybe they post a comment about it, completing the feedback loop and rewarding me yet again for my original (and minimal) efforts. Even from the most selfish of perspectives this seems like a good idea.

Here's the thing though: I know myself well enough to know that in order for this to work I need to set the bar pretty low. I've already admitted to not being particularly inclined to written discourse (I'll talk until I'm blue in the face though…) This blog is not about good writing. This blog is going to be crafted to intentionally low standards. If I'm not on the hook for great writing then I actually stand a chance of producing something of value. So that's it. I'm giving myself permission to not worry about it. Posts will be terse. Grammar and spelling will teeter precariously on the brink of marginal. But maybe, just maybe it'll prove useful to me… or you.

This is the longest, best crafted and most thoughtful thing I'm likely to post. It's all down hill from here.

Oh, and as for the name - it doesn't mean anything. It just appealed to my right-brained alter ego. That guy doesn't get enough play so I thought I'd throw him a bone.

Add to del.icio.usDiggIt!RedditStumble ThisAdd to Google BookmarksAdd to Yahoo MyWebAdd to Technorati FavesSlashdot it

No comments: