Which .Net Language Should We Adopt

  • After years of being a COBOL shop, with the occasional application being written in VB Classic, we're moving to the .Net world. At first we thought we'd just move to VB.Net, to leverage what little we know in VB to the new environment. But since we're all going to be learning something that appears to be significantly different from VB classic, we want to make sure we're making the correct choice.

    We know we can write in either, and end up (at least theoretically) with the same compiled code. But we want to start by developing a competency in just one. So my question is, if you had to make this decision, which language would you pick?

    Thanks,

    Mattie

  • Personally, C#. It's what all the cool kids seem to be doing these days, so it's more likely to allow you get jobs and/or recruit people into the jobs you have. But you know what, since it produces .NET, you could just as easily go with VB.NET or even J# and arrive at the same point.

    Oh, and I'd suggest picking up PowerShell in addition.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • I'd pick VB.NET. You have some classic VB experience and most syntax has stayed the same (If, While, etc...). I also like the greater verbosity of VB instead of "{ }". I like the fact that VB is not case-sensitive also. Also until SQL Server 2008 scripting in SSIS and SSRS was in VB.NET. If you are doing .NET 3.5 (2008) then VB does XML better than C# also.

    That being said when I moved to my current workplace, which was/is a FoxPro shop, and they/we were making the same choice you are, and VB is a lot more similar to FoxPro than C#, but they bought into the MS marketing of C# and went C# so that is what I am using now. I still like VB better.

  • Grant Fritchey (12/17/2008)


    Personally, C#. It's what all the cool kids seem to be doing these days, so it's more likely to allow you get jobs and/or recruit people into the jobs you have. But you know what, since it produces .NET, you could just as easily go with VB.NET or even J# and arrive at the same point.

    Oh, and I'd suggest picking up PowerShell in addition.

    Grant,

    What resources do you recommend for Powershell? Also, what are you using it for? I've avoided it up to this point because I haven't seen where I really need it.

  • Ha! At this point I don't see a need for it for anything except resume padding.

    I don't have a good resource for it yet. I've been floundering my way through it. I wrote a nice little script to run scripts through sqlcmd instead of writing a batch file. That's going to be in the book. Other than that, I haven't found a good reason to really drill down on it yet. I'm trying though. After all, I want my resume to look like St. Nick.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Grant Fritchey (12/17/2008)


    Ha! At this point I don't see a need for it for anything except resume padding.

    I don't have a good resource for it yet. I've been floundering my way through it. I wrote a nice little script to run scripts through sqlcmd instead of writing a batch file. That's going to be in the book. Other than that, I haven't found a good reason to really drill down on it yet. I'm trying though. After all, I want my resume to look like St. Nick.

    Glad that is the reason. I'd hate to think I wasn't learning something that I should be using every day.

  • I consider myself a VB6 guru (published author). Some people still natter about this question, but in my opinion, knowledgable people in the industry have already reached a consensus on the answer, and it is C#. The only reason to go to VB dot net is if yours is a shop like mine that already developed in VB6 (and maybe not even then).

  • It's in keeping with what I'm seeing. Our company has started switching over to C#. The newest project starting development is going with C# (and nHibernate, but that's a different story).

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • gcopeland (12/17/2008)


    I consider myself a VB6 guru (published author). Some people still natter about this question, but in my opinion, knowledgable people in the industry have already reached a consensus on the answer, and it is C#. The only reason to go to VB dot net is if yours is a shop like mine that already developed in VB6 (and maybe not even then).

    I'd disagree some as a lot of sessions at seminars/code camps that I have attended, granted, it isn't that many, the presenters have said they prefer VB.Net, but know both. I still think it is because MS is pushing C# with books and resources out for C# first.

    I do agree with the second part of your comment.

  • The poster didn't ask which language we preferred.

  • I'll throw in my 2 cents.

    I moved 2 shops I worked at from VB6 to C#. I specifically avoided moving to VB.Net because much of the old syntax would compile but was considered bad practice and would generate poorly performing applications. A shift to C# causes enough of a forced syntax change that the developers will tend to do a much better job of treating the change as a change to a new programming language. Although VB6 and VB.Net have a lot in common in the syntax, they are fundamentally very different. It is important to make sure the developers understand this.

  • Michael Earl (12/17/2008)


    Although VB6 and VB.Net have a lot in common in the syntax, they are fundamentally very different. It is important to make sure the developers understand this.

    I agree completely and that's the reason why it sometimes make sense to switch a shop from VB6 to C#. I didn't do it because the developers on my team would riot (no smiley).

  • gcopeland (12/17/2008)


    The poster didn't ask which language we preferred.

    Well, if I prefer one, that would be the one I would pick.

  • Well, actually, I prefer C#, but I also think that there's a critical mass behind it now that wasn't there until the last year or two. But now, yeah, that's the better choice.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • If you made your pick for good business and professional reasons, your pick would be incorrect.

    Have a great day!

Viewing 15 posts - 1 through 15 (of 42 total)

You must be logged in to reply to this topic. Login to reply