Freecell Solver - Documentation

Distributed Documents

HTML Plaintext Description
README Plaintext The "README" File
INSTALL Plaintext How to install Freecell Solver
NEWS Plaintext The file containing what's new in every release.
USAGE Plaintext A detailed usage document
TODO Plaintext The to-do list
AUTHORS Plaintext List of authors and contributors

Documents of the Code

Architecture Document

The Freecell Solver Architecture Document. Contains coding conventions, overview of the code and the modules, some terminology and some techniques that one is bound to encounter when dealing with the code.

Doxygen Browsing

Michael Mann has ported Freecell Solver to C++ and used Doxygen to prepare a hypertext reference to the code. This is compatible with version 2.2.x of Freecell Solver.

Lecture: Freecell Solver - Evolution of a C Program

A lecture given to the Haifa Linux Club about Freecell Solver. Covers various highlights from the history of the code-base and the community.

Lecture: Freecell Solver - The Next Presentation

A second installment in the series of presentations about Freecell Solver.

Freecell Solver - Project Introduction

This is a small presentation that introduces the Freecell Solver project to people who may be interested in contributing to it.

The Well and the Wall

Some reflections on the evolution of Freecell Solver and my interaction with its users and contributors written after reading Eric Raymond's seminal "The Cathedral and the Bazaar" document. What I did very much the same, (mostly without thinking too much about it), what I did differently, and what happened. Slightly out-of-date.

Freecell Solver - Evolution of a C Program - The Book

A book I'd like to write and publish online about the evolution of the code and to lesser extent my interaction with its users, contributors and co-developers. Since I did not find a suitable publisher yet, I have kept the book off-line and only send it to a privately-controlled mailing list. I also only started to write it, and it is largely vapourware.

This book will focus about various ANSI C and game AI techniques and the semantics of using them. It should be a good discussion of interesting algorithms and data structures, and how to optimize C code and program code in general. It will require no or little knowledge of Freecell games AI or algorithms and data structures, but good knowledge of ANSI C will be expected.

But like I said, it's still vapourware. ;-)

Freecode Editorial: Time to Rethink your Help Flag?

A Freecode editorial I wrote about what I had planned to do with the extremely long help display that Freecell Solver used to have.

Musings about Freecell Solver after Reading "The Art of UNIX Programming"

This is an E-mail message I sent to Eric S. Raymond in regards to his "The Art of UNIX Programming" book. In it I mention some interesting Freecell Solver techniques similar (but not identical) to examples that he gave in the book.

"When C is the Best (Tool for the Job)?"

An essay that tries to explain why the C language is still sometimes the best language to use for writing programs.

"What Makes Software High-Quality?"

An essay inspired by a note which a developer of a competing solver said on the fc-solve-discuss mailing list, which also covers Freecell Solver at the end. See the second revision for the most up-to-date text.

"Perl and Solitaire Games"

A blog entry in my blog about Freecell Solver and other things.

"Optimizing Code for Speed"

An essay about optimisation that gives some examples from Freecell Solver and elsewhere. Also see a more recent version (and a publicly editable one) on the English Wikibooks.

FOSS Licences Wars

An essay about licences of free and operating source software (FOSS) that also mentions Freecell Solver as a case study. Note: some of it is disinforming or misinforming, and one should refer to some errata by Mikhael Goikhman for some corrections, as well as my "Why I prefer BSD-style licences".