The International Obfuscated C Code Contest (IOCCC) returns for its 29th edition, showcasing the most creatively complex C code submissions from programmers worldwide.
The International Obfuscated C Code Contest (IOCCC) has completed its 29th edition in 2025, continuing its tradition of celebrating the most creatively complex and perplexing C code submissions from programmers around the globe. This year's contest, held after a multi-year hiatus, attracted submissions of near-historic volume and quality, demonstrating the enduring appeal of this unique programming challenge.
What is the IOCCC?
The IOCCC is a programming contest that challenges participants to create the most obscure, dense, and creatively written C code possible. The entries must compile and run correctly, but their functionality should be extremely difficult to discern from the source code alone. This contest has been running since 1984, with the 2025 edition being the 29th iteration.
This Year's Contest
For IOCCC29, the volume and quality of submissions were at near-historic heights. Following the 2020-2024 hiatus, many authors had additional time to refine their submissions, resulting in higher-than-usual quality. Despite being the second consecutive contest after the long break, IOCCC29 maintained similar submission numbers to the previous year, with overall quality remaining exceptionally high.
Several factors may have contributed to this sustained interest:
- Improved website design
- Increased social media presence
- Authors building on ideas from past winning entries
- Enhanced documentation and transparency in the judging process
Notable Winning Entries
The 2025 contest featured several remarkable entries that pushed the boundaries of what's possible in C code obfuscation:
- 2025/cable - A Subleq computer emulator, demonstrating how to create a complete computing system within obfuscated code
- 2025/cesmoak - A "Black hole punchcard Fortran" entry that combines retro computing with modern obfuscation techniques
- 2025/endoh3 - A patch/diff quine, which creates its own source code through a clever patching mechanism
- 2025/jhshrvdp - A quasi-rogue-like game that implements a playable game within highly obfuscated code
- 2025/jingp49 - A Dr. WHO sequence, notable as the first winning entry from Taiwan
- 2025/ncw1 - A GameBoy emulator, showcasing how to recreate complex hardware in obfuscated C
- 2025/tompng - An ocean sound generator that creates audio output through code
- 2025/uellenberg - A "Quine pong" that combines a quine (a program that outputs its own source code) with the classic Pong game
- 2025/yang2 - A Zoltraak encoding entry that demonstrates advanced text manipulation techniques
Hat Tricks and Special Achievements
This year's contest saw an unprecedented "Hat trick of Hat-tricks" with three authors each submitting three winning entries:
- Yusuke Endoh: 2025/endoh1, 2025/endoh2, and 2025/endoh3
- Nick Craig-Wood: 2025/ncw1, 2025/ncw2, and 2025/ncw3
- Don Yang: 2025/yang1, 2025/yang2, and 2025/yang3
Each entry received various awards recognizing different aspects of their obfuscation, creativity, and technical achievement.
The Judging Process
The IOCCC29 implemented carefully documented procedures for closing submissions, judging, selecting winners, and preparing the website. This documentation, while requiring additional time and effort, resulted in overall improvements to how the IOCCC is run.
Winning entries were presented on the Our Favorite Universe YouTube channel, with plans to divide the main show into individual segments for each winning entry. The official website for each entry includes links to these presentation videos.
Fun Challenges
A new feature introduced this year was the addition of "fun challenges" under the "Judges' remarks" section of each winning entry. After understanding what an entry does, participants are encouraged to attempt these challenges, which may involve:
- Creating alternative versions of the program
- Explaining specific aspects of the code
- Solving related programming puzzles
Open challenges can be addressed through GitHub pull requests, with the IOCCC Judges considering improvements to existing solutions.
Rules and Guidelines
The IOCCC29 represented a substantial rewrite of the rules and guidelines, with version 29.15 for rules and 29.08 for guidelines, both dated December 2, 2025. This rewrite was made possible by numerous volunteers who provided useful edits, text rewrites, consolidation, and improved organization.
Looking Forward
The organizers plan to open IOCCC30 towards the end of 2026, with the contest running until approximately the end of Q1 2027. As with the closing of IOCCC29, they plan to document the opening process internally to further improve the contest's administration.
For Aspiring Participants
The contest organizers provided encouragement for those whose submissions didn't win, noting that many current winners were improved versions of previous non-winning entries. They suggested:
- Polishing and resubmitting non-winning entries
- Trying different types of submissions
- Publishing non-winning entries if not planning to resubmit
For those interested in compiling and running the winning entries, the organizers recommend using updated versions of clang and/or gcc, as some C compilers may not handle the obfuscated code as effectively. Detailed FAQs are available to help with compilation issues, dependency management, and running the entries.
Exploring the Entries
All winning entries can be downloaded as a compressed tarball from the official IOCCC website. Each entry has its own index.html page with information on how to compile and run the program, along with the author's remarks and additional context.
The contest continues to serve as both a technical challenge and an artistic expression in the programming community, demonstrating the creative possibilities within the constraints of the C programming language. For those interested in exploring the intersection of programming and art, the IOCCC29 entries provide a fascinating glimpse into the minds of some of the most creative programmers in the world.
For more information and to explore the winning entries, visit the official IOCCC website and check out the specific 2025 winning entries.
Comments
Please log in or register to join the discussion