Skip to content

totetsu

4,249 karmajoined February 18, 2020On HN
        for (const u of document.querySelectorAll('.hnuser, #me')) {
            const p=4;
            const c=document.createElement('canvas');
            const x=c.getContext('2d');
                c.width=p*7, c.height=p*7;
                u.parentElement.prepend(c);
            for (let s=u.innerText, r=1, i=28+s.length; i--;) {
                // xorshift32
                r^=r<<13, r^=r>>>17, r^=r<<5;
                const X=i&3, Y=i>>2;
                if (i >= 28) {
                    // seed state
                    r+=s.charCodeAt(i-28);
                    x.fillStyle='#'+(r>>8&0xFFFFFF)
                    .toString(16).padStart(0, 6);
                } else {
                    // draw pixel
                    if (r>>>29 > X*X/3+Y/2)
                    x.fillRect(p*3+p*X, p*Y, p, p),
                    x.fillRect(p*3-p*X, p*Y, p, p);
                }
            }
        }
In an age of affordable spellcheck, there was something heraldic about his lack of it.

Recent submissions

All submissions and comments on Hacker News.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.