8 июня 2026, 10:50
Представлены победители IOCCC 29 (международного конкурса обфускации кода на языке C)

Состоялся 29-й Международный конкурс обфускации кода на языке C (International Obfuscated C Code Contest, IOCCC, для экспертов и разработчиков Obscure/Obfuscated C program). Организаторы объявили 9 проектов победителей-разработчиков. Это мероприятие проводится с 1984 года (и частично вдохновлено ошибкой в классическом Bourne shell). Считается, что это «старейший конкурс в Интернете» для разработчиков с девизом, что программисты должны получать удовольствие от C. Цель конкурса — «показать важность стиля программирования ироничным образом» и «нагрузить компиляторы C необычным кодом».
Выдержки из официальных правил и требований конкурса:
правило 0, аналогично, как C начинается с 0, так и IOCCC начинается с правила 0. :-)
правило 1, ваша заявка должна быть полной программой на C....
правило 5, Ваша заявка НЕ ДОЛЖНА изменять содержимое или имя файла любой части вашей исходной заявки, в том числе, в дополнение к прочего, prog.c, Makefile (который мы создаем на основе ваших инструкций по сборке), а также любые файлы данных, которые вы отправляете....
правило 6, I am not a rule, I am a free(void *human);
while (!(ioccc(rule(you(are(number(6)))))) {
ha_ha_ha();
}
Правило 6 явно отсылает к The Prisoner (некоторые другие правила еще глупее). И в правилах есть свои шутки типа «вы находитесь в лабиринте извилистых правил, все разные», есть по крайней мере ноль судей, которые считают, что Fideism имеет мало или вообще ничего общего с процессом судейства IOCCC, мы предлагаем вам не пытаться получить «самый маленький самовоспроизводящийся» ресурс (самый маленький, запись с нулевым байтом, победил в 1994 году).
В контексте IOCCC 29 разрешалось применять кодировку UTF-8 в коде. Код каждого участника должен быть интересен и чем-то примечателен. Работы могли быть необычно оформлены или выделять неожиданные стороны языка C. Размер исходного кода программы не должен превышать 4993 байта, а приложение должна собираться и выполнять осмысленное действие.
Среди победителей соревнования — эмулятор GameBoy, оптимизированный для «Тетриса», с исходным кодом, который выглядит как GameBoy, а равным образом квази-Roguelike игра, признанная «наиболее вероятной для телепортации». Также были вручены награды за лучший воображаемый эмулятор (виртуальная машина в 366 байтах C) и лучший эмулятор дробных чисел (генератор лабиринтов для Commodore 64).
«В этом году мы добавили забавные задания в конкурс работ‑победителей…», — отмечается на сайте. «После того, как вы разберётесь, что делает та или иная работа‑победитель, мы предлагаем вам попробовать выполнить это забавное задание!», — пояснили организаторы конкурса.
Список победителей IOCCC 29 и их проекты (на GitHub):
2025/cable - Subleq computer;
2025/cesmoak - Black hole punchcard Fortran. Инициатива имитирует мэйнфрейм IBM 7040, сначала преобразуя программу (закодированную в пробелах) в ASCII-символьные изображения перфокарт для программы на языке FORTRAN, а затем выполняя эту программу для вычисления света, видимого наблюдателю, смотрящему на черную дыру, и в конечном итоге создавая изображение. Все это воссоздаёт то, что пришлось сделать астрофизику Жан-Пьеру Люмине в 1978 году, чтобы создать первую в истории смоделированную фотографию чёрной дыры (на мэйнфрейме IBM 7040). «В этой работе равным образом можно запускать другие программы на FORTRAN — но они должны быть предоставлены в виде колоды перфокарт… Предоставлены инструменты для преобразования в/из колод и для интерпретации…»;

2025/endoh3 - patch/diff quine;
2025/jhshrvdp - Quasi-rogue-like game;
2025/jingp49 - Dr. WHO sequence. Победитель из Тайваня оформил свой исходный код в форме Тардиса из сериала «Доктор Кто» — исходник, отображающий сложную ASCII-анимацию вступительной заставки сериала «Доктор Кто» 1963 года;
2025/ncw1 - GameBoy emulator;
2025/tompng - Ocean sound generator;
2025/uellenberg - Quine pong. «Запуск программы генерирует исходный код для создания следующего кадра, отформатированного для отображения текущего кадра. Многократно компилируя и запуская каждый последующий кадр, вы можете играть в игру. Для перемещения передайте в качестве аргумента либо «w» (вверх), либо «e» (вниз)…»;
2025/yang2 - Zoltraak encoding.
«Мы планируем открыть IOCCC 30 ближе к концу 2026 года и провести конкурс в течение аналогичного периода времени, завершив его где‑то в конце первого квартала 2027 года», — пояснили организаторы мероприятия.
Читают сейчас

43 минуты назад
Астрономы обнаружили маленькие красные точки, готовящиеся к слиянию
Существует мнение, что в крупных галактиках современной Вселенной находятся сверхмассивные чёрные дыры (СМЧД). Тем не менее точно неизвестно, как именно эти чёрные дыры стали столь массивными, хотя ас

2 часа назад
Вышел альфа-релиз Paint.NET 5.2 с экспериментальной поддержкой Wine/Linux
1 сентября 2026 года состоялся выпуск альфа-версии графического редактора с открытым исходным кодом Paint.NET 5.2 для Windows 10/11 (64-бита) и с экспериментальной поддержкой Wine/Linux (Wine 11.14, U
2 часа назад
Операционная платформа «Альт Образование» бесплатна для школ — акция от «Базальт СПО»
Операционная платформа «Альт Образование» бесплатна для школ — акция от «Базальт СПО» Организация «Базальт СПО» запускает специальное предложение для школ: операционная система «Альт Образование» 11 п

2 часа назад
Google добавила агентный аналитика видео в Gemini 3.7 Flash, 3.6 Flash и 3.5 Flash-Lite
Google запустила агентный анализ видео для Gemini 3.7 Flash, 3.6 Flash и 3.5 Flash-Lite. Теперь модель анализирует видео не как последовательность кадров с фиксированной частотой, а сама решает, какие

4 часа назад
Апдейт платформы «Октопус» от ГК «Юзтех»: историческая анализ и расширенная сопровождение инфраструктур
В новых версиях «Октопус» мы сфокусировались на трёх направлениях: расширении возможностей управления ИТ-инфраструктурой, повышении производительности и развитии интеграций. Система получила новые сце