As a self learner which courses, books, etc have rewired your mental model?
8 points| noob_eng | 2 years ago
Some of the resources are so good that they bend your mind completely in a good way and you find out new avenues of thought and learning. You fall in love with a subject and pursue further.
I have two favourite courses for programming:
1. How to Code 1 and 2 by Gregor Kiczales on edX. They are based on the book How to Design Programs
2. Brown University's Acclerated Intro to CS course by one of the authors of HtDP: CS19. You can find it here: https://learnaifromscratch.github.io/software.
I have two favorite math books that have helped me understand more math:
1. Introduction to Logic by Alfred Tarski
2. Vector Calculus by Hubbard and Hubbard
What are yours?
austin-cheney|2 years ago
The most important learning for me out of this is that people are predictable and how we commit is modeled by how perceptions of rewards are attained. It also inspired me to dive deeper into self learning about behavior and economics, because people do exceptionally irrational things to avoid perceived discomfort.
maCDzP|2 years ago
greggarious|2 years ago
https://inventwithpython.com/cracking/chapter5.html
Part of it was bad teaching -- same lessons over and over til you're exhausted doing ROT13, it's better to do one exercise on paper and have it be the Vigenère cipher or by the time you're covering something beyond the Ovaltine cipher the campers will be too tired to learn.
People focus too much on busywork in these classes, when modern analysis will be done using a computer. Maybe in a SCIF, but... there will be a computer involved.
A few scripts to easily brute force weird shit you find on other people's machines can be useful, or so I've heard -- also who calls it a "kaiser cipher"? Tell me that and I can tell you the answer to Life, The Universe, and Everything.
Leftium|2 years ago
- Grokking Simplicity[2] then shifted my thoughts on functional programming: it's not about avoiding mutation because mutation is bad. In fact mutation is usually the desired result, but care must be taken because mutation depends on when and how many times it's called.
Mutation is flipping bits in storage, setting pixels on a screen, sending emails: these effects are desired, but it is crucial to only have these effects happen when we want them to, in the order desired, and exactly the number of times we expect.
Compare to pure functions, which simply calculate a value: these can be called whenever, however many times we wish without any major negative consequences. They are much easier to reason about.
---
However, the two books that rewired my mental model the most were not technical. These books totally altered my overall mindset:
1. Conversations with God[3]. Best answers for biggest questions in life; answered better than any religion; actually resolves all the conflicts between different religions:
- What is the meaning of life?
- How did the universe begin?
- Why do bad things happen to good people?
- What happens after we die?
2. Direct response marketing. (I coined the term "precision marketing" to differentiate from the "brute force marketing" usually conjured when people hear the word "marketing.") Lots of different resources; Start from Zero[4] is a good one. Expert Secrets[5] is a well-written collection of direct response marketing's greatest hits.
[1]: https://hw.leftium.com/#/item/18043058
[2]: https://www.manning.com/books/grokking-simplicity
[3]: https://www.cwg.org/
[4]: https://startfromzero.com/
[5]: https://expertsecrets.com/
curious16|2 years ago
Btw, I also liked Hubbard and Hubbard.
Another book I liked was Computer Systems: A Programmer's Perspective at https://csapp.cs.cmu.edu/