/* 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) (YOU SHUT UP!) (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?