Open Library Project

The idea behind our Open Library Project is to make key pieces of our technology available under a dual licensing program. Similar strategies have been successful for many, and we think it's a good strategy for the future for a lot of reasons:

For those developing open source projects the code in our Open Library can be used under The GNU General Public License (GPL).

For those who wish to develop closed source projects using code from our Open Library Project we will make appropriate licensing and support arrangements on a case by case basis.


Our Development Philosophy:

Good software should read like a good textbook! When we write code we have to remember that we're not only instructing the machinery on how to do things, but also our selves and others that come after us on the theory behind the choices we make. In general, each line of code should have a corresponding line of comments that tells the story of what is happening - no matter how mundane that may be. By following this example, old pros can quickly find what they need, and new developers can learn from the old pros. Even better, almost anybody can follow along and often find problems that otherwise might never be found. (more on this some other time)

Thin and simple is better! Wherever possible we like to keep things as close to the metal as possible. Rather than create large, complex environments that require lots of study to use and are difficult to maintain, we prefer to keep the number of features and abstractions to a minimum.


Please note:

Cross Platform Timing Module (C++)

The Timing Module provides a collection of simple timing tools (in the form of C++ classes) that can be compiled and used across platforms. The module has been compiled and tested on linux and win32 platforms using g++ and minGW respectively. The Code::Blocks IDE was used for most of the recent development.

Cross Platform Threading Module (C++)

The Threading Module provides a thin cross-platform abstraction for creating multi-threaded applications. On win32 we abstract to native win32 calls. On other platforms we abstract to posix threads (pthread) calls. The goal is to provide the basics and grow from there as needed, to keep things as fast and thin as possible, and to provide a clean C++ oriented threading platform that plays well with others. The module will be compiled and tested on linux and win32 platforms using g++ and minGW respectively. The Code::Blocks IDE will be used for most of the development.