HomeVideos

The Craziest Coding Contest Ever

Now Playing

The Craziest Coding Contest Ever

Transcript

910 segments

0:00

You've probably heard of code golf,

0:01

right? Well, did you know that there's

0:02

actually a world championship in code

0:05

golf called the International Obfuscated

0:08

C code contest. Now, I've seen some

0:11

photos and I'm sure you've seen some of

0:13

these float around over the years on

0:14

social media, but I did not realize just

0:17

how amazing these programs actually are

0:20

and the fact that this could produce

0:23

anything at all, let alone an amazing

0:26

program. So, today we are going to be

0:28

doing a tier list. Yes, you heard me

0:30

correct. A tier list on the most

0:32

beautiful ASCII art along with

0:35

functional program you have ever seen

0:37

and honestly, there was one of them that

0:39

when I played it, I stood up and started

0:41

clapping. I

0:42

By myself, I clapped at the screen.

0:44

These are going to be some of the most

0:46

mind-blowing things you're ever going to

0:48

see. All right, so first up is this

0:50

lovely one. Now, some of you probably

0:52

can take a guess as to what it does.

0:54

Yes, every single ASCII art is also a

0:57

bit of a clue as to what it does. Look

1:00

at that.

1:02

Look at how amazing that is.

1:05

But wait for it. Just wait for it.

1:08

Doctor Who. That's right, this lovely

1:10

piece of code right there actually

1:11

recreates the original intro screen for

1:14

Doctor Who. Now, here's the hard part

1:16

about all this is that every one of

1:18

these programs are amazing and it's hard

1:20

not to just give them all the highest

1:22

tier possible, but I think in the spirit

1:24

of fair competition, I'm going to put

1:25

this one under the S category. It's

1:27

pretty good, okay? But there's still

1:29

several that are even more mind-blowing.

1:32

All right, next up is this beauty. Look

1:33

at it. What could it be? What could this

1:35

one be about? It prints the current moon

1:38

cycle. That's right, today's moon cycle

1:41

is a waning crescent and what you see

1:43

right there is in fact a waning

1:45

crescent. To me, the thing that's just

1:47

so mind-blowing about this is there's

1:49

like

1:50

there's like no code here, dog. How does

1:52

this even work? As cool as it is though,

1:54

I I only going to rate this one as a B.

1:57

Yes, I know your mind's probably blown

1:58

right now, but that's Hey, I'm calling

2:00

it. I think it's only a B. It's awesome,

2:02

but it's not it

2:03

it's not as cool, I guess, as it could

2:06

be, even though there's so few

2:07

characters. I know, I can already feel

2:09

it right now. I can already feel people

2:10

getting on the keyboard making comments,

2:12

"You son of a [ __ ] that thing is the

2:13

coolest thing ever." Don't worry, it

2:15

gets so

2:17

much better. Before we continue,

2:20

thank you to the sponsors.

2:22

>> Dad,

2:24

could you teach me how to write code

2:25

today?

2:26

>> Does it look like I have time for that,

2:27

son? My database is down again. [music]

2:30

>> Um,

2:31

maybe tomorrow.

2:34

>> [music]

2:37

>> Not again.

2:41

Go long, son.

2:42

Teach, got to go fast.

2:45

>> Hey, Teach, how do you have time to play

2:47

with your kid? Isn't your database

2:48

always down? [music]

2:49

>> What do you mean? I chose PlanetScale,

2:51

the database for the consumer who wants

2:54

their downtime to be with their kid.

2:59

>> Nice catch, son.

3:00

>> Thanks for choosing PlanetScale. You're

3:02

the best dad ever.

3:04

>> No studies [music] have confirmed

3:05

PlanetScale makes you a better father,

3:07

but it is a really good database.

3:08

>> Hey, welcome back. Okay, so, we got the

3:11

lightning bolt next. Yes, the lightning

3:13

bolt. This one

3:16

I mean, it

3:17

I love the ASCII art, okay? The ASCII

3:19

art in this one is incredible. But, what

3:21

it does is it produces a nice little

3:23

lightning strike on your screen. Hey,

3:24

that's kind of cool, right? And they're

3:26

random each time. Look at that. Hey,

3:27

little just little lightning strike,

3:29

huh? For me, this one it's going to have

3:31

to be a D. I know, we're in D category

3:33

for a moment, okay? I love the ASCII

3:35

art, it just didn't it just didn't

3:37

deliver for me. Next up, what looks to

3:40

be a stamp. Now, this one was the first

3:43

one that truly

3:45

blew my mind. I can already tell you,

3:47

even before you see it, oh baby, we're

3:50

going up, okay? We're going all the way

3:52

up to S+ tier. I'm putting it in because

3:54

when you see what happens here, oh my

3:56

goodness. What it does is you press a

3:58

button

3:59

and it spins a top. It reads the top

4:02

shape from a file. You can provide any

4:05

top. You can see right here how many

4:07

revolutions per minute going on. It's

4:09

going to fly up here. It's going super

4:11

fast. It's going at a thousand. It

4:13

simulates a top. You can design your own

4:16

shape and it runs. Now, for me this is

4:19

just I don't know. I thought this one

4:21

was just so dang impressive because I

4:24

can't even believe this actually works.

4:26

I can't even believe you could build a

4:28

simulation in that few characters, let

4:31

alone a simulation that I can just

4:33

design whatever shape I want and it just

4:36

works. And there we go. It's crashing.

4:38

Look at it go. Look at that. It looks so

4:41

good. It's 3D ASCII. Now you can see why

4:44

this deserves the S+ category. I mean

4:46

this thing has to be one of the coolest

4:48

programs I have ever seen. And I'm still

4:51

blown away that like this is the code.

4:53

This is it. That's

4:54

That's all it That's all it takes. Next

4:57

up is

4:58

I guess a bunch of signs, the addition,

5:00

subtraction, multiplication, and

5:01

division sign. All right, so this this

5:03

program, what it does is you give it

5:05

what it's allowed to use, a zero, and

5:09

then what numbers it has to calculate.

5:11

So when I press enter, it actually

5:12

figures out, okay, only using seven, 77,

5:15

and 77, seven, 777, I will make that

5:19

number by doing this. Hey, that's pretty

5:21

neat. It just figures out how to do

5:22

things like that. I'm I'm impressed by

5:24

that. I have no idea how the math works,

5:28

let alone how you would fit it just in

5:30

that that many lines of code. Like how

5:33

How did it How did he do it? It blows my

5:34

mind. But at the end of the day, I kind

5:36

of put this one into the moon category,

5:37

okay? The B category because it is very

5:40

technically impressive. It's just not as

5:42

much of a visual spectacle. It doesn't

5:44

capture me like the other ones. Yes, I'm

5:46

going to be a little bit biased on some

5:47

visual spectacles, okay? All right, I

5:49

love this one. This one is from right to

5:51

left or at least it gives the appearance

5:52

of being a right to left program. All

5:54

right, so when I run this one, it's

5:56

actually a game. You can use WASD. You

5:58

can dodge all these things. Look at it.

6:00

Look at it. Look at it. Look at it. Look

6:01

at it. This is not a game and keyboard,

6:02

okay? As you can see, you can also

6:04

shoot. Look at us go. Look at that go.

6:05

Look at that go. Look at that. I'm

6:06

shooting.

6:07

I'm not dying. I'm not going to die. I'm

6:09

not going to die just by sitting in one

6:11

place and shooting. Okay, I died. So,

6:12

the program itself, that was I can't

6:14

like I I'm pretty sure that there's at

6:16

least 15% of my audience that couldn't

6:18

write that program by hand, let alone

6:20

write a program that looks like it's

6:21

right to left, but I will say that the

6:23

visual spectacle of the code doesn't

6:26

feel as welling as the other one. So,

6:29

that kind of goes against it, but the

6:30

game the game is so dang good. I got to

6:34

do it. I got to A-tier this one, okay? I

6:36

got to A-tier this one. All right, so

6:38

the next one is this. Look at Look at

6:40

all of this. So So much obfuscation

6:43

inside of the middle of it, it says

6:45

relax. Now, remember, all the art,

6:49

of course, is some sort of indicator

6:51

typically what you're going to see. This

6:54

program is a relaxation sound generator.

6:57

May take 5 to 10 seconds to generate.

7:10

All right, so where do we put relax? I

7:12

mean, obviously the ASCII art is pretty

7:14

cool. I love that the ASCII art is

7:16

directly tied into what it produces,

7:20

which is this really relaxing sound. And

7:22

then the sound waves, like the waters,

7:24

the water actually sounds really good.

7:27

Like it sounds really really good, and

7:30

it generates it. So, I just I I feel

7:32

like this has to be an S-tier item,

7:34

right? If you got the full package here,

7:37

you got the art tied in with the the

7:39

result, and it's just pretty dang high

7:42

quality. This is This is feels This

7:44

feels like S tier to me. All right, so

7:45

this next one's a bit harder to explain.

7:47

You can see a dy/dx right here, so we

7:49

got a little bit of

7:51

difference with respect difference of Y

7:53

with respect X. Is that how you read

7:55

these? It's been so long. Anyways,

7:57

either way

7:58

you can tell that there's going to be

8:00

some sort of derivative property to this

8:02

one. Now, this one needs a little bit

8:03

more explaining because what it does

8:06

it's a bit mind-blowing. So, this

8:07

program is a self-modifying Quine chain

8:10

that hides a diff tool inside of a patch

8:13

tool. So, you actually use the patch

8:16

tool to patch itself 25 times. And at

8:20

the end of patching yourself 25 times,

8:23

you'll actually get a diff tool at the

8:26

end. And what makes this program so cool

8:28

is that it it says right here Larry

8:30

Wall. It's a tribute to Larry Wall,

8:32

creator of the patch command and Pearl

8:35

programming language and the winner

8:38

of the International Obfuscation C

8:41

Challenge. As you can see, he actually

8:43

did win right here, which is a Dvorak

8:45

keyboard emulator. You already know that

8:46

I'm pretty impressed by that one. You

8:48

can even go check out his code right

8:49

here. Now, this is actually just Larry

8:51

Wall writing some pretty standard Larry

8:53

Wall code. And this was

8:55

2 years before Pearl was invented. The

8:58

man was writing Pearl before Pearl

9:00

existed. It reminds me of a brief,

9:01

incomplete, and mostly inaccurate a

9:03

history of programming languages. Larry

9:05

Wall falls asleep and hits Larry Wall's

9:07

forehead on the keyboard. Upon waking,

9:09

Larry Wall decides that the string of

9:11

characters on Larry Wall's monitor isn't

9:12

random but an example program in a

9:14

programming language that God wants his

9:16

prophet, Larry Wall, to design. Pearl is

9:19

born. Since there's not really much of

9:21

an output for it and it's kind of like a

9:22

super cool tribute one, I figured I'd

9:25

put this one in this I put it you know

9:26

in a C category. Like it's a technically

9:29

impressive feat. I There's There's no

9:31

universe exists that I could program

9:32

that one, but I don't feel like it's

9:35

again visually as impressive. The ASCII

9:37

does match the program, which does rate

9:39

it higher, but it just doesn't uh

9:42

it doesn't do it for me, okay? I

9:45

I know. This is a Hey, tier lists are

9:46

biased, okay? Back off me. So, this one

9:49

we have ourselves a little bit of a

9:50

skull, okay? I wonder what's going to

9:52

happen with this one. It's actually a

9:54

video game. Cycle through target choices

9:57

before firing. Kill lowest matching

9:59

invader. All right, here we go. So, I

10:01

got Okay, I got to get a brief.

10:03

Fire. Wait, fire. There we go. Oh, yeah.

10:06

Yes.

10:17

Oh, no.

10:26

Uh-uh.

10:28

Oh, no. Oh, no.

10:30

Yes. Yes.

10:32

Oh, no.

10:34

Oh, crap. All right. I did pretty good,

10:36

okay? I I got some points.

10:38

But, hey, that's a pretty cool little

10:39

game. Hey, that's a pretty cool little

10:40

game. I like the ASCII art. Fun little

10:43

game. Pretty neat, but overall again,

10:46

not a huge visual spectacle. I'm going

10:48

to put I'm putting in the D category,

10:50

okay? I'm doing it again. I'm doing it

10:51

again. The ASCII art does match the

10:53

experience, but there's not much to the

10:55

experience. It doesn't feel as

10:57

technically impressive as some of the

10:59

other ones. I bet you at this point,

11:01

midway through here,

11:02

that there's a lot of people right now

11:04

that are losing their mind, okay? Hey,

11:07

calm down Hey, this Hey, this is my tier

11:09

list, okay? Go ahead. Tell me Tell me

11:11

how you feel. You won't? All right, so

11:12

this next one Look at this. Look at

11:13

that. It looks kind of like a tree or a

11:15

smoke stack. It's a little bonsai tree

11:17

simulator. Look at that guy go.

11:21

It's kind of peaceful, you know? It's

11:21

like this This would actually make an

11:23

amazing little

11:24

you know, text screen saver. And

11:27

honestly, it ends a little soon for me.

11:30

You know, I I

11:31

I understand how it feels. I wish it

11:33

would last longer though, you know? Me

11:34

and you bonsai tree. Me and you little

11:36

bonsai tree. You know what? We're done.

11:38

We're done here. We're done. We're

11:39

moving on. All right, so I love the

11:41

ASCII art. I love that it plays and

11:43

builds a little tree. It's a beautiful

11:45

running program. Beautiful ASCII Oh my

11:47

gosh. For me this just had that really

11:49

impressive feel to it. I just wish it

11:52

would have lasted a little bit longer,

11:53

you know? Take your time a little bit.

11:55

So I'm going to put it in the A

11:56

category. Even though I loved it, it

11:58

just didn't do it for me. I know there's

11:59

a lot of you out there, anime waifus.

12:01

Okay, this one's probably hitting hard

12:03

for you, but this one is particularly

12:06

impressive. This one is one of the few

12:08

ones that like my mind

12:10

can't even comprehend

12:13

how they made this. So this is what they

12:15

refer to as a polyglot piece of code.

12:18

Now you probably heard the term polyglot

12:19

before describing somebody who has like

12:21

say many doctorates in a certain in

12:24

different you know, fields or someone

12:27

who can program really well in many

12:29

different languages. Typically you know,

12:31

like a a poly language, a polyglot

12:32

language specialist, right? You get the

12:34

idea. But this, the code itself is a

12:39

polyglot. And what does that mean? Well,

12:41

here's the thing. So how this program

12:42

works is you take some input and you

12:44

pipe it into the program. When you do

12:46

that, it can cut out a little one of the

12:49

lines. So you say, "Hey, cut out line

12:50

50." Right? So this is kind of like akin

12:52

to the old text editors. But here's the

12:54

thing about the program. If you take the

12:56

program itself and you cut out the first

13:00

line,

13:01

the program goes from a cut tool

13:03

to head. If you're not familiar with

13:05

head, head displays the first few lines

13:07

of any like of an input stream or a

13:09

file. If you cut the last line, it

13:11

becomes tail. It then displays the last

13:14

few characters. Now here's where it gets

13:15

mind

13:16

just boggling, okay? You can run the

13:19

program with Ruby. That's right, you

13:20

don't even have to make it with C

13:22

anymore. You can just raw dog it with

13:24

Ruby. And apparently, if you raw dog it

13:27

with Ruby, guess what you get? You get

13:29

like the complement of head and tail.

13:32

Also, if that doesn't bother you enough,

13:34

you can also run the program with Pearl.

13:37

In other words, this program is a

13:39

collection of line-based cutting tools.

13:42

So, for an example, this program is

13:44

going to cut line two of a sequence of

13:46

five. When I press enter, you can see 1

13:49

3 4 5.

13:51

You can also cut the other direction. 1

13:53

2 3 4's missing 5. You can then run the

13:56

program as Ruby and bada bing bada boom,

13:59

look at this. You now have a Ruby

14:01

program. Hey, Ruby program, hey, take

14:03

the first two. Now, remember, Ruby

14:05

program inverts it. So, it's not take

14:06

the first two, it's skip the first two.

14:10

And then of course, you can go the other

14:12

direction. Skip the last two. The layout

14:14

of this code is based on Ubel from this

14:17

book. It's called Beyond the Journey's

14:18

End. It's for her ability to cut just

14:21

about everything. That is who this

14:23

lovely lady is. For me, I've never For

14:25

me, I've never even thought of the fact

14:27

that you could write a program that

14:29

could run in three separate languages.

14:32

For me, that the technical feat of this

14:34

one is so impressive that I just have to

14:37

I cuz I'm I'm a rookie in this category,

14:39

okay? I don't know a lot about

14:40

obfuscation, but the fact that you could

14:42

do this and the program could look that

14:44

beautiful and the output could be that

14:46

technically amazing, it's just like all

14:47

of it blows my mind. This one was not a

14:49

visual spectacle, which goes against

14:50

everything I've said thus far, but it's

14:52

it's so technically mind-blowing. It has

14:56

to be here cuz I didn't even know this

14:59

was possible. The next one should just

15:01

kind of look at this. It should just

15:03

fill your little heart with joy. Is that

15:04

a Game Boy?

15:06

It is. Look, it even has like the little

15:07

speakers down here. Such attention to

15:11

detail. This one is absolutely

15:12

incredible. So, this Game Boy, I bet you

15:15

can kind of guess what it does. Okay, it

15:16

requires a lot of rows, so you can kind

15:18

of barely read this, but as you can see,

15:20

we have a few different options right

15:22

here. So, we have Game Boy controls.

15:24

Look at this, 2048.

15:26

Let's go.

15:28

I don't even know what the controls are.

15:29

Let's Let's rock and roll. Okay, 2048.

15:32

Okay. Okay.

15:33

Uh down.

15:35

Over.

15:38

This is actually so good.

15:40

This is so

15:42

Look at this. Would you

15:44

Would you Would you just Would you look

15:46

at it? Okay. Are you Are you looking at

15:48

this?

15:51

Are you actually seeing what I am seeing

15:55

right now? I don't think you are. So,

15:57

this is a Tetris-optimized

15:59

terminal Game Boy emulator. That's

16:02

right. A Game Boy emulator fitting in

16:06

this much code.

16:08

This thing is just

16:10

It's just the best. Hands down. Like,

16:11

this is so incre How do people even

16:15

create this? Crazier part is, how do you

16:17

even debug this? Like, what is What's

16:19

the strategy? There must exist some sort

16:22

of program in which can make C look

16:24

absolutely disgusting, but this is just

16:27

I can't I can't even believe it. So, it

16:29

should be no surprise that this one's

16:31

going into the S+ category, okay?

16:33

This is S+ for days. This is the S++.

16:35

Sorry, my bad. I I misspoke. I misspoke.

16:39

Very impressed. Hey, Siri. I was Sorry,

16:41

I was not aware of your game. All right,

16:42

next one up is this beautiful little

16:43

calculator. Look at it.

16:45

Geez, I wonder

16:48

I wonder what it's going to do. All

16:49

right, so as you can see right here, if

16:50

you run program two, it prints out the

16:53

the number two. If you do 2 + 2 - 1, you

16:57

would of course get three.

17:00

8 trillion divided by 14 million and

17:03

seven plus 156

17:06

Boom. Yes, all of that somehow in here.

17:09

It's in It's It's right there. Don't you

17:11

see the trillion?

17:13

What? How does it even work? How does it

17:15

understand the number? That is what

17:18

blows my mind. I can't even I can't even

17:20

consider reality right now. I feel like

17:22

I'm feel like I'm being lied to actively

17:25

as we speak. This can't This can't be

17:26

the same code, right? And so for me this

17:28

one as someone who once had to build a

17:31

calculator on stream, that is very it's

17:34

a very difficult one and there's so many

17:36

little edge cases. And so it was very

17:38

impressive. The ASCII art very

17:39

beautiful, the output very cool. I'm I'm

17:42

going to give it a B, okay?

17:44

It was awesome. Super impressed. But we

17:46

we can all agree that's that's not an S

17:48

plus material, okay? All right, bagel

17:51

modulo N. Look at all that. I don't know

17:52

what's going on in here, but there's a

17:54

there's there appears to be a lot of

17:57

function calls, macros being executed.

18:00

Modulo N. I don't even like I can't even

18:02

make a guess as to what this program

18:04

does based on the ASCII art. It seems

18:06

very confusing. All right, so this

18:08

program you echo in a series of moves

18:11

into the program and when you hit enter,

18:13

it plays those moves in order as a game

18:15

of tic-tac-toe and tells you who wins.

18:18

That's right.

18:20

It plays tic-tac-toe. This code right

18:22

here. That code.

18:25

Who are these people, okay? I'm I don't

18:27

think Chat GPT would have any idea what

18:31

this code does.

18:36

Hey, you can you can ignore that. Don't

18:38

don't don't look at that.

18:44

All right, so I pasted the code in.

18:47

Turned on pro thinking. That's right.

18:49

This is some pretty serious model

18:52

computation going on. Now obviously the

18:55

only problem that I can see is that

18:56

since this is on a public GitHub

18:58

repository, there might be some sort of

19:00

identification that it could pull

19:02

somewhere deep inside of its weights and

19:04

be like, "Um this is actually one of the

19:06

many winners of the international

19:07

obfuscated C challenge." Look at this.

19:10

Chat GPT on pro thinking was actually

19:13

able to see this the visible behaviors

19:16

of two-player Tic-Tac-Toe game. It

19:18

clears the terminal and draws a 3x3

19:20

board, prompts for squares 1 through 9,

19:22

and detects a win. Chad GPT,

19:25

I'm impre- I A I'm impressed. All right,

19:28

so I you know, I

19:30

I'm going to rate this one low, okay?

19:32

For me, it it didn't feel as cool as the

19:34

other ones, okay? I'm putting it like I

19:36

feel like I actually have to explain it

19:37

to everybody. The fact is is that

19:39

when you look at what it did

19:41

comparatively to everything else, it

19:43

just doesn't feel

19:45

as mystical, if you will. And so, I got

19:48

hey, therefore, I got to give it the D,

19:51

okay? I'm Boys, I'm giving it the D. All

19:53

right, so now we're down to the last

19:55

six, seven, the last seven. These

19:58

There's some pretty cool ones in this

19:59

one, okay? The These ones start getting

20:01

pretty mind-blowing. All right, first up

20:04

is this right here, the vortex. Look at

20:06

that vortex. Look at how beautiful it

20:08

looks. It's all commented out, so kind

20:10

of has this like cool little star shape

20:12

into it. It actually looks like a

20:14

vortex, and then it spells a vortex

20:16

right here. I'm not going to lie to you.

20:18

It's pretty neat, okay? Hey, it's pretty

20:19

neat, but it's what it does

20:22

that is You just kind of have to see it

20:24

yourself. This is the input right here,

20:26

the International Obfuscated C Code

20:29

Challenge going on right here. And as

20:31

you can see, we're going to pipe that

20:33

in, and then we're going to pipe it on.

20:34

This does some encoding onto it. Watch

20:36

the encoding.

20:43

Now,

20:44

you uncode.

20:48

Tell me that is not awesome. Tell me

20:50

that is not incredible. Look at this.

20:52

This is the source code right here. This

20:53

is the source code that we are looking

20:55

at right now, and when you run it, look

20:58

at that.

21:00

It actually obfuscates that top part,

21:03

and then de-obfuscates it, and goes back

21:05

and forth. Look that you can actually go

21:07

both directions. This program is a

21:10

spectacle, people. I loved it. Like I

21:13

understand that this one may not be the

21:16

most impressive functionality ever, but

21:18

for me it's just the spectacle of the

21:20

ASCII art, the spectacle of the output.

21:23

It is a wow to the eyeballs. Oh my

21:26

goodness gracious, I'm absolutely

21:28

putting that in S plus right now, okay?

21:29

For me, that was the one, all right?

21:32

That was the one that did it. That

21:33

tickled me right where I needed to be

21:34

tickled, okay? Next up, Z3. Now I I this

21:38

one I didn't I didn't really get. Like I

21:39

don't really understand the ASCII art. I

21:42

bet you there's somebody that's old

21:44

enough that they could figure out what

21:45

this means. This is a callback, it turns

21:48

out, to a bit older of a game. So for

21:50

me, this did not land. So when you run

21:52

the program first, you get to admire the

21:54

source code of it. Very beautiful. But

21:56

when you press it again, you're actually

21:57

presented a text-based game. That's

22:01

right. This thing runs a bunch of

22:03

different famous, well-known text-based

22:05

games, including Mini Zork, Advent

22:07

Curses, Fantasy Dimension. And when you

22:10

play them, let's just uh start off with

22:11

number zero. There we go. So you can do

22:13

quit, save, or restore, which means you

22:16

can continue to play, and it loads in

22:19

these files. It reads them from disk,

22:20

which have these just large branching

22:22

narrative games, such as this. West of

22:25

House. You are standing in an open field

22:27

west of a white house with a boarded

22:30

front door. You could circle the house

22:32

to the north or the south. There's a

22:34

small mailbox here. North.

22:36

North of the house. You are facing the

22:38

north side of the white house. There's

22:40

no door here, and all the windows are

22:42

boarded up. A narrow path winds north

22:44

through the trees.

22:46

As you can see, this is just a

22:47

text-based adventure, so you could go

22:49

on. Whatever the adventure is that has

22:51

been in put into this game, very

22:53

impressive. So this one is super cool.

22:55

Obviously, the games themselves are is

22:57

not stored in the source code, just the

22:59

engine that runs it. And so

23:02

it is pretty neat. I liked it. Uh But

23:05

for me

23:06

you know, a lot of the heavy lifting

23:08

comes from the files and I don't know

23:10

how much of the heavy lifting comes from

23:11

the source code itself. Obviously,

23:13

there's a lot of symbols there. The

23:14

obfuscation through the roof, visually

23:17

mind-boggling. But ASCII art didn't

23:20

really like land very hard to me and the

23:21

games themselves, maybe they could be a

23:23

lot of fun, but they're also just the

23:25

extra files. So just, you know,

23:27

it just didn't it just didn't tickle

23:29

that spot. You know the spot I'm talking

23:30

about. The good spot as they as the kids

23:32

call it. All right, so this next one,

23:34

look at it. It's a tornado. You may have

23:37

a tornado. At least that's what I think

23:39

it is or maybe it's like a crazy-looking

23:41

rose-like thing going on right there.

23:43

Now, when you run this one though, look

23:45

at what you see. That's right. It's like

23:47

a tornado simulator.

23:50

Look

23:51

at it go. You have some sort of 3D cube

23:54

spinning and then this tornado just in

23:56

the middle and the colors going up.

24:00

It's absolutely incredible.

24:02

Again, blown away. I'm blown away right

24:04

now. Look at this. I'm blowing, okay?

24:07

People, I'm being blown by the tornado.

24:09

This thing is just a one-of-a-kind

24:12

special. I love how they even have these

24:13

like shapes. It's almost like some sort

24:15

of perlin noise. How it kind of does

24:16

that like undulation where it has high

24:19

points and then it distributes them into

24:20

low points. Incredible.

24:23

For me, this one was just such a

24:24

spectacle. I loved it. The ASCII art and

24:28

the the simulation that runs is so

24:31

aligned and it's just again, you know,

24:33

that tickling. I know I'm I'm a cheap

24:35

I'm a sucker, okay? I'm a sucker for a

24:37

sweet tickling and that one got me. So

24:39

I'm I'm S plus-ing it, okay? I'm S

24:41

plus-ing it. That one blew me away,

24:43

metaphorically and literally. All right,

24:45

so the ASCII art to this one is pretty

24:47

interesting. You can see a scissor, a

24:49

comb, and a clock. Apparently

24:52

there's a little bit of a challenge also

24:54

within in code where you can actually

24:56

make it behave a touch differently if

24:58

you attempt to figure out how it works

25:00

and how to change its behavior. I in

25:03

fact did not do that because I kind of a

25:05

rookie when it comes to C, let alone

25:07

obfuscated C. I don't I don't think I

25:08

have it in me, okay? I don't got that

25:10

Larry Wall inside of me. So, the program

25:12

itself

25:13

an inverted clock, as you can see right

25:15

here. That is my time right now. That is

25:17

the time I'm at. I'm at 4:18 and this

25:20

thing is at

25:22

well, 4:18. Now, for whatever reason,

25:24

this terminal that I have running right

25:26

now is kind of like wigging out. The

25:28

other ones didn't wig out for me, so I

25:30

don't I don't know what's happening

25:31

here, but this still it it looks pretty

25:32

incredible. I don't really get the shape

25:34

of this one like the the the hourglass

25:36

side of things, but the the scissors

25:38

must be because you have to cut

25:39

something. The comb and the clock must

25:42

be some sort of

25:43

indication into what you need to cut and

25:46

what it is, but it just didn't land for

25:48

me, so I I'm rating this one a little

25:49

bit lower. Not

25:51

Not because it was cool, just because

25:53

the ASCII art didn't land for me. I just

25:54

didn't really get it, but you know,

25:57

it's awesome.

25:59

Bro, I couldn't write that. All right,

26:01

so here's this next one. It has this

26:03

nice little uh banner for the IOCCC and

26:06

what year it was on, 2020. And when you

26:09

run the program,

26:11

you get the following.

26:13

Star Wars. May the IOCCC

26:18

be

26:20

with you.

26:22

Honestly, for me this one's actually

26:23

shockingly impressive. A, they somehow

26:26

were able to make ASCII art look like

26:28

the letters were like coming away from

26:30

you. But not only that, I one time asked

26:32

an AI to make this exact same thing for

26:35

me in a video game where it could

26:36

actually use a graphics library and it

26:39

got nowhere close. I mean, it was

26:41

terrible. No, no, no, no, no. So, the

26:45

fact that you can just hello world

26:48

and

26:49

galaxy. You can just

26:51

run this program, provide whatever input

26:54

you want, and it just floats away like

26:55

this. Ah, for me, this one was pretty

26:59

amazing. All right, so for me, like,

27:01

yeah.

27:03

The ASCII art,

27:04

I didn't really care for it. It didn't I

27:06

I feel like it they could have done a

27:07

better job like arranging it. It should

27:09

have almost looked like how it looks

27:12

inside the program. At least be

27:13

something that kind of widens out and

27:15

kind of gives that perspective. I feel

27:16

like that would have been a big more

27:18

like a larger capture. Uh obviously, the

27:20

technical feat of making ASCII art look

27:23

like it's leaning down and going away

27:24

from you.

27:25

Very cool. So, I'm going to give this

27:27

it's a solid B for me. It's neat, okay?

27:31

Neat.

27:32

But that's that's far as that's as

27:34

that's as far as I can give it to you.

27:36

All right, right now,

27:38

can you guess what this one is? Look at

27:39

this. You have what appears to be a cog,

27:42

perhaps. Do you know what it is? I don't

27:44

think you know what this one is. I don't

27:46

think you're I don't think you are

27:47

prepared for what you are about to see.

27:51

That was a great pun, and I should

27:53

somehow have prepared for that or made

27:55

it earlier, and I did not. As you can

27:57

see right here, you can see 4 4 2, that

28:00

is how big my screen is. So, if I were

28:02

to zoom in, you can see that I have less

28:05

and less and less of them all the way

28:06

down here. And if I click one,

28:08

boom.

28:09

Hey, that's a three. Okay.

28:12

Interesting. What happens if I click

28:13

another one? Oh, I died. I clicked a

28:15

mine. Rer rer.

28:17

All right, let's try this again. I

28:19

clicked it It's supposed to give you

28:20

like kind of a little bit of an ocean on

28:21

your first click, okay? Cuz now it's

28:23

like, I don't know. Let's just randomly

28:24

click it. Okay, I got two and two. So,

28:27

that puts me in two kind of a bit of a

28:29

pickle. Oh, dang. Emotional

28:32

damage. Also, as you can see right here,

28:34

I clicked on this one. It should have

28:36

kind of opened up, don't you think?

28:40

There we go. Now we got something

28:42

opening, and as you can see, boom. So

28:44

good. So, there's probably two right

28:46

here. If you right Can you right click

28:47

on them to like select them? That'd be

28:49

super cool. Look at that. Boom. What?

28:56

Okay, so I don't know what I just did

28:58

there. Somehow that just marked a whole

29:00

bunch of them, yet I don't feel like I

29:01

did anything. Okay, and then I died.

29:04

Well, okay. Well, okay then. So, this

29:07

one is quite amazing. Obviously, the

29:09

ASCII art being a mine. That's what it's

29:11

supposed to be. I thought it was a cog.

29:12

And the fact that it's

29:14

it doesn't look like it's a fully

29:16

working game of Minesweeper, but

29:17

nonetheless, it's pretty radical. It

29:19

fits in your terminal. However big your

29:20

terminal is is how big the game is.

29:22

That's pretty neat. But the fact that it

29:24

does kind of have that bug and it's a

29:26

little bit goofy, I'm I'm putting it in

29:28

the C category, okay? I mean, yes, it's

29:30

it's very impressive. Obviously, the bug

29:33

it got me, okay? I didn't feel as like

29:35

amazing about that. But now it's time

29:37

for the last one. A Roman numeral L, as

29:40

you can see, okay? We're about to take

29:41

the L. Now, I saved this one for last

29:44

because I just don't think you're ready

29:46

for what you're about to see. No?

29:48

No, you're not. At least this was my

29:50

personal favorite, okay? This is This

29:52

one, okay?

29:54

Loved it. All right, so when you run the

29:55

program, it says type halt at the prompt

29:58

to terminate the program. When I press

30:00

enter,

30:01

it's actually

30:03

a running container. That's right. You

30:06

ever wonder what a fork bomb looks like?

30:08

You can fork bomb yourself. Yo, you

30:10

wanted to You wanted to like do a little

30:11

rmrf from the root? Yeah.

30:14

You're allowed to do that.

30:16

Bam.

30:18

Look at that. Hey, you can't remove all

30:19

those things. You're not allowed to do

30:21

that. Great. Halt's not found anymore.

30:23

Now I can't I can't quit the program,

30:25

okay? Now Now we're stuck. We're stuck

30:27

inside of

30:29

whatever this thing is. I love the

30:31

judges' remarks for this one. When we

30:32

ran this entry for the first time in a

30:34

virtual machine window, it felt like the

30:36

VM rebooted. Then, after the initial

30:38

feeling had subsided, we were able to

30:40

appreciate the entry in greater detail.

30:42

The authors remarks says that this is an

30:44

emulator capable of running a full

30:46

modern Linux system with minimal set of

30:49

features including all of this. I

30:52

I've never built a container so I don't

30:53

actually know how containers work. I've

30:55

watched some talks where someone kind of

30:56

walked through how you'd build a

30:57

container and it all kind of made sense

31:00

but the fact that somehow this giant L

31:04

produces a container in which I can fork

31:06

bomb myself in and then it's just like

31:08

walk it just I was

31:10

flabbergasted [snorts]

31:11

by the level of technical feat in this

31:14

one. Yes. Now that I have two problems

31:16

with this one of course even though this

31:18

one felt like my favorite. The first

31:20

problem is that you can see the ASCII

31:21

art it just didn't hit home for me. I

31:23

feel like

31:24

maybe turn it into a penguin or

31:26

something. I don't know. Anyways,

31:28

and the second one it was obviously not

31:29

as a visually cool but I'm still going

31:32

to put that in the S plus category just

31:34

because the technical feat of it all is

31:36

so beyond my ability to even comprehend

31:40

how they did that. And now I'm sure

31:42

there's a few of you that actually know

31:43

and understand it but me no.

31:46

No, I don't. I've never done that before

31:48

let alone in C let alone in that few

31:50

characters let alone making it into a

31:52

gigantic L. Just want to throw out that

31:54

Game Boy one more time that Game Boy

31:56

emulator. Holy cow, amazing. And then of

31:59

course the program that was a Pearl,

32:02

Ruby and C program the polyglot code.

32:04

I'm still I'm still like wowing by

32:06

myself. I just like sit in the corner

32:08

and just wow.

32:10

I don't even I don't even know what that

32:11

means. I hope you enjoyed this. There's

32:13

tons of submissions you should go

32:15

through them. There's so many incredible

32:17

ones and there was just too many to even

32:19

actually go through but I just figured

32:21

I'd pull out some that I found

32:23

particularly

32:24

neat. And for those if you're if somehow

32:27

you were one of the people that have

32:29

built this and I put you in the D

32:30

category just remember you're more

32:32

talented than I will ever be so your D

32:35

is still my like S triple plus, okay?

32:38

The name

32:40

is the Primagen.

Interactive Summary

The video features a tier-list review of several entries from the International Obfuscated C Code Contest (IOCCC). The host examines various programs, ranging from a Doctor Who intro recreation and a moon cycle calculator to complex simulations like a 3D top simulator, a terminal-based Game Boy emulator, and a polyglot program capable of running in C, Ruby, and Perl. The host evaluates these entries based on a combination of technical achievement, aesthetic ASCII art, and overall "wow factor," ultimately assigning them to tiers ranging from D to S+.

Suggested questions

3 ready-made prompts