Bad Apple but it's 6,500 regexes that I search for in Vim

eieio.games

598 points by vortex_ape 6 months ago


adityaathalye - 6 months ago

Hah, trust nolen to 1,000x something :))) I have used similar tactics in the past, but separately and definitely not in one day! For the interested:

- Bad Matrix (tput blocks to the terminal): https://www.evalapply.org/posts/bad-matrix/

- Animating Text Art in Javascript (print text into fixed grid, flipbook-style): https://www.evalapply.org/posts/animate-text-art-javascript/...

- oxo (format and print tic-tac-toe board to terminal, so I can regex-match for win/loss/draw results): https://github.com/adityaathalye/oxo/blob/7681e75edaeec5aa1f...

But, I mean, that Bad Apple takes the cake!

(edit: add missing link)

jordigh - 6 months ago

The tech demo that really made me fall in love with Bad Apple was getting it to run on the NES.

https://somethingnerdy.com/downloads/

Here it is running from my Everdrive.

https://inversethought.com/jordi/video/badapple.mp4

Yes, with full audio. It's about one gigabyte of data. On a system where the typical game size is no more than a couple hundred kilobytes, and your CPU only has three 8-bit registers for you to do any calculation with.

rav - 6 months ago

Regarding the Vim macro that ends by going to the next line to be "replayable": You can also use the following command to run the macro once per line:

        :%norm @q
PaulHoule - 6 months ago

These were on sale last month

https://us.govee.com/products/govee-curtain-lights

and my understanding is that you can upload an animated GIF to it... I just added making a "bad apple" GIF for it to my Kanban board though I don't know how much memory the device has and how well I can get it to work.

(Sometimes that part where Remmy Scarlet spreads her wings still makes chills go down my spine)

krick - 6 months ago

I never get tired of Bad Apple. The best thing on the internet. And almost every time I get somewhat jealous I didn't come up with that idea myself.

Also, I really like how footnotes are implemented in this blog. I guess I'm gonna steal it.

sltkr - 6 months ago

For the rectangle minimization problem: your problem seems to differ from the one discussed on StackOverflow in that the SO thread discusses partitioning into non-overlapping rectangles, while your Vim project allows overlap.

I wouldn't be surprised if your problem turns out to be much easier to solve optimally.

3eb7988a1663 - 6 months ago

The parallel candidate solution generator is such a good idea, but it usually takes me a long time to realize I do not need to make the uber algorithm. Just one-more-tweak, and I know that I can make this solution work in all cases!

codeguro - 6 months ago

This is pretty cool! I like the creativity. The games this is based on are pretty good too. Danmaku are hypnotic

29athrowaway - 6 months ago

The people running Doom or Bad Apple in different unexpected ways are such champs.

There are some really interesting ones, like running Doom on a pregnancy test.

manosyja - 6 months ago

I remember watching the Soccer World Cup 2006 at work. I logged in my home server via ssh and could watch it in the terminal. Not enough bandwidth for something else.

lupire - 6 months ago

As the author admits, it's Vim but it's not regexes. It's "searching" for screen coordinates.

It's drawing in Vim, but not pattern matching.

panzi - 6 months ago

This is amazing! Also made me write my own version for the terminal using legacy symbols for computing:

https://youtu.be/lDLFhQTFcTk

Details: https://github.com/panzi/bad-apple-terminal

perpetualchange - 6 months ago

Roughly how long did that take?

sharyphil - 6 months ago

Awesome. One can never have enough Bad Apples!

GZGavinZhao - 6 months ago

... this is why we love bad apple!

laurentpm - 6 months ago

[dead]

summeroflove20 - 6 months ago

[dead]

wistle - 6 months ago

[flagged]