I (and countless others I know) simply refuse to learn/use a language that locks you in an ecosystem. I haven’t taken Kotlin, C# or any of the Apple proprietary tech jobs and never will.
Kotlin may have been relatively IDE-locked without a proper LSP being available, but C# is cross-platform in terms of both editors and runtimes (assuming you're not targeting Windows' .NET stack).
At this point I wouldn't consider it any more or less proprietary than any other Microsoft language, like TypeScript for instance.
C# is partially cross-platform. Might be fine for web applications, but e.g. GUI frameworks aren't as cross in practice as they make it out to be, which I've wasted tens of hours figuring out before going back to Java and Racket.
The nice language on the CLR, F#, also doesn't seem to be very well liked by MICROS~1 anymore.
Every language has its ecosystem. I don't know why being locked into the Java or C# ecosystem is any worse than, say Python or Go. And I say that as someone who has used all of these languages.
Moreover, every programming language has its own community.
With conventions, rules, style guides, code of conduct, roadmaps and mentality.
With some "weird" takes and with some "pragmatic insights", with their own "rock stars" and "graybeards" to respect and follow.
Each with its own unique landscape of hills to choose to die on.
"Nothing's wrong with XML", "Give me JSON or death", "Fuck that, YAML all the way for me", ".yaml is dead, long live .toml!", "pfff, you mortals have no idea but EDN is way better..." — and that's just some data-representation disagreements.
Once you get to actually processing the data, it gets even worse: "object-orientation is bullcrap", "oh, no, this FP shit is so hard to read for me, what's wrong with good-old 'for' loops?", "if you're not using static types, you're a bad, bad person...", "yes, these 35 libraries to run our 3-liner script are really necessary", etc.
Every single programming language has its own pain points and joyful bits.
That's why programming is both an amazingly gratifying and a heinously crappy trade.
Do you want to age into an old, happy programmer? Avoid emotional attachment to any single programming language. Borrow good ideas from different sources, but don’t settle on a single PL, paradigm, or convention. Sure, you’ll probably end up hating each of them for different reasons, but you may find some that you don’t loathe so badly.
jeroenhd|9 months ago
At this point I wouldn't consider it any more or less proprietary than any other Microsoft language, like TypeScript for instance.
exyi|9 months ago
The C# VSCode extension works in Microsoft's build of VSCode, not when someone else forks it and builds it themselves.
cess11|9 months ago
The nice language on the CLR, F#, also doesn't seem to be very well liked by MICROS~1 anymore.
9cb14c1ec0|9 months ago
iLemming|9 months ago
Do you want to age into an old, happy programmer? Avoid emotional attachment to any single programming language. Borrow good ideas from different sources, but don’t settle on a single PL, paradigm, or convention. Sure, you’ll probably end up hating each of them for different reasons, but you may find some that you don’t loathe so badly.
sorcercode|9 months ago
rochak|9 months ago