I was personally fascinated by the materials in these websites. Every time I look at the work has been done on these sites I get a small tangling feeling in my head. To be honest I’m blown away by some of em.
Learning to program isn’t just about learning the syntax or how to just combine things together. As Zi Chong Kao says : “Learning to program is learning a mental model”
I’ve gathered some of my favorite resources to learn the needed engineering part (like syntax, etc) together with mentality model of programming for the convenience of myself and others who want to deepen their knowledge on programming and have the mentality model of a programmer.
I’m going to constantly add to this list as I’m going on this endless journey. Now I admit beforehand not all of these resources are going to be based on mentality or art of programming but more on engineering aspects. I promise; these are going to be the best resources for deepening your knowledge of programming.
Select Star SQL This is an interactive book which aims to be the best place on the internet for learning SQL. It is free of charge, free of ads and doesn’t require registration or downloads. You will learn SQL working on a dataset which documents Texas death row inmates executed from 1976 when the Supreme Court reinstated the death penalty, to the present. As the writer quotes: “On one level, the data is simply a part of a mundane programming book. On another, each row represents immense suffering, lives lost, and in some cases amazing redemption and acceptance.”
Reactive Manifesto Systems built as Reactive Systems are more flexible, loosely-coupled and scalable. This makes them easier to develop and amenable to change. They are significantly more tolerant of failure and when failure does occur they meet it with elegance rather than disaster. Reactive Systems are highly responsive, giving users effective interactive feedback. Check it out.