Hacker News new | past | comments | ask | show | jobs | submit login

The one negative that is 100% real, and is slowing language adoption, is the problems with its community. Everything else is pretty easy to fix IMO.

There are a variety of 'factions' in the Scala community, with very different agendas. They disagree about which parts of the language are useful, and which ones to outright cut out. Research language focus, vs practical use in the enterprise. From easy to learn to (here, to learn Scala, first learn category theory and Haskell). From wanting a large language with batteries included, to wanting a really tiny standard library. And many in those groups not only hate each other's guts, but will very happily claim that whatever other groups are doing is not worth using under any circumstances.

With a situation like that, it's very easy to find criticism about every single piece of the language, and every single company that has supported Scala in any way. Twitter Scala, Scalaz scala and Typesafe Scala are all different: I have never seen this level of division outside of the olden days of LISP. So of course everyone complains about it becoming too big: If you cut some features of the language, entire factions disappear. The complaints are purely political.

So it's very easy to get ideas of doom and gloom from Scala, when it's being used in production in a lot of places, to solve very real problems. Akka, Scalding, Kafka and Spark power a lot of things, but the infighting has to end, and that will take a lot of attitude changes everywhere.




I think this is even overblown. Verizon makes heavy use of Scalaz, but not all projects are done in 'scalaz' style. This works out OK. There isn't always time to onboard new folks to a fully functional style (which is the overall company culture/preference), 'typesafe scala' is certainly very pleasant to work with.

That's one of the strengths of the language. You can be productive from day one writing 'java++' style scala, and slowly move to the functional side at the speed and level of 'purity' you desire.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: