"Waste no more time arguing what a good man should be. Be one." - Marcus Aurelius
Any conversation
Reading Slow Productivity by Cal Newport, discovered via onboarding content in mymind mymind.com
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);
}ยทโโโโยทยทยทยทยทยทยท
โโโโผโยทยทยทยทโโยท
โยทยทโโโโยทยทยทโโ
ยทยทยทโโผโผโยทยทยทโโ
ยทยทยทโโผโผโโโโโผโ
ยทยทยทโโผโโโผโผโโโ
ยทยทยทโโผโยทโโผโยทยท
ยทยทยทยทโโยทยทโโยทยท
VirtualBox 7.2.20 telepรญtve, ami egy รผgynรถki sandbox vagy homokozรณ, mรกr csak egy .iso lemezkรฉpfรกjl hiรกnyzik, de abbรณl รกltalรกban mindig hiรกny van nรกlam, nem is รฉrtem, miรฉrt, amรบgy sejtem, csak ilyenekrลl nem szoktam beszรฉlni...
VirtualBox 7.2.20 installed, which is an agent sandbox, the only thing missing is an .iso image file, but I usually always lack that, I don't even understand why, I guess, I just don't usually talk about things like that...


