I am currently running a team of 5 VB.Net developers and have decided to make a switch to C#. The team builds and maintains around 20 different applications that run our whole platform, so the code-base is fairly moderately sized.There are several factors for making the switch, but the biggest is to overcome recruitment issues. VB.Net developers are hard to come by in our region and over the course of this year we will be recruiting 3 or 4 more. I work with several recruitment agencies to find talent and the feedback is fairly overwhelming for this point. All of our developers already have C# experience, so I have no concerns there.My question is not so much about the viability of switching to C#, as we are already certain on this, however what I need advice on is the approach. The way I see it there are several options:We use the team to convert the entire code base at once and then work in C# moving forward.We factor in time to convert smaller chunks of the code base during project development.We outsource the conversion to another agencyWe employ a new C# developer and get them started on the conversion whilst slowly migrating the team overI'm sure there are companies who have had to make this switch in the past, so really hoping someone has advice from experience.The question (for clarity): What is the best approach for migrating a team from VB.Net to C# with all of the considerations above?
Convert a team from VB.Net to C#.Net
c#;vb.net;migration
If you currently have VB.NET devs who know C#, I don't think all 20 applications need any rewriting all at once. It's just too much coding, testing, rolling out and for what? Because your next few hires won't understand the code? Don't confuse C# coders who just hate VB with their not being able to understand it at all or with little training.I would do the following:New apps get coded in C#.Current apps needing significant changes, get converted to C#.New hires need to learn some VB even if it is a way to convert code or do minor trouble-shooting. They need to learn the systems anyway. They're not going to handle production code on day one. Have a plan to on board them. If they have contempt for VB, it's a great incentive to get it converted. If there are any new projects that are not too large, they could be involved in those. VB dev is just a part of their job for a limited amount of time. Don't let them feel stuck forever.Determine apps that probably never need to be converted. This may change over time. Make sure this is enough for current team to handle. You may have some apps get phased-out. A long-term plan where you address things as needed and convert in smaller chunks won't seem like such an over-whelming project. Bringing on 3 new devs is a major task. Don't convert code just for the sake of converting it. You may have apps no one will ever look at again.