Live data from Hacker News

6 Months with C#

ruoyusun.com

11–20 of 84 posts

Re: 6 Months with C#

#11
post #8

I don't understand why everyone on HN hates Windows server so much. From an administration standpoint they are much easier to setup and use thanks to their GUIs. Windows is very standardized and has very good management tools and interfaces. C#, ASP MVC, and Visual Studio are extremely good tools. I've programmed in C# for 10 years and never had a project I could not do quickly with it. It has very good support of 3r…

I've done both (win and linux) and they each have their disadvantages and advantages, it would be hard for me to pick a clear winner because it really depends on your skillset and the task at hand.

If i were to do a big enterprisey project with a big budget i would definitely be more likely to go with windows while if i were to do a web/online start-up i would more likely pick Linux.

Re: 6 Months with C#

#12
Good writeup, and I agree with much of his post. Going back to Java from C# at the language level is just painful.

The Java library/framework is more complete and diverse than the .NET one, but it's actually improved alot for .NET in recent years with Microsoft becoming much more open source friendly, the ALT.DEV community, Mono, etc... The .NET community is much more comfortable with alternative not from Microsoft these days than in the past.

IMHO though, the JVM has a better alternative language ecosystem than the .NET one. Yeah, .NET has F# builtin to VS these days, but doesn't have things like Scala/Clojure (not first class citizens), Kotlin, Ceylon, etc...

Re: 6 Months with C#

#13
post #3

Good article, but I have to disagree with you regarding the C# ecosystem. Sure, its mainly windows, but there is boatloads of tools and support out there for it. Visual Studio is a great IDE, and the documentation for C# and .NET is generally good. I'm a C# developer mainly, and recently did a bit of Java development in Eclipse (Android ADT) and did miss some features of C#, but the languages are still very, very sim…

There's definitely a lot of C# code out there. I do think that open source C# code is more limited than some of the other popular languages. However, the .Net standard library does so much that you often don't need much more other than perhaps a custom protocol implementation or some UI code. I think Windows is the major drawback to C#. No one with half a brain is going to write server software that only works on Win…

Although the core libraries in .NET are huge, many are also very shoddy. There are also a few great API's, but the overall quality and usability is pretty uneven. This is mostly a problem with API's back from version 1.0 - however, unfortunately, those API's often haven't been updated. Documentation is also not always equally good; MSDN has lots of pages that describe a method Bar.Foo() as "Fooing a Bar", which is next to useless. I get the impression the java APIs are often better documented.

NuGet might really turn things around; here's to hoping...

Re: 6 Months with C#

#14
post #8

I don't understand why everyone on HN hates Windows server so much. From an administration standpoint they are much easier to setup and use thanks to their GUIs. Windows is very standardized and has very good management tools and interfaces. C#, ASP MVC, and Visual Studio are extremely good tools. I've programmed in C# for 10 years and never had a project I could not do quickly with it. It has very good support of 3r…

If I had to, I would bet with no fear that web development today can be made with any tech stack (.net, ruby, python, etc) without signficant differences in schedule or effort put on it. Choosing stacks todays is pretty much a matter of taste and skill availability.

Re: 6 Months with C#

#15
post #5

Earlier quoted context omitted.

Why not write server code for Windows? I fail to see a major reason that would stop one from doing that. Actually, its a pretty good, well supported and documented and stable platform.

It means that hosting your code suddenly goes from a simple equation about what hardware will cost you, in terms of actual servers, virtual servers or other solutions to a matter of involving licensing software just to have your code run. It means that if you ever need to scale up, you'll have to buy more licenses. It prohibits unlimited, automatic scaling. It's also the once a month embarassing ordeal with sites bei…

This. If you're just running a single server inside your enterprise firewall that will only need to scale as the company hires new employees, it's probably fine. However, if you need something that can grow with demand from customers (which is usual 3-5 orders of magnitude greater growth than you'd see from your employee base).. then the licensing and costs become prohibitive.

Re: 6 Months with C#

#16
post #3

Good article, but I have to disagree with you regarding the C# ecosystem. Sure, its mainly windows, but there is boatloads of tools and support out there for it. Visual Studio is a great IDE, and the documentation for C# and .NET is generally good. I'm a C# developer mainly, and recently did a bit of Java development in Eclipse (Android ADT) and did miss some features of C#, but the languages are still very, very sim…

There's definitely a lot of C# code out there. I do think that open source C# code is more limited than some of the other popular languages. However, the .Net standard library does so much that you often don't need much more other than perhaps a custom protocol implementation or some UI code. I think Windows is the major drawback to C#. No one with half a brain is going to write server software that only works on Win…

No one with half a brain is going to write server software that only works on Windows.

Once you step out of your little bubble, you'll realize what a stupid comment that is.

Re: 6 Months with C#

#17
post #8

I don't understand why everyone on HN hates Windows server so much. From an administration standpoint they are much easier to setup and use thanks to their GUIs. Windows is very standardized and has very good management tools and interfaces. C#, ASP MVC, and Visual Studio are extremely good tools. I've programmed in C# for 10 years and never had a project I could not do quickly with it. It has very good support of 3r…

Because it's too easy! Nerds would rather spend countless hours at the command line figuring things out than having a nice interface to get stuff configured and running. As a developer, I don't want to spend my life also configuring servers - sometimes it's just nice to get things working without a ton of hassle. Of course nowadays we use Azure or AppHarbor for everything but we still have some services running on IIS internally. There is this counter culture against anything MS on HN - I don't get why.

Re: 6 Months with C#

#18
post #5

Earlier quoted context omitted.

Why not write server code for Windows? I fail to see a major reason that would stop one from doing that. Actually, its a pretty good, well supported and documented and stable platform.

It means that hosting your code suddenly goes from a simple equation about what hardware will cost you, in terms of actual servers, virtual servers or other solutions to a matter of involving licensing software just to have your code run. It means that if you ever need to scale up, you'll have to buy more licenses. It prohibits unlimited, automatic scaling. It's also the once a month embarassing ordeal with sites bei…

Everytime I see someone talking about "unlimited" something my spider sense ticks off. Except for Google, Amazon and some other big guys, most of companies will worry about lots of things before what you mentioned become a problem.

Also, AWS, Azure and AppHarbor have takem the license problem out of the way.

Re: 6 Months with C#

#19
I have been a C# developer since 2004 and nowadays I use it with Xamarin Studio to write iOS apps on the Mac. What Miguel and Nat have done with Xamarin is awesome and I think the future of .NET lies more with what they're doing than what MS is doing IMO.

Re: 6 Months with C#

#20

Mono is actually finding its way to new platforms all the time. I was surprised to find out that the recently released Playstation Mobile SDK is based entirely on Mono, so Playstation Vita runs it. And I am pretty sure there's an implementation available on Android. As for iOS there's Xamarin. MonoDevelop on MacOS is also quite good.

I've been a fan of Mono for a long time; unfortunately, we've had a lot of trouble trying to scale it in production.

Our application was originally built for .NET (on Windows). It was successfully ported to Mono, but we continue to have strange problems (machine load average going to 50+ and becoming unresponsive, etc.) which we believe are related to the Mono GC. After spending a good amount of effort trying to fix the Mono version, we decided to bite the bullet and migrate to another platform (Node.js), which has proven to be significantly more stable under load.

I'm a huge fan of Miguel and the rest of the Xamarin crew, and I'd love to see a universal implementation of the CLR take dominance. I think maybe 5 years ago the CLR had a real chance to win in the battle of multi-language runtimes, but at this point I think the war is going to the JVM. (Chalk that up to yet another short-sighted decision by Microsoft.)

Post reply on HN