I think you might have misunderstood what I was trying to say here, which was that Typescript’s success in the JS world does not say anything about Scala’s chance to beat Kotlin as a better Java, rendering it an irrrelevant fact.
I don’t think I misinterpreted you, based on what you say here it seems like I understood you exactly the way you intended. My argument is that people in key roles don’t care about the choice of language safe for personal success or failure stories and factors external to the language’s nature such as availability of talent or regulatory concerns. If anything, introducing a new language is a slight risk that has to be justified. Java not able to make lambdas working with checked exceptions is shambolic but unfortunately not a justification in business’ eyes. What is though is devs preferring a different language because of things like this. And this is what my argument stands on:
Convince the devs, and they will convince the otherwise understandably indifferent decision makers. Don’t convince the devs and decision makers will have one more reason to not move from the mainstream coming from these devs preferences.
The students argument falls nicely into this line of thinking. But since it’s brought up again, it is a nice opportunity to emphasise how much imperative code wrapped in OOP IS software development for a graduate. The equivalence can hardly be overstated wrt most graduates.
It’s @sjrd 's statement, I don’t feel the need to defend it, he might if he’s around.
I don’t think targeting Java devs work as well as it did in the mid-2000’s, the landscape is much more fragmented than it used to be (and also Kotlin is better at that, but we appear to agree on that so I’ll not elaborate). If anything, catering for Java devs might alienate Python ones and vice versa (just examples) while you also can’t cater for everyone. Doing so also imposes otherwise unwanted limitations on the language. That’s why I think Scala should be its own thing instead and be convincing as an absolute rather than in relation to any other language.
Sure familiarity arising from similarity might suffer somewhat and it’s an important drawback. It’s more evenly distributed between devs using different stacks though and that counterbalances it quite a bit I think. That’s also why I’m suggesting other sources of familiarity, I actually believe quite a bit in teaching it to undergrads (big corps are paying $$$ to get their tech taught for a reason, AFAIK). The other way to gain popularity is… to utilize the gains in language design coming from e.g. moving away from the mindset of being a better XXX and make Scala good enough so that it is an appealing alternative.
For context: Scala is never going to be mainstream, and that’s OK. It just needs to be popular enough. If 10% of companies would be using it I’d be happy. All I’m saying is in the context of that. If you want a language to take over another mainstream one, you need Typescript’s approach. But that’s very far from Scala’s way of evolving as is, that would be something completely different.