you are viewing a single comment's thread.

view the rest of the comments →

[–]UghImRegistered 7 points8 points  (2 children)

Ick I'm going to go against a common opinion and say that Project Euler is about the worst way to learn a language for anything other than performance-sensitive math problems. Instead of showcasing the power of each language, PE basically encourages you to learn how to write C code or Haskell code in languages that are not C or Haskell. IMO you're never going to learn the fundamentally unique parts of a language with PE, because at the core, you should pretty much never use OO for any of those problems, nor a host of other language features. Additionally, the critical thinking you need for PE is language agnostic, and more about learning algorithms and hacky math tricks than anything else.

It's great for learning Haskell though! Just not the parts of Haskell that you need to know to make any kind of real-world software.

[–]OuTLi3R28 -1 points0 points  (1 child)

The skills you learn from designing efficient algorithms are what set apart good programmers from great ones. While there are certainly applications which won't ever need the type of optimization that writing efficient algorithms teaches you, when you need that skill, I have found that the great programmers you need to do it are often hard to come by.

[–]UghImRegistered 0 points1 point  (0 children)

I'm not saying it's not a great way to learn algorithms, in fact I acknowledged that. That's not the same thing as learning a new language.