Programming. Realtime computer graphics. Demoscene. Game development. Stuff.
It's always unexpected
I have a MacBook Pro now and slowly am getting used to it. It's quite hard, considering that I've never had a laptop before; and actually used any Mac for the first time just a couple of months ago. My daughter thinks the best part about it are the weird image effects in PhotoBooth. I just can't disagree.
On the unrelated note, now I am a Microsoft DirectX MVP. Just about the time when I almost stopped using it! I'd love to, but we're making a product that primarily runs on the Macs... quite hard to use D3D there. But almost every day I wish I could, and every second day I'm annoying my coworkers by saying that D3D is lightyears ahead of TheOtherAPI!
The MVP award just came out of nowhere. It's one of the things that you never expect - but hey, it feels good anyway. And now I have a MVP laptop case for my MacBook :)
OOP and other things now and then
Approximate conversation at work the other day:
Yeah, I split this into separate files, removed this and made these classes to make it actually work.Heh. I'd imagine how that would have looked back some 5 years ago. "What design patterns did you use here?" etc. Funny how things change.
I think I've got it by now - took me way too much time for such a trivial thing - there is no silver bullet. OOP or any other buzzword is just a means to do something; sometimes it fits, sometimes it does not. Regarding OOP, I highly recommend Execution in the Kingdom of Nouns essay - it's way exaggerated, but has the point. The best part:
advocating Object-Oriented Programming is like advocating Pants-Oriented ClothingThere is one thing about the codebase that we have at work that I love: it does not use any particular design/programming technique. A bit of OO, a bit of metaprogramming, a bit of plain C style, a bit of preprocessor macros, etc. I like to think that we're using the best of those worlds, of course :)