Why is learning functional programming so damned hard? (2019)
It's not hard at all. It's routinely taught to beginners.<p>However, it's not a silver bullet. I found that basic software engineering principles are way more important than the language. I've seen extremely messy OCaml code and super clean C code. What is important is how the code is organized at high level. Whether you use a for loop or a fold, an error monad or an exception mechanism matters less.<p>I'm also wary of functional programming gurus that tend to over-abstract things and use all the language latest features, making code very hard to read.<p>Also, when developing in a niche language, you tend to miss important tools and need to rely on unstable third-party libraries.<p>I used to be quite enthusiastic about FP, but I think I'd stick with more mainstream languages unless there's a good reason not to.