Saturday, January 24, 2009

Fire and Motion

I'm pretty sure there's no connection between software development and motivational speaking. But, crazier connections have been made.

I'm usually not one to pay attention to motivational speaking and the like. I do own a copy of the book Aspire Higher -- but only because it's signed by its author, former Dallas Mavericks coach Avery Johnson, whose I hand I got to shake. Maybe I've seen too many of those "demotivational" posters:

Sacrifice Demotivational Poster
But something caught my eye recently, and I had one of those "wow, that's a universal truth" epiphanies.

Occasionally, I'll read Joel On Software, a blog that (surprise!) talks about software development. (Incidentally, if you're a software guy like me, you should read it.) I was flipping through his archives and found an interesting post that has some pretty significant philosophical implications. Odd because this was from a blog whose main focus tends to be on, you know, programming practices like his "Law of Leaky Abstractions" and the need to have thorough understandings of character sets. Read on:

"When I was an Israeli paratrooper a general stopped by to give us a little speech about strategy. In infantry battles, he told us, there is only one strategy: Fire and Motion. You move towards the enemy while firing your weapon. The firing forces him to keep his head down so he can't fire at you. (That's what the soldiers mean when they shout, 'Cover me.' It means, 'Fire at our enemy so he has to duck and can't fire at me while I run across this street, here'" It works.) The motion allows you to conquer territory and get closer to your enemy, where your shots are much more likely to hit their target. If you're not moving, the enemy gets to decide what happens, which is not a good thing. If you're not firing, the enemy will fire at you, pinning you down."

He then proceeds to talk about how this principle applies specifically to us software dorks. But before he does, he makes this point: "It took me fifteen years to realize that the principle of Fire and Motion is how you get things done in life. You have to move forward a little bit, every day. ... Watch out when your competition fires at you. Do they just want to force you to keep busy reacting to their volleys, so you can't move forward?"

Now we all have personal struggles; I know I do. But I think this strategy is a good way to manage those struggles. As long as you can keep those demons at bay by doing something everyday to counteract them, even if it seems minuscule at the moment, you end up making progress in the big scheme of things. Standing idly by will only allow those demons to advance on you, pushing you back each time.

I read that blog last week, and I'm still pondering it.

1 comment:

bryan said...

I read the "Law of Leaky Abstractions" and a few other philosophical posts not long ago -- the guy has a lot of good ideas. And it's interesting to see how he relates them to software development.