Today’s progress

So for the first time in many months, I’ve spent the day sitting in front of the television, working on an old laptop instead of my normal desktop development machine.

Comments, in point form:

  • As “background noise” behind programming, television seems to work a lot better than music for me.
  • My laptop really is a lot slower than the desktop machine.  Also, its keyboard is really unpleasant to type on.  (Full disclosure:  I’m an unrepentant keyboard snob.  If it isn’t mechanical, then it’s awful for programming.  Yes, I provide my own keyboards for use at work, because no development studios ever provide anything but the most horrible and ancient Logitech rubber-dome keyboards)
  • As a result of the above two points, I should really consider buying a TV tuner card for the desktop machine.  Kind of expensive, though.
  • Today I created the source code repository for storing 104 (whatever it ends up being named), and the initial project framework.  It does run, although right now it only displays the word “Test”.  I’m starting to really think that it takes too long to create new projects in VectorStorm.  I should really have a standard “starting” project, instead of having to spend an hour on it every time I start something new.
  • The folks at my current workplace are big proponents of strong pointers.  There are a lot of good arguments for using strong pointers, most notably that they perform a sort of poor man’s garbage collection, automatically destroying objects which are no longer in use, whereas ordinarily in C++ you need to explicitly destroy objects once you’re finished with them.  The downside, of course, is a performance cost in using the smart pointer.  And for that matter, they do make debugging a little more annoying for a couple of reasons.  But man, after a few months of writing code using smart pointers, it’s really easy to get out of practice with remembering to explicitly destroy every object you create.  I’m really glad that VectorStorm has built-in memory leak detection, or I’d be in serious trouble.
  • Every one of my classes always begins with a two or three letter prefix, telling where that class comes from.  For example, VectorStorm library files all begin with “vs”.  Source files in MMORPG Tycoon all begin with “mmo”.  I was at a loss, though, for what to call the files for 104, since it’s not legal to use numbers to name classes in C++.  In the end, I went with the roman numberals “civ”.  Even though the game will most definitely not be Civilization.
  • Have brought all the accumulated VectorStorm changes from MMORPG Tycoon 2 into the live trunk.  No new features, but vsRenderTarget is halfway to being exposed for use by games, for offscreen rendering.  It’s already being used by the vector glow effect.

I still don’t know what 104 will actually be.  Been thinking about “hundred” and “four” as being separate things.  Maybe not even quantities, but instead, names for things.  But I don’t have a real answer yet.  But there’s still plenty of time to figure out a design!