VistaDB.Net Logo

Visual Studio 2010 VPC Preview

by Jason Short 12 December 2008

I was going to write a single blog about my day at MSDN Dev Con, but it was so awesome I am going to split it up.  I have pages of notes.  I highly recommend if you have a chance to make it to one of these events to go and listen.  Visit a track outside your specialty and just open your mind a bit about what else is happening in the Microsoft world of software.  I will write more about that in another post.  This one is going to be about VS 2010.

I was not actually looking forward to this session.  In my mind we just got VS 2008 and most people are not even close to adopting it yet, why should I look ahead to 2010?  But since we integrate into VS very tightly, I needed to look at what Microsoft is doing and get a feel for how much work it will be for us to support 2010.

Let me start by saying I was wrong; I did need to attend this session.  It had a lot of content that just blew me away.  A lot of this is already present in VSTS 2008, but I had never seen it either.  The last launch event I attended was VS 2005.

Really, really big show

Visual Studio 2010 is going to be a BIG release.  Total rewrite of the UI in WPF.  It is not there yet, but they are saying they will do it.  That pretty much tells me MS is making a huge commitment to WPF (Outside of Expression I have not heard of many people using it for serious business apps).

I can't cover everything, or even do justice to most of what was discussed.  I have some highlights that impressed me that I want to share.  If you want to watch a lot of video visit the Microsoft PDC site and look for the VSTS talks.  All of this is present there (and more).

Team System Testing

The Team System Testing edition is getting some really cool new features to allow captures of debug sessions from testers.  Complete with debug callstacks at fault points so developers can step back into the exact callstack at the time the tester had the error occur.  That is very nice.

Gated Checkins

Imagine if you could set architecture requirements in your app that prevent the UI from talking to the Data Layer directly.  Lots of people do it today, but there is no way at the time of checkin to enforce it.  You have to rely on programmers not doing it, code reviews to catch it, etc.  In VSTS 2010 you can set those type of design limits and have them enforced at checkin.  The programmer has no choice but to follow the rules laid down by the architect.  Otherwise the code checkin is shelved due to failing the requirements. 

At first glance most of you will think this is only for huge software shops.  I disagree.  Even within our VistaDB engine we have public and private interfaces.  We also have internal divisions of layers that we want to ensure are encapsulated.  A large part of the refactoring work we have ahead of us is due to large sections of one layer have far too much intimate knowledge of the other layer.  Just because everything is internal doesn't mean you should be allowed to go grab that object directly.  Well defined interface layers are essential to stable software design.  We could use this feature big time.  It is far too easy within the engine to accidentally go up or down a layer without meaning to do so.  Having a server side checkin to double check the code would be quite welcome around here.  The more automated systems we can put in place for that type of system the more effective we can be as coders (and designers).

Layer Diagrams

Some diagrams at the Architect layer are what I think of as Visio diagrams.  Simple block objects showing arrows.  There are new diagrams that show you visually when an object is crossing a boundary (like the example above of layers in the engine).  Being able to visually see these type of flow and sequence diagrams in live code is amazing to me.  I have generated these by hand in the past and they are always out of date at the next code revision.

One I really liked was a sequence flow of objects from one layer to another showing the state of the object as it moved through one procedure to another and back up the stack.  Very impressive to see this type of thing in action on live code.  Don't know how well it would work in a production system, but I would love to try it.

CodedUI Test

Testing websites has always been tough for automated systems.  There are solutions out there, but they are expensive.  Usually companies resort to standard test sheets that have to be followed to validate a UI design.  You can now generate interactive UI tests (WebForms, ASP.NET, WPF) through an app or scripted interface.  Walking through the site once and doing all the options, and then validating the correct results using a cool "click the control" interface was very cool.  It then could generate C#/VB.NET unit tests that can be automated.  Drag and drop validation for forms (ranges, results, html output, etc) was way more power than I have seen in any other commercial offering.

The bad part of VSTS

And now the bad part (to me) - the price.  What small company can afford to buy 5 editions of VSTS?  The last time we priced the VSTS for 3 developers who each have multiple roles within the company the price was over $25,000.  Talk about sticker shock.  Why isn't there some Empower or entry program to get small shops started with VSTS? 

I am not saying it is not worth it, but I am saying that a small company cannot afford to dump that much cash into an annual software expenditure.  It is not a onetime purchase, you have to buy an MSDN subscription with it, and then maintain it to the tune of several hundred dollars per month per developer. 

I just can't imagine very many companies under 25 employees being able to justify that expense early on.  And let's face it, if you don't do it early then your processes will get built without it and changing to it later is almost impossible.  I would think Microsoft would want to get smaller companies into the process early and then make money with them as they grow.

I was very, very impressed with the sneak peak.  Made us talk about some of our processes and how we could emulate more of what we saw.  Everything was a productivity enhancer, but at what cost?

Virtual PC image of Visual Studio 2010

You can get your hands on the pre-Alpha of VSTS 2010 now in the form of a VPC image.

Microsoft has a Visual Studio 2010 and .NET Framework 4.0 CTP Feedback page that includes full versions of Visual Studio 2010 and the Dot Net 4 framework.  I think this is actually Visual Studio Team System because the presenters at the MSDN Dev Conference gave us the link to download and play with VSTS in a VPC image.

Download manager way to get the VPC Files - an article showing how to grab all the files using a download manager instead of clicking one at a time.

EDIT - I skipped my note on Parallel programming.  It is going to be a large part of VS 2010 and .NET 4.  They did a quick demo of some syntax support, but I don't have a lot of thoughts about it at this point.  It was interesting, and everything is definately going multicore.  I just don't see a lot of apps that need that type of simple split of for loops happening in the real world, maybe it's just me.  Probably with some more examples I will get what they are trying to do in a more concrete manner.

EDIT Part 2 - BizSpark - I wanted to update this post thanks to some feedback from Michael G (one of our users) about the Microsoft BizSpark program.  There is a program for companies less than 3 years old and under 1 million income called Microsoft BizSpark.

I went on to contact 47Hats.com about joining the program and received great feedback about the program.  The way the program works is that you basically find a mentor to help you move through the program.  They then sort of sponsor you into the program and answer questions, etc.  You can look for these mentors directly on the BizSpark site.

In exchange you get access to MSDN Pro with VSTS for basically nothing but the paperwork and keeping up the program.  Look through the docs and see if you qualify.  It can save you some serious bucks.

 

Comments

17 December 2008 #

Continuing on my previous post about the MSDN DevCon Orlando, there were several other sessions I attended. C# 4 Optional and named parameters are finally going to arrive in C#. I have to say this is one area where I still try to create optional params


18 December 2008 #

"The last time we priced the VSTS for 3 developers who each have multiple roles within the company the price was over $25,000"


You should talk to a good sales rep and see what you can work out. We were able to get VS Team Suite for the price of the "Team X Edition". Even then, Team Suite, IIRC, was under $5000 a year (Software Assurance) -- Team X was half that. TFS Workgroup (5 users) is included there. So right there, it's only $15K a year (includes MSDN, which everyone probably needs anyways).


18 December 2008 #

js_vistadb

Someone else suggested I speak with Dell for their volume license sales.  I personally find having to call someone to get a better deal on a commodity piece of software to be annoying, but thats just me. Sell it for the same price to everyone, there should not be a "special" level of customer just because they bought from someone or sent a coffee mug to a sales rep.


If that is the case (different companies have different prices) then why can't I find websites of resellers with these prices?  They all have the same price.  Could be a case of "private" pricing - you have to call to get their best deal.  Feh. Too much like used car price and bait switch tactics to me.  Give everyone your best price. Same reason why I shop from Amazon rather than other electronics stores.  I can see the prices before I buy, not have to go through a dozen stores and find the one that has the deal of the week in store, but not online, etc.


Sorry, personal rant. Smile


js_vistadb

18 December 2008 #

This is my final post about the MSDN DevCon here in Orlando last week. See the previous post for some more reading. I really enjoyed the show and learned a lot. One thing that we are developers are always struggling with is just keeping up to date with


Comments are closed

Powered by BlogEngine.NET and VistaDB

Log in