totetsu
...joined 5 years ago, and has 3431 karma
submissions / comments / favourites
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.