I feel like there's this stereotypical .NET dev in everyone's head on HN. Your friend, for example, didn't even know that Entity Framework was an ORM, and he likes "magic" and not understanding any lower level implementation.
That's too bad, because there are tons of sharp .NET devs who despise the concept of "magic" (and no, ORMs are not magic, and Entity Framework is fantastic) and who understand the abstractions that .NET offers. I would hesitate to write off all .NET enthusiasts as clueless less-than-hackers.
(disclaimer: Microsoft employee, nothing to do with .NET though)
One thing I find good about Microsoft's libraries is that for the most part they do a good job of working as magic and working with someone with understanding.
XNA is the example I always use. You can use XNA and make games without understanding anything about the graphics card but you can also dig in and write your own shaders and basically go however deep you want to/need to.
There are some things in .NET that do seem kinda magic, and razor is one of them. Not because it's a templating engine but just in how lightweight it is and how surprisingly decent intellisense can be with it. Most templating engines feel so verbose and ugly after working with razor.
Agreed on Razor... it's by far the best template engine I've used. It's a shame it's a bit of a pain to use outside of a web context (email templates, for example). Though I actually like using component-like systems more now (React, MercuryJS, RiotJS, Polymer...) with JS client and server.
I know what you mean, but I also think that street runs in two directions. ASP.NET was pretty late with MVC because (of course this is just me speculating) that was what those dirty Django & Rails heathens were up to. Turns out, MVC was a pretty good idea after all.
That's too bad, because there are tons of sharp .NET devs who despise the concept of "magic" (and no, ORMs are not magic, and Entity Framework is fantastic) and who understand the abstractions that .NET offers. I would hesitate to write off all .NET enthusiasts as clueless less-than-hackers.
(disclaimer: Microsoft employee, nothing to do with .NET though)