Scott Hanselman gave the keynote on the second day of aspConf 2012, providing a wide ranging talk describing where ASP.NET is today and what is in store for its future. Tighter integration with NuGet, editor enhancements in Visual Studio, and faster release schedule are just some of the new features in store.
Hanselman would like for the ASP.NET community to continue to grow and for Microsoft to be a significant contributor with the NuGet extension providing a way to integrate the various pieces. At a high level, this would enable a future where developers can mix and match approaches based on the ASP.NET foundation without being limited to a single strategy.
VS has historically been on an 18-month development cycle which has caused there to be a small window in which new features can be added. To broaden this window, Hanselman describes how the Visual Studio platform will be moving from a monolithic release schedule to one that allows out-of-band updates. Consequently new features can be proposed, developed, and released to developers quicker. As an example, templates for ASP.NET will now be supported by the ASP.NET team enabling them to take advantage of this new development and release cycle.
Hanselman speculates on the possibility a future VS allowing developers to build projects by choosing the necessary components via NuGet (and downloading them if not available locally). The following is an example graphic illustrating a project utilizing WebPages, MVC, and WebForms:
Moving along, Hanselman then covered some new features of VS. The first demo illustrated how the open source library DotNetOpenAuth can provide social logins for ASP.NET applications. This will easily allow developers to add support for Twitter, Facebook, Google, and Microsoft authentication sources. WebForms, MVC, and web pages can all utilize this library.
Next Hanselman demonstrated several ease-of-use features present in the editor for CSS. For example if a color is defined by it's hex value, a preview of the color appears in a thumbnail when the mouse hovers over the definition. Similarly a PNG encoded in base64 was able to be embedded directly into the CSS. A preview thumbnail was again available with mouse hovering over the definition.
Developers using JSON will appreciate a convenience in VS that makes boilerplate code easier to write. A new feature allows a snippet of a JSON instance to be selected, deleted, and then re-pasted as a class with methods generated based upon the instance used.
While some of these features are still proof-of-concepts and/or provided by extensions, the faster release cycle means that they should reach developers in a timely fashion (late 2012/early 2013 versus 2014). Hanselman's presentation provides a good demonstration of all these features, and is worth viewing if you would like to see them in action.
Community comments
What's wrong with this picture?
by Mark N,
Re: What's wrong with this picture?
by Roopesh Shenoy,
Re: What's wrong with this picture?
by Scott Hanselman,
Re: What's wrong with this picture?
by Mark N,
Re: What's wrong with this picture?
by Piotr Jastrząbek,
What's wrong with this picture?
by Mark N,
Your message is awaiting moderation. Thank you for participating in the discussion.
Defining all UI's for ASP.NET as Sites is incorrect. Sites are totally different from apps. In fact, you can have UIs that are not HTML at all.
Also, while tighter integration with NuGet is good, they need better dependency management and less dependency on the IDE for managing them (and the build for that matter).
And while I applaud the accelerated release cycle, they need to do something about how it updates the system (i.e. not massive installs ).
Re: What's wrong with this picture?
by Roopesh Shenoy,
Your message is awaiting moderation. Thank you for participating in the discussion.
Good points - while Nuget officially requires visual studio, I think it is possible to incorporate it into a build without depending on the IDE - Derek has an interesting article here - lostechies.com/derekgreer/2011/09/20/dependency.... Haven't checked it myself yet though.
Re: What's wrong with this picture?
by Scott Hanselman,
Your message is awaiting moderation. Thank you for participating in the discussion.
No boxes and lines diagram ever expresses the totality of a system and all its nuances and edge cases. This one is close enough.
I agree that dependency management is the next big thing and we're working on it. More NuGet support from the command line is important, and we're already seeing vendors (CI, Test, Security, Governance, etc) add support for NuGet to their products.
Re: What's wrong with this picture?
by Mark N,
Your message is awaiting moderation. Thank you for participating in the discussion.
<q>No boxes and lines diagram ever expresses the totality of a system and all its nuances and edge cases. This one is close enough.</q>
Sorry. I am NOT talking about edge cases. It is not close enough. It will confuse the technophiles (which seems to be the majority of people). I use MVC, WebForms, and SPA and I have NEVER built a web site.
DM is not the next big thing. It has been around for a while. It might be for the MS world. The problem is that everything is just TOO tightly integrated and there is little competition for things like VS.NET and TFS (in .NET developers minds).
I am glad vendors are doing it. Sadly, most ".NET" developers only do and use things when they come from Microsoft.
I would shut up and go away, but I have one leg in the .NET world and it is frustrating to have take multiple steps back when switching to MS development (for the most part) and also deal with people who don't understand why "just doing it from the IDE" is not ok.
Re: What's wrong with this picture?
by Piotr Jastrząbek,
Your message is awaiting moderation. Thank you for participating in the discussion.
Mark N: I totally agree with you.
I came from well organized Java world were a lot of these matters are simply done right.
If you have never saw how thing may work you will not be missing them (and DM in .NET is a pain in big projects, with a lot of branches and big group of developers)
NuGet is a tiny step.. eases attaching dependencies and nothing more..., what about deploying packages (as in maven) to remote repo EASILY?, what about dependency management based on version different from assembly version (it would easy things a lot (DM as well as CI) )
I'm in NET for various reasons, but I cannot understand why MS misses such important features for so long...