4 ms·
I think Scala had a big momentum 10 to 5 years ago. Many people were choosing Scala for new apps and many were rewriting existing apps in Scala. But something h
by DeathArrow 2y ago
I think Scala had a big momentum 10 to 5 years ago. Many people were choosing Scala for new apps and many were rewriting existing apps in Scala. But something happened, Scala lost its momentum and nobody is interested in Scala anymore.
- leetrout 2y agoThere are better alternatives for almost every domain if you don’t need JVM / Java interop. Julia for mathy stuff. Python with pandas / polars. Rust with polars / actor frameworks. Go for simple systems tooling / api dev. Zig and Rust for systems programming. Elixir / gleam for functional webdev. JS / TS for everything.
- sideeffffect 2y agoAll these languages may work very well for many people for the described use cases. But one of Scala's strength is versatility. You could use it quite well for all the listed use cases too. With just one language. (Maybe with the exception of system programming -- Scala Native still requires a tracing GC.) Also, it's worth noting that Scala is more popular/mainstream/supported/has bigger community than Julia, Zig and Elixir / gleam. And if Red Monk is to be trusted, even more than Rust https://redmonk.com/sogrady/2024/09/12/language-rankings-6-24/ https://redmonk.com/sogrady/2024/09/12/language-rankings-6-2... That comes with many benefits. > if you don’t need JVM / Java interop OpenJDK is also very good, even if it's not a strict requirement to use it. Battle-tested, easily debugable, etc... AOT compilation is possible via GaalVM's native-image. Or you can try Scala.js or Scala Native (which don't have anything to do with JVM).
- DeathArrow 2y ago>All these languages may work very well for many people for the described use cases. But one of Scala's strength is versatility. You could use it quite well for all the listed use cases too. I think that the jack of all trades space is already occupied by C#.
- gf000 2y agoIt's not a field that could be occupied by a single language.
- sideeffffect 2y ago> But something happened Oracle started heavily investing into Java. And Google picked Kotlin as the language for Android. But Scala hasn't stagnated since. And as the blog post suggest, plans on moving further still. For example, https://docs.scala-lang.org/scala3/reference/experimental/cc.html https://docs.scala-lang.org/scala3/reference/experimental/cc... may be one of the most impactful developments in the language's history.
- pas 2y agoThere was a brief moment when Scala seemed like the new Holy Grail. Gawker (the big 2004-2016 online tabloid/blog media group, before FB and Instagram/TikTok fueled by recommendation systems ate everything) transitioned from PHP to Scala! Scala meetups were full with newcomers! Hadoop and Spark and Big Data[TM] was the thing! Distributed systems, were all the rage! Everyone and their dog was waiting patiently for the next HighScalability post about something even more crazier and bigger than before. People were writing homage posts to The Log post. Kafka was the thing you had to have in your system for it to be worth the napkin it was sketched on! Netflix and Twitter were talking about microservices and releasing all the amazing libraries to handle the load! (Circuit breakers, service discovery, etc.) And then. ... AWS and k8s and Go (and later Rust) and just an ungodly amount of hardware and deep learning progress happened. People slowly realized that the JVM and Hadoop is a mess. (Ultra-low latency GCs like Shenandoah arrived too late.) That kind of Big Data is actually just irrelevant unfiltered shit (and implicit feedback is all you need for recommendation systems) and slowly but surely people started to move to S3 from Hadoop (and in general into the cloud). And scientists - bless their little non-programmer hearts - did their best and moved from R ... to Python. (And there was already a ton of bindings to low-level linear algebra and tensor libs in Python, and calling into C/C++ was standard from Python - Cython is great - even if technically it's exactly as easy from Scala/JVM. ... Fundamentally the lack of corporate sponsorship and the main contributors' lack of DX obsession led to the natural consequence of the industry leaving that Scala behind. (Even though both Rust and Scala are research-heavy just compare how much attention Rust as a project spent on improving DX, including backward compatibility, trying very very hard to avoid py2-3 and scala2.11-2.12-2.13 upgrade speed bumps, and so on.)