Iโm ambivert. When I spend time outdoors and with people I want to keep doing that, I become very extrovert. Canโt code in that mode. Itโs hard to switch back to introvert but when that happens time flies really quick. A month can pass and it feels like a week.
Any conversation
code quality is about coupling.
coupling is not a technical property of the code bytes.
code acquires its meaning in contact with the cultural environment, and coupling is about meaning.
two constants with no semantic relationship are nonetheless coupled in pragmatics if they refer to the same domain concept.
if your goal is to minimise the time integral of future work, you must understand your domain: it decides which lines will need changing.
to carve up a codebase is to carve up the world.
๐
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);
}ยทโโโโยทยทยทยทยทยทยท
โโโโผโยทยทยทยทโโยท
โยทยทโโโโยทยทยทโโ
ยทยทยทโโผโผโยทยทยทโโ
ยทยทยทโโผโผโโโโโผโ
ยทยทยทโโผโโโผโผโโโ
ยทยทยทโโผโยทโโผโยทยท
ยทยทยทยทโโยทยทโโยทยท


