|
|
|
|
|
by certeoun
1760 days ago
|
|
In school, I noticed that many people don't learn deeply.
They get good grades even with a shallow understanding of the material. They learn by heart and are not interested in why something works. (For example, what a Fourier transform essentially does. A Fourier transform is essentially projecting a target function to the sinusoidal bases. That is what the dot product implies.) I don't think this is necessarily related to intellect. I think it is somewhat related to laziness and lack of interest or curiosity. They use a bunch of formulas and code snippets and glue it together until it somehow works without understanding it. I am a big believer in learning deeply by focusing on the fundamentals.
Here's what I previously wrote about that very topic: > Instead of APIs, learn the fundamental algorithms that those APIs provide. Instead of OpenGL, learn rendering algorithms (raserization, Bresenham etc.). The same applies for other frameworks such as Vue.js. Learn how to write a virtual DOM yourself. Learn how JS operates under the hood. Learn how to implement a hash table (std::unordered_map) and a dynamic array (std::vector); understand why you cannot simply delete a bucket when using the open addressing scheme. Learn C and memory management, since many other programming languages are influenced by C. Implement the algorithms in C if you are proficient enough in it (gives you a better understanding). |
|