Live data from Hacker News

Let's stop bashing C#

codeaddiction.net

41–50 of 99 posts

Re: Let's stop bashing C#

#41

I use C# daily at work and my dislike can be summed up by one word: Microsoft. They may have changed course but open source software has for 10+ years largely avoided the platform. This means C# is Java with nicer syntax but 10% the libraries and terrible cross platform support. There's been countless times at work when I needed a certain library and I already knew what the Java equivalent was, but what I was looking…

This really sounds like a lack of knowledge of the .NET ecosystem. Every area you mentioned has extensive library coverage.

In addition there are several C# IDEs available, including from JetBrains who creates IntelliJ! Roslyn makes fancy features such as auto complete available to text editors as well such as VS Code or Atom.

Re: Let's stop bashing C#

#42
I have loved .net as a framework and c# as a language, but the bashing is just as well part of the community itself.

What about the c# developers hating vb.net or java? What about .net experts bashing jvm, php, node ? What about windows users bashing *nix for GUI? ahh the list is long, from both sides.

Frameworks and Languages are fine, but what have you actually done with your stack?

Re: Let's stop bashing C#

#43
post #28

Earlier quoted context omitted.

> I was under the impression that .NET is fully open source: https://dotnetfoundation.org/ That's not of much worth if the design process remains firmly in corporate hands. Microsoft is currently, slowly, opening the process to the community, but even then I expect corporate will continue driving most of the roadmap and keep veto on everything, very much like Swift — which is much much much further on that track than…

Being a little disingenuous there with your first link, only linking to the January archives. The February ones[1] have a lot more activity for only being a couple of days old. [1] https://lists.dot.net/pipermail/csharplang/2017-February/thr...

> Being a little disingenuous there with your first link

That link was in support of my claim of the ML having been created on January 30, nothing else.

And people posting stuff on a mailing list means nothing if it doesn't actually impact the language, which we can't judge yet because the opening isn't even a week old yet.

As for the "lot more activity", it's mostly two blokes (Justin Spindler and Tanner Gooding) posting their old roslyn issues back to the ML. If you're looking for disingenuous may I suggest a mirror?

Re: Let's stop bashing C#

#44

I use C# daily at work and my dislike can be summed up by one word: Microsoft. They may have changed course but open source software has for 10+ years largely avoided the platform. This means C# is Java with nicer syntax but 10% the libraries and terrible cross platform support. There's been countless times at work when I needed a certain library and I already knew what the Java equivalent was, but what I was looking…

> my dislike can be summed up by one word: Microsoft.

It's not just the current gap, but the absence of long-term guarantees that the ecosystem will stay on the current open-source trajectory. Microsoft can close SQLServer back down tomorrow; nobody can take away Postgres (even when someone tries, like Oracle with MySQL, the community reacts pretty quickly).

C# is a nice language and if you stick to the classic MS ecosystem you can be very productive, but if you're not invested in Windows and you're not ready to spend real money for it (either right away or at short notice), you should probably look elsewhere.

Re: Let's stop bashing C#

#46
post #24

Even if C# would be the most technical superior language ever made with every feature you could think of, a lot of developers still don't like it because: - C# smells corporate, being used in many large scale business application. - C# is developed by Microsoft, a billion dollar company itself - The .NET platform is only partial open source So facts don't matter much, it's about smell :)

C# is _guided_ by Microsoft. You can join in on the language design if you want[1]. The .NET platform is now completely open source[2]. The compiler (Roslyn), tooling (cli), the runtime (coreclr), and the standard library (corefx) are all listed there, all under the Apache 2.0 license. What's not open source? [1] https://github.com/dotnet/csharplang [2] https://github.com/dotnet/

Ultimately, Microsoft decides the future of C# and what goes into it. That is the big issue for some people.

Re: Let's stop bashing C#

#47

.NET Core isn't packaged for Debian, Fedora and CentOS, and for Ubuntu you have to add a separate PPA. That makes it an instant no-go for me. I'm not a software packager and I'm not becoming one to try new and unstable C# tooling. Visual Studio Community was a pretty terrible experience and I don't intend to spend more of my time on unreliable Microsoft products.

While there aren't necessarily native packages pre-built and ready to pull down with the installers, you don't need to be a 'software packager' to install .NET Core and I don't know what the problem is with 'add[ing] a separate PPA'

Instructions for Debian[1], Fedora[2], Centos[3] and Ubuntu[4]. These all seem like pretty simple copy+paste instructions.

[1] https://www.microsoft.com/net/core#linuxdebian [2] https://www.microsoft.com/net/core#linuxfedora [3] https://www.microsoft.com/net/core#linuxcentos [4] https://www.microsoft.com/net/core#linuxubuntu

Re: Let's stop bashing C#

#48
I've written C# for the last 10 or so years now. I was a lot heavier in C# the first 5 years until my career changed paths. So I've gotten to watch C# "from a distance" for the last 5 years now and I'm optimistic about C#'s future. C# has an image problem. Of the programmers I've talked to, the polyglots usually see the strengths in C#.

Re: Let's stop bashing C#

#49
This sounds like one of those karma-fishing Reddit posts that start off with, "I know I'm going to get downvoted for this, but...", but then go on to state a popular opinion and receive thousands of upvotes for it.

No matter which programming language is mentioned here, there will ALWAYS be a few people commenting, "I like 'X' better!" (where 'X' is usually an emerging language that they tinker with in hobby projects and haven't used professionally yet).

That caveat aside, C# has generally been one of HN's darlings in recent years. People who crap on Java turn around and praise C# in the next breath, because:

(1) There are some syntactical niceties that make C# feel "lighter",

(2) MS has developed a more "open" and even "cool" reputation over the past few years, at least in comparison to Oracle, and

(3) In many cases, it's again people who have started tinkering with it in personal projects, and haven't yet hit the inevitable pain points of using any language for real professional work in a team setting.

C# certainly isn't Haskell, but it checks off enough functional checkboxes to have some cred, while still being approachable and familiar enough for non-academic mortals out in industry. Xamarin and Unity aren't perfect, but they give C# a solid foothold in mobile and gaming (which, along with web dev, are the holy trinity of domains that drive hype among young devs.

I really haven't heard much negative chatter. There will always be the people holding on to MS's propriety brand image from the 90's, who always want to comment on it from their Apple devices today. But on the Internet hype spectrum of "cool" (Rust, Go, Elixir) to "uncool" (Java, PHP)... I'd say C# is at least 10% off the middle, in the direction of "cool". It checks the checkboxs of:

* "mildly interesting",

* "low learning curve",

* "ease of actually finding an employer who uses it", and

* "not likely to fade away because people don't migrate to version 3, or because Mozilla can't find another sponsor after Yahoo, or because yet another Ruby-successor comes along next week and sucks up all the hype, or whatever".

Really, the only people who criticize it a lot are the people in Microsoft shops who actually use it for a living today (!), but isn't that pattern usually true for everything?

Re: Let's stop bashing C#

#50

Earlier quoted context omitted.

There's a small ammount of trolls that spam "M$" kind of arguments but they are largely ignored from what I've seen. On the flip side there's a lot of people who over-represent C# especially in comparison with Java. I mean the language is very nice, better than Java no doubt - but the platform and ecosystem is much less mature than JVM. Where is the .NET equivalent of ZooKeeper, Hadoop etc. .NET can use those like an…

Yes this 100%. Community ecosystem is a joke on C# compared to Java. Take for example lucene. I just used version 3.03 in a C# project because the port hasn't been updated in years. Version 6.x is the current one. We also needed to use Redis in C# and the client is unstable. Nothing we can do about it besides catch the exceptions and randomly reconnect when it happens. Are we losing some data? Probably. Even if the o…

I had the same with Lucene a few years ago. It's really frustrating to realize that there is a ton of open source stuff out there but you can't use it because you are on C#. Or you get something outdated or buggy.

I really wish MS did something to make Java/C# work together.

Post reply on HN