Direction =================================================================== I've been thinking about something lately: that *almost* all that matters in life is DIRECTION. Not speed. Not intent. Not even time. Just direction. So: When you get a chance to move your little piece on the board game of life, are you moving it in the direction you want to go? Directions aren't goals ------------------------------------------------------------------- Goals are great, but they're limited: - They end - You have to define them - They can be demoralizingly distant This is all terribly abstract. Don't worry, I have concrete examples. Let's say you want to build and maintain a great relationship with someone. I will make a bold claim that this isn't a goal: - One is never "done" maintaining a relationship - A relationship is never perfect - there is always at least a teensy-weensy bit of room for improvement - If you aren't satisfied with the relationship in a week, is it a failure? - A month? - A year? No, building and maintaining a relationship isn't something you achieve, it's something you *do*. Having a good relationship with someone is a direction: either you're getting a little bit better, staying the same, or getting worse. It will fluctuate, of course, but I'm talking about the *overall* direction. This is true of mastering martial arts, or being a great programmer, or artist, or writer. None of these things *ever end*. They are life-long pursuits. They are directions. Goals are still fine ------------------------------------------------------------------- Some things *should* be goals. If you want to publish a novel in your lifetime, you're eventually going to have to finish it. I would argue that a person ought to finish *lots* of things. Some of these things will likely be intentional goals. And finishing goals can be satisfying. So by all means, have some directions in your life which point towards some goals. But: Beware the failed goal. Or the unreached goal. Strangely, even successfully *finishing* discrete goals can be unsatisfying, leaving you with a "now what?" feeling. I *do* have a goal for my Nim phlog series: to write a Gopher server and client. But it's just a part of a much larger direction for me: re-learning Nim and going forth to produce increasingly ambitious systems-level software. Directions aren't quantities ------------------------------------------------------------------- The great thing about having a direction is that *any* amount of progress counts. Maybe today isn't the day to have a big block of time to devote to your project. It happens. And maybe this week isn't a good week for blowing away a bunch of milestones. I've had bad *months*. Maybe you can only do five minutes today and ten the next. No problem, if you're working on it, if you are making measurable progress, you're going in the right direction. You're succeeding. Planning doesn't count ------------------------------------------------------------------- You should plan. But planning your direction and *heading in that direction* are not the same thing. Only movement towards the direction counts. Make a minimal plan and start. Time doesn't matter ------------------------------------------------------------------- Of course time matters. That's silly. But, gosh, it's amazing how little it matters in terms of getting big work done. Does it matter if a beautiful painting was created in a single, long afternoon or if it was accomplished in fits and spurts over a year? A decade later, all that matters is the painting. Something a little more close to home: Imagine you visit an awesome, successful software project and you see the following timeline: - Feb 2007 - started project, so excited! - Mar 2007 - completed a - Apr 2007 - completed b - May 2007 - completed c - Dec 2007 - completed d - project works! - Jul 2008 - completed e - Sep 2010 - completed f Does this look like a failed project? Who cares about the timeline, right? It's 2018. The software is great. The timeline has *ceased to matter*. But for all *we* know, the developer might have felt like a complete failure from May 2007 to Dec 2007. Maybe they completely lost interest. Maybe they considered giving up. Maybe they even *did* temporarily give up. All we can see now, in hindsight is that again and again, this person came back and continued on the project. Items "a" through "f" are done and in 2018, that's really all that matters. Less tangibly, any skill you develop in fits and spurts over the years is going in the right direction *as long as you are better now than you were before* - it *does not matter* how long it's taking. You can still keep track of directions (as you would goals) ------------------------------------------------------------------- I keep TODO lists like everyone else. (Aside: these days I use VimWiki, which is just a collection of formatted text files with minimal wiki client features in Vim. I have a separate entry for each project.) What I've found is that I'm treating my projects less and less like traditional TODO items. Anything small enough to just "check off" the list doesn't even make it to my VimWiki - I take care of those things in a paper notebook. My projects these days tend to be drawn out over months and months. I have a job and a family and a household to run. Spare time is carefully rationed. :-) So instead of thinking of my projects as "goals" that I can't seem to ever finish, I've come to think of them as "current directions". As I look over my entries, I just ask myself if I've done anything in that direction lately. If so, then great! If not, is the project something I'm still interested in? Other than that, I try not to beat myself up about the glacial pace! What I'm really trying to say ------------------------------------------------------------------- Clearly this whole phlog post is a thinly veiled way of saying that I made a tiny bit of progress on my "Nim Day 5 - Types" post against all odds. In the board game of life, the little marker on the Nim track has inched forward. Come to think of it, "board game of life" might have been a better analogy to run with for this post... Also process, not product ------------------------------------------------------------------- By the way, I've also seen this idea called, "focusing on process, not product," which is another great way to put it. It's way too easy to get discouraged about having to *finish* a "product" or not feel like you have enough time to make good progress on a "product". But a "process", well, all you have to do is show up and do something. And I'll be darned if just showing up and doing something doesn't usually result in getting a lot more done than I'd expected. The product becomes a side-effect of the process. Okay, that's probably enough new age mumbo-jumbo for now. Back to the programming.