DEV Community

Discussion on: My search for supremacy

Collapse
 
kspeakman profile image
Kasey Speakman

I've found that nearly all languages bring something to the table that grows me as a developer. Even PHP (also my first professional experience), which is universal and easy to get started.

A side note. JavaScript has a very limited picture of Functional Programming. The main thing it does have is functions as first-class citizens, which goes a long way. But it is worth checking out functional-first languages to gain even more problem-solving methods.

Collapse
 
stefandorresteijn profile image
Stefan Dorresteijn

Two strong points. Every language I learned has taught me something, even the languages I don't use anymore (read: PHP & C#). I also think functional programming can teach you new problem solving methods, I'm just not convinced of its strength in large projects.

Collapse
 
kspeakman profile image
Kasey Speakman • Edited

Hmm, that's interesting. Here are some examples of that (functional languages in the large) if you haven't seen it.

  • Elixir on the Erlang runtime
  • F# on the .NET runtime
  • Scala on the JVM

Now if you were talking about JavaScript for large projects, I would agree with you, but I would not characterize JS as a Functional Programming language despite having some elements of one. Also it is dynamic, which is often looked on as harder to manage for large projects. Maybe for "microservice" based projects it is not hard to use a dynamic language like Clojure, since the responsibility of each piece is small.

Thread Thread
 
stefandorresteijn profile image
Stefan Dorresteijn

I'm actually learning Elixir right now in an attempt to prove myself wrong when it comes to functional languages. It's been a blast so far.

Maybe JavaScript itself isn't a Functional Programming language per se but the majority of JS developers I've worked with - and speak to - use it as such. As far as dynamic languages goes, I agree that they're harder to manage on large projects.

I think it comes down to the fact that I like very strict rules/standards in software development, which JS (especially with Mongo) doesn't have. RoR is famous for having developers abide by the Rails way which feels like the right way to guarantee quality in a language/framework.