6 ms·
International Obfuscated C Code Contest – 2018 Winning Entries
- 317070 9y agoI have tried navigate the page, but I still have not figured out what the goal was this year, who won, with which program and what has been obfuscated in it. Is there a better summary of this contest somewhere? Is there a link I'm missing?
- syberspace 9y agoright at the top are a couple of links like rules.txt and whowon.html, those might explain a bit more
- raldu 9y agoGoals: http://www.ioccc.org/2018/rules.txt http://www.ioccc.org/2018/rules.txt Who Won?: http://www.ioccc.org/2018/whowon.html http://www.ioccc.org/2018/whowon.html Guidelines: http://www.ioccc.org/2018/guidelines.txt http://www.ioccc.org/2018/guidelines.txt
- jjoonathan 9y agorules.txt contains rules and the overarching goals of the IOCCC, not the particular theme/goal for this year, and now I've wasted a few minutes poking through it to make sure. Thanks a lot.
- simias 9y agoI don't think there are any "goals" to the IOCC beyond writing the most clever and obfuscated code. There are only rules limiting what's acceptable.
- jjoonathan 9y agoYou pointed me in the right direction, thanks! I was confusing IOCCC with the Underhanded C Coding Contest, which does have a goal / theme. http://underhanded-c.org/#summary http://underhanded-c.org/#summary
- meta_AU 9y agoAre you perhaps thinking of the underhanded code contest?
- 317070 9y agoI am! Good catch, that explains my confusion. :-)
- willvarfar 9y agoEveryone's a winner! :) http://www.ioccc.org/2018/whowon.html http://www.ioccc.org/2018/whowon.html
- Cthulhu_ 9y agoThe page / site really needs a redesign and a bit of writing done. I'm actually of a mind to start a new webpage that does just that, but there might be some copyright issues there.
- DoreenMichele 9y agoI'm not sure what copyright issues (writing or code or?) you are concerned about, but you should be able to get around them with a little planning. Just don't outright copy stuff.
- jjuhl 9y agoOr just get in touch with the people behind the site and ask for explicit permission. Seems the simplest way to be sure, no?
- DoreenMichele 9y ago"It is easier to get forgiveness than permission." -- Words of wisdom from a career bureaucrat. I think the simplest way is to just set up a site and make sure you cite your sources. The site under discussion here would be a primary source and should be listed as such on every single page that references any of the data found there. Beyond that, it really depends on what the GP intends. Start a blog and write a little blurb about each winner as separate blog posts? I don't think any permission is needed. Just write whatever you want to say about the project and note that they are the winner listed here and link to the page where they are listed. Start a clone of the site that adds additional info? Yeah, you maybe need to go talk to folks and find out if they are okay with that and get it in writing.
- vanderZwan 9y ago> Creative Commons License. This work by Landon Curt Noll, Simon Cooper, and Leonid A. Broukhis is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License. Should be fine, no?
- szc 9y ago
- cornstalks 9y agoFabrice Bellard (the wizard behind FFmpeg, QEMU, etc.) has his own entry, which I find amazing: a ~4 kB program that outputs a ~50 kB image (of Lena), in addition to being able to decompress other images. His entry's hint page: http://www.ioccc.org/2018/bellard/hint.html http://www.ioccc.org/2018/bellard/hint.html
- FartyMcFarter 9y ago> No specific obfuscation was needed as the algorithms already have a significant complexity. Hehe...
- saagarjha 9y agoHe wasn't joking: http://www.ioccc.org/2018/bellard/prog.c http://www.ioccc.org/2018/bellard/prog.c
- raverbashing 9y agoFunny, the compiler seems to have a hard time with it. Running it OTOH is instant.
- cdancette 9y agoCan you explain a bit more how this works? I am not familiar at all with these challenges 50kB to 4kB is a 10x compression, it doesn't seem that huge, what's the achievement here?
- saagarjha 9y agoAchieving 10x compression in a 4kB program+data file hybrid is pretty hard to do.
- w23j 9y agoFrom the author's comments: "The uncompressed image is 12 times larger than the source code of the program which includes the image data and the complete decoder. The actual image data is 1220 byte long, which gives a compression ratio of 40. Using a JPEG-like algorithm would not be enough to reach this level of compression (the Lena image would be barely recognizable). So the algorithm is based on the latest advances in image compression." http://www.ioccc.org/2018/bellard/hint.html http://www.ioccc.org/2018/bellard/hint.html
- ajackfox 9y agoThis contest is basically the equivalent of software development masturbation, but the things people create are incredible none the less! The 'sound based cat' is one of my favorites: http://www.ioccc.org/2018/algmyr/hint.html http://www.ioccc.org/2018/algmyr/hint.html (I do NOT recommend running this with anything but minimal volume!)
- Froyoh 9y agoYou know this competition is old when they still use .text files
- suprfsat 9y agohttps://daringfireball.net/projects/markdown/index.text https://daringfireball.net/projects/markdown/index.text > 2004 Wow that is pretty old.
- rollcat 9y agoStuff that works doesn't need fixing. It's very liberating, when you don't need to chase a trend.
- londons_explore 9y agoThe trend of three letter file extensions has been around since about 1989?
- algmyr 9y agoI'm more used to .md or .markdown, but apparently .text is also used for markdown files. Picking .txt (which I assume you're hinting at) would not be the most specific choice here.
- JdeBP 9y agopoikola: X enum {T,F} z; //True & False #define E { #define B } Old ideas, but they'll still catch people out. It's interesting to see how well, or badly, the syntax colourization in NeoVIM copes with the various entries.
- tudorconstantin 9y agoAnd they say Perl is unreadable
- alien_at_work 9y agoFunny enough, the creator of Perl's previously well known accomplishment was winning these contests pretty much any time he cared to join. Take that as you will.
- akskos 9y agohugged to death?
- ufo 9y agoYusuke Endoh's "Best Use of Python" entry is a memetic masterpiece
- ufo 9y agoChristopher Mill's "Best of Show" pdp-7 emulator is seriously impressive. How is this even possible in such a small program?
- szc 9y agoAn IOCCC Judge here. We are rather fond of this one. The "prog" variant allows you to build and run the mullender entry from the first IOCCC http://www.ioccc.org/years.html#1984 http://www.ioccc.org/years.html#1984. The source is provided in the image, as is the compiler.
- londons_explore 9y agoThe source code is a punchcard... http://www.ioccc.org/2018/mills/prog.c http://www.ioccc.org/2018/mills/prog.c Anyone able to decode what is "punched" into it?
- ufo 9y agoDon Yang provided a video of how he wrote the code and transformed it into the obfuscated version (see spoiler.html). It is as interesting as the final result itself.
- phab 9y ago> # There is no 2016 IOCCC contest > # There is no 2017 IOCCC contest Anybody know why?
- szc 9y agoAn IOCCC Judge here. Sure, a variety of things! A competition can take about 4 full weekends of time ~128hrs total (Fri:6+Sat:16+Sun:10 x 4) to set up, judge and release the results. Getting 3 independent and very busy people coordinated with work, travel and major life events going on can get quite difficult. Recently we've opted to not start a competition if we do not pre-schedule the weekends for completing it! The result is that 2016 and 2017 could not happen.
- phab 9y agoThanks! And thanks for taking the time to organise these competitions when you can, they're truly edifying.
- Adamantcheese 9y agoYang's spoiler.html is actually super interesting as it's a live coding session for the entire program essentially. Also I thought the program name looked familiar when it said nuko, it's from the manga/anime Shoujo Shuumatsu Ryokou. It's a cute little thing that likes to eat technology, looks like this one's eaten four programs!
- dx7tnt 9y agoAnyone else feel that their URL should be cocic.gro ?