Component
|
Details
|
Hardware and Operating System
|
Boardspace runs on a "cloud"
based unix server. From the inside, it looks like it
runs all alone on a Linux machine, but the actual hardware
is allocated out of a large amorphous pool. This
arrangement is very flexible in the sense that the amount of
memory, cpu, disk and bandwidth can be turned up or down at
will. Maintenance for the operating system, the real
hardware, power, and network access are all handled by the
service provider, Steadfast.net. The service has been
excellent. The total cost of this package, including
domain registration and other incidentals, is about
$400/year.
Historically, this is the fourth incarnation of Boardspace
in 6 years as hosting options have evolved. Only a
naive optimist would assume this will be the last.
|
Stock Software
|
In addition to the basic
Linux tools, Boardspace uses the Apache web server, Mysql
database, and Perl.
|
Game Server
|
The game server is a custom
application written in C, approximately 5000 lines of
code. It's really a pretty simple application whose
primary job is to multiplex the I/O among game
clients. It knows very little about games, and nothing
about any particular game.
|
Game Clients
|
All the game specific
software, including the Robots, is written in Java and
actually runs on the clients machines, not on the
server. The "core" Java code in the framework that
serves all the games is about 20,000 lines. Each game
has it's own support structure which amounts to another
3000-5000 lines.
|
Development and Testing
|
Most of the development and
testing occurs on a Windows platform. Windows versions
of Apache, Perl, and Mysql are basically identical to unix
versions. A little care is needed to keep the C server
compatible with both MSVC and GCC. Eclipse is used as
a development platform for Java.
|
Personnel
|
volunteers 1: paid 0.
Maintenance time (in the absence of emergencies) is less
than an hour a week, but periodic "emergencies" are
predictable.
|