views:

70

answers:

3

We have a largely asp.net web form team (With some Oracle developers thrown in).

Question 1: Is it a good idea to start using asp.net MVC which will mean redevelopment of a number of standard controls for not much benefit.

Question 2: Is it a good idea to hire developers where there most recent skills are with asp.net MVC?

What are your thoughts on this?

Addendum, edit, etc: I doubt there is any benefit adopting MVC now, given the 100+ applications in this suite of products, and the maintenance/rework this will cause. Given this, is there any particular reason to hire MVC developers, as they won't be hitting the ground running, which is what I need now.

+10  A: 

Question 1: If you get no benefit from it, is it ever worth it? Why do you want to rewrite it if it's working? Are you having a hard time with unit testing your web form app? If so, then maybe MVC is the way to go. But if this is a mission critical application than rewriting it for just the sake of rewriting it seems kind of counter intuitive.

Question2: If you need MVC programmers then sure it's a good idea. However, your hiring decision should be based on their knowledge of programming in general, not on whatever flavor of the week development framework they know.

Jack Marchetti
+1 for pointing our the importance of general programming/development knowledge! A bright programmer can master a new framework much faster than bothering with firing and hiring developers based on what is popular at the moment.
BurningIce
While I love MVC... and just got a new job mostly because of my MVC skills, I do have to give +1 for the "hiring decision should be based on their knowledge of programming in general" comment. Why rewrite if a rewrite is not needed?? If a full rewrite is overdue, then by all means go with MVC and do it from the ground up rather than going ground up with ASP.NET Forms. If you are doing it to peel off the ASP.NET Forms sticker and put on the MVC sticker... well its just a bad idea. As for a hybrid... I am not a fan. I would say only do it if you had to because your job depends on it
CrazyDart
@CrazyDart - I like MVC a lot too. I was waiting for the longest for a relatively small project to finally build something production ready with it. Took some getting used to, but I think all future projects of mine will be with MVC. I'm still much more comfortable with Web Forms, but MVC is fantastic so far and so much "cleaner"
Jack Marchetti
+1  A: 

In regards to question 2 I would suggest to be very upfront with them about how soon (if at all) they will be using MVC. I've met a few MVC developers that would hate the idea to go back to WebForms and that has been a deal-breaker for them.

As far as their skills is concerned, MVC developers tend to know (and be comfortable) with raw web development (HTTP/HTML/state-less) and those skills are handy even when you are doing WebForms.

Hector
A: 

It doesn't sound like you need MVC at all, until you start developing new applications.

Question 1: it would be a very bad idea to redevelop everything. If it ain't broke, don't fix. Unless you want to lose money... or your job.

Question 2: Not unless you need them. Which you don't unless you are developing new apps that would benefit from mvc.

Addendum: There are a few reasons for hiring MVC developers:

a. To future proof your business. The day may come when you need those skills in your team. However, it might be cheaper to head hunt as the need arises. Or else boost the morale of your team by offering the opportunity to train in MVC whilst they mentor a junior web form developer.

b. To future proof your CV. If you have led a team of MVC developers, your job prospects will brighten. However, if your boss loses money you will get the sack and that will be on the record.

c. You can mix and match MVC with plain vanilla ASP.NET. So as new requirements come up in your app, you can build them in MVC. However, what will the morale be in your core team if the new boys get all the fun stuff and they get the dross?

awrigley