CodeWhore.com
 

Software Engineering : What they don't teach you

Throughout the education of a computer programmer, he picks up a number of computer languages and algorithms from class or books. If he's lucky, he'll also learn the art of learning so that he can rapidly acquire new skills to keep up with new demands in his career and the industry in general.

Unfortunately they just don't teach the important stuff, the skills that make a decent worker into an effective programmer: real-world debugging, design and management of large scale projects, and interacting with other developers.

The format of the Ambrosia Times has changed. We have added a discussion board, so you can post responses to the following articles. I welcome your feedback.

Writing Networked Simulations (can you say "games"?)

It seems everybody wants to write Doom or Quake clones -- and while there are plenty of articles on writing 3D graphics engines, most networking guides are just tutorials with sample code for BSD Sockets. Granted, it's possible to drop in some code and make it work, but the best networked games are designed from the ground up -- the engine and the networking tied closely together.

This collection of articles defines some basic networking concepts, describes how to solve common networking problems, and examines several important design issues. The content is aimed at both the novice and expert network programmer.

Copyright (c) 1999-2003 Matt Slot and Ambrosia Software, Inc.

Hosted by Ambrosia Software - Maintained by Matt Slot - Updated 8/1/01 - Feedback welcome