A General-Purpose Contest Presentation System

Revision as of 15:45, 10 May 2011 by (Talk)

Jump to: navigation, search

A General-Purpose Contest Presentation System

Tim deBoer
John Clevenger


Programming contests at all levels – local, Regional, and International – generate large amounts of data and statistical information. Such data includes team identification information, descriptions of team submissions, and current team rankings, plus a variety of other transitory state information such as descriptions of “pending runs”, summaries of individual problem solution counts, and special attributions for teams (such as “first to solve problem 2”), to name just a few examples. These data are typically displayed for viewing by at least two different audiences: the teams actually competing in the contest, and spectators (coaches and others) watching the contest either locally or via remote web links. In addition, the data may be displayed in a variety of formats (text, HTML, etc.). The process of selecting, formatting, displaying, and dynamically updating contest data for disparate audiences can sometimes require substantial effort on the part of contest administrators and staff.

In this talk we describe a generalized Presentation Manager (PM) for use in programming contests. The PM is capable of displaying multiple presentations on a variety of output devices and is portable across a wide variety of platforms including Windows, Linux, and MacOSX. The PM is easily configurable to create a variety of contest displays, and includes support for dynamic presentations (e.g. automated scrolling) and animation. It allows on-the-fly presentation creation and updating and includes an administrator interface providing easy access to all PM functions. The PM can interface directly with a variety of contest control systems, including the PC2 and Kattis systems used to run the ICPC World Finals over the past 16+ years.

The talk will focus on both the architecture and implementation of the PM, as well as including live demonstrations showing the ease with which a contest presentation (e.g. a scoreboard or other static or dynamic display) can be generated for either single-screen, multiscreen, or multi-data source environments. An example showing the ease with which the PM can be integrated with a specific contest control system will be included. The current version of the Presentation Manager is based on presentation code used for scoreboard displays at the ICPC World Finals in Banff, Stockholm, and others. It is designed to be compatible with the Contest Control System Standard effort currently underway under the aegis of the CLI, and it is intended that the PM be publicly available for use in local and Regional Contests with no licensing or fee requirements, under the CLI banner.