Pete's Log: Human Shader

Entry #2349, (Random Crap)
(posted when I was 44 years old.)

I saw the Human Shader posted to Hacker News a day or two ago and knew I wanted to be part of it. It claims to be "the first mathematical painting (shader) ever made with human brain power alone" and while I haven't independently verified that claim, it intrigued me enough to want to participate.

The problem was that by the time I discovered it, 80% of pixels had already been calculated and the remaining pixels had all been "claimed" meaning someone was theoretically supposed to be calculating them. But if you didn't submit an answer within 8 hours, your claim to the pixel expired, so I kept checking back and seeing promises that pixels would free up soon:

A screenshot of an error message that says "All pixels are claimed, but 9 claims will expire over the next 10 minutes, so try again then!!"

I don't think I was the only one checking, though, since despite frequent reloads, it took more than a day to finally get a pixel. I even saw at least one comment on Hacker News that somebody had written a script to automatically keep loading the page to get pixel claims. More on that later.

But I finally got my pixel (x = 23, y = 20) and spent about 10 minutes doing the math, which I enjoyed.

Handwritten calculation notes for the RGB value of pixel 23, 20 at humanshader.com

I had to submit the picture above with my RGB values for the pixel to prove I had calculated it by hand with no calculator or computer support. A few minutes after submission, my calculation was accepted:

An image of the calculated pixel art. A blue sky above yellow ground with a grey ball set on the ground and casting a shadow. Some of the pixels are the wrong color. A grey pixel is highlighted and shows a tooltip that says “(23, 20) -> (110, 107, 101) = [gray] by Pete Rijks”

Acceptance does not mean I got the correct result. It just means someone reviewed my submitted picture and deemed the process sufficiently manual to qualify. That being said, I think my pixel looks right in context.

There are plenty of pixels that don't. It's fascinating to try to think through what might have gone wrong. Some pixels look just a "little off" and I suspect those are just rounding or other minor errors. Others look like someone took the wrong branch in the algorithm - pixels in the ground that are sky-colored or pixels in the sphere that are ground-colored. Other pixels just look way off.

A lot of those appear to be variations on fuchsia. Most of the calculation is focused on calculating R and B. G in the final step is just calculated as (7*R + 3*B)/10. Fuchsia notably lives in the space of high R and B and low G. Looking at many (but not all) of the fuchsia pixels in context, they appear to have correct R and B values, but something must have gone wrong in that final calculation of G.

Normally I'd also suspect a handful of pixels were submitted with random values, but the requirement for a photo of ones calculation should mostly rule those out. The site doesn't show us the calculations for any given pixel, so all I can do is speculate.

But what's been on my mind is the potential non-manualness of how some people got their pixel claims. That is to say, I think there must have been multiple people using scripts or other automated means to try to lay claim to a pixel. The site didn't rate limit or require any proof of humanity when requesting a claim.

So I've been pondering what a similar project might look like that also ensures the assignment of work is done manually. Captcha-like mechanisms would be an obvious answer. But the thought of sending calculation assignments via snail mail is strangely appealing to me. I might ponder it some more.