środa, 18 maja 2016

An illustrated analogy to carpentry

Code is like a building material. Imagine the code you work with is wood.

Just like wood and wooden appliances, it can have different structure.



Just like wood, it is exposed to external forces and to the pass of time.


Just like wood, it requires different tools to work with it and turn it into something usable and beautiful. Humans devoted many past years to the invention and enhancement of these tools. It would be foolish not to use them.




In both coding and carpentry, we need to learn to use each tool. Otherwise we are likely to cause damage.



Depending on the craftsmanship applied to woodworking, it is either harder or easier to maintain and repair a wooden appliance months and years after somebody started using it. Same is with code.



Different types of wood have been recognized as particularly good for different uses. And our OS kernels aren't coded in Javascript.



The code that you are developing today - which piece of furniture is more like it?