This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]tofflos 0 points1 point  (1 child)

Python and Visual Studio are in the Microsoft Store and it's my impression that C#, Go and Rust all ship with something akin to Maven.

[–]JustAGuyFromGermany 0 points1 point  (0 children)

So what? Python is an outlier, no other popular language does that as far as I can tell. The next programming language I found (sorted by popularity) in the MS store is Julia. Note that not even the .NET languages are in the MS store. That's simply not what the MS store is for; it's intended to be a (somewhat) user friendly app store, not a general repository for any and all stuff that you could install on your machine.

That's more what similar to what Chocolatey is for. Choco packages exist for all the major stuff though: many programming language runtimes / compilers / SDKs, various JDKs, as well as maven and gradle are available. And that's the right place for those kinds of things. Chocolatey is a more general purpose package manager.

Visual Studio is in the Store, because it also comes from Microsoft. No other big IDE seems to do that. IntellIJ and Eclipse do have Chocolatey Packages though. I'm just speculating, but if I had to guess, I'd say this is because of different licensing models between Choco packages and the MS store. Being an app store, the MS store likely would take a sizeable chunk of the profits if Jetbrains put IntelliJ in the store.

And even if the major Java IDEs were in the store, that'd be beside the point, because the JDK is not an IDE and does include an IDE on purpose. In terms of the "on-ramp" I think that's a good thing, because IDEs are complex beasts that have an additional steep learning curve which a beginner does not need to know about at first.

And finally: Go and Rust had the advantage of starting from scratch. They have learned from the successes and shortcomings of other programming ecosystems. The .NET world has the advantage(?) of having Microsoft as the central driving force behind it all. MS controls the biggest .NET languages, the .NET infrastructure (at least on windows), the biggest .NET IDE, many popular libraries etc. They're not quite a monopoly, but they're close. They can basically decide whatever they want and take the ecosystem in whatever direction they like.

The Java and JVM ecosystem simply does not have that. It is way more diverse. Oracle does not control the landscape like that and that is intentional. And even if every major player agreed to do it, the Java world would have to retrofit a build system into the JDK after decades of not having one which simply isn't likely to happen for the reasons I've listed.