Show HN: My GitHub Readme Is Interactive
github.com
github.com
As I was clicking on next to go to next profile, I came across a profile that didn't have the widget, so I wasn't able to move forward! Perhaps you can add logic to move only to those profiles which have widget showing!
Thank you very much for building this, gives a community like feel!
That's the best thing I've read today. I've often heard the monkeys-on-typewriters imagery, but never related it to an idea of a "total library" which contains everything that can ever be written, probably even itself. I suppose the digits of Pi may be considered such a "library".
"Strictly speaking, one immortal monkey would suffice."
Here is the essay "Total Library" by Borges:
https://www.gwern.net/docs/borges/1939-borges-thetotallibrar... (PDF)
It mentions "abnormal transfinite numbers (whose parts are no smaller than the whole)". This seems to be a reference to Russell's Paradox:
https://en.wikipedia.org/wiki/Russell's_paradox
> Let us call a set "normal" if it is not a member of itself, and "abnormal" if it is a member of itself.
> Now we consider the set of all normal sets, R, and try to determine whether R is normal or abnormal. If R were normal, it would be contained in the set of all normal sets (itself), and therefore be abnormal; on the other hand if R were abnormal, it would not be contained in the set of all normal sets (itself), and therefore be normal.
> This leads to the conclusion that R is neither normal nor abnormal: Russell's paradox.
That proves your point, that it's a mathematical impossibility.
Borges calls it "the vast, contradictory Library", so clearly he was aware of this fact.
His Book of Sand would, however, appear to be vulnerable to diagonalization.
open dev tools –> network –> disable cache
Without caching it is indeed interactive.
Did not notice being dead myself before reading your comment, so I assume someone vouched for me.
It's frozen in time and can never be updated as fast as this (https://kbd.jse.li/screen.gif), afaict, without making commits that repeatedly update the readme image url to bust cache.
So how is it working for people ITT?
https://github.com/veggiedefender/typing/blob/master/handler...
edit: renders PNG instead of GIF (no more fancy blinking animation) to lighten the load a little. This thing is running on a $5 digitalocean droplet and performing admirably!
I wonder what the README will say once the firehose of Hacker News slows down.
You have my respect!
Seems like a better implementation for this would be an image map, although I'm not sure how well those are supported in modern browsers, or if you could implement them in a github readme.
That allowed me to send 200 backspaces, then fill the page with "i like turtles" or just the letter "o".
That said, there's a backup rate limiter working for you. Github.
Github has blocked my IP because of my shenanigans, which I suppose is fair. I'd have created an issue there if not for that.
I used to use variations of that "interactive" signature theme. Random redirects that showed different anime images. IP addresses. (Which was later a service that someone built and provided to everyone.)
I remember using this on Warp Pipe, the GameCube online tunnelling software forums.
https://web.archive.org/web/20041231055055/http://www.warppi...
https://web.archive.org/web/20060204011647/http://forums.war...
Remember these things?
I then made a Nintendo DS match making service for friend codes and advertised it on Mario Kart DS by setting it as my username (I chose the domain "DSmeet.com" to be juuust short enough to fit), then raced backwards the entire game so people would see me. (And it worked!)
https://web.archive.org/web/20060208013613/http://dsmeet.com...
https://web.archive.org/web/20060216171807/http://dsmeet.com...
I was so happy with myself because I wrote the forum software by hand. (Of course I had to do everything hard-mode back then...)
Here are some examples of the "signatures" I'm talking about, if you've never seen one before:
https://web.archive.org/web/20060418010950/http://dsmeet.com...
https://web.archive.org/web/20060429153550/http://dsmeet.com...
Those were some fun times...
Really neat interactive project. You sent me on a trip down memory lane. :)
Any ideas HN?
Overall: very clever
I tried to type a sentence by scripting the api calls in the console. But even after requesting all the characters too many people interfere to create a good sentence.
uses github actions and octokit to map issue reactions to Readme output - many people dont know you can set github actions on a cronjob
Oops. Sorry Github.
Coulden't get my full message out, but got a few "japh"s there :)
My browser did however cache the latest image (which is why I thought the system was not working for a second), and I'm not sure how to get around that.
[0] https://docs.github.com/en/github/authenticating-to-github/a...
EDIT: I see. The no-cache causes the Camo service to refetch the image every time it is requested, but it still applies a 4 hour cache time to the response to the browser so it is anyway cached on the client side.
[0] https://docs.github.com/en/github/authenticating-to-github/a...
[1] https://github.com/veggiedefender/typing/blob/0ed7c9c17970d6...
Go to https://kbd.jse.li/screen.gif and refresh for a bit to see what people are typing!
Basically if you include an svg as an image (via <img>, or via css, etc) it can only be an animated image but you can't do anything interactive.
There's ways you can obscure things, such as using an object tag, leaving it up to the browser to decide via a mime type header which you specify then as svg, buuut that won't work here.
Things are fairly locked down these days. Maybe there's something I'm not thinking of using a similar pattern (confuse the browser, tell it the answer and then have it generate the restricted type) ... Maybe something dealing with lang or codepages... There's still plenty of shenanigans there.
Back in the day I used to upload full-blown servers I wrote in postscript as my "profile image" and then they were blindly executed when trying to "convert" the file - imagemagick locked that down about 10 years ago though. Even back then usually some max execution timer would kill it after a minute or so. But it was fun.
Crappydesign on reddit will have a laugh