I'm complaining, because I'm totally exhausted. And it's flash player that made me so exhausted.

I've been doing a server side RTMP implementation with Java for months. Although Adobe opened its SPEC, there are still many details missing. I had spent around 2 weeks debugging access violation in flash player (as a programmer you know a access violation sounds fatal but is likely to be of the easiest bugs), another two weeks were waste on fixing wrongly ordered video packets.

All these bugs, if flash player has an open source implementation, cost even no more than 1 hour. To fix the bugs I have to guess what flash player might do.

Now I need to be back to continue guessing what might be inside flash player.
Well first please be aware that I'm not talking to any specific person, I'm talking to YOU, the guy who is reading this article, that your current job is good.

"But you even don't know what a situation I'm in!", you argued. True, I DO know little about you. What I know is things that are common to all of us, and those things are enough to prove that, your job is good. And the reasons are:

1. You chose this job.
   It was around years ago, or months ago, when you got 2~4 offers. You carefully compared them and realized the fact that there's no perfect job. Finally you decided to go to the one you think best. At the time you were still romantic about careers so you started to plan about it. You thought you could do A, B, C and D and you would get E, F and G. They were so wonderful and you were so excited, you couldn't wait for the second morning.

   Now several years has passed. You never do A and B, to say nothing of C and D. Think about your current situation, is it still possible to do them? If it is, you still have chance, your job is good.

2. Your boss pay you.
   And less than what you contribute to the company. It's always like this. Never expect the opposite.

   Remember that if things are fair, everything will cost more.

3. You get money.

   You are complaining about loosing balance of life and work, aren't you? Then you should be reminded of the truth that you need money to live, and you work for money.

4. Your colleague/customer/boss is not the worst one in the world

   Think about the past, it's common that we hate someone. But the bad idea is that the world will be much better as long as you don't see this annoying guy. Even with the guy you like most you know clearly some quite bad habit of him.

5. There are many ways to make a change

  Are you just bored by repeating the same job everyday? Or you think there must be some change on you? First think back to the plan you made when you just joined this company, are they still possible? Learn from a colleague in your company that's happy and successful, be open mind because his success is likely to be copied by you.

Finally be clear that just your job is good doesn't mean you should stick to it all through your life.