/*  Hacker Insomnia  */  By: StankDawg (StankDawg@hotmail.com / www.stankdawg.com)


Imagine going to bed every night around 10 PM, pulling up the blanket, laying
your head on the pillow and drifting off to sleep in pure silence with peaceful
dreams of happy thoughts.  To me, that is exactly what it is...my imagination.
The reality is much more frustrating.

I have something that I have labeled "Hacker Insomnia".  You see my brain 
works like a computer (a computer that crashes and has a lot of memory leaks, 
similar to windows, but a computer none-the-less).  From the moment I wake up in the
morning (or afternoon, or evening, whatever the case may be) my brain/CPU
immediately goes to work.  Think of a laptop in hibernation mode.  All processes
are ended or put on pause.  But once you wake up, all process become active
again.

As the day progresses, new processes are added and some process are 
completed.  Almost never is the buffer flushed completely.  I go to work, and write the
programs that I have working on for the past few weeks.  Unfortunately, it 
is never just one.  My brain/CPU is filled with several large processes of 
figuring out logic and constructing algorithms for multiple programs on multiple
platforms.  These alone are pretty brain/CPU intensive items, but I cannot
dedicate my entire brain/CPU to them.  Oh no, that would be too easy.  I 
have to pile on much, MUCH more than that.

As I sit in my office, trying to make it throughout the day without speaking 
to anyone, I inevitably get interrupted by phone calls of people needing
information.  People have questions and need assistance using computers.  It 
is a part of life in the computer industry.  This is especially true when you 
are surrounded by incompetence.  Oh, and if anyone I work with is competent 
enough to actually read this (as if), I wasn't talking about you.  But these 
questions take over a high percentage of your brain/CPU time, even if it is only short
term.  I try to write the important processes to swap space in my brain/CPU 
to make room for the new requests.  Sometimes they are as easy as explaining 
that "you can't upload a file in that format because the data is encoded and will
arrive as gibberish".  That kind of process can be pushed out quickly.  
Other processes are more like, "will you watch this program for the next few days 
and make sure it doesn't produce any duplicate data?" which is a longer term
process.  It gets shuffled in with the rest of the long term processes.  These
are the ones that keep up at night.

If one of my jobs crashes (which only happens when someone ELSE makes 
changes, or collides THEIR job with MY DATA) I have to figure out what happened.  It 
is almost always THEIR fault, but they do not have a powerful enough brain/CPU 
to figure out that their job crashed because my job was still creating the data
file that their job needed for input.  That is too much to ask.  This 
process is very high priority and pushes everything else to the bottom (which pisses 
off the bosses who think that any process that THEY start is inherently more
important than any other process).  I try to push this process out as well, 
so I don't load it with the rest, but alas!  It is not to be so...I have an email
from the boss wanting to know why the program is taking so long.  Suddenly,
process elevation takes place.  Eventually, every process is running at high
priority.

 
Literally dozens of other priorities come through my brain/CPU during the 
day as well.  There is a humorous t-shirt slogan that says, "No!  I will not fix 
your computer!" which is the cry of all competent computer people everywhere.  I 
like computers.  I am good at them.  People recognize that and are drawn to me 
for answers to their daily computer problems.  Now, I try my best to be a 
positive, helpful guy.  I really do!  Even though I am a senior level programmer, and
there are technicians and helpdesk people who should be answering these
questions, they still come to me.  I am not the type to turn people away who
need help, so I allow these processes to creep into my brain/CPU.  The fact
remains that these processes interrupt my more important processes.  Over 
the course of the day, this means that less total brain/CPU time was spent 
working on the important high priority processes.

Now, in addition to the general computer questions that I get asked, I also 
have the responsibility of being very competent at my job.  Competency seems to 
be a running theme in this story, doesn't it?  Well, this competency, while not
recognized financially by my job, make me a target for every other 
programmer (all of whom make $10,000 more than me per year) to come to me with 
questions about their programs.  Now don't get me wrong.  Some of the other 
programmers are very good, and I even ask for help from them sometimes, but more often 
than not, it is others coming to me.  Once again, I try to be the stand up guy 
and help out where assistance is needed.  While this does take away from my
brain/CPU time, it also gives me some actual interesting challenges sometimes
which I enjoy.  But my CPU is still overloaded and I shouldn't allow any 
more processes to be spawned.  But even if I say no, it is too late.  The process
sits in the back of my mind at low priority waiting to creep in at any 
chance. A week later, that process sees an opening and jumps into my brain/CPU and I
find myself writing a script that solves someone else?s problem from a week 
ago, which more than likely, still hasn't been fixed.

There is also another catch-22 here.  If I try to avoid contact with the 
other programmers, they end up writing their programs by themselves at their own
respective competency levels.  If their competency levels matched their 
salary levels, this would not be a problem.  This is not the case.  If I avoid or 
deny them help, I am faced with situation like the one I described earlier where
*THEIR* program has collided with *MY* program and somehow, *I* am the one 
who has to fix it.  So I add as many of *THEIR* processes to my brain/CPU as I 
can bear to handle.

Now, between all my ranting about the competency levels that I face, you can 
see that my brain/CPU runs at max capacity all day long.  But work is only the 
half of it.  I am a normal guy and have normal items to fill my brain/CPU as 
well.  OK, maybe I am not a normal guy (far from it) <SHUT-UP!> (YOU SHUT UP!) <wtf 
do you think you are....AAAARGGHHHH!!!  NOW I have spawned a CLONE process and 
am arguing with myself!!> (yeah, that?s real normal...) *sigh* ...as I was
saying...I lead a semi-normal life with the same normal day-to-day processed
that normal people have.  I have to remember to fill up the tank.  I have to 
buy groceries and get my hair cut.  I have to have all of the daily, weekly,
monthly, and other scheduled CHRONJOB processes that normal people have.

So I stay at work late quite often to try and finish up as many of the work
processes as I can.  I leave work and try to take care of these typical 
everyday people processes with whatever time is left in the day, if any.  I arrive at
home after a long day and I am physically exhausted.  There is no doubt 
about it, I am wasted.  I know that I will not be able to sleep, because I am a 
smart guy and have lived with "hacker insomnia" my whole life.  I know that the
processes are still running and that when I lay down, even though I am
physically exhausted, they will continue to eat away at me.  God forbid I 
hear a song during the day that I cannot remember.  That is like a virus to my
brain/CPU and I will (and I do this on many occasions, no exaggeration) 
climb out of bed and go online to find out what the song was and who it was by.  
This is the reason that I try not to watch a whole lot of television late at 
night.  If something gets stuck in my brain/CPU just before bedtime, I am screwed.

So I check my answering machine, and return phone calls as necessary.  I 
check my email, and forums.  I spend a little time unwinding with hacking 
activities (which inevitably spawns more deep processes that marinate in my brain/CPU 
for months at a time).  I change clothes, and make something to eat before bed.  
I eat late and I try to go to bed by 9 PM, knowing that it will take many 
hours for the processes in my brain/CPU to complete.  I do the highest important
things in life at the last minute and they have become almost autonomous.  
They no longer hold joy, they just happen.  I don't enjoy eating, I have to.  I 
don't enjoy sleeping, I have to.  These are "have-to" processes.  I mean, come 
on...a Dawg's gotta sleep right?  A Dawg's gotta eat, doesn't he?

Then why am I sitting here at 4 AM on a weekday when I have to get up for 
work in 3 hours?

