Interesting! And incredibly OT
I'll give it another shot though, cause I wasn't very clear the first time. I'm not a fan of writing reusable code, but I'm a big fan of reusing code if it makes sense and saves time. For no reason I would rewrite everything from scratch and reinvent the wheel from game to game. If it makes sense to use Havoc or that memory allocator you wrote last game and worked so well, do it, reuse it.
But this is different from trying to write reusable code in the first place everytime you face a problem, trying to write the Big Framework That Works For Every Game before even knowing what game you have to write and what requirements you will effectively have and what problems you will face in practice.
That Big Framework will have to be flexible, and any tiny bit of flexibility you put in your code must be tested, bugged and maintained even if it's not strictly needed for your game and the problems you need to solve. That's why I'm all against trying to write reusable code in the first place, but I prefer to write The Simplest Code That Could Possibly Work and leave any extra flexibility out untill I really need it. I'm lazy
If after this a bit of code proves to be flexible and robust and tested enough to be promoted to a higher level, than reuse it, it makes a lot of sense and save a lot of time. Requirements change so often and so drastically from game to game and within the life of a single game, that I don't think it's wise to fight this change with a Big Framework, but rather embrace it and put practices in place to adapt as quickly and efficiently as you can. Keeping things simple is one of those practices. I'm pretty sure that writing for reusability is not the cheapest way to construct our software.
And I'm really convinced that the Industry needs to be as lazy and needs to avoid the mistakes already made by other software industries that are evolving. It's just more difficult for us because we need to be creative as well, and being productivity and creative at the same time is a tough challange. Very tough indeed.
Ok, I'm falling into preaching now, but I hope I made myself a bit more clear now, because this is in my opinion one of the biggest challanges to create truly next-gen games.
Fran/Fable2