

Good, makes sense, as Scala is ‘made in Europe’ (mainly swiss and polish teams), and makes very robust software. Only it’s under-hyped. Here you can try my interactive climate-system web-model written in latest Scala, which compiles three ways - to the web-app you see, to native code for fast calculations, and to a jvm desktop app (with 25 years history, originally java).






This article feels to me really out of date. Scala3 was launched nearly five years ago, The tooling and lib-support was indeed dodgy back then but works very smoothly now. Scala3 also broke Scala2 macros, and some people whose business-model was selling support for clever libraries built on those macros made a lot of fuss (bad publicity). Meanwhile Scala3 has new more robust macros which work fine.
I develop in scala an interactive climate-scenario model web-app . It’s running the model in your browser (500 years x 250 countries x many gases, sectors, feedbacks etc. - so it’s complex)… The scala code compiles to js (or wasm) -which is what runs this web app - but the same code also compiles with scala-native to run fast batch- calculations or tests. It also compiles to the jvm app like my older java code, but I rarely use this now.
Scala3 code looks more like python than java - minimal brackets, and much nicer to read and higher level than rust.
As for tools I just use Zed editor with Metals for LS, Mill for build, and other libs from the lihaoyi ecosystem, no web ‘frameworks’. Scala is both robust and flexible. In general - if the code compiles, typically it runs correctly first time, if not the very-intelligent compiler identifies precisely what to fix where (very different from so-called ‘AI’). So instead of reams of junk ‘tests’, it’s usually just enough to check whether my climate system plots look and behave as expected - higher level thinking.
As for Kotlin it was effectively a russian-led (at the time) fork of Scala, staying closer to Java - so less flexible, but they did much more systematic marketing - and I suspect some of that deliberately pushed blog posts knocking Scala.
What Scala lacks is promotion, so those following fashions of this hype-driven world won’t find it.
For those who use it, it’s a great language, to do complex stuff that scales robustly.