C0D3
I guess you can follow some of the rules he has like Write usage code first and such.
I'm not sure about allocating memory first though, it would work for somethings but for like continuous data app like an IRC where you get tons of messages. I guess you can allocate a big chunk like let's say 1GB and when you run out, delete the old messages? It might be a bit tricky.
Game or not, the user doesn't have an infinite amount of memory. And unless you're writing something that is a primary application (think web browser), you need to keep your memory footprint as small as you reasonably can. And for that, pre-allocating (or at least allocating in discrete chunks) is a pretty good idea.
(The way things like IRC clients handle this is: you keep a small buffer of backlog, and write the rest out to disk. Any IRC client that allocates a GB of memory is going to get canned immediately.)
poohshoes:
There's certainly nothing *stopping* you from writing a normal application this way. The difference is that you can't necessarily assume you have full control of the machine. With a game, (especially a fullscreen one), we can feel pretty confident that we don't need to leave plenty of memory and CPU time on the table for other processes. With an application, you usually do. This isn't *hard*, but it's a thing to keep in mind.