Core Design Principles - moneymayur/Misc GitHub Wiki
https://www.youtube.com/watch?v=llGgO74uXMI
Why code should be simple?
-
keeps you focused
-
solves only real problem we know about
-
fails less
-
easier to understand
Inherent & Accidental Complexity
Simple is not necessarily familiar
Good design -> Hide inherent complexity and eliminates accidental complexity
YAGNI Principle
When should I implement something
-> How much do you know?
-> Cost of implementing
Now Later
$n > $L - postpone
$n == $L - postpone
$n < $l
how probable ? high do it now
low postpone
Cohesive Code -> Do one thing and just one thing