ICS - serwer gier szachowych

2010-05-16 , Papiewski Łukasz , Szachy

ICS jest skrótem od Internet Chess Server (Internetowego Serwera Szachów). Jest to klasa serwerów obsługujących za pośrednictwem udokumentowanego ale nie ustandaryzowanego protokołu ICS grę w szachy wielu użytkowników dokonywaną za pośrednictwem Internetu.

Serwery tego typu zaczęły pojawiać się od początku lat osiemdziesiątych. Zrzeszały wielu użytkowników, którzy bezpłatnie mogli się zarejestrować, utworzyć konto, grać, czy obserwować statystyki.

W tych czasach pojęcie wolnego oprogramowania (open source, free software) jeszcze nie miało jednoznacznej kwestii prawnej. Projekt tworzony przez ogół dla ogółu, z braku regulacji został w końcu przejęty, skomercjalizowany i konsekwentnie płatny (ICC). Chris Petroff wraz z grupą ludzi temu przeciwną zaprogramował (po części na wcześniejszym kodzie) w pełni darmowego ICS-a. Już od 1995 r. każdy mógł grać w szachy bez dodatkowych obligacji. Projekt ten został wydany pod nazwą Free Internet Chess Server (FICS) a jego obecna licencja to GPL. Następnie był rozwijany i utrzymywany przez wolontariuszy jako oprogramowaniem o otwartym kodzie Słówko free podkreślało tu, że projekt został zainicjowany jako free software - w skrócie, ruch propagujący rozwój aplikacji przez chętne osoby i uznający taką postać rzeczy za lepszą dla ogółu (programistów, użytkowników) od komercyjnego rozwijania aplikacji..

Projekt fics z racji natury wolnego oprogramowania był następnie rozwijany przez wielu niezrzeszonych ze sobą programistów. Powstawało też wiele rozwidleń podstawowego kodu źródłowego. Z braku formalnego w tych czasach, określenia protokołu jakim posługiwał się klient w komunikacji z serwerem, wyklarował się ostatecznie ogólnie uznawany protokół ICS. Był to tekstowy wariant protokołu telnet, służący do komunikacji z ICS-ami (w większości z reguły niezależnie od ich rodzaju). Umożliwiło to tym samym wykorzystanie wielu istniejących odmian aplikacji oraz ustandaryzowało specyfikację projektów. Pomogło w konsolidacji i rozwijaniu dalej kodu serwera.

Istniejąca wcześniejsza fragmentacja kodu źle wpłynęła na jego spójności oraz ostateczną możliwość dalszego scalania różnorakich rozwiązań. Doprowadziło to nawet do wieloletniej stagnacji w dalszej historii FICS. Z drugiej strony serwer był już w pełni rozwinięty i oferował o wiele więcej niż zwyczajną grę w szachy przez Internet.

Na początku tego stulecia pojawiły się dwie próby dalszego rozwinięcia kodu źródłowego poprzednich wersji: jedna przez Andrew Tridgella oraz druga przez studentów Uniwersytetu w Paraná (projekt chessd). Te dwie wersje, które się wyłoniły, są dzisiaj podstawą serwera ICS.

Poniżej wypunktowano wersje serwerów FICS oraz ich orientacyjne lata powstania:
  • Wersja oryginalna
    • FICS 1.0
    • FICS 1.2.18
    • FICS 1.6.2
    • FICS 1.2
    • FICS 1.2.23
    • FICS 1.7.4
  • Wersja poprawiona przez A. Tridgella
    • FICS 2.0 (2002 r.)
    • FICS 2.0.1
    • FICS 2.1.0
    • FICS 2.1.1
    • FICS 2.2.0
    • FICS 2.2.1
    • FICS 2.2.2
    • FICS 2.2.3 (2004 r.)
  • Wersja portugalska (oparte na serwerze FICS)
    • Chessd 0.1 John 6
    • Chessd 0.2 Chrysalis (2006 r.)
    • Chessd 0.3 Chrysalis
    • Chessd 0.3.1 Chrysalis (2007 r.)

Cytaty

- Simplicity is the ultimate sophistication. - Leonardo da Vinci,
- Popularny człowiek wzbudza zawiść potężnych - Thufir Hawat o Leto Atrydzie (na Kaladanie),
- Szczęście następuje po smutku, a smutek po szczęściu; człowiek jest naprawdę wolny, gdy przestaje rozróżniać między smutkiem a szczęściem, między dobrem a złem - Aforyzmy buddyjskie.