I read an old blog post about things developers need to succeed. We aren't talking about more money here. These are deeper desires that will spur a coder on to great deeds. Many of them hit home for me. Unfortunately I don't have many of them on my current project.
The thing my current project does have is a great challenge working on an important system. This keeps me going even when the going gets tough. Challenging work builds character and skills. And when you know that the system you work on affects peoples' lives, you are on a mission.
Now there are other factors that I wish I could experience. One is being set up for success. All too often we get deadlines that are nonsense. Then the death march rolls on. You lose before you even begin. It is also tough to find any good managers. Most just cave to pressure from above and contract your release schedule so that chaos ensues.
I would like to use new technologies. But that is difficult on a legacy project. It would also be nice to get more recognition for good work done. That seems lacking in my company. But the customer appreciates me greatly.
There is also a lack of me being able to make command decisions when I need to. Many people must be convinced before a decision can get made. And that translates into many meetings. Even with the negatives on my project, there is enough to keep me going strong. I have been on my project for a long time. I hope for that trend to continue.
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...