Hacker Blogs
Work in progress: 15,409 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #2151

C

Colin McMillen

Personal blog · mcmillen.devprogramming

Colin McMillen's personal blog at mcmillen.dev covers programming. Since 2021, 37 different Hacker News readers have linked it 39 times, most often “93% of paint splatters are valid Perl programs (2019)”. The last post was in 2023, but the archive is still widely read.

Visit the blog
39mentions?
37HN people?
2021–2026first – last linked?
Links on Hacker News per year · peak 11 in 2021

Most-linked posts?

  1. 93% of paint splatters are valid Perl programs (2019)
    19 people · 19 mentions · first linked 2021-07-23
  2. Programming Language Checklist (2011)
    11 people · 11 mentions · first linked 2021-10-28
  3. /sigbovik/2019.pdf
    4 people · 4 mentions · first linked 2021-10-14
  4. /blog/20210721-downvotes-considered-harmful.html
    2 people · 2 mentions · first linked 2021-07-29

What Hacker News says?

  1. Related: https://www.mcmillen.dev/sigbovik/

    Comment linking /sigbovik/

    on “Xmas.c (1988)”
  2. Submitted 93% of paint splatters are valid Perl programs (2019) as a story · 515 points

    HN discussion
  3. In Perl you have the dynamism, and the syntax. Evidently, 93% paint splatters, when OCRed, are valid Perl programs: https://www.mcmillen.dev/sigbovik/2019.pdf I doubt that a similar thing is true for Clojure. Here, the only problem is that you don't know what the symbols and some of the notations mean. You can look at the unfamiliar syntax and know what is a child of what. Most operators are words you can search for.

    Comment linking /sigbovik/2019.pdf

    on “Try Clojure”
  4. Submitted 93% of Paint Splatters Are Valid Perl Programs (2019) as a story · 431 points

    HN discussion
  5. update: actually we have perl, https://www.mcmillen.dev/sigbovik/

    Comment linking /sigbovik/

    on “Piet: Programming language in which programs look like abstract paintings (2002)”
  6. Submitted Programming Language Checklist (2011) as a story · 45 points

    HN discussion
  7. If you relax the "functionally" condition enough, it has been already shown that most paint splatters (including art pieces) are actually valid Perl [1]. [1] https://www.mcmillen.dev/sigbovik/

    Comment linking /sigbovik/

    on “Piet: Programming language in which programs look like abstract paintings (2002)”
  8. Submitted Goodbye Twitter, Hello Blog as a story · 4 points

    HN discussion
  9. > Edit: Also, the programs in the article appear to be mostly special characters? I assume you mean the 4 listed in the "Errata" section? The full list is here: https://www.mcmillen.dev/sigbovik/splatters.html

    Comment linking /sigbovik/splatters.html

    on “93% of Paint Splatters Are Valid Perl Programs (2019)”
  10. Submitted The Programming Language Checklist as a story · 3 points

    HN discussion
  11. As a Perl programmer and painter I must point out that the programs show in this article are not smeared, and not on a wall. Nor on a Wall. Some of them are not even paint: https://www.mcmillen.dev/sigbovik/splatters/646f93a2d62ad819...

    Comment linking /sigbovik/splatters/646f93a2d62ad81932f2971a0d50e03e.jpg

    on “93% of Paint Splatters Are Valid Perl Programs (2019)”
  12. Submitted Programming Language Checklist (2011) as a story · 2 points

    HN discussion
  13. > Can you create a random string in Python and have it executed by Python? Reminds me of "93% of Paint Splatters are Valid Perl Programs": https://www.mcmillen.dev/sigbovik/

    Comment linking /sigbovik/

    on “Low interest rates in advanced countries have pushed money into real estate”
  14. Submitted 93% of Paint Splatters Are Valid Perl Programs (2019) as a story · 1 points

    HN discussion
  15. An opposing opinion: https://www.mcmillen.dev/blog/20210721-downvotes-considered-... The TL;DR: "Any voting system where most posts mostly receive upvotes, but also allows downvotes, has a huge problem: No matter how you do the math, downvotes count more than upvotes do."

    Comment linking /blog/20210721-downvotes-considered-harmful.html

    on “Please Bring Back Our Downvotes: Society Desperately Needs It”
  16. Submitted Programming Language Checklist (2011) as a story · 1 points

    HN discussion
  17. I enjoyed the link to the language checklist https://www.mcmillen.dev/language_checklist.html

    Comment linking /language_checklist.html

    on “scrapscript.py”
  18. There's always this amazing paper: https://www.mcmillen.dev/sigbovik/2019.pdf

    Comment linking /sigbovik/2019.pdf

    on “Yet another way to invoke functions in JavaScript without parentheses”
  19. OCR works too https://www.mcmillen.dev/sigbovik/

    Comment linking /sigbovik/

    on “Yet another way to invoke functions in JavaScript without parentheses”
  20. Of all the non-esolangs (=exolangs?) APL+kith seem to be almost designorismic/estuarine (formerly, Riverian) beasts.. In your informed opinion, how would it make sense to be thrilled thinking about (not just a semi-dynamic APL (=S-DAPL?) as above but) designing a APL-kith for widespread adoption by BOTH (demoscenic)gamecoders & Analysts (the academic variety)??? Specifically, which of the sneering checklist items[0]…

    Comment linking /language_checklist.html

    on “Some programming language ideas”
  21. Yes. That was the whole point of the original comment you were misunderstanding. Because of the flexibility of Perl and heavy amount of symbol usage, you can in fact run most random combinations of strings and they’ll be valid Perl. Copying from the original comment: https://www.mcmillen.dev/sigbovik/

    Comment linking /sigbovik/

    on “Curious about the training data of OpenAI's new GPT-OSS models? I was too”
  22. No, asking an LLM to generate the inkblot is the same as asking the LLM to write a string and then obfuscating it in an inkblot. OCRing literal random inkblots will not produce valid C (or C# or python) code, but it will prodce valid Perl most of the time, because Perl is weird, and that is funny. It's not about obfuscating text in inkblot, it's about almost any string being a valid Perl program, which is not the ca…

    Comment linking /sigbovik/

    on “Curious about the training data of OpenAI's new GPT-OSS models? I was too”
  23. OP seems to have run a programming language detector on the generated texts, and made a graph of programming language frecuencies: https://pbs.twimg.com/media/Gx2kvNxXEAAkBO0.jpg?name=orig As a result, OP seems to think the model was trained on a lot of Perl: https://xcancel.com/jxmnop/status/1953899440315527273#m LOL! I think these results speak more to the flexibility of Perl than any actual insight on the trainin…

    Comment linking /sigbovik/

    on “Curious about the training data of OpenAI's new GPT-OSS models? I was too”
  24. It will be good to add "Programming Language Checklist" to the references: https://www.mcmillen.dev/language_checklist.html

    Comment linking /language_checklist.html

    on “What you learn by making a new programming language”
  25. The tooltips on the images and videos are excellent. Now I want a comparison between iOS’s text recognition and a pharmacist. And it made me think of how 93% of paint splatters are valid Perl programs ( https://www.mcmillen.dev/sigbovik/2019.pdf , PDF, 7MB).

    Comment linking /sigbovik/2019.pdf

    on “Protected Content, Delete by Date, Device Management and more”
  26. I should have said my ($x, $y, $z) = @$_[0]; but I was making a joke. If $_[0] is an array reference, @$_[0] becomes a list. The joke was a reference to most wrong Perl programs being valid for something. Hence the meme: "93% of Paint Splatters are Valid Perl Programs" https://www.mcmillen.dev/sigbovik/

    Comment linking /sigbovik/

    on “Programmers aren’t so humble anymore, maybe because nobody codes in Perl”
  27. Yeah it's kinda contradictory. It's part critique and part self reflection on an ideology that I have mixed feeling towards. In the same vein as the Programming Language Checklist for language designers. https://www.mcmillen.dev/language_checklist.html

    Comment linking /language_checklist.html

    on “Epistemic Learned Helplessness (2019)”
  28. See also: https://www.mcmillen.dev/language_checklist.html [ ] The name of your language makes it impossible to find on Google

    Comment linking /language_checklist.html

    on “The Io Language”
  29. https://www.mcmillen.dev/sigbovik/ : “93% of Paint Splatters are Valid Perl Programs”

    Comment linking /sigbovik/

    on “Most URLs are syntactically valid JavaScript code”
  30. This makes me wish there were a translation of https://www.mcmillen.dev/language_checklist.html for configuration/markup/document languages. :)

    Comment linking /language_checklist.html

    on “No YAML”

Search all of HN for mcmillen.dev

Linked by the same people?