|
|
|
|
|
by mmaunder
413 days ago
|
|
> These more abstract skills—not basic arithmetic—are essential for understanding recursion, type inference, or algorithm design. No they're not. Academia has spent decades trying to formalize many aspects of programming and continues to be confused by the lack of correlation between comp sci grads and innovative programmers. Why is it that the drop-outs are succeeding so wildly? Recursion, for example, is learned by most of us real world achievers when we hit a brick wall in programming that other methods won't solve, and we have that aha moment of "this is why this exists". Not because we studied advanced math with symbolic abstraction, denotational semantics and type theory. The uncomfortable truth is that almost all of professional programming and innovative programming (creating useful stuff never before seen) never uses any of the advanced math skills that are prerequisites in every degree program. I think much of the sadism around teaching this is perpetuated by "I did it so you have to" and academic gatekeeping. When you get really really good at programming and hit the most productive zone in your life, it feels like language. That you have the ability to just say it. |
|
Knuth created LaTeX. Pandoc is written in Haskell, famous for being a completely useless academic language with no real purpose beyond torturing undergraduates (it says here.) Efficient search and data compression algorithms aren't hacked together in late night hobby coding sessions.
Cryptography, digital signal processing for images, sound, and video, and ML core algorithms are all mathematical inventions. The digital world literally runs on them.
"Real world achievers" might want to try being a little less parochial and a little more educated about the originators of the concepts and environments they take for granted.
Vibe coding "Social AI chatbot network with ads = $$profit$$" or "Cat videos as a service" is only possible because the entire field stands on the shoulders of mathematical giants.