Software Development vs. Home Renovation

On September - 14 - 2011
  1. Your Estimate is Wrong — I’ve been doing both software development and construction for a long time, and universally?  You’re off — by a lot.   Not just a little, and if that ever happens, you’d better count your lucky stars and buy a lottery ticket, because it won’t happen again.   Ever.
  2. Scope Matters — Knowing when to draw a box around your code and stop and when to do the same when you’re tearing apart your house is important.   Projects like these can go on and on, one thing leading to another, until you’ve essentially rebuilt the entire house (which is so far out of scope as to be a crime).   Be flexible — scopes are hard to pin down exactly — but know when to draw your line in the sand.
  3. Rarely Do You Build New — Everyone knows that building a new house is expensive — so is software.    You almost never get the opportunity to being at scratch and start anew, and if you do, it’s fun but expensive (in both time and money) to go from idea to working construct.   Most of the time you’ll be revamping what you have to make it better.
  4. It Gets Worse Before It Gets Better — When you rip and tear into a house, things get extremely messy for awhile, and so will your software.   Myriads of crap will break and it’ll just stink for awhile as you try to make sense of it.
  5. Perseverance Will Pay Off — Rome wasn’t built in a day and neither will that new feature-filled release, but you WILL get it done if you keep at it.   Don’t give up hope when you’re ass-deep in rubble.
  6. Pre-Built Saves Money and Sanity — In the past, we’d go and use lath and plaster to make walls and ceilings.   Now we go and use sheetrock, because it’s faster and cheaper and saves everyone’s talents for things that really matter.   Likewise, libraries and pre-built modules are the wallboard of the software world and we all do better when we leave the menial stuff to others.
  7. The Cost Triangle Applies — Money, Time, Quality:   Pick any TWO to save on and sacrifice the third.
  8. Cleanup Sucks — You’ll vacuum a room 15 times.    You’ll debug a module 20 times.   The nature of tear-and-fix in either means you’re going to have to spend a LOT of time picking up after yourself and it’ll be decidedly un-fun, but worth it in the end.
  9. Beware of Unexpected Damages — You will break things that were never intentional, either by uncovering unknown issues, thereby breaking your budget or timeline, or by damaging some other part of the house or program that you weren’t planning on even touching, but is somehow related to the one being worked upon.   These can be your death-knell or your time to shine, your choice.
  10. “Perfect” is Rarely an Option — No matter how many times you paint it, the room will probably never be streak-free or have the right coverage in every single spot — but you have to stop sometime and call it good.    Likewise, if you keep your revisions open too long, you’ll spoil the opportunity to deploy.   Get it good and get it out.

My Physical: My Mental

On June - 13 - 2011

A lack of sleep means a loss of focus.

A lack of food means a short temper.

A lack of touch means impaired learning.

A lack of water means hallucinations.

A lack of sex means a strained relationship.

Fulfill the physical and the mental follows; like a puppy panting in the desert, it comes.    The crude supplies the foundation for the fine.    The biological drives the logical.   Our art is propped upon piles of vegetables, feces, and pillows.   Technology is powered by the passion excreted by a thousand sweaty bodies, humping and gasping,  filled with water and steak and wine.

I am amazed at the ways in which our physical state affects our mental.

I am also abhorred by the same fact.

When will we break free?

And…what do we do in the meantime?

 

The Best of New Jersey

On June - 8 - 2011

The title will be somewhat misleading.

As one who only spent a mere week mucking about the hallowed halls and entrails of central NJ, I am ill-equipped to make any sort of mention about the qualities that I witnessed.

But let’s suffice to say that I found it to be….less offensive than I was bracing myself for.     In fact, for the most part, I was rather happy and enjoyed my stay.

That all being said, here are some random pics to amuse your eyestalks:

Look at Your Child

On June - 7 - 2011

Parents:  How often do you stop and really look at your child?

“What do you mean?” I hear you ask.   “I’m looking at them ALL THE TIME.    Gotta.   They’d shave the cat with a Brillo pad, spray paint the dog bright pink, and completely disassemble the DVD player in a few minutes if I didn’t.”

One of the big problems with being a parent is that far too often we — myself included — get stuck deep into our, “parenting mode”, and although we’re looking AT our children, we’re not really looking at them.   We’re actually looking past them — we’re watching their behavior, checking for signs of distress, eyeing out potential hazards, or trying desperately to stay one step ahead of their crafty little minds and anticipate what next thing they will find amusing that you certainly will not.

Other times, when we know are kids are in a safe place, we have a tendency to tune them out.    How many times have you said, “That’s wonderful, dear,” as you glaze off at the TV program you’re watching and Junior is trying to show you his crayon drawing for the 14th time?    Guilty!   And hey, I get it; kids can’t — and shouldn’t — get 100% of our concentration 100% of the time.   They’ll manage and survive fine if we don’t coo wildly over every single thing they do or jump to their every whim.

The problem comes when we fail to come back out of our parenting or zone-out mode and recognize what is truly in front of us — and how amazing, wonderful, and unique it is.    And what a privilege we have been given at getting to be so involved in it.

Keston was playing on my lap the other night and he was in a mood to be a bit snuggly and close so we were sitting face-to-face as he talked to me and played with my face and beard.    At first I found myself gazing past him as I talked to my wife and checked out the TV and so forth, and then suddenly, I stopped.

My eyes — and more importantly, my mind — switched focus to concentrate on him.    Looking deep into those eyes like I used to all the time when he was first born, noting the expressions and thoughts behind those liquid windows.    He was suddenly quiet and gazed right back at me, a curious expression on his face as he tried to figure out what I was doing.  My eyes played over the delicate features of his face, eyelashes, cheeks, nose, noting all the while the perfection and beauty in each of them.    All at the same time, feeling and allowing myself to recognize and savor the emotions of connection and happiness and protectiveness and pride that swelled up inside of me when I really stopped to look.

The cliché about kids growing up too fast is all too real, raw, and frightening once you become a parent.   He’s only three and already I look back on pictures from his earlier years and go, “Was he THAT small?  He looked like THAT!?  I don’t remember!”   I don’t want to be one of those parents that suddenly gets a clearing of their vision about the time their child turns 14 and goes, “Who are you, where did you come from, and are you going to do your laundry anytime soon??”

So, I’m going to try my hardest to stop and look more.   To savor what I can and capture as much as I am able.   To parent when I must, but to avoid the trap of familiarity.   To really look.

I hope I never fail to see him.

 

What is Middle Class?

On June - 2 - 2011

A recent poll generated by NPR‘s Planet Money team to their readers/listeners asked the question, “What defines, ‘Middle Class’?”     One of the responses was this fascinating breakdown of class structure by Katie C (katiec0000), which I have quoted here:

My ‘class’ definitions:

  • Poor: Can’t afford basic necessities even with careful budgeting
  • Lower Class: Can afford basic necessities with strict budgeting; can afford some small luxuries (e.g. cable TV, dinner out) with long-term budgeting
  • Middle Class: Can afford basic necessities without strict budgeting, chooses between the little luxuries, can afford larger expenses/luxuries (vacation, college tuition, kitchen remodel) with long-term budgeting
  • Upper Class: Does not need to choose between little luxuries, can afford larger expenses/luxuries with short-term budgeting
  • Rich:  Can afford larger expenses/luxuries without budgeting

The breakdown is probably one of the better ones that I’ve ever seen and it struck me in a significant way, because I can easily place myself into this chart and I suspect most people that read this blog would be able to do so as well.    I’d say for my family, we fall into the lower to middle part of Middle Class.

The question is:   Is it accurate?    For those of you who consider themselves to be “middle class”, do you fit within the above definition, or is it lacking something?    If you don’t fall within what you would consider middle class, where DO you fall and are you comfortable with that definition?

Is it even useful to define and discuss things in terms of financial classes at all?