Fathom

Welcome to Fathom. Fathom is a library for building decision support tools. Fathom is the kind of tool you’d want to use when you:

Stability Note

I’ve recently refactored this library. That makes the core Fathom quite stable, but much less useful. The specific functionality (various databases, say, GSL support, various graphical model algorithms) will be in yet-to-be-released gems. I’m going to stabilize these before releasing them to the public.

The gems I am actively working on are:

There are at least another dozen fm-* gems that live in some level of development. These are gems like fm-redis-beliefs, fm-clinical-decision-support, and fm-apophenia. I’ll release these slowly and carefully as they go into production on real systems. That helps keep me from getting ahead of myself. If you’re starting to see the power of how these tools can be used for your work, drop me a note and I could see if I can get your kind of analysis out in the Fathom set of gems.

Inspiration for the Project

The ideas for this gem are coming from a lot of places:

Goals

The goals of this project are:

Architecture

I’ve worked on this system for several years, rewriting it every once in a while. It has taught me more about analysis and software architecture than any other endeavor of my life. I’ve come to appreciate a few things in my work:

I probably could/should write a book someday about what I’m learning about architecture. What this means for the practicing analyst is that we should have a fairly easy way of building models with tools that are appropriate to your problem. There should be little coupling, and lot of graceful experimentation between various tools that are being produced.

Contributing

If you’d like to contribute, you’re welcome to do lots of things:

Copyright © 2010-2011 Fleet Ventures, Inc.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.