Thursday, March 30, 2006

Crankin'


Wow. I haven't cracked a book in nearly a month. This is only my second blog entry for March. Robots and Eggs has even fallen from grace with the Egg Waxing Savage Monkeys who used to hang out here. Ok, I did do laundry once and mow the grass, now green thanks to days in the 70's and some rain. Where have I been and what have I been doing?

Generally I've been absorbed in writing software again. Something I have not done much of since last June, when my last big project wrapped up. I wanted write some more code before the seven month hiatus turned into a year and my brain got stale. So I'm writing a small utility for a Semi-Addictive Turn Based Online Game - Strategy that I've been playing, called UltraCorps instead of SATBOGS. SATBOGS? This is why I write code instead of wearing dark socks and doing marketing. The UltraCorps link is on the right.

Programming for me is like falling down a deep well full of Krispey Kremes, and eating my way to back to the top, only without the bloated feeling, listlessness, hyperactivity, and short term coma that come after. It's nice to have large blocks of uninterrupted time to get fully immersed in what you're doing (think about the doughnut analogy again), enjoy the process (warm with sprinkles) and really have accomplished something when you're done (yummm).

It's important to pick a project where you're not fully in charge of the requirements. If you define the problem yourself, there's the temptation to avoid things that are tedious, very complicated, or are otherwise unappealing. (Unlike doughnuts.) That takes away from the challenge, and you don't learn much by doing things you already understand. It's also nice to be in control of all phases of the project from start to finish.

First you pick a project, define generally what you want it to do, and set some vague goals for the other phases. Then you figure out how you're going to solve the main problems and model your solution. Next you write some code, refine your model, and if you're lucky expand your initial goals to include lots of cool things that didn't occur to you when the project was new. Then you refine the code, clean up the once-in-a-blue-moon bugs, and add all the stuff that seperates the good software from the marginally useful. Things like GUI usability testing, tool tips, elegant error handling, and open file formats can all help the software be more of a tool than an obstacle.

It's reassuring to know that I've still got it, and that I still like it. We're moving back to Chapel Hill in the fall, and I'll be fully participating in our economy once more.

I like my tools. My desk, my old swivel chair from the Mind Tools days, my 19" ViewSonic LCD, my big white board (another Mind Tools artifact) are all things I rely on without having to think about. Office supplies keep getting better. I especially like the low-oder, funky colored white board markers they sell now. It's popular to bash MS Windows, but my homemade PC with the skull-and-crossbones covered vent in the top has been up for (checks systeminfo) 18 days, 17 hours, 3 minutes, 8 seconds. I think that's the last time the power went out, and the UPS beeping was driving me nuts. The wired and wireless network works. I can use my handmedown laptop into the back yard for the 45 mins or so it takes to drain the battery. I can even plug it into the home theater amp reciever downstairs and blast Jimmy Buffett , A Prairie Home Companion , or just shuffle all of my ripped CDs (accessed through simple file sharing, no streaming required) and see what comes out.

Life is good.

Thursday, March 09, 2006

Never Have So Many Given So Much...


... so that so few can have so little.

Dude, the grass is dead. It will come back when it's been warm for awhile and it rains a little bit. But for right now, it's dead. It will be green again. But it's not green now. Now it is dead.

Green = alive, Brown = dead.

What you have is brown grass, the dead kind.

Mowing it will not make it grow faster. Mowing is what cuts the top ends off of live grass and makes it dead grass. Your grass is already dead grass. All the way down to the ground. Dead.

Dead Grass + Lawn Mower = Dead Grass Clippings (NOT, I repeat, NOT, living grass).

I know you miss mowing your lawn. Everyone needs a passion in their life, but this is not the time for yours. This is the time for the grass to be brown (brown = dead, remember?) and for people to do other things. Things besides mowing dead grass.

Don't lose heart, for Spring will come again. Life will be renewed, and the roar of Briggs and Stratton will once more rumble 'cross these verdant plains of East-Central Alabama. Once more shall you cheerily trace your grid, decapitating any shoot so bold as to reach more than 1/16th of an inch above its neighbors.

Then, my brother, I shall rejoice with you. I shall drink deeply of Ice Tea and Lemonade, and from my reclining lawn chair heap praise upon your noble effort to sieze the rudder of nature's destiny, and, God-like, bend it to your will. In the glow of success, when missed spots have been pointed out and shorn, weeds eradicated, small engine maintenance tips exchanged, at the apex of your triumph, I might let you mow my grass too.

But not until it's green.