views:

2026

answers:

8

Hi all,

Currently thinking about pitching the argument for us migration from vs 2005 (winforms) to vs 2008 (wpf). My main point being the new UI design features.

I am slightly worried that we will put loads of work into upgrading everything only for us to have to do the same when 2010 comes along? So this leads to also consider skipping 2008 and just adopting 2010 as soon as its released.

Anyone been in the similar situation?

Also any arguments for and against for welcomed.

Cheers.

+7  A: 

Personally I think it will be fairly safe to go to 2008 as 2010 is just extensions on top of it and enhancements for Visual Studio design time support for WPF. Therefore, the transition shouldn't be all that complicated. More like a 2005-2008 upgrade of a Win Forms or ASP.NET project, which is a cakewalk.

I find that it is better to upgrade sooner than later, so that you don't get "bogged down" with the existing framework/system. If you continue building on something that you will ultimately replace, it becomes harder and harder to justify to management to move.

Mitchel Sellers
Agreed, as far as I can see WPF doesn't change that much in .NET4 so you won't be wasting any effort in going to WPF now. What they've announced so far for VS2010 is that the WPF tools are getting better. I take that to mean they will merge Expression Blend into VS.
U62
@RHM: About time the expression takes over for VS's designer surface. Having used expression, I have to say those guys are the closest yet to making me stop hand coding html.
Chris Lively
@Mitchel 2010 will allow you to target CLR version 4. So the move is more akin to 2003 to 2005. However Rico has mentioned that 2010 will allow you to target version 2 of the CLR.
Sam Saffron
@sambo99 In reality though, the change to 2010 from 2008 is not going to introduce as many breaking changes to the framework, and due to targeting it is much more like the 2005-2008 upgrade, that is at least my general opinion, as 2003-2005 was NOT always easy...
Mitchel Sellers
Cheers guys and to everyone else who replied.
+1  A: 

I was in the same situation and opted to go down the MSDN subscription route, where I get all the new development tools as they come out. I have a spare machine the I use for 'the next version' of the compiler, that I use for migration testing, thus I at least know what to expect when the decision has to be made. This works well for me, and I guess if you have a decent virtualisation set-up all the better.

New compiler versions didn't break my build, but did hurt many of my automated tests, and add-in productivity tools. Basically. you need regression tests of some kind to ascertain the damage moving to a new version is likely to cause.

Shane MacLaughlin
+1  A: 

Your question doesn't quite make sense to me. Are you asking if you should migrate existing applications from Winforms to WPF? Or do you just want to start making new WPF applications but still work with existing Winform projects?

Either way, migrating from Visual Studio 2005 to 2008 is extremely simple. Existing Winform projects request a conversion which takes a few seconds and has never failed for me (dozens of solutions and 100s of projects converted over the last couple months).

However, this has nothing to do with Winforms and WPF.

If you want to start building WPF apps there is no reason to wait for VS 2010. VS 2008 has excellent support for both application types.

Sailing Judo
+1  A: 

I agree with those suggesting adopting VS 2008 now. One thing to consider though is that WPF comes with a fairly high learning curve. I've had some limited exposure to WPF and Silverlight and am finding them to be a complete "mind change" from the WinForms model. Good luck.

+1  A: 

I'd make the jump now if I was in your shoes. It'll minimize the impact of the 2010 jump down the line by getting you used to the many new features you'll already have to get used to. Additionally you'll get to enjoy many months of better performance and features before 2010 is available.

Echostorm
A: 

At the moment I've made it a practice to upgrade to the latest version as soon as possible. Although for an application developer it's got its own pitfalls, Ex. .Net Framework 3.5 is not found on most computers, and if I ship the bootstrap installer which is 20 MB it insists on an active Internet connection to download the files needed. The full installer is 198 MBs and though I don't like it, I have to ship it along with the software.

For a web developer though the problem is easier to solve, you only have to worry about making it work at the server and things work automatically for the users. So if you're making a web solution I think Migration is easier.

If you're making an application software, I think you should weigh the advantages that migration offers with the changes it will make to your deployment scheme. I don't know how many people will agree with this, but I believe that application developers should be one upgrade behind.

Cyril Gupta
+1  A: 

Winforms vs WPF is a world of difference. It's a much bigger change than looking at migrating from 2005 to 2008. I would not have that as the driving reason to upgrade to 2008. I also have no idea of the scope of your project and if WPF is really the best direction to take your product. Or if expression blend is all the tooling you need to get these UIs going.

Instead of pitching the WPF pitch I would focus on the real benefits you can get immediately. With 2008 you have multi-targeting so you can build all the applications you used to build in 2005 and have them target the 2.0 framework. In my experience I find 2008 faster and the refactoring improvements are a great addition. There are a ton of other new improvements in 2008 which you get out-of-the-box and can start using from day 1.

According to Rico the head architect of 2010 you will get even richer multi-targetting with 2010 which will allow you to adopt 2010 earlier and not force you to use CLR version 4 from get go.

Sam Saffron
A: 

There is an underlying process question here that I think shouldn't be overlooked:

When is the proper time to upgrade development tools and production environments?

On the one hand you could skip 2008 though this leads to the question of when would 2010 be adopted: Upon first release, first service pack release, or some other milestone? This may lead to creating more legacy code if you stay locked in on 2005 using the 2.0 framework and others move onto other frameworks. Even if you switch to 2008, it can still target the 2.0 framework so that that upgrade of the .Net framework may happen separately which some may like. Another key point in this camp is who does the research to evaluate the differences between versions to see which is worth the shift.

On the other, you could suggest that there be a continuous strategy of preparing to upgrade every 3 years or so as the Visual Studio releases of the past decade were roughly 2002, 2003, 2005 and 2008 so far. This would seem to me to be the better approach as there is more of a constant evolution going on rather than staying locked in at all. In this case there may be new features that get used since the new tools come quickly compared to the first case where the shift may be viewed as a large step whereas in this case it isn't that big since you are always looking to move in 2-3 years.

Course as I say this my old work machine has Visual Studio 2003, 2005 and 2008, so I am kind of in that latter camp which makes sense to me. I remember 10 years ago my work machine had NT 4.0, Pentium II 333 MHz processor, 64 MB of RAM and a 4 GB hard drive that had to be 2 partitions as it wouldn't let one partition be that big. Now my work machine has 4 GB of RAM alone, a 2.66 GHz dual core processor and a 160 GB hard drive. Could I in another 10 years have a machine with hundreds of GBs of RAM? While that may seem ridiculous, if I were sharing a machine with a handful of other developers, it may make sense to divide up a huge amount of memory amongst us all.

JB King