DM Jot aims to provide a quick and dirty way for Dungeons & Dragons Dungeon Masters (DMs) and players to keep each other in the know about their characters. DMs create campaigns, and players can then create their player characters under those campaigns. Ability scores, skills, and other vital statistics can be entered using an easy and quick interface.
SynCache::Cache stores cached objects in a Hash that is protected by an advanced two-level locking mechanism. Two-level locking ensures that: Multiple threads can add and fetch objects in parallel without stepping on each other’s toes; while one thread is working on a cache entry, other threads can access the rest of the cache with no waiting on the global lock, race conditions, or deadlock or livelock situations; and while one thread is performing a long and resource-intensive operation, other threads that request the same data with #fetch_or_add method will be put on hold, and as soon as the first thread completes the operation, the result will be returned to all threads. Without this feature, a steady stream of requests with less time between them than it takes to complete one request can easily bury a server under an avalanche of threads all wasting resources on the same expensive operation.
Cinabox (Continuous Integration in a Box) automates the setup of a Continuous Integration (CI) system by doing The Simplest Thing That Could Possibly Work. It consists of two simple scripts to set up a cruisecontrolrb CI server from scratch on an Ubuntu 8.04 system: one script to bootstrap Ruby, and another script to set up CI.