Pair programming really needs to be experienced to be fully appreciated. Just a few years ago, I loved my single office and I was completely against the idea of spending all my time programming with somebody else sitting at the same computer. Today I advocated using pair programming at work and I gladly gave up my office to work in a pair-programming lab alongside the whole team. Funny how things change.
The Winds of Change
E3 is just around the corner, so we can expect to finally get the official announcements of Microsoft’s next-generation console, and maybe even Sony’s. That will mark the official transition into the next generation. And this is not just another console generation transition. This time it’s bigger. Much bigger.
The Care and Feeding of Pre-Compiled Headers
The great majority of the literature on warfare concentrates on topics such as formations, maneuvers, equipment, and training. What they often leave out is the importance of the supply lines. The most cunningly devised plan will be worthless in the long term if your supply lines fail.
The same can be said for large-scale C++ development. Most of the books and articles out there deal with class hierarchies, object-oriented design, and mind-bending template tricks. However, when it comes down to it, a solid physical structure and good code layout will go a long way towards making all programmers productive. When the milestones near and the pressure piles on, a badly structured C++ codebase is likely to be as fatal as the cold, Russian winter was to Napoleon’s army.
GDC 2005: Generation Wrap-Up in San Francisco
This year’s GDC, for a change of pace, was held in San Francisco. It was also the last GDC dealing mostly with the current generation of consoles. Yet again, GDC managed to live up to all expectations. I walked away totally exhausted, but at the same time energized and inspired and full of new ideas.
Stepping Through the Looking Glass: Test-Driven Game Development (Part 3)
After reading the first two parts of this article, you should have enough information to strike boldly and apply test-driven development to your projects. At first you’re likely to find that the road is somewhat rough and bumpy, though. How do you break up this module into something testable? How can you prevent your tests from becoming a burden to maintain? What exactly should you test?