4 ms·
It's a shame that .NET is considered 'just' enterprise. C# is a great language, and there are several libraries with fantastic design aesthetic; one that is mu
by mattgreenrocks 13y ago
It's a shame that .NET is considered 'just' enterprise.
C# is a great language, and there are several libraries with fantastic design aesthetic; one that is much better than most of Ruby/JS.
- UK-AL 13y agoMost people will admit they like c# and F#. However they won't like the microsoft tax, and the fact its tied to windows.
- deleted 13y ago[deleted]
- pjmlp 13y agoYep many rather pay the company X tax, but only Microsoft's tax is evil.
- mattgreenrocks 13y agoYeah, nobody seems to sweat coupling their entire codebase to Ruby on Rails. #nerdlogic
- profquail 13y agoHow are C# and F# tied to Windows? They run quite nicely on Mono, although I'll admit that even with the significant, recent improvements Mono has made it's still not as fast (generally) as the .NET CLR on Windows. Also -- F# is completely open-source, so there's no "Microsoft tax" to be paid. In fact, a large portion of the F# community runs exclusively on non-Windows platforms (e.g., OS X, Linux, FreeBSD, Android).
- UK-AL 13y agoThe languages themselves are fine. The frameworks around them on mono are always half incomplete or not the latest version. Although I have noticed its getting better lately. For example its easier to get started with F# with MVC on the Xamarin IDE then it is in VS. Hope it takes off.
- platz 13y agoThey may "run" on mono, but their performance there is terrible.
- tracker1 13y agoMy biggest complaint with .Net (and moreso with Java) are the "enterprise" frameworks and tools... things that bloat larger projects to the point where it literally can take minutes to compile, and load the first request in a web application. It's painful when you have to go into your IDE, step through a bunch of stuff, just to make a small change, and then a couple minutes goes by before you can check your work. Integrate some larger testing, and it's worse.. try to break you project up into smaller libraries (as you would with node) and it gets worse. Don't get me wrong, I really like C#, and love the Razor view engine... but .Net and VS as a whole just feel really sluggish and bloated. With node, I can fire up an app, and include modules with relative ease.. I don't get the same level of intellisense as VS with C#, but I find I need it quite a bit less, and tend to be just as, if not more productive. I started with C# in mid 2001 (before VS.Net RTM), and until Node.js it was by far my favorite environment.
- mattgreenrocks 13y ago> things that bloat larger projects to the point where it literally can take minutes to compile, and load the first request in a web application. Kind of like how Rails devs have tests that run for minutes? I kid. Sort of. Both instances are problems of poor design and architecture. C#/VS don't really pay off until you start having larger code bases. Which, for web apps, doesn't happen...until it does, and then it sucks. The semantic analysis afforded by more static languages like C# becomes a real boon then. I'm not going to argue that types will fix the Software Problem, but they do help considerably, especially when an API shifts out from under you. I love VS (and won't write any C++ without it), but it is pretty hefty. Some of the recent UI changes are highly questionable in my mind, but, that's MS for you.
- tracker1 13y agoLike I said, I do like C#, and even VS... I just find that the types of refactoring and reduced bootstrap time for trying things in a scripted environment can offset a lot of what VS brings to the table. One issue I face a lot at work, is that imho single responsibility principle should extend to modules, and a lot of even the node.js dev here is more monolithic in nature than it should be. It's about learning your tools, and how to bring in what you need, and keeping out what you don't. In the end it's almost as much about technique as the tools, but sometimes it's easier to adopt new techniques while adapting to new tooling.