Live data from Hacker News

Why is there so much hate for .NET?

news.ycombinator.com

31–40 of 44 posts

Re: Why is there so much hate for .NET?

#31
post #16

I think .net is a great framework that is misunderstood.. I think every developer should dabble in .net MVC before working there way into rails.. because so much of rails is abstracted and .net is not you can learn a lot of things from working with this framework that would take you a lot longer on rails

What does this mean?

He means "less magic".

Re: Why is there so much hate for .NET?

#32
For me it has nothing to do with .NET's qualities.

Rather, it has to do with trust issues arising from the fact that I lived through the 90s and I remember what it was like when MS was dominant.

Unfortunately Apple is stepping into the same hubristic trap. I will probably have trouble trusting them for decades as a result.

Re: Why is there so much hate for .NET?

#34
I started business development with dBase II, after a while I was forced due to hardware availabilty to upgrade (CP/M going out of style). we Got Macs. dBase Mac was an expensive joke then finally settled on McMax, that became incompatible with system 7 IIRC then slid on over to FoxBase+/Mac, (which was excellent) until OSX, but the new owners, Microsoft, provided an out, FoxPro (at least till intel), then again they shortly dropped Mac support so that was all moot. All these times nothing was really wrong with the code but I was at the mercy of commercial firms in finding compatible versions, getting licenses and having just basic long term support. Most other solutions were either expensive or lock-in to a platform, and from experience no better guarantee of longevity of the platform.

So I went open source - with a LAMP stack - if I want to run old versions there's no problem, maybe with hardware - but that also isn't as big a factor. No worries on selecting client compatibility as it is web based (have had to tweak based on HTML/Browser revisions, but nothing that really broke beyond fixing). Every component was free (enough) for what I was doing, and it pretty much just worked. I feel I had wisely steered clear of Filemaker Pro, Access, Cloudbase, Panorama, Visual Basic, or any other platform where I had to plug in a key and/or ask permission in order to install/use it. I was happy, staff was happy... and still are. Never looked back since.

.Net and other MS technology just reminds me of the struggles of the past added with new licensing schemes and more intricate lock-in. So I prefer to ignore it. If I was going to do local machine development instead of web based Python would be the direction I'd go.

Re: Why is there so much hate for .NET?

#35
I've been with C# since the beginning, 1.1, coming from ASP 'classic', I absolutely love C# as a language. But... I'm now working in a Ruby/Linux shop handling some of their legacy app integration and I've come to understand that a lot of the disinterest comes from a complete clash of culture more than anything else. By that I don't mean the old "Evil M$" rubbish - for 10 years Microsoft has not understood Open Source culture. Instead of collaborate it was compete compete compete. NHibernate vs Entity Framework, ASP.NET MVC vs fubu/castle, Codeplex instead of GitHub, everything was done to keep people dependent on Microsoft.

ALT.NET came and went, but there was never a really strong open source community. That combined with the cross sell policy is a barrier to entry. Everything has been tightly coupled, IIS dependencies in ASP.NET makes Mono a second class citizen, MSSQL dependencies in EF made code first migrations break in MySQL. All designed to sell licenses, books and certification.

Talking about productions web apps, at the end of the day it has to be on Windows, even if you want to dev on Mono. If I'm going to start building a production app you start asking yourself questions about licensing costs too, Server, SQL, VS pro, CALs. Okay so you can get it going for free if you join BizSpark, but then there's the waiting etc etc and the niggling fact that eventually you will have to pay. Comparing that to my experience working on Linux is like chalk and cheese. vagrant up -> npm install -> {do work} -> git push heroku master. Frictionless, all for free, with no gatekeepers.

With OSS, people don't sit around waiting for the mothership to fix issues, because there isn't one, they band together and fix it themselves. Additionally, as I've come to realize (flamebait warning) Linux kills Windows on the server. Not by a nose, but like a Red Wedding in ease of use, footprint and resource utilization.

You also have to look at the "why C#" specifically. To do RAD web development it is much faster to use something like Rails. C# is more performant? Then use Java or node.js. C# just doesn't fill a particular gap.

Having said that, it's not all doom and goom, I think C# is the #1 choice for mobile development. I think the ASP.NET Titanic is starting to turn. Scott Guthrie seems to get it. The announcements recently with regards to ASP.NET vNext are all heading in the right direction and address a lot of the glaring issues. There is also some great non-MS .NET work being done at places like GitHub and StackExchange. Will it be enough to convince OSS types to start adopting it? I doubt it.

Re: Why is there so much hate for .NET?

#36
"Haters" probably do realise that.

Personally, I just don't see anything interesting that .NET offers. In fact, I consider languages which target virtual machines to be a failed experiment of a bygone age.

The two exemplars, Java and .NET have been thrust upon developer communities by multi-million dollar marketing efforts. And those marketing efforts have not been tailored towards my specific demographic. So they've been pretty easy to ignore.

So it's not a matter of being anti-.NET or Java or whatever. It's just that they're about as relevant to me as Barbie-themed toilet paper - superfluous and not marketed towards my demographic.

Re: Why is there so much hate for .NET?

#37
post #7

I feel the same way as the author. I got introduced to .NET two years ago at a job. I came from a PHP background. I've come to really appreciate .NET and the CLR, and as a developer, I'm convinced I'm way more productive in .NET. I'm currently building something in Mono outside of my day job, and it's so great to be able to use .NET on linux. I realize that Microsoft and .NET may not have had that great of a past (We…

If the only point of comparison is PHP, everything looks like the best thing ever compared to it.

Re: Why is there so much hate for .NET?

#38

Welcome to my world. The only reason that ASP was created and therefore .NET was because years ago, the Allaire brothers told Microsoft "no thanks" when they tried to purchase their programming language called ColdFusion. Since 1997, when I started developing with CF, I've heard nothing but derision no matter how well it can handle complex tasks with ease. Every few months, someone without a clue but a huge audience…

Cars all have four wheels; yet they are very different. Same goes for programming languages, perhaps even more so. Ecosystem matters. Syntax matters. Available programmers matters.

It's not "all the same shit".

Re: Why is there so much hate for .NET?

#39
post #28

I'm not sure if .NET has a bad rap at all, rather I believe the onus is on the .NET developer to show it was a better choice than the alternatives that are more mature and flexible from a licensing standpoint. I consult as a software engineer on various projects, frequently C# and Scala. C# is a fine language, and Monodevelop is continuing to improve, but I don't see any advantage over choosing a more 'open' language…

I kind of agree.

Another thing to mention is the community/culture of .NET developers. I want to be able to ask "ok, I need to debug/change/fix this, where is the source?" without getting weird looks.

Re: Why is there so much hate for .NET?

#40
For me the problem with .NET is not the libraries but the fact that the two principle languages (C# and VB) are so old fashioned. Hardly any of the useful stuff is part of the language, it's all in the libraries which means that.NET code is very verbose because there is no syntax for things like lists and dictionaries. The latest versions are getting better, at least you can create arrays using a compact syntax but dictionaries are still a pain. Both of them are essentially C without unmanaged pointers and the addition of a few slightly better types but still scalar types are special and cannot be treated as objects.

Also they aren't even usefully old-fashioned, why can't we have arrays where the first item is number 1, or 21 or some other number, Basic had that from the beginning. Why do I have to use a dictionary when I want to use an ordinal type such as a character or boolean as the index (Pascal could use any ordinal type as an array index). Why can't I create subtypes of the integers and reals (Pascal had that and it prevented large numbers of errors). Functional languages have implemented guard clauses, these can simplify your code dramatically and remove the need for a lot of traditional if and case statements. Bertrand Meyer integrated contracts into Eiffel almost thirty years ago, and now MS has provided them by means of a clunky add-on that rewrites your binary after it has been compiled.

And so on, it's not that .NET is bad, it's that after all that effort Anders Hejlsberg (yes, he of justified Turbo Pascal fame) should really have been able to produce something so much better, or at least more interesting.

Rant over, thanks for reading if you made it this far.

Post reply on HN