I for one am extremely excited about having MS supported ASP.Net on Linux.<p>Mono is a great community effort, but the server side has always lagged Windows pretty heavily.
Having the same level of API and implementation support at a core level on Linux will be awesome.<p>Shall be interesting to see how this affects IIS market share in 5-10 years time.
As a Java and JVM focused developer the openning up of .NET really excites me. First, because .NET is a fantastic framework in and of itself, but also because this hopefully will encourage Oracle to be faster and more competitive with Java features and improvements.
I am betting on F# taking off big time.<p>None of the existing functional languages on linux could deliver on functional programming hype. Clojure is too ugly, Scala is too complicated, Haskell too arcane.
As a .NET developer, I've oft complained to my coworkers that years and years ago, a Java program could be compiled and run as a desktop app, or in the browser as an applet, or theoretically in other contexts. Microsoft kept not figuring that out, requiring different and slightly incompatible libraries (say, between WPF and Silverlight). It drove me crazy. Same with WPF and Windows Phone.<p>I see this kind of motion as very positive and recognition that horizontal re-use is a desired feature (one of the reasons people like node.js).
The nuget package versioning/app local deployment model introduces a very different model for security patch distribution. Microsoft got their fingers burnt a few years back with the 'embeddable' SQL Server distribution, MSDE, when the Slammer worm hit and there were hundreds of systems redistributing MSDE which had to figure out how to deliver patches separately.<p>When .NET applications all share the installed .NET framework, all applications benefit from Windows Update patch distribution for .NET Framework fixes. But when all applications are distributing their own required versions of dozens of .NET core nuget packages, those patches won't be deployed until the app developer updates the nuget reference, rebuilds and ships their own patch.
The complexity of the .NET ecosystem as revealed in this article is baffling me.<p>And I don't even have the excuse of being in foreign territory here, I'm a C# dev since 2009.<p>The language itself is easy to learn, but understanding everything behind is quite a challenge (at least for me). I guess it's a feature of enterprise products.<p>Sometimes I wish I could leave work at work and not have to stay on top of my domain of expertise in my spare time.
I'm psyched for the changes in the way .NET applications are being deployed. NuGet was already a great step, and having a well-factored .NET core framework in NuGet is only going to make it better.<p>Even little things like renaming the NuGet packages so that they are the same name as the assembly (hopefully "System.Web.Mvc" instead of "Microsoft.AspNet.Mvc" or whatever it is now) are a good sign to me that this push to create a cohesive .NET ecosystem around NuGet might actually succeed.<p>Unfortunately at least at our company this will take a long time to be fully embraced, but I look forward to the day when you can update the version of System.X that your team depends on without making it a system-wide upgrade initiative to move from one version to the next.
I have to say I'm very impressed with how ms is keeping .net a relevant platform. A few years ago, I started to worry that I was going to have a skill with a rapidly declining market value. While I still believe that being a polyglot is the best way to mitigate this risk(as well as just general professional development), I do feel like MS is taking great strides in keeping.NET developers employed.
The referencesource project seems to be MIT licensed:<p><a href="https://github.com/Microsoft/referencesource/blob/master/LICENSE.txt" rel="nofollow">https://github.com/Microsoft/referencesource/blob/master/LIC...</a>
Am I the only one not being a fan of nugget?<p>I constantly have issues with "Package Restore", where I need to restart visual studio or clean packages and reinstall them. Sometimes, my package.config will end up with multiple same package with different versions. I get a lot of those problems with MVC.<p>I like C# and static typing, but I prefer nodejs and npm when it comes to packaging.
The ASP.NET part is what has me excited - it wasn't clear from the article (it may be due to my limited knowledge of the ASP.NET stack) but if I could write a full fledged ASP.NET app on Linux using the often needed features like ORM, LINQ, whatever the equivalent of JSF is - that would be a great development. Right now on *NIX platforms nothing matches the maturity of Java/J2EE.<p>It still remains to be seen how much the of the tooling - debuggers, profilers, deployment tools etc. will be available on non-Windows platforms. May be that will become available as more and more people start using it in Production.
> <i>...is available as open source, and is supported by Microsoft on Windows, Linux and Mac OSX.</i><p>Somehow, the words <i>Microsoft</i>, <i>support</i> and <i>Linux</i> still don't seem to sound right in the same sentence.<p>I'd been your stereotypical Linux fanboy and MS hater since a teenager. But today I'm totally awed by how radically Microsoft has managed to change itself. I can't even imagine how hard the people inside Microsoft must have fought to make this happen. Well done, guys.<p>I think I'll pick up a C# book for Christmas.
I really hope somebody starts a kickstarter for Rails 4.2 on IronRuby (based on .NET Core). I'm really keen to see how that will compare with JRuby (which is already quite good).<p>The biggest problem which I see with the .NET ecosystem is the lack of appliction servers like JBoss, Tomcat, Wildfly.. even Jetty.<p>Am I wrong or is IIS pretty much the only .NET application server ?
I know lots of people don't care about Windwos Forms anymore but it would been GREAT if they were also included in the Core, may be re-labeled as just "Forms" with as many platform independent goodies as possible. Native desktop apps are no longer for consumer at large but I keep finding myself developing new desktop app every now and then for development tasks. For example, right now I'm working on desktop app that allows you to quickly browse, slice and dice very large data files of order of 100s of GBs. It would be nice if I can release this kind of apps for all platforms using .net.<p>PS: I don't want WPF in Core. It's over-engineered uglyness I care lease about.
When Firefox was version 0.9 (2003?), I said it would take a large chunk out of IE's 95% market share and IE would become an also ran browser. I also said, later, that iPhones and iPads would take over mobile and dominate the internet and Google would be more important than Microsoft on a day-to-day basis.<p>In both cases I was made fun of and downvoted into oblivion.<p>So listen to what I'm saying now. In three to five years, none of you will be using .NET anything. Well, some of you will be maintaining legacy stuff but, new things? No. Especially in five years, no one will think of doing any new project in .NET anything.<p>As I said back in 2003, write it down. Check back with me. I'll see you then.