Konkurs na najbardziej skomplikowany kod programu powraca

Twórcy słynnego konkursu dla programistów IOCCC poinformowali właśnie, że w tym roku odbędzie się jego kolejna edycja. 1 grudnia rozpocznie się przyjmowanie zgłoszeń - szansę na zwycięstwo mają ci developerzy, którzy zaprezentują najbardziej przekombinowany, złożony i zaciemniony (obfuskowany) kod.

Obfuskacja to technika programistyczna, mająca na celu maksymalne skomplikowanie struktury kodu - np. po to, by nikt niepowołany nie był w stanie przeanalizować zasad jego funkcjonowania (np. poprzez inżynierię wsteczną). Twórcy International Obfuscated C Code Contest (IOCCC) wychodzą z założenia, że odpowiednio przeprowadzone zaciemnianie jest prawdziwą sztuką i powinno być nagradzane.

Konkurs był swego czasu bardzo popularny w kręgach programistycznych - ale od pięciu lat nie odbywał się. W tym roku jego inicjatorzy postanowili reaktywować imprezę. "Nigdy nie da się powiedzieć: oto zobaczyliśmy już wszystkie możliwe sztuczki. Ktoś zawsze wymyśli coś, na co nie wpadł nikt przed nim - za każdym razem, podczas każdej kolejnej edycji, zdarzało mi się myśleć: Rany boskie, w życiu bym nie wpadł na coś takiego" - tłumaczy Landon Curt Noll, jeden z pomysłodawców IOCCC.

Celem najnowszej edycji będzie tradycyjnie wyłonienie najbardziej złożonego, trudnego do zrozumienia i niepotrzebnie skomplikowanego kodu napisanego w C. Przyjmowanie zgłoszeń rozpocznie się 1 grudnia i potrwa do 12.12.2011.

Organizatorzy IOCCC podkreślają, że podstawowym celem konkursu jest, paradoksalnie, zwrócenie uwagi programistów na problem jakości i ergonomii pisanego przez nich kodu. "Chcemy jasno dać do zrozumienia, że stworzenie programu, który działa, to jeszcze nie koniec pracy - kod musi być dobrze napisany, łatwy do modyfikowania i zoptymalizowany. Znaczy to tyle, że kod powinien być jasny i czytelny dla każdego, a nie tylko dla autora" - wyjaśnia Noll. Dodatkowymi korzyściami wynikającymi z konkursu jest wskazywanie pewnych słabości języka C oraz wad standardowych kompilatorów.

Historia IOCCC sięga 1984 r. - wtedy to Noll oraz Larry Bassel (pracownicy koncernu National Semiconductor) doszli do wspólnego wniosku, że niektóre elementy systemu Unix "są nie tylko źle napisane, ale wręcz sprawiają wrażenie, że ktoś się nieźle natrudził, by napisać je źle". Dlatego też obaj panowie postanowili zwrócić uwagę na te słabości - organizując konkurs dla autorów celowo źle napisanego kodu.

IOCCC jest najstarszym konkursem internetowym - tegoroczna edycja będzie dwudziestą. Więcej informacji znaleźć można na oficjalnej stronie konkursu.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200