I have been reading a book by Seth Godin called The Dip. He talks about how fun it is to start a new job. However after a while you encounter "The Dip". This is where most people will give up and quit. You have to be something special to persevere and make it past this dip. Only then will you will reap the really big rewards. I have been trying to put this outlook into perspective in my at my own job.
This is my tenth year on my current project. I think it is safe to say I have long passed the dip. Sure enough the job was exciting when I first arrived. I was able to put my experience to use as soon as I joined the project. There was a lot of Oracle database technology to learn. And the business domain was complex and interesting.
Like most good things, the fun came to an end. There were some consults on the project that were a total pain. And I had to work for some managers who were no fun at all. The company started laying a lot of people off the project. That was the first time I contemplated leaving the project. It was not the last.
Later I somehow got voted to lead the team. The customer was irate. I had to spend my life researching all the problems the customer was reporting. I would meet a few times a day to give status updates to an irate project manager from the customer organization. The managers in my company fed me to the wolves. I dug in and gave the customer what he wanted. I also had to get my team to work every weekend. Still I stuck it through.
Then came the time when some new consultants got us on a quest to redesign the system. That was a few years of disaster. On the final year of the redesign, we were nowhere close to finishing. So we worked the death march. I was too tired to think about quitting. I spent 4 hours a day in status meetings, and another 8 hours a day doing development. This went on seven days a week until the redesign was canceled. I made it through with only a few others. We now hold the keys to the kingdom.
A Little Bit of Crypto - I have been trying to figure out to "collision resistant" some of these standard hash functions are. It is a tough concept to get my head around. I figure...