|
|
|
|
|
by TeMPOraL
3687 days ago
|
|
I agree. Though there are those magical universities out there (and who knows, maybe there are magical bootcamps too) that teach abstract thinking. My university unfortunately does not belong to them. In terms of programming, it's all rote-learning of the basics for the exams and shit ton of exercises supporting that rote learning. I can pin-point some places where I did learn various aspects of abstract thinking. I learned it by reading. Books like "Gödel, Escher, Bach", books like "Structure and Interpretation of Computer Programs", or the Sequences by HN's 'Eliezer. I learned it by thinking about what I read, and also by starting hobby projects and thinking hard when doing them. The universities, and maybe even bootcamps, may help a bit - but there's no learning of abstract thinking unless you yourself care. |
|
As an example of its utility, I really like its description of formal systems which are a somewhat simplified version of context free grammars. There are many other concepts described in that book that give similar but more intuitive explanations of CS concepts that helped me understand them as part of "the bigger picture."
CODE: The Hidden Language of Computer Hardware and Software, which is mentioned on here a lot, was helpful for similar reasons.