This year at work started off like the past few. Lots of last-minute issues and a release expected by the customers to solve all their problems. And, true to nature, we delivered the release late, and missing a critical feature that just sent the customers through the roof.
But things began to change. The department decided to reorganize for a variety of reasons. My manager swapped places with another guy, and one of my colleagues moved up to co-manage the group. The change promised to lead to good things. The whole team got all bright-eyed and bushy-tailed, those of us who could look forward to new and better things (some were still tied to fixing the horror that was our late release).
And things are a little better (though I think our new managers are getting hammered by the customers (hi boss!)), but the department just has a crazy build/release process that really doesn't match the customers' needs (nor ours). So we're thrashing with things that we don't need to be dealing with.
Luckily, I've got some newer things to work on which actually gives me a chance to do something that is interesting for the first time in as long as I can remember. The tough part is actually remembering what it is to do real work.
One bonus of the new managers was that I was able to go to a conference for the first time. It was a two day class of sorts, talking about the history and future of the C++ language. What was nice was the reflection on why the language is the way it is. I've often griped about the language - the hoops you have to jump through to get basic "features" that have been in languages since computer languages were first designed (in the 60's). But Stroustrup spoke well and said something that made the lightbulb in my head turn on. I'll still bitch about the language, but I understand now. One thing that did hit a cord was the phrase, "there are languages that are idealistic, and there are language people actually use."
The other speaker was much more dynamic - kind of a cross between a motivational speaker, a professor, and Carrot Top. His big revelation was that we're all going to be writing software for multi-processor platforms. It's the first time since computers were invented that pretty much everyone will not be using Von Neumann machines. And the main problem is that nobody has languages that really help with that (that is, languages that are actually used by people).
Not that I needed more ideas to work on at work, but I got all excited about writing error safe C++.
Anyway, work is looking up, it's no longer like it was before.