I hate crawlers that donโt advertise theyโre crawlers. โn badly written. They donโt respect the canonical URLs so they keep getting themselves into a loop instead of actually crawling the site properly. They make the logs really hard to read. Canโt block them theyโre distributed.
Any conversation
I find myself building bespoke tooling for my own and workflows these days, not only because of the obvious reason of software being so much cheaper to build, but also because there are SO MANY options for solving any given problem that it feels impossible to evaluate all of them.
If it's not a crucial piece of tech for a work problem then it often feels like paving my own way is both cheaper mentally (kind of amazing that's true these days) and probably a better fit.
Sunk cost fallacy is no longer applicable in the age of . Now you can do broad changes without second thought, u can always revert back, without incurring the cost of doing so, since itโs all done so quickly and effortlessly.
๐
let N=6,D0=[0,1,0,-1],D1=[1,0,-1,0],s=[],g={},d=x=y=xa=xb=ya=yb=0;
for(let n=0;n<N;n++){s=s.concat([1]).concat(s.map(x=>!x).reverse())}
for(let i=0;i<s.length;i++) {
x<xa && (xa=x);y<ya && (ya=y);x>xb && (xb=x);y>yb && (yb=y);
let t=s[i]?1:-1,e=(d+t+4)%4;
g[x]||(g[x]={});
g[x][y]=g[x][y]?"โผ":"โโโโ"[(t*(D0[d]+D0[e])>0?0:2)+(t*(D1[d]+D1[e])>0?0:1)];
x+=D0[e];y+=D1[e];d=e;
}
for(j=yb;j>=ya;j--) {
let u=""; for(i=xa;i<=xb;i++){u+=(g[i][j]||"ยท")} console.log(u);
}ยทโโโโยทยทยทยทยทยทยท
โโโโผโยทยทยทยทโโยท
โยทยทโโโโยทยทยทโโ
ยทยทยทโโผโผโยทยทยทโโ
ยทยทยทโโผโผโโโโโผโ
ยทยทยทโโผโโโผโผโโโ
ยทยทยทโโผโยทโโผโยทยท
ยทยทยทยทโโยทยทโโยทยทI truly love the experience of using apps with rich, deeply interactive, beautifully animated, gorgeous user interfaces.
Then I see a beautiful text-based interface and something about it feels so natural, so inevitable, so perfectly clear, and I'm instantly captivated by its simplicity and clarity.
Hypertext is fascinating.
