In the end of Scott Hanselman's TechEd presentation yesterday, he showed this pages.
This really impressed me. With this, Microsoft is trying to say that they are working to make a better development experience even without Windows OS and Visual Studio.
If you live on .NET land and you follow .NET since 1.1 or 2.0, you will know that nothing lasts forever. New APIs were introduced constantly, and some of them did not live long, like Silverlight. C# language itself also advances rapidly.
It seems that every year Microsoft introduce new shiny things for their developer community.
As for ASP.NET vNext announcement, there are several things that caught my attention:
- Multiple environment of .NET side by side
Python folks have virtualenv, and Ruby devs have rvm for quite some time. It is now .NET developers' turn to have something similar via "kvm".
- Deploy .NET Framework packages along with your app.
- A newer project configuration file
Now there is project.json which probably replaces csproj. This project.json also hold list of Nuget packages, commands and .NET settings. Again it is not a new thing in OSS land, but this will undoubtly present breaking changes for .NET developers' usual workflow.
- In memory compilation by changing code and refreshing the browser
I've never thought they will use Roslyn to do cool things like this. Yes, this is not a special thing for dynamic language, but C# is static language.
- It works on Mono
The biggest hurdle of .NET adoption is the fact that Mono is not the first class citizen yet and Unix is where most people host their server application.
Like it or not, developing on .NET platform is not a cool thing for a lot of people. A lot of the things announced yesterday are common for Ruby / Python / Node devs, but when you take a look at .NET history, you will see a constant evolution.
The current new Microsoft ecosystem seems embracing "openness", they released most of .NET stack as open source. But the most important thing is with yesterday announcement, at least Microsoft want to confirm that they are not giving up on .NET.