Previous: Felo for other sports, Up: Felo ratings -- some background


5.4 Felo for programmers

This section is intended for programmers who want to use Felo in their own programs.

A graphical user interface is a nice thing to have but you cannot automate anything with it. For example, it is impossible to get really custom-made web pages, maybe with all weapons on a single HTML page.

For most of Felo's users, this limitation is unimportant. However, those who want to have full control will get it, and even in two ways.

First, you can call the Python module felo_rating.py as a command-line program. This is its help text:

     usage: felo_rating.py [options]
     
     options:
       -h, --help            show this help message and exit
       -p, --plots           Generate plots with the Felo ratings
       -b, --bootstrap       Try to estimate good initial values for all fencers
       --max-cycles=NUMBER   Maximal iteration steps during bootstrapping.
                             Default: 1000
       --estimate-freshmen   Try to estimate freshmen
       --write-back          Write the new initial values back into the Felo file
       --version             Print out version number and copying information
       -o FILENAME, --output=FILENAME
                             Name of the output file.  Default: output to the
                             screen (stdout)

If you have understood the GUI version of this program, you should intuitively know what the options mean. Of course, its input file format is the very same used by the GUI version. The output format is very simple and can be parsed by an own program.

Secondly, you can write a program in Python that imports the felo_rating module. You can then use Felo's API to write own Felo rating programs.