ASP.NET v.next is definitely an interesting beast. It’s open-source, developed in the open, and the team has clearly studied the competition, Node.js in particular, very closely. Its killer features, however, the ones that may be hardest to reproduce by others, are not new features: we already have them.
Modern web frameworks are lean, composable, low-level, and asynchronous. ASP.NET MVC is not there yet, especially on the lean aspect, but it’s definitely getting there if the progress so far is any indication, and it is. If it was only getting as good as Node, however, it wouldn’t be enough to make it successful. It needs to be a notch better in order to convince current users of other frameworks, and to overcome the perception in most startups that Microsoft has become irrelevant.
The second feature is going to be a lot harder to reproduce, because it’s only really made possible by C# being a strongly-typed language, and we’ve enjoyed it since the first version of ASP.NET MVC: model binding. Being able to just write an action method, and have form data automatically mapped to the method’s parameters, is an awesome productivity boost, and makes the code much more expressive. This can’t be reproduced in a dynamic language without specifying a lot of extra information that is ambient and already there in the case of C#.
If ASP.NET MVC v.next succeeds in emulating what makes its competition compelling today, these two advantages would put it a step ahead, and maybe even the best choice for a web framework. Interesting times…