I'm actually glad that a project of MSDN (aka. Microsoft) gets on the top pages on HackerNews.
I've been a fan of Microsoft on some things they do (but not all). .Net is one of them (Visual Studio).
And i've almost never seen something like this rise up on the popular topics section.
At least not with constructive comments like here in the topic.
So thanks, HackerNews community, you guys have made my day :)
So many on HN treat those that write C# code as a sort of lower class of programmers and I have never understood why. I have been writing HMIs for machinery for over two years now in C# and the .NET framework with intellisense is a great tool for getting the job done. I guess there are some programmers that blunder through their career using only the most mainstream languages but I make sure to work towards learning new languages all the time so maybe I'm just a special case.
The C# ecosystem doesn't really interoperate with the HN world. There's a bunch of friction around using it - I don't want to run windows (it's not configurable enough and I'd miss lots of X features), so I'd have to use the relatively weak MonoDevelop, and my dev OS/VM would be different from the production one which would be a recipe for awkward-to-diagnose bugs. There's probably a way to get the software for free but I'd have to start at least thinking about licensing (and that means I can't just fire up a local VM in 30 seconds to test something). Maybe my cloud provider supports windows (though it's unlikely to be as well-tested as their linux infrastructure), maybe not; certainly windows is a second-class citizen for puppet. And what's the library ecosystem like? I get the impression that open-source libraries are a lot less common for .net; is there even an equivalent of cpan/pypi/maven central/etc?
I've got no objection to microsoft/MSDN; I'm a very happy typescript user, because it slots straight into my existing workflow and there's a decent eclipse plugin for it. But for a lot of these things you live in one world or the other, and never the twain shall meet - and rightly or wrongly, my impression is that more interesting software gets written in the "HN stack" than in the "MS stack", which seems a lot more enterprise-oriented.
An equivalent of maven central, ... is Nuget.
Windows is well tested as an infrastructure, Azure is great and i think you underestimate it's potential. I've seen PHP developers using Azure because it's more advanced then anything else on the market (their words, not mine).
Windows Server has an optional GUI, powershell is Microsoft answer to get an advanced terminal, ...
They support open-source libraries, but it's not as popular as eg. gems.
But some are definatly worth mentioning: glimpse, elmah, stackexchange opensource projects for detecting queries, ...
Some of them are on codeplex, but i see more and more change to the Github community (ps. git is integrated in Visual Studio 2012 next to TFS).
Monodevelop is not weak, it's just a version later (if c# 5 is out, monodevelop is at c#4, not "that" important for developping. Want the latest gimmicks, well yeah, then it is).
Never used Puppet, so is that important? To test something, you can just publish your project to your server (or Azure if you like), also other party hosting is possible. You can also publish it on Amazon if you want.
Your comment on "enterprise-oriented" is correct, but mostly because there are practicly no bugs on the stack... It's fast (compiled to the CLR) and stable and it's a proven concept.
SQLLite => Local Database
Gems => Nuget
ActiveRecord => EF
Functional Programming => F#, lambda's, LINQ
But this is a good comment though. .Net (latest versions) shouldn't be used on Linux at the moment. It could be different if it had more support of the community though. I think Microsoft tried it first, they see there is some kind of barrier and now they are (perhaps) letting it go, piece by piece (don't know for sure).
>Azure is great and i think you underestimate it's potential. I've seen PHP developers using Azure because it's more advanced then anything else on the market (their words, not mine). Windows Server has an optional GUI, powershell is Microsoft answer to get an advanced terminal, ...
I'm not saying these things don't exist, I'm saying they don't interoperate. To get from where I am now to running on Azure/Windows would involve a lot of changes that would put me in a worse position if C# didn't work out. It's not something you can just dip in and out of.
>But for a lot of these things you live in one world or the other, and never the twain shall meet - and rightly or wrongly, my impression is that more interesting software gets written in the "HN stack" than in the "MS stack", which seems a lot more enterprise-oriented.
Oh I agree! Writing HMIs for machinery can be very boring work, but someone has to do it, and since we pick the PCs for the machine we can simply choose windows and then we have no issues being bound to the Microsoft stack. I figure once I get more experience I can go find one of those dream jobs where I can use lots of different languages on a regular basis.
I don't think it's the treatment one way or the other of those that write C# code. I think it's just the Microsoft Bubble at work. I think there are just fewer .NET developers here than the other ecosystems.
I personally shy away from .NET shops because they seem to be such a mono-culture.
--- This is totally off-topic so feel free to downvote into oblivion...
It's good to have competition. Modern open source keeps Microsoft awake. At the same time Microsoft has a lot of structure to offer to enterprise and millions of mainstream developers.
I'm actually glad that a project of MSDN (aka. Microsoft) gets on the top pages on HackerNews.
I've been a fan of Microsoft on some things they do (but not all). .Net is one of them (Visual Studio). And i've almost never seen something like this rise up on the popular topics section.
At least not with constructive comments like here in the topic.
So thanks, HackerNews community, you guys have made my day :)