|
|
|
|
|
by pklausler
3284 days ago
|
|
How do you identify the "holes" when you reach them? How do you even know whether you've reached one? "Aha! This is clearly a situation in which a monad would be the best approach. Time to go learn about monads!" Just doesn't seem like a reasonable method to me. Some things you just to to learn well before you can even recognize when you need to remember them later. |
|
As for your monads example, getting into functional programming via things like CLisp, Erlang, Haskell, and the like will expose you to lambda calc pretty darn quick. And learning how monads work is near the beginning of that path.
And just being inquisitive leads to a whole lot of areas that give indications on what to learn. For example, doing computer vision enforces you to learn how linear algebra works. Machine learning teaches a great deal of how statistics works. Finite State Machines have their own really interesting niches to work with. Working a crummy operator job teaches how to do automation (on the sly!).
It really depends on how you approach learning. If you're just slowly grinding away because you have to, going through a 4 year BS degree is probably better.