Login or Sign Up to become a member!
LessThanDot Sit Logo

LessThanDot

IT Professionals

Less Than Dot is a community of passionate IT professionals and enthusiasts dedicated to sharing technical knowledge, experience, and assistance. Inside you will find reference materials, interesting technical discussions, and expert tips and commentary. Once you register for an account you will have immediate access to the forums and all past articles and commentaries.

LTD Social Sitings

Lessthandot twitter Lessthandot Linkedin Lessthandot friendfeed Lessthandot facebook Lessthandot rss

Note: Watch for social icons on posts by your favorite authors to follow their postings on these and other social sites.

Your profile

    Search

    XML Feeds

    Google Ads

    « Product Selection, Reviewing the ProcessDynamic or static languages »
    comments

    Should I abandon VB.Net? This is a question that crosses my mind from time to time, but lately it is getting stronger. At least it would make my life simpler. Copy paste coding gets even better when you are a C# programmer since there are so much more examples out there. The community is bigger and better for C#. Even Microsoft discourages the use of VB.Net. If you ever go to something like techdays you will find that VB.Net is nowhere to be found. In that community you will be mocked and ridiculed if you tell them you are a VB.Net programmer. You are looked down upon, even by the spaghetti programmers. But then the .Net community seems to be rude and unfriendly whatever you do. I noticed that when I did my little powershell series over the weekend.

    So the question crosses my mind if I was wrong to choose VB.Net and to choose Winforms. I guess the same questions are asked by the VB6 community. And the Delphi community. Apparently even the WPF community is already feeling the love draining away. Did you notice these are all Microsoft communities. Microsoft seems to be in the habit of creating things and then abandoning them for the next big thing without even trying to make it easy for people to convert their old code.

    Do you know how hard it is to even find VB.Net developer on the web that have great blogs? I guess most of them decided to blog in C# instead and get more out of the experience or else they are just not there.

    I have been trying to convince Scott Hanselman to incorporate a few lines of VB.Net in his keynote for the 2011 Belgian Techdays. It feels like an uphill battle. Considering the result of this poll I think he will be even less inclined now.

    I don't blame them, they are in the business of making money and they should do what they think they have to do.

    Do I think I should change because of all of the reasons above? Nope, not any time soon. I will keep using VB.Net and winforms for as long as I can and that will be awhile. Rewriting an application just because of a new technology is not a good move, it looses you money in the short and long term. You are better of adding features to your existing application.

    The first thing to think about when things like this arise, is if they add value to your situation. Don't change things for the sake of change, change things for the better. Let's not forget that even the best and brightest get it wrong.

    I guess being philosophical from time to time comes with old age.

    About the Author

    User bio imageChris is awesome.
    Social SitingsTwitterHomePageLTD RSS Feed
    vb.net
    InstapaperVote on HN

    176 comments

    Comment from: WimTB [Member] Email
    WimTB As someone from the Delphi community, I have wondered for several years if I should abandon Delphi in favor of C# and .NET. But still I'm working on Delphi projects for the WIN32 platform which cannot be migrated to .NET just yet. Then again, with Delphi I have a choice between .NET development or WIN32 development. VB.NET is only focused on .NET and competes heavily with other .NET languages.
    When you go looking for .NET books, you are likely to find books that mention VB.NET instead of C#. Especially when you focus on books about ASP.NET, where VB.NET seems to be more accepted than C#. The reason -of course- is that the VB syntax is easier to follow than C#. And C# is a lot easier than the older C and C++ languages. (But about as easy as Pascal/Delphi.)
    Real developers don't care about the programming languages, though. Being multilingual is good because you focus less on the language and more on the algorithms and techniques required to reach your goal. VB.NET is just a tool, just like C#, Delphi, PHP, Forth, COBOL and whatever else. As developer you first analyse what needs to be done, then decide which tools would be preferred to solve the whole thing. And sometimes it will be VB.NET, or C#, or Delphi, Or whatever else. And in rare situations you'll just end up mixing multiple languages.
    VB.NET isn't bad but in most cases you end up with C# or something else as a better alternative.
    02/28/11 @ 05:05
    Comment from: wqweto [Visitor]
    wqweto >> As developer you first analyse what needs
    >> to be done, then decide which tools would
    >> be preferred to solve the whole thing.

    And if it's not C# (or any tool you are curently decent at) you just don't start the project :-))
    02/28/11 @ 06:31
    Comment from: Meta-Knight [Visitor]
    Meta-Knight I'd say it is more and more fun to be a VB programmer actually. With VB10 it's pretty much on par with C#. Sure most examples are in C# but you can convert a sample to VB pretty easily, there are even automatic converters on the web. I wouldn't mind switching to C# but I'm happy to code in VB.

    I'm tired of Winforms, however. It's an antiquated technology with an inefficient forms designer which doesn't play nice with version control systems. It was designed with .NET version 1 in mind, and not updated much since. I'd love to switch to a new UI technology... But you're right, it's not reasonable to do this for existing, mature applications.
    02/28/11 @ 07:39
    Comment from: JurkMonkey [Member] Email
    JurkMonkey I started in VB.Net and quickly switched to C# once starting my professional career. My personal feelings towards VB are not positive in most cases. I will say that I love working in C# and I find a lot of very useful tools out there that are designed to work specifically with the C# configuration of VS.

    As for Meta-Knight's comments about version control - we use Subversion with VisualSVN and it has been amazing. So much easier to setup and use than the MS Team Foundation stuff!
    02/28/11 @ 08:20
    Comment from: ThatRickGuy [Member]
    ThatRickGuy C#, VB.Net, the arguement of choosing one over the other, IMO has less merrit than ever before. The two languages are becoming more and more similar. The IDE dev teams have merged. The technologies available to one are almost absolutely available to the other.

    There are a few exceptions ofcourse, but that number is shrinking with every releae.

    Personally, I think that the VB.Net IDE in VS2010 is much more forgiving and friendly. Auto parenthesies, case insensitivity and correction, easier to click auto-correct boxes, autoformating lines, etc...

    My personal preference is to VB.Net. I know C#, I can work in it, but it drives me crazy having to ctrl-k-d constantly, dealing with semi-colons, the variety of grouping delimiters <({[ and curly bracket hell. I wouldn't be surprised to learn of C# market dominance, although I'd really like to see some more improvements in the UI before I make the jump.

    As for presentation layer, I've been doing nothing but Silverlight and WPF for the last 2 years, and haven't missed GDI at all.
    02/28/11 @ 10:37
    Comment from: JurkMonkey [Member] Email
    JurkMonkey I find Rick's comment amusing with the Ctrl+K and Ctrl+D comment. I didn't even know what they did until I googled it.

    I might recommend CodeRush from DevExpress. They have a 30 Day Free trial on their website www.devexpress.com and it is absolutely amazing. I have a license for their full version - well worth the money!
    02/28/11 @ 12:05
    Comment from: chopstik [Member]
    chopstik Without going into the technical merits of your post, I agree 100% with your thoughts on re-writing or switching just for the sake of switching. There are times where things should be rewritten but that should be a business determination, not a developer's. At my office, we are in the process of rewriting many of our existing applications, but that is to create better functionality and to streamline the operation and not just because we necessarily want to switch from Delphi to C#. But that is driven by the business, not the desire of developers to just rewrite code using the newest language/framework/etc. Your thoughts are in line with that and are completely appropriate.
    02/28/11 @ 15:44
    Comment from: Doug [Visitor]
    Doug If you are just making traditional business apps, then I'd be asking, why not switch to web-based applications that work on every platform, including mobile.

    See for example jquery mobile, or GWT with eclipse if you want to stick with an IDE. Or see Drupal, which you can use to create just about any kind of web app you can think of, with little to no programming at all (using CCK & Views).

    If you want to transfer your VB knowledge to the web world, check out NSBasic as one option. Or there is simple (on google code), a VB for android development.
    03/01/11 @ 05:45
    Comment from: Christiaan Baes (chrissie1) [Member]
    Christiaan Baes (chrissie1) I really need rich-client. Webapplications just aren't good enough

    Here is a very small example of what I need to do.

    Fibercolor
    03/01/11 @ 06:02
    Comment from: Wobbs [Visitor]
    Wobbs Find the best tool for the job I say.

    I do fear for VB.NET even though MS is trying to bring VB and C# closer together as language design continues. One thing I will say in VB's favour is "XML Literals". VB is superb at handling this and as far as I'm aware its not something C# will get in the near future.

    I love VB's syntax Vs C# but most jobs these days require you to use C# and any VB Dev's seem to be assigned roles of keeping VB6 or legacy VB.NET apps going rather than being at the forefront of application design.
    03/01/11 @ 07:22
    Comment from: Christiaan Baes (chrissie1) [Member]
    Christiaan Baes (chrissie1) YOu can find more comments here

    ycombinator

    and

    reddit
    03/01/11 @ 07:51
    Comment from: C#411 [Visitor] Email · http://www.csharp411.com
    C#411 The beauty of .NET is you can switch from VB.NET to C# (or any other .NET language such as F#) and not have to rewrite all of your existing code. You can combine multiple .NET languages in the same .EXE or .DLL. You could switch today and start writing all of your new source code files in C#.

    I prefer C# over VB.NET because C# is more concise, and as you say, it seems to be much more popular with Microsoft and the developer community. But VB.NET itself is not a bad language, so if you are comfortable and productive and happy with it, then why change?
    03/01/11 @ 08:08
    Comment from: Joshua Schmidlkofer [Visitor]
    Joshua Schmidlkofer How can anyone love VB? I know that you get used to things, but VB is a horrible language. I did once like it, and understanding libraries of any lang can make it seem indespensible. However after I switched to python I hated VB more and more. The only thing I missed was the simple gui. But with the baggage of the language, the fast gui toolkit wasn't worth it.
    I haven't used it since VB6, but I can't imagine that its improved.

    C# is at least a nod to good language design. Nothing is perfect, but join the world of not-heinous-affront-to-all-thats-holy. Leave VB.
    03/01/11 @ 08:14
    Comment from: JC [Visitor] Email
    JC I think you are worrying about the wrong point. If you like VB, stick with it. When you have spare time, learn other languages built on top of the .NET framework (C# certainly, but there are a lot of others - http://www.dotnetlanguages.net/dnl/resources.aspx). The learning curve is fairly soft if you already work with .NET.

    You should seriously think about diversifying away from WinForms. That is definitely a thing of the past. Most clients are moving toward web-based applications. So take the time to learn ASP.NET. There are two variants. You will find WebForms easy, since they abstract away the underlying web technologies. But you will gain a deeper understanding of web programming if you start with MVC instead.

    Good luck. I sympathize, but in this business we have to keep teaching ourselves new stuff or we get left behind. It's not about our personal preferences - it's about what the business side demands.
    03/01/11 @ 08:15
    Comment from: Dan [Visitor]
    Dan VB4LIFE! My theory has always been, if I have to take a extra half a second per line to translate my code in my head into C# when I could have just written it in VB and been done with it, that's an extra half a second times x lines of code I'm wasting each day. So let people argue about it all day long.. while you're doing that i'll be here writing in VB and getting my stuff done.
    03/01/11 @ 08:41
    Comment from: Wayne [Visitor] · http://www.crazyontap.com
    Wayne It was clear from version 1.0 that VB.NET was going to be a second-class language in the .NET community. My only Windows development before .NET was in VB6 but I haven't written a line of VB.NET -- I moved immediately over to C#. The writing was on the wall then and it hasn't changed in all these years.

    Your mistake was going with VB.NET from the start. Now the only reason you stay is the sunk cost of knowing VB.NET more than C#.
    03/01/11 @ 09:26
    Comment from: Mike [Visitor] · http://blog.m1key.me
    Mike Well you know what they say, learn one new programming language every year. Although I understand that learning a new language is one thing and rewriting the whole app is another.

    However with .NET you can use both, I believe, so maybe it's a good idea to begin slow migration.

    Cheers
    03/01/11 @ 10:24
    Comment from: Bill Robertson [Visitor]
    Bill Robertson "Microsoft seems to be in the habit of creating things and then abandoning them..." - Ding!

    If you pick a successor product from Microsoft to do your development with, then what will happen when that product is also deemed undesirable?
    03/01/11 @ 10:33
    Comment from: Chris [Visitor]
    Chris Josh S. not sure your post makes any sense, and I'm not trying to be nasty, but I hear this pseudo-position frequently about VB.Net and I can't see the merit in it at all. The 'libraries' are the EXACT same libraries you use in C#, it's all the .NET Framework. Any decent developer should (IMO) be dropping the VB namespace anyway, thats the ONLY 'library' native to VB. If you remove that from your project, you are coding C# w/ a background compiler and case-insensitivity (which is stupid). So, they are one and the same, w/ (as some else mentioned) more forgiveness in the IDE. VB.Net (the IDE) has more polish to it, just works better. There is nothing 'unholy' about VB.Net, it's built on the exact same foundation is C#. So, I would have to ask you to back-up the heinous-affront-to-all-thats-holy position you have on VB.Net. I code both, but given the choice, always code VB.Net. If it dies, I'm good either way, but it would be unfortunate.
    03/01/11 @ 10:59
    Comment from: kevin88 [Member] Email
    kevin88 Hello

    I am a student currently using vb.net for development of a University administration system. If it would be possible would you be able to provide me with some advice on the coding I have done, I would be extremely grateful if you could advise or help me, would this be possible?

    Thank you
    Regards
    Kevin
    03/01/11 @ 11:44
    Comment from: Christiaan Baes (chrissie1) [Member]
    Christiaan Baes (chrissie1) @kevin88 yeah sure you can ask that in our forums.
    03/01/11 @ 11:51
    Comment from: Nils [Visitor]
    Nils Microsoft has a tendency to let things rot, but seriously VB.Net was an attempt to make it "easy" to keep crusty old VB6 code running.

    Yes. Leave it. VB.NET is an abomination.
    03/01/11 @ 12:20
    Comment from: Eli Weinstock-Herman (tarwn) [Member]
    Eli Weinstock-Herman (tarwn) Interesting, when I google "Abomination programming language" I get: C++, C++, C#, Sanscript, Lambda calculus, C++, C, Google Languages (C++, java, javascript, python, go), ANT (java), and a techrepublic search.

    I have used 15+ languages (possibly as many as 20 or 30, depending on your definition) and I'm sorry but I find very little difference in C# and VB.net syntax that would make me choose one over the other. I've seen good and bad code in both. The IDE offers different functionality and there are some different constructs depending on the choice, but overall neither really has that many more features than the other. What I find most amusing is the "VB.Net is just for VB-ers" rally cry of the people that are using C# (the language to convert Java-ers).

    Why do we assume C# (as a wedge to get people off of Java) has more right to live than VB.net (which has a longer history than C#?)

    And finally, if you can't tell me why language A is better than language B (and your argument isn't predicated on your own inability to write clean code in both languages), then you're just responding to peer pressure and haven't actually made a valid choice.

    (Chrissie, none of that was to you, it was to the commentators that want to argue syntax without actually providing real value to the conversation)
    03/01/11 @ 13:04
    Comment from: terry [Visitor]
    terry >>"I haven't used it since VB6, but I can't imagine that its improved."
    Wow dude you speak from pure ignorance then. If you really don't know its best not to comment but you should already know that.

    >>"Personally, I think that the VB.Net IDE in VS2010 is much more forgiving and friendly. Auto parenthesies, case insensitivity and correction, easier to click auto-correct boxes, autoformating lines, etc..."

    +500 This is my point exactly. I've coded projects in C# and by far this is the biggest sore point beyond syntax and case sensitivity with C# compared to VB.NET. The IDE just isn't as polished around C# compared to VB.NET. This ends up making a big difference in my productivity on a day to day basis. Plus as many have pointed out before Microsoft has already committed to making VB.NET and C# have the same feature set. Just try things out in VS 2010. Every feature is present in both languages for the most part. I love VB.NET and for me semicolons and braces are just extra noise that clutter up the code. Having said that I have lots of experience with C/C++ as well as C# so my opinion isn't based on ignorance like some may think. I just prefer VB.NET more.


    03/01/11 @ 13:14
    Comment from: Christiaan Baes (chrissie1) [Member]
    Christiaan Baes (chrissie1) @terry I read most of the comments here and on reddit an ycombinator it's amazing how many people just give comments that clearly show they didn't read the post and others that never used VB.Net but still have an opinion on it.
    03/01/11 @ 13:24
    Comment from: Chris [Visitor]
    Chris It's funny how many people you see bashing VB.Net who haven't even touched it. I think a lot of people don't understand that it runs on the same framework as C#.
    03/01/11 @ 13:24
    Comment from: Anon [Visitor]
    Anon - "The reason -of course- is that the VB syntax is easier to follow than C#"

    That's about the funniest thing I have heard all week. VB syntax is terrible.
    03/01/11 @ 13:48
    Comment from: Luca [Visitor]
    Luca Hey, you can even code in ruby for dotnet.
    I'm coding in c# and pay the bills but, i assure you, on my less free time i'm on a Mac with objective c.
    As you said Microsoft centric developers tends to use always the new toy.
    Apple Frameworks do exacltly what you expect as dotnet dont.
    Good code with good patterns.
    MVC, Singletons etc.. are not toys for geeks, they are a way to code well and Frameworks Who respect the patterns they intend to use Are good Frameworks.
    Microsoft patterns implementation, best pratices and new Miracle solutions Are never been the right solution, just a new toy, at my advice.

    Just my Two cents and sry for my eng.
    03/01/11 @ 15:40
    Comment from: JonO [Visitor] Email
    JonO This is such a stupid thing to (still) be talking about. C# is a fine language. So is VB.NET. Both most C# kiddies (especially the one who have never even looked at C++ or C) want to believe that because their syntax is different, it is somehow superior. Here's their clue. They are both compiled to the same runtime. I wrote both. I prefer VB because I think that, being more verbose, it is more easily maintainable, but have, occasionally, spent years writing C# exclusively because that's what the project was using. Isn't it time to end the pissing contest?
    03/02/11 @ 06:42
    Comment from: Anonymous Coward [Visitor]
    Anonymous Coward What is stopping the switch? A good dev will pick a new language syntax up quickly, VB and C# have the same framework underneath so it's not like you have to learn a whole new bunch of technologies.

    I've used c# commercially for ~10 years and have recently learned VB so I can teach it to university students. Whilst VB remains functionally equivalent, the c syntax is just much clearer. VB was only added to the framework to give VB classic devs a career path, and everything you state suggests VB is nearing the end of its *productive* life.

    My advice: Get ahead of the game and jump ship
    03/02/11 @ 07:00
    Comment from: Snake [Visitor]
    Snake Honestly, VB.NET was created to support VB6 developers to go to .NET easily, hence the Microsoft.VisualBasic support, the support for Option Strict Off, Option Explicit Off.

    If they didn't do this, then .NET might not have had the same start as they did.

    Still today, if you create a new project in Visual Studio you have the reference to Microsoft.VisualBasic, and (iirc) Option Strict is still Off. And that makes it easier to make mistakes and learn programming in a bad way (the same way that PHP is done by many newbies).

    They should have never gone to VB 10, they should have pushed more to go to C#.

    Oh and for converters to new versions: if you want to change you have to break code. Simple as that.

    Your choice for Winforms though is not as bad. Since Winforms is still supported and used by many people. It has its caveats but it's still usable. I guess that developing on legacy apps requires knowledge on Winforms.

    But these days creating a new project using VB.NET is a no go. If you remove the non-strict stuff, then it might be a maybe-go. But I would never hire somebody who, on his resume, has VB.NET. 99% of the time that would mean that the person is too old and too stubborn to change.
    03/02/11 @ 07:03
    Comment from: Rodrigo T. [Visitor] · http://www.rtisatto.com
    Rodrigo T. Hi! I program in several languages for several years, since Clipper in 1993 and VB6 in 1998 - up java, c#, vb.NET, and many others. I can say that this discussion that the community creates is silly, because today almost all languages do the same things, in different ways. Especially about vb.NET and c#, everything is interchangeable and convertible, then it makes sense to choose A or B only because someone said it is "more elegant" or "better". Today these technologies are so mature and equivalents, which can be done in Clipper, Cobol and other dead languages, under .NET with the same efficiency. So philosophies aside, the good programmer to choose just the syntax that feels more comfortable, and the geeks call that a fight over language, we can only say: the English language is better than the French or German?
    03/02/11 @ 07:03
    Comment from: john barnes [Visitor] · http://www.searchpartner.pro
    john barnes I wasn't formally trained as a programmer, just picked it up as I went along starting with VBScript and Javascript. I for one appreciate stricter languages because they force me to be a more careful coder. I had a business partner who refused to add option explicit to his ASP webpages, because it forced him to dim all his vars...I saw it as a good way to catch errors before code was released.

    OTOH, I've stared endlessly at JS in Visual Studio not picking up a case-sensitive error...at least in C# it flags an error, and I don't mind even if it doesn't tell me why, since I _should_ know what's wrong, and it _won't_ compile if I don't fix it. But yeah, keeping track of curly braces does slow you down a little :)

    So it's not really about how strict the language is, IMHO, but how good the IDE is, and it seems like that's the larger issue in this thread?
    03/02/11 @ 07:04
    Dean I agree with C#411 - you don't need to chose between a complete rewrite of your application in C# or adding new features. Simply add the new features in C#, leave the VB code as it is. I'd say that the more bilingual you get, the better - then you will have the best of both worlds.
    03/02/11 @ 07:04
    Comment from: Parrotlover77 [Visitor] · http://www.avianwaves.com
    Parrotlover77 Such a peculiar discussion to me...

    I primarily code in VB.Net because our shop standardized on that language many years ago, but it's trivial for me to switch between VB.Net and C#. The biggest gotcha for me is forgetting case sensitivity when I'm not intellisensing since VB.Net takes care of that for you (since it's not case sensitive and C# is).

    That's not exactly a compelling reason to strongly and vigorously prefer one over the other IMHO!

    Honestly, it's gotten now that when I see code examples on the net, I can pretty much translate it on the fly in my head. If I'm copypasting, that's the only time there's a time sink and only because of the busy work of retyping the differences. For more than five or so lines, using a converstion site is the way to go.

    I never understood emotionally charged arguments of one versus the other. And it does seem there is a large C# crowd that looks "down" on VB.Net. I just don't get it.

    Even MS teams get in on it. For example, it's not trivial to use VB.Net for XNA. There is no need for that limitation (note: it's possible, just not officially supported) except for maybe less work on MS's part.

    My opinion is that if it compiles to CLR, MS should support it. The language that gets you to the CLR binary should be immaterial.

    On a side note, apparently requests for VB.Net for Windows Phone 7 was so strong, they added support for VB.Net to the WP7 SDK ahead of schedule. That doesn't sound like a dying language to me. Second class citizen, maybe, but not dying.
    03/02/11 @ 07:07
    Comment from: Kraeven [Visitor] Email · http://kaoticreality.blogspot.com
    Kraeven VB.NET and C# are both fine languages.

    It's just the people programming believe that if they use C# it shows that they have a better skill set because they can work with all of those brackets and VB looks like a very simple language in comparison.

    Why make it harder on yourself, just for showing off?
    If you're using C# just because it looks more difficult, then that's your first programming fault.

    I use VB because it the cleanest language I've seen so far. Easy to read and maintain. Especially with the Visual Studio 2010 IDE, you just got to love using VB.NET. The code practically writes itself.. ;-)
    03/02/11 @ 07:08
    Comment from: Steve Naidamast [Visitor] · http://www.blackfalconsoftware.com
    Steve Naidamast The debates over VB.NET versus C# have absolutely no merit but to promote the popular mythology that somehow a language with curly-braces is more elegant than one without.

    VB.NET and C# function the exact same way internally since they both must compile against the CLR. For the few actual differences in capabilities between the two languages they are merely technical and have nothing to do with capability.

    I develop in both languages fluently and prefer VB.NET to C# simply because I prefer its style and syntax. To me, VB.NET is the more elegant of the two since the syntax is more readable with less extraneous and ambiguous characters...
    03/02/11 @ 07:09
    Comment from: FJD [Visitor]
    FJD Whether you code in C# or vb.net is just a personal preference.The code you write is exactly the same just different syntax.I code in both visual basic.net and C# and they are both second nature to me.You use the same .net libraries so I would say that if you like coding in vb.net that you should stick with it.Learning C# would be a bonus but it is not a must.

    As for microsoft ever abandoning vb.net...I strongly doubt that would ever happen or at least not in the near future.
    03/02/11 @ 07:15
    Comment from: Lemorlenny [Visitor]
    Lemorlenny I can do in VB6 everything .NET does. :P.

    03/02/11 @ 07:20
    Comment from: Rogerio [Visitor]
    Rogerio VB.NET is used in several systems. All over the world. VB.NET is a very nice and EASY language. BUT... MICROSOFT does not respect the community of developers. ASP.NET does not have the same sucess as Classic ASP had in the past. That explains why MICROSOFT is losing market fast. MICROSOFT often try to create ridiculos things like code behind to Web Development, LINQ... etc. That explains why DEVELOPERS go to another language. MICROSOFT does not respect the community of developers.
    03/02/11 @ 07:20
    Comment from: Alan Burkhart [Visitor] · http://alanburkhart.blogspot.com/
    Alan Burkhart My stint as a professional programmer started and ended back in the 80s. At that time I was mostly writing apps with dBaseII and Lotus macros. And Wang glossaries, if anyone else is old enough to remember them.

    During that time I also grew to love the BASIC language. You could do almost anything with it. I used several different versions including TI Basic.

    Programming became more of a hobby than a profession and I'm still a "recreational coder." And I still use BASIC. Nowadays it's VB.Net. It's a great language and I don't care what some of the C# fanboys say, the VB syntax is far better than C#. If I get in the mood for semicolons and curly braces, I'll go write some JavaScript.
    03/02/11 @ 07:23
    Comment from: LightStamp [Visitor]
    LightStamp I ran a VB User Group for years in the late 90's then was an early adopter of .NET. At the time in 2000, there were a few that wanted to jump to the new sexy C# language. I stuck with VB.NET and change the user group to VB.NET User group. At the time Microsoft wanted me to change that to Visual Studio user group and I wouldn't so they seeded a competing user group which after several months rooted our group out.
    So yes, Microsoft has been pushing C# for over 10 years now. And in my area ASP.NET means C# although I've written a ton of ASP.NET apps in VB.NET.
    Anyway after 10+ years of Microsoft C# promotion, employers are specifying most new jobs as C#. They don't know why other than Microsoft seems to back that language over VB.NET.
    I could write a whole article on VS10's abandonment of Compact Framework and SQL Server CE! But don't even get me started.
    03/02/11 @ 07:29
    Comment from: ZekeZ [Visitor]
    ZekeZ From a hiring perspective, the available pool of qualified C# candidates is much larger than VB, so from a business decision making process, the choice is easy.

    From a job seeker's perspective, the number of C# openings is much higher that that for VB.

    Supply and demand, fellas. Simple as that.
    03/02/11 @ 07:33
    Comment from: Sean Cullinan [Visitor] · http://www.blendblog.net
    Sean Cullinan Unfortunately I do see things trending away from VB. .Net is .net and it isn't that hard to transition but it is a bit annoying for those of us who started in VB6.

    While I don't update it as often as I should, my blog an examples are VB based for the most part. I've even converted a few C# projects to VB.net and posted them (with the author's original permission). I'd like to have time to post more to my blog site but the real work often makes that impossible.

    Anyway, feel free to check out http://www.blendblog.net for some VB samples.

    Sean
    03/02/11 @ 07:39
    Comment from: Walter V. Williams, Jr. [Visitor] Email
    Walter V. Williams, Jr. I agree fully. I have worked with VB for years. While I move up to the latest VB.NET as new projects come along, or there is a good reason to convert up, I still have two projects in VB6. They will finally be converted this year to VB.NET (likely 2010) because there are now enough new features to be added that justify the rewrite.

    I simply keep a converter site open so if I find an example in C# that I could use, I convert it over quickly.
    03/02/11 @ 07:39
    Comment from: Pix [Visitor]
    Pix I've worked on vb6, vb.net, c# and I tell you what.... VB in general is the bane of my life! It should be put out to pasture and stop causing misery for loads of developers. I dread and cringe when my director comes to me asking for a new feature in some of our legacy vb6 apps.

    I find it funny reading comments saying its a "more assuming language". DUH!!! It was created to make it "easy" for people to learn programming and easily develop apps for whatever purpose but what it also did was create terrible developers who didn't really bother to spend time researching an understanding the language. I should know... I used to be like that. I'm not saying all vb6 devs are terrible... but a lot are!

    But in following the fundamental question of the article... is it worthwhile learning a new language or rewriting the app just to keep up the times, probably not but it just depends on the ROI.

    Learning new techniques and languages is always a good thing... keeps you up to date but sometimes that should be left to research time!!!
    03/02/11 @ 07:42
    Comment from: Charles [Visitor] Email
    Charles Often times we work in teams and we are charged with having to maintain existing code and develop new ones.In most if not all cases one language(vb or C# for example is used) for obvious reasons. The expectation is for every developer to stick with what has been chosen. Clearly since the framework provides for both it is to the developer's advantage to acclimate with both. Lately I have been jumping from job to job and found that doing so is both fullfilling and leaves no room for arguments that have nothing within your control.
    03/02/11 @ 07:42
    Comment from: FFGuitar [Member] Email
    FFGuitar C#, always, never looking back. It's structured, has standards, and is easier to understand when reading (definately easier on the eyes). It's not a "willy nilly" language like VB that makes assumptions on variable names and what not.

    int x; // C#
    dim x // VB

    I'd have to find "x" in the code to know what type it is.

    public void Blah(int x){}
    public void Blah(x As Integer)

    Just my two cents Chrissie on why we use C# exclusively.
    03/02/11 @ 07:46
    Comment from: Artur [Visitor]
    Artur I have some devotion to C and C++, languages I have worked with in my past, for subjective and sentimental, geek reasons. At the same time, I think languages are tools and the best tool is the more specific, faster, productive tool available to perform the job you have to do. Same for screwdrivers and hammers. Marketplace pushed me towards VB a few times. MS have pushed VB against us so hard and for so much time that turned it into something people took seriously, eventually. The initial lack of OO features in VB was something remarkable. I always avoided VB and, lucky me, succeeded on my efforts. It is ugly and nasty. Considering both, I embraced C# in a heartbeat. Of course, this is me. I respect diverse opinions and, above all, people's right to have diverse opinions. Best regards.
    03/02/11 @ 07:47
    Comment from: Tim [Visitor]
    Tim I started life in VB6 and never really liked it. But I would say it has almost nothing to do with vb.Net in the present framework. That said, I switched to c# but I really makes little difference. I found moving to c# easy (it's not like trying to move to Java or c++). I would bite the bullet and move to c# - it won't be as hard as you think and, rightly or wrongly, it'll up open up a broader community and set of resources to you. VB.Net ain't bad, it's just not as well supported so why hamstring yourself. Go for it...
    03/02/11 @ 07:51
    Comment from: Praveen [Visitor]
    Praveen As toward these heavy comments above I think we all are discussing some thing that is just a way to communicate with our compilers it hardly matters to us if they understand any language the only thing is how better we can tought them what we want.... So grow up VB developers we are still best and for C# DEvs ... u know what we are
    03/02/11 @ 07:52
    Comment from: Rob [Visitor]
    Rob Shouldn't one of the strong considerations be how easy it is to find programmers that can maintain your system? It's much easier to find C# coders than VB.NET coders out there. Regardless of the merits, differences, similarities and simple opinions about each, one backs you into a much tighter corner when it comes to a talent pool to utilize. Have you looked for a FoxPro coder lately?
    03/02/11 @ 07:55
    Comment from: agnostic [Visitor]
    agnostic I do agree with most of the comments. I have been a developer for 35+ years and have wandered through a large (and I mean large) number of programming langages. Beginning with Assembler in the pre-Apple days (my first computer was Apple serial number 5 bought from Steve Jobs at his garage. Unfortunately I did not keep it :S), all the way up to today's super-languages. My true feeling is that languages are very much like cults. Some of them have been pushed (and gone away) by cult makers to make money out of the believers. The day comes that ceratin cult is losing practicants (coders, customers) and, either create a new substitute or a new sect to recover them.

    Same as with cults (just different paradigms and mythologies), all of them take us to our final goal. Be it Nirvana, heaven, the supraworld or the final working application. Some easier than others, some more directly or for winding roads. But eventually, if we have been good enough, and have respected their dogmas and rules, we will have a working application/solution/web site.

    Nowadays, we agnostics, can use the best of every cult. You can mix and match the beliefs (leanguage)of different cults in your developments withou having to resign the others. After all, logic is logic everywhere, no matter which language you use to express it.

    Following with the cult/language metaphor, there are a number of fanatics, fundamentalists, showoffs that believe that their god is the only true one (or allow them to be cool guys) and are willing to burn the heretics in the stake. In my humble opinion, all cults, have their pros and cons. With the enormous advantage of, being an agnostic, being able to use all of them, with all the benefits, without committing myself to the "one and only true cult"
    03/02/11 @ 07:58
    Comment from: morke [Visitor] · http://www.warddata.eu
    morke Hi,
    As someone who started 25+ years ago on Cobol, moved over to Xbase/Clipper, then on to Vb and now VB.net I think that the issue comes down to using the most appropriate tool for the job. I am still maintaining two xBase/Clipper apps which the clients do not want to change. I have a friend still providing maintenance to a site with a Cobol app. In my own case, I like programming; however, I program to pay the mortgage, etc. In a current project rewrite I seriously looked at moving a large database Web App. The one problem was speed. I cannot even remotely get the same speed from the web version as I can from the winforms version. In this instance we are dealing with 250,000+ main records in a main table; each of which in turn can have multiple related address records and another table. There are also a number of other payment history tables, containing 4+ million records. Using a web-app just does not allow the data entry speed required by professional data entry staff. Professional data entry people will very quickly let you know if you have a field that requires even one extra keystroke. So I am writing it in VB2010 as that is what will allow me to provide what the customer needs. It will also allow me to write in a language in which I feel most comfortable. And, to me, most importantly, allow me to get the best financial return.
    03/02/11 @ 08:01
    Comment from: Orophine [Visitor]
    Orophine I program in both C# and VB.Net, I have to say the syntax of VB is easier but in C# you have more possibillities. They are both good programming languages. People who say VB.Net is not good have never used it, or are focused on one language. It is better to be able writting in more languages. So it is not the language that's not good it are the people saying it. And if they didn't know C# and VB.Net both run on the same framework and in the end it is the same.
    03/02/11 @ 08:02
    Comment from: Jonathan Shields [Visitor]
    Jonathan Shields I am a VB6 programmer (among other things) and will hopefully soon be coding in VB.Net. I have spent a lot of time learning .net and my impression is that the choice between VB.Net and C# is just about syntax.

    If you come from a VB background, VB.Net is more familiar and if you come from a background of C-like languages, C# is more familiar. They both compile down to pretty much the same IL.
    VB.Net is not VB6. Apart from a few curly brackets and other minor syntactical differences with C# I think its "potato, po- taa -to"

    There is a lot of snobbery towards anything that contains the letters "VB" and that is what is at work here. VB6 certainly has its problems and limitations and you wont find me claiming new systems should be written in it - that would be ridiculous. However, writing off a vast section of the IT community because of the language they use is nothing short of juvenile stupidity. Most of these people are still using VB6 because of short-sighted IT managers and low budgets not personal preference.

    The reality, especially in todays cash-strapped world is that continually moving to the Microsoft "next big thing" isn't viable for a lot of organisations.

    .Net is a mature, proven platform. VB.Net and C# are just two different ways onto it. As far as I am concerned one is not superior to the other.
    It should be about how you can deliver inventive, robust solutions to users not what syntax you use. Obscure techincal arguments don't cut much ice with budget-controlling managers and users out there in the business.
    03/02/11 @ 08:09
    Comment from: Vuyiswa [Visitor] Email · http://www.dotnetfunda.com
    Vuyiswa I was forced to abondon.net in 2001, i had to do c#, since i was comming from a c/c++ background i moved. i cant even write vb code , let last time i tried i laughed at myself. Well chrissie1, things have changed to the direction of web and mobile device. i am looking to go mobile before i retire soon.

    Thanks for the post
    03/02/11 @ 08:14
    Comment from: enrique santa cruz [Visitor]
    enrique santa cruz The new cool thing is to trash Basic in general and VB.net in particular. I can't understand why people think such arguments make them look smarter. As previously posted a language is just a tool, you should use the best tool for the job at hand. And many times you will find that vb.net it's a good choice for a number of scenarios, perhaps it would not yield the fastest or smallest solution, but you can solve your problem quickly.
    The only thing I have against Microsoft in general is that their programming languages follows the trend started by their OS, the next version will be slower and need huge amounts of resources. I have similar systems in VB6 and VB.NEt and the latter is slower by several figures of magnitude. Perhaps if they stop trying to make VB compete with C++ and understand that we will not use it to make drivers, they will trim all the fat and make a really fast and easy to program language, just as Delphi once was.
    03/02/11 @ 08:14
    Comment from: Brady Kelly [Visitor] Email · http://rocketsurgery.co.za/
    Brady Kelly I wonder when and why Hanselman made the switch. Anyone know?
    03/02/11 @ 08:14
    Comment from: Max [Visitor] · http://maxtenenbaum.com
    Max About 6 months ago I decided to move from ASP Classic to .NET, and I had the conundrum of deciding which language to learn. I bought a Wrox book on ASP.NET 3.5 and all the examples were provided in both languages, so I decided to learn VB.NET for no particular reason. Half way through the book I got assigned a big project, which was out of the books scope, and this is when it hit me that VB.NET had only a fraction of support and communities that C# had. I started to build the site in VB regardless, occasionally converting code snippets I sourced on c# into VB using online converters. In the end though this was proving a struggle as searching for solutions to VB based issues was increasingly hard and it became apparent that abandoning VB was probably the best thing to do.

    As a newbie to .NET I recommend using c#!
    03/02/11 @ 08:16
    Comment from: dan [Visitor]
    dan Although not VB.NET, I use both languages almost every day. C# and C++/MFC I use for making Windows applications. VBA for writing things quickly in Excel. I wonder if Office will eventually support VB.NET... My first job was writing in old school Visual Basic, after that, everything has been C++/MFC or C#... I would not turn down a VB.NET job if the opportunity and pay was good. Unfortunately for VB.NET programmers most times it is not.. visual basic used to be a way to get things done faster and quicker. With .NET, that advantage has gone by the wayside since it is now the same as c#. It is better to pick your job first, then worry about which language they are using second...

    03/02/11 @ 08:29
    Comment from: Alex Heifetz [Visitor]
    Alex Heifetz I love VB.NET. I think that it is a better language - it is easier to read and understand. It is also more convenient for ASP.NET web page development. Unfortunately, I have been coding C# for the past three years - that is what many clients seem to prefer.
    03/02/11 @ 08:32
    Comment from: Sputnik [Visitor]
    Sputnik As a technical director of a small software house I am worried about how fast things get written.

    VB still gets written faster and better then c#, java, c++ etc. After a long time feeling that syntax does not matter I have decided it does because it changes how people think through problems.

    I matters that people thing about what the thing is before they think how will we represent this. This is what VB,Net gives. Long live VB.Net

    If it is a problem we can port the whole thing to c# automatically with a almost 100% reliability so it is still VB on my watch.

    I do love religious arguments :-)
    03/02/11 @ 08:33
    Comment from: Cláudio [Visitor]
    Cláudio All my life I have seen horrible code in many different languages. Good code and good implementation do not depend on language, but who write them. This discussion on which language is better is useless! Vi abominations both VB and C # and other languages. The language does not make good programmers, no matter what.
    Ouvir
    Ler foneticamente
    Dicionário - Ver dicionário detalhado
    03/02/11 @ 08:36
    Comment from: Emet [Visitor] · http://approximare.com
    Emet I have programmed in both vb.net and C#. I prefer C# because it is closer to C++ and Java. VB was a great windows only language in its hey day. Now it really is a hassle to have additional keywords to do things in VB. Microsoft is saying they will support both languages but it EVERY new thing in .net comes out in C# first...EVERYTHING. Just look at what happened with the cell phone development kits.
    VB.net will get FoxPro'd in the next years.
    03/02/11 @ 08:38
    Comment from: GE [Visitor]
    GE I think when Microsoft created VB.NET, they did a big mistake: they left to developers the possibility to continue to think à la VB6. If they abandoned all VB6 specific keywords and encouraged people to convert them to equivalent framework functions, and they add a better system for casting values, and the possibility to use [] for indexes, then for me the two languages could be nearly the same.
    03/02/11 @ 08:46
    Comment from: Robert [Visitor]
    Robert Good grief. Coke vs Coke Zero! It would be funny if people weren't so serious about their opinions.
    03/02/11 @ 08:52
    Comment from: Héctor [Visitor]
    Héctor I'm a VB programmer, or at least that's what I use at my job, when I program something outside of it I use C#. Why? Well, just because that's what people seem more used to.

    Aside from yield and unsafe, I consider both languages to be nearly equal, most people that I've seen to hate VB is either because:

    A. They think it's still like VB6 without having researched for it.
    B. Do not like it's syntax, which I think it's a pretty lame excuse.
    C. Had some bad experiences with some wanna-be programmer that made some bad spaguetti code.

    Out of all of these reasons, I think C is the only one that deserves some criticism, but not to the language itself, it should be headed to either those sites/sources teaching how to program or to the "developers" themselves. Sometimes I think Option strict should be turned On as default.

    My opinion? If you really know VB, why not learn C#? Learning just a new syntax is something ridiculous (or so I feel it), and learning about the differences between both languages is also just a matter of one-two hours. You'll be able to fatten your CV and open more paths ahead of you while you can continue using VB.
    03/02/11 @ 08:53
    Comment from: Edward [Visitor]
    Edward There are a lot of people bashing VB.Net who have obviously never used it. I am proficient in both. almost all of my .net programming has been in ASP.Net. I like VB.net as displayed in the IDE, for the ease in adding event handlers on controls that exist on the page and the auto-formating of your code and the better intellisense. I get very irritated when the intellisense in C# stop working for everything because one character is typed wrong. I also get irritated with trying to decipher someone elses code with ten consecutive curly braces and no discernable indents. This is particularly irritating when the other person uses the name of a class or property which is the same as a built-in name or property but with a different case. VB.Net prevents that. Also for those out their basing their opinion of VB.Net on VB6, then forget it. VB.Net uses the same classes, their structure and notation as all the other .Net languages. There is virtually nothing left of the old VB 3 - 6 or the old Basic Iv and GW-Basic. About the only thing left are the for(each) next loops and the if then else blocks (which in my mind is much better and clearer than the C#, JavaScript, C++, Java "for" paren curley brace or the "if" paren curley brace blocks. And no semi colon and curley brace hell.

    The best I can say about C# is that it is easy to move from there to Javascript, to Java, and to C++. (Though the minor differences in syntax between those languages will trip you up.)
    03/02/11 @ 09:08
    Comment from: Dave [Visitor]
    Dave I have to agree with Hector - the majority of the people criticizing VB.Net don't really have a good understanding of VB.Net and seem to be basing their opinion on experiencing someone else's poor coding skills in VB.

    My boss has us transitioning to C# - not because it is any better, because it is not. It is much harder to understand IMHO but I suppose a lot of that has to do with trying to understand the boss's C# code and frankly he is a sh*tty programmer.
    03/02/11 @ 09:17
    Comment from: Narud Shiro [Visitor]
    Narud Shiro I think that what makes you a good or a bad programmer is how so good and fast you are to solve a task with the resources that you have, wich could vary too much from job to job and from client to client, but not the languaje.

    Trust me, no one languaje but experience gives you the skills to make you a good programmer.
    03/02/11 @ 09:26
    Comment from: Reese [Visitor]
    Reese I program in nearly every language available. Truly, I see no
    disadvantages to programming in VB.NET other then that people don't like it.
    The fact that there aren't as many examples available and blogs, only
    makes you a stronger programmer in the long run. You have to work the
    problems out for yourself instead of relying on other people to solve them.
    for you. When you get a new job, you have to build on what others have done
    and often that requires that you learn the language of the person that came
    before you. Often times, I've found that they used VB.NET even though they
    list themselves as a C# programmer. Its just semantics, if you like the style
    of VB.NET, then use it. If not, use something else. But don't snub your nose
    up at it if you don't use it. You really don’t have any basis to comment on it if your not using it and haven’t learned what it can.
    03/02/11 @ 09:29
    Comment from: John Blackburn [Visitor] Email
    John Blackburn The argument is immaterial on a technical front, however commercially, M$oft wants to obsolete VB.NET in the long term so it makes sense to migrate to C# and stop trying to ski uphill.

    The real issue for me is that .Net is very slow which is why so many are developing WIN32 systems particularly for VOIP and other time critical applications. I have found that I can make the performance acceptable for some of my applications by including a C++ DLL for the speed critical sections. However, this does not get over the slowness in handling events (messages) and thus WIN32 will persist for many.
    03/02/11 @ 09:36
    Comment from: Dan Borden [Visitor] · http://www.integratedbook.com
    Dan Borden For thirty years I am continually amazed with this back and forth argument (just pick the tool that gets the job done and can adapt in the future). I love VB.Net, along with Delphi, C# and Visual FoxPro (the Rodney Dangerfield of programming languages - we get no respect) - too often I see programmers try to force a language on a task at hand and then fall short of its objectives. Right now C# is the WORD but does it really matter (I've seen as much bad C# code as I have seen VB or Delphi) - A good programmer adapts - using the right tool for the right job!
    03/02/11 @ 09:51
    Matt McGuire I'm a VB programmer also. I've been fearing the death of VB for awile now, when MS started releasing new teck that only worked with C# (micro framework, zune, XNA ...)and I ask myself why would MS do this; in one hand MS tells VB is equal to C# and in the other cut us off from some cool stuff, almost a slap down.

    Anyway i'm not leaving VB.net (and winforms) for as long as I can (yes I can C#,but I don't want to.)At my work place we build industrial control systems, all written from scratch in VB.net, including the serial communication protocalls to work with the remote hardware.

    I think the VB vs. C# is actually an old one that goes back to quickbasic vs C; when basic was a toy; And this mentality has stayed with us since than. If MS would have called VB = "Visual Next", or C# = "Xeno"; would this debate still be going on? Is the whole reason C# became so popular (and gets all the toys) is because it has a "C" in it's name, and developers don't want to be assocated with a language that has the word "basic" in it?
    03/02/11 @ 09:56
    Comment from: Roland [Visitor]
    Roland Well here we are again, as someone said: a pissing contest.

    I began programming on C++ using the Borland C++ Compiler back when you even had to write the code that created the window itself.

    In my daily programming i use several languages in a single project. VB.NET and C#.

    VB.NET is a very good language. Clean and easy to maintain. Like someone mentioned, it almost writes itself.

    C# is also a very good language, and lets not forget that C# has two parents, one of them is VB.

    When i first started using C# my first thought was it was a bastard half breed between C++ and VB. OFC my opinion changed to a large degree since then but i still code the bulk of my applications in VB.NET.

    Lets take a look at a simple example between C# and VB.NET:

    VB.NET:

    Label1.Text = "Hello World"

    C#:

    Label1.Text = "Hello World";

    where is the difference? the semicolon? you holier than though self proclaimed C# code gods think that C# is superior to VB.NET just because you have to use a semicolon to end a line of code? or is it the '{ }' pair usage that does it?

    here is an example that favors C#:

    C#:

    int x = 0;

    VB.NET:

    Dim x as Integer = 0

    this example shows that C# for at least variable declarations that it is more concise.

    someone showed this example:

    int x; // C#
    Dim x //vb

    seriously does anyone declare variables in VB like this anymore? if you do, my god please stop programming for the .net plateform, go back to PHP or whatever.

    people who have only coded in C# or have never touched VB.NET code have zero right imho to make any claims that it is better than VB.NET. So don't comment.

    And for all you Self proclaimed C# Guru's, keep in mind that if it was not for the existence of VB C# NEVER would have existed.

    So do us all a favor and get off your high f&*^&^* horse and come back down to reality.

    I for one like both languages, i also like PHP, JavaScript, and C++.

    I use VB.NET for desktop development, C# for Custom .NET Controls, PHP & JS for web applications and C++ for game engine development.

    Every language has it's strengths, and in my opinion C# is best used to create custom .net libraries and controls where i see it shine better than VB.NET.

    VB.NET shines when it comes to Desktop Development.
    03/02/11 @ 10:00
    Comment from: Maximus [Visitor]
    Maximus To answer your question directly, yes! abandon VB.Net!
    03/02/11 @ 10:15
    Comment from: dpocius [Visitor] Email
    dpocius For me, programming is a tool I use to "get things done"; I am not a programmer by profession. I picked up VB6 years ago to implement a scientific data collection/management system because there was no one else around to do it. Along the way, I learned enough about proper program design and coding to not do some of the stupid things VB6 lets you do, and to eventually develop a well-polished set of apps that are still being used today. Once again, I'm in the position of needing to "code or die", and I'll probably use VB.NET, simply because it's the shortest putt to a solution. One thing I'll continue to do is to exercise the necessary discipline to design well-structured code, regardless of how VB would allow me to do otherwise. Just because you can run with scissors doesn't mean it's mandatory.
    03/02/11 @ 10:16
    Comment from: Luis Montaño [Visitor] Email
    Luis Montaño I think that C# have a lot of good followers because there is people that like use a cannon to kill a bug, I am fan that we have to use the correct tool for each problem. Now VB.Net is enough for many of the problems in market.

    Many of us do not understand that we need to code as fast as we can, and C# is not the winner in this case, I have been coding in almost every language mentioned here, and a easy syntax is a good to keep the idea
    03/02/11 @ 10:39
    Comment from: Jan Semorad [Visitor]
    Jan Semorad VB is nice, because is near people. C like languages are near machines. Computer language can be human-friendly and can to remain powerfull:

    CoffeeScript :
    cubes = (math.cube num for num in list)

    The same in JavaScript ("C like" family language) :
    cubes = (function() {
    var _i, _len, _results;
    _results = [];
    for (_i = 0, _len = list.length; _i < _len; _i++) {
    num = list[_i];
    _results.push(math.cube(num));
    }
    return _results;
    })();

    What is better for ordinary people?

    VB is for normal human, not for technoids :-)

    End of line has sense. E.g. two end of lines in HTTP - data begins. On the other side "cryptic" languages have no "added values" except of worse readability :-)
    03/02/11 @ 10:56
    Comment from: Perry Butler [Visitor] · http://glassocean.net
    Perry Butler Good article, but even better comments. I wanted to chime in with my own personal experience using VB. I started out with VB6, moved on to VB.NET, and I've had no issues with the language since. I’ve developed several pieces of software for business and personal use, and the users of that software literally do not care whether I used QBASIC or C++, what matters to them is a good UI with the functionality they need, and ultimately a software program that gets the job done better than what they can do themselves or find some other software program to do. If you’re targeting Windows users, VB is a good choice. VB is also used for VSTO and VBA programming, for automating Microsoft programs such as Word, Outlook, Excel, or Access. I have found VSTO knowledge invaluable, as many times the company where I work needs to control certain aspects of their corporate email system, and VSTO add-ins for Outlook are sometimes the only way (or the easy way) to do this.

    Some software I’ve developed in the past includes a 3D graphics engine in DirectX9 and a full blown project management system that integrates features with Outlook, Word, Excel, Exchange, Active Directory, SQL, and even an ASP.NET web interface for mobile users. C# almost translates to VB.NET line for line, I know this because many code samples I find are C# only and require simple eye ball conversion. I've also had no problem picking up other languages based on my experience with VB. It was very easy to start doing advanced OOP JavaScript, jQuery and AJAX right off the bat (applying all the same programming techniques I would in VB), but what I find slows me down most when learning a new language are the namespaces, libraries, and documentation, which can take a while to digest.

    Feel free to check out my blog, many of my posts are VB related, amongst some other cool stuff like my free software and my music productions.
    03/02/11 @ 11:03
    Comment from: LB [Visitor] Email
    LB I've been thinking the exact same thing! I picked up vb.net over the last 18 months or so to develop a desktop tool for work. I'm an engineer and only had formal training in Fortan and C...decades ago. But since I worked with an Access database a few years ago I decided to go the route of vb.net for my project. I have found it relatively easy to use and the IDE and intellisense have been a tremendous help. But since no one else where I work programs in vb.net (they're mostly perl, python and java users) I've turned to internet searches to help me along. It's clear to me that C# is more popular but I have not found it too difficult to understand it and of course there are online translators to make sure I get it right. But I was wondering lately if I'd made the wrong decision and if I should switch - though this project is too far along to rewrite. I'm glad to hear that vb.net is not dead, however I think I will learn some C#. That said though, I think programming my tool in vb.net was not a bad thing. I will most likely not be around to maintain it and I think (hope) I've done a good enough job with the code that someone else should be able to understand it - even if they're not proficient in vb.net.
    03/02/11 @ 11:17
    Comment from: Michael Manos [Visitor] Email
    Michael Manos It's amazing how silly and pointless arguments people make. In the entire list of long comments, the basic argument was the syntax and that vb.net was made for VB6ers, when as stated many times, vb.net and c# are two faces of the same coin.

    The most ridiculous claim in this page was from Lemorlenny who said ... "I can do in VB6 everything .NET does". Naturally, he was just joking (you were, weren't you? :/) but strangely enough and strictly from a business point, it's the most accurate claim.

    If we translate it in business terms it would be ... "I can do in VB6 everything my business and clients ask me to do .... so far !!".
    03/02/11 @ 12:16
    Comment from: CoolMagic Wizard [Visitor]
    CoolMagic Wizard VB.NET was designed to bring the developers familiar with BASIC into .NET. C# was directed towards C++/Java developers. Pick what you know best and get the project done on time and on budget. .NET is .NET no matter what language you use to utilize the technology.

    Now get back to work!
    03/02/11 @ 12:28
    Comment from: SterlingCamden [Visitor] Email · http://chipsquips.com
    SterlingCamden "Copy paste coding gets even better when you are a C# programmer"

    If this wasn't being sarcastic, perhaps it's indicative of what's wrong with the Microsoft communities.
    03/02/11 @ 12:47
    Comment from: Ryan [Visitor]
    Ryan Why stick with VB? It doesn't take long to learn the C# syntax.

    Plus, in my experience, C# requires less keystrokes to do exactly the same thing.

    So why not invest a day or two switching?

    I switched from VB to Java in 2001, then from Java to C# in 2004. All of which went pretty well.
    03/02/11 @ 12:53
    Comment from: Christiaan Baes (chrissie1) [Member]
    Christiaan Baes (chrissie1) Yes sarcasme was used in the above post, comes with the job.

    I come from a Java background and have just as much C# in my applications as VB.Net since all test (unit, integration,...) code is C#. But the winforms is not going away anytime soon. several hundreds of forms don't get replaced that fast even if using some form of MVP/MVC GUI work just takes time to make and check.
    03/02/11 @ 13:01
    Comment from: Vince [Visitor]
    Vince Why did you write this? To confuse people? Seriously. The code is compiled by the CLR. Have ever looked at the output of the compiled language? It is the same from vb to C#. You can covert anything written in C# to vb.net painlessly.
    03/02/11 @ 13:46
    Comment from: Robert Barnes [Visitor] · http://www.famnet.net.nz
    Robert Barnes I haven't found any good reason to choose C# or VB over the other, as anything that can be one in one language can be done in the other. It seems to come down to aesthetic preference. For me, I prefer VB because my original background was PL/I, and it seems natural to me to write IF .... THEN ... END IF rather than IF ....{ }.

    Microsoft have put the C# and VB teams together, so I hope that one day Visual Studio will display code in one language and switch to the other just by clicking a "Display as" toggle.
    03/02/11 @ 13:52
    Comment from: Martin Krüger [Visitor] Email · http://silverlawone.blogspot.com/
    Martin Krüger Great article.

    I am a VB.NET Silverlight and WPF programmer. The response I get from the community to my free code contributions at the Expression Gallery or to my articles on my blog --- which are written in german language ;-) --- is quite good. Although they are nearly entirely written in VB.NET.

    I sometimes thought about switching totally from VB.NET to C#. But I did not. The reason is that I feel familiar with VB.NET. I can read and write C# but I don't feel at home in the C# castle. Why should I? Almost everything I want to achieve in coding I can do with using VB.NET. And there are so many many great people out there who are blogging in VB.NET.

    But sometimes I wish that Microsoft would push VB.NET code samples better. The MSDN library often times lacks VB.NET code samples whereas C# snippets are provided. On the other hand, especially at the german language MSDN forums there are great moderators who post back and provide code snippets in C# and VB.NET.

    03/02/11 @ 13:56
    Comment from: FredTheKat [Visitor] Email
    FredTheKat "Microsoft discourages it" ?? Really, how so? Where is it written?
    03/02/11 @ 14:14
    Comment from: Holan [Visitor]
    Holan I have used QuickBasic, VisualBasic, Access, VB.net and it was easy to use. Now I use C# (new company) and it was easy to change. Syntactical Sugar. Whitch language is better. Oh god.

    In one project we had customer-code (technical calculations). And of course, this code was not written by the customer. But the customer had to read it to ensure that the formulas are ok. For this purpose VB.net was better than C#. Not-Programmers can read this easier. And for formulas VB.net have an exponent-operator (caret) and C# have not.

    I think MS will not abandon VB.net.

    I hope that the will make 100% transfer-able. And maybe in a future VS-Version you can switch the code. So program in C#, toogle to VB.net anc vice-versa. This would be possible.
    03/02/11 @ 14:19
    Comment from: David [Visitor]
    David Nice article and some productive comments!

    I feel your pain! Rightly or wrongly, when .NET launched, I chose to stick with VB as it was familar and the learning curve was less. Each year, having to 'translate' all C# sample code makes me wonder if this was the right decision, however given limited time I would rather learn other related and new technologies such as XAML, Silverlight, LINQ, WPF, T-SQL, etc.

    Why re-learn something you already know? However it is tempting as it can be very hard to find samples of code in newer technologies and most books release with C# code only.

    Bring on some evangelical VB.NET celebrity code gurus!
    03/02/11 @ 14:39
    Comment from: Alon [Visitor] Email
    Alon I am a proud VB.Net programmer...

    Why do you care if the samples on the web are C# - read them as C# understand their logic and code your much nicer VB code...

    No?!
    03/02/11 @ 15:50
    Comment from: Ron [Visitor]
    Ron Just forget .Net all together! Open source scripting languages power the internet.

    Frameworks are plenty so it's easier to swap things out if not needed or add bits and pieces here and there.

    .Net is now trying to arrive at the MVC party, but too little too late!
    03/02/11 @ 16:37
    Comment from: Paul [Visitor]
    Paul VB.anyflavor - it's over, just walk toward the light.

    I have heard that all new printings of the bible are now written in C#
    03/02/11 @ 17:17
    Comment from: Dan [Visitor]
    Dan Now... I'm just a student doing game design, and the game engine I'm required to use only allows us to code in java, c# or boo (never even heard of this one), as well as ShaderLab.

    So I'm kind of stuck in this case since I actually learnt VB6 in school and found it much easier.

    Reading all these comments makes me think this is like programming politics haha. Wanna know what I believe? It's that the 'proper' programmers are just angry that the VB'ers are making more money than them because they're pumping out programs faster.
    03/02/11 @ 17:59
    Comment from: Dissentr [Visitor]
    Dissentr I code in what people pay me to code in, period. I know I'm a rock-solid programmer, because I'm hired and paid good money by top-tier firms. And my number-one language, after SQL? VB*A*. Yeah, dig it. (All the scorn you could possibly muster wouldn't hold a candle to the colleague mockery I've withstood in the last 15 years, so save yourself the effort.) I write (or, usually, rewrite) bulletproof apps that ship to production in 1/2 the time of the VB.net guys, 1/4 the time of the C# guys, and 1/10 of the time it takes for the same apps to become a glimmer in a Java programmer's eye. I ship modifications in minutes, even in very high-pressure environments. I'll happily build in C# or any other language (and happily learn anything anyone pays me to learn), but I won't sell crap apps or even crap code to clients who likely don't know the difference. That is the only standard I recognize.
    03/02/11 @ 18:28
    Comment from: Phil [Visitor]
    Phil Per one of your points, C# examples. Try conversion sites:
    http://www.developerfusion.com/tools/convert/csharp-to-vb/
    or
    http://converter.telerik.com/
    I hope I have helped.
    03/02/11 @ 19:19
    Comment from: Ken [Visitor]
    Ken I don't have a problem with VB.NET, but I also don't believe it is easier to read than C#. The only thing I had a problem with VB was due to inexperience. The integer divide of 3/2 in VB.NET is 2. I was swearing at the stupidity of VB because of that when I found out the real integer divide is 3\2(=1) Every other language I've used with integer math, 3/2 is 1. (That takes getting used to when you are first starting to learn a programming language.)
    03/02/11 @ 21:18
    Comment from: Reese [Visitor]
    Reese The discussion is somewhat pointless given VB.Net and C# are essentially
    the same language. If you don't like the semantics, go create a hybrid.
    take a look at the "Microsoft Research Common Compiler Infrastructure
    (CCI)" project. This is some real programming here for you hot shots,
    tried it myself and real 'fun'. Call it VC#.Net :)
    03/02/11 @ 21:19
    Comment from: Steven O [Visitor] · http://www.steveoberholzer.com
    Steven O WimTB - Amen! You hit the nail on the head! I've been waiting for someone to have a view like this for YEARS.

    I believe a language is a tool as well. In some cases one tool is better suited to the job than another, and it is on that merrit that I decide which tool to use.

    Example:
    If I'm at a customer, and their developers can only code in VB, then it makes sense to go with VB.NET rather than C#, and vice versa.

    If I have to code an embedded app, I won't go for .NET to begin with.

    It all depends on where you are, what you need, and like you said: the rest of it is logic.
    03/02/11 @ 21:49
    Comment from: Bob Beechey [Visitor]
    Bob Beechey Most of this discussion seems to go nowhere. All the individuals who say things like "I have not used VB since VB6 and nothing has changed since" are, obviously talking nonsense. Programming in any form of VB up to and including VB6 was akin to a criminal offence but as soon as I saw VB.NET, I thought "at last it has become a real language". If you do not include the VisualBasic.dll in your code, it is completely interchangeable (almost) with C# but more verbose. (Occasionally they get out of lockstep eg at one stage you could only use single line lambdas in VB but multi-line in C#). I also instantly liked C# because it looked like Java but tasted like Delphi. Use whatever suits or whatever is the standard for whom you work.
    03/02/11 @ 22:27
    Comment from: me [Visitor]
    me a silly argument/discussion for the ignorant and uninformed. Good interview discussion since it bears out personality and any one passionate either way should be avoided because it proves they don't know what their talking about and most likely will have a negative impact on a team.

    03/02/11 @ 23:02
    Comment from: Martin Krüger [Visitor] Email · http://silverlawone.blogspot.com/
    Martin Krüger Someone here wrote VB.NET code to declare an integer variable one would need:

    Dim i as Integer = 3

    and in C#:

    int i = 3;

    Actually one can use local type inference and do the same in VB.NET:

    Dim i = 3

    Ah ... not the same ... in VB.NET you need 9 keystrokes, in C# you need 10 ;-)
    03/02/11 @ 23:02
    Comment from: SinzBuff [Visitor]
    SinzBuff Thankyou everyone for giving your interesting opinions. All of the above difference are good reasons to have multiple languages on your skill set. So, IMO, it is good to learn C# while you continue developing in VB (or vise versa for the opposition party).
    03/03/11 @ 00:49
    Comment from: Chandrashekar [Visitor]
    Chandrashekar I have been programming in C# for the past 2 years and it's syntax is eaasier to follow ( since it's design principles evolved from C/C++/Java). All those languages were part of my college curriculum and thus C# was the natural path for me to follow. My Advice to you would be to jump ship and start learning C#. It has more support in the community, more code samples on the web and even microsoft prefers .NET applications to be coded in C# than in any other language.
    03/03/11 @ 01:10
    Comment from: Paulo [Visitor]
    Paulo Wow - is this old chestnut still hanging around? Language snobbery is not new and any way you paint it, the VB detractors out there are just that - snobs! As some of the posters have already suggested the underlying framework is the same for VB.Net and C#.Net. Since this is true, and the same can be done with either, who is to say which is right or wrong? It is almost like saying English is good and Spanish is bad (absolutely no disrespect to Spanish speakers out there)! After all, this is all about communicating with a machine in order to achieve an objective. In the bad old days it was very difficult (if not impossible) to write control systems in anything other than C or C++ (or assembler if you really wanted). With the shared libraries now, I would hazard a guess there is not much you can do in one language that you cannot do in the other. I have coded in both (as well as more torturous languages like Lisp, Pop etc) and certain things are more fluent in one over the other, but that does not mean that they are bad or wrong - just different. Both are high level languages sufficiently removed from the intricacies by compilers. All you language variant Nazis need to think a little more 'out the box' - at the end of all this, the only thing we all deal with is ones and zeros!
    03/03/11 @ 03:50
    Comment from: Naeem Akram [Visitor] Email · http://aprogrammersday.blogspot.com
    Naeem Akram If you don't keep up with the pace of industry growth, you'll be left behind to starve.
    C# in the new reality, don't change all the legacy apps all of a sudden. Instead, initiate a slow and gradual change process on the end of which there'll be a whole new and technologically up to date product ready for you.
    Maintaining an application which is developed in an outdated technology is also difficult, its like having a heave iron balled chained to your toe.
    03/03/11 @ 05:22
    Comment from: Geoff G [Visitor]
    Geoff G I have been a developer for nearly 15 years, I started with good old VB5, for GUI dev / C++ for protocol stacks (I worked for a telephony company), I agree with most of the comments here anyone who knocks a language is in my opinion ignorant. My new company adopted the switch from VB.net to c# about 4 years ago based solely on the fact there is more content on the net for C#. I personally prefer C# now, some of the syntactical differences make it a little neater for instance:

    Public propertyname {get; set;}

    x = y!=bob 1:2

    I think however the adoption of cloud computing will in the feature have the biggest impact on my job, that or when AI becomes smarter than humans which Intel predicts could happen by 2050, will pretty much make me irrelevant by then.
    03/03/11 @ 09:12
    Comment from: Steve [Visitor]
    Steve Like FredTheKat, I would really to see evidence of "Even Microsoft discourages the use of VB.Net". I know it's getting a little old, but I would encourage you to watch http://channel9.msdn.com/blogs/charles/luca-bolognese-c-and-vbnet-co-evolution-the-twain-shall-meet.

    Under the hood, VB.NET *IS* C#. I personally use either or, depending on the customer I work with - all the same stuff, written slightly different.

    I would tend to agree with the author that most people bashing VB.NET never actually used it... (read: narrow-minded, conservative people who like to criticize whatever they're not used to).
    03/03/11 @ 10:20
    Comment from: Fred Mastro [Visitor] Email · http://www.fredmastro.com
    Fred Mastro Great post. I'm a VB.NET Developer and I blog on my site for other VB.NET Developers. Maybe I should change the title of my blog to VB.NET specifically.
    03/03/11 @ 12:30
    Comment from: Paul Patterson [Visitor] · http://www.PaulSPatterson.com
    Paul Patterson Great post Christiaan.

    No need to give up on VB. The debate has been on for years, and the debate will always be there. I don't even bother wasting my time arguing about it anymore (except for the odd blog comment LOL).

    It's all symantics anyway. It all boils down to the same IL anyway.

    Understanding the core constructs is what is key, not how one language implements it compared to the other. To me, making comparisons between languages is just subjective criticism, and quite frankly a waste of valuable time.

    My thoughts are that C# is more prolific only because education systems introduce students to the general purpose languages, like C, C++, and Java early on in the curriculum. C# is a much more semantically similar to these languages than VB.Net, so it seems more natural to progress into a language that seems familiar.

    I code exclusively in VB.Net. There are some instances where I use C# however that is usually only when I have fix someone else's bug ;).

    Take a spin on over to my blog at www.PaulSPatterson.com. Anytime I blog about something that involves some code, it is VB.Net. I just went though a huge series of articles where a MPF MVVM applications was created entirely in VB.Net You'll find lots of great examples there that you can learn from.

    Cheers!

    Paul


    03/03/11 @ 15:34
    Comment from: darcher [Member] Email
    darcher Thanks Paul - I just cruised your site and appreciate the effort you made in documenting your learing adventures!

    Another great VB.Net resource is Beth Massi. I noticed she has compiled a summary page for lots of current samples and resources focused on the VB community.

    http://blogs.msdn.com/b/bethmassi/archive/2011/01/11/visual-basic-samples-resources-and-more.aspx
    03/03/11 @ 17:06
    Comment from: Martin Payne [Visitor]
    Martin Payne The situation sucks. In reality, VB.Net is a better language, and I don't mind defending that position. Its keywords say what they do (e.g. MustInherit vs static - what do you mean static???), and the use of End Function, etc. makes code easier to understand (and I regularly code in Java and JS for Node.js). VB.Net even had late binding years before C#.

    The only reason C# became the more popular (and, that's all it is, more popular, nothing else), is because all the C, C++ and Java programmers were too lame-arse to look at another language at the time and relied too heavily on the easier-to-find code examples.
    03/03/11 @ 19:33
    Comment from: Sascha Lichtenegger [Visitor]
    Sascha Lichtenegger Well as a .NET Developer i feel slightly offended by this article, but must say that us VB.NET Developers are doing the REAL work and we don't have time to blog...
    No, but seriously there are still so many legacy applications out there and in use that i am not worried about using VB.NET as my choice for Development, hell i still use VB6 as well !!!
    03/04/11 @ 00:13
    Comment from: DazzaJ [Visitor]
    DazzaJ As a general developer, I find it unbeleivable that the C# communitiy think of themselves as so superior. Costantly bagging VB as a minor language yet totally blind to their own shortfalls.
    At the end of the day both, and all, NET languages are in trouble simply for the fact of their on going increased complexity and their lack of REAL support for cross language and or system support.
    In the windows world VB is far simpler, far less prone to error and easier for beginners to pick up. C# is the language for geeks.
    Anything done i C# can be done in VB. Difference being that VB would take half the time, but unfortunately half the $ income.
    Microsoft supports C# as the GEEEEEKY language of choice, so the C# community say.
    Note: Why is VB STILL the language for MS office and corporate applications and not C#????
    03/04/11 @ 03:10
    Comment from: Ming [Visitor] · http://www.netatlantis.com
    Ming This topic has been argue at less once time every year since 2001. :)

    In my opinion,

    1. C# & VB.NET under same framework, what matter you write in which one, the performance and what you can do are same. (except something like Yeild in C#, but you can write your own function and do the same.)

    2. If you are .NET expert, it's not hard handle both of them.

    3. If you have a look VB history, you should know about Microsoft want to make a easy understand & clear look language in early of 90s, that why VB Syntax not use open bracket /close bracket.

    4. Why have to stick on C style?

    5. VB.NET is dying is real, but if one day,vb is dead, left C++,C# under .NET framework, it is boring.

    6. For me, i do C# & PHP work every day, sometimes, i create tiny application will be use VB.NET, it more funny then write in C# for me.


    Forgive my bad english.
    03/04/11 @ 07:24
    Comment from: Michael Dommer [Visitor]
    Michael Dommer I enjoy just hammering alt-### into raw text files and then saving them as .exe files. Sure, it takes longer but the sense of accomplishment is profound. I'm kidding, of course, and find this concept almost as silly as debating which language will die, which one will prevail, etc. Can you get your project completed with the langugage(s) you have mastered? Great. If not, retool, but spare us the 'forget what you know and learn this new and clearly better in most ways language' speech. Yes, there will always be another one to learn. Who thought VB/VBA would serve so many for so long? I'm counting decades instead of years.
    03/04/11 @ 09:30
    Comment from: Vince [Visitor]
    Vince Did you know the "B" in VB stands for "Beginner"? LOL.

    Joking aside, I actually used VB.Net once to interop with a COM dll. It's just better and more foregiving when it came to optional parameters (in C# you needed a lot of "Type.Missing" parameters). But now, of course, that's changing.

    Just switch to C#. You won't regret it.
    03/04/11 @ 11:26
    Comment from: chaospandion [Member] Email
    chaospandion @Vince - It actually stands for BASIC which in turn stands for Beginner's All-purpose Symbolic Instruction Code.
    03/04/11 @ 12:42
    Comment from: fedekun [Visitor] · http://nekocm.blogspot.com
    fedekun I never really trusted Micro$osft products, I do enjoy C#, I prefer it over Java, a lot, but it's just that, preference, I can use both, It's not a big deal, you should grow up and learn C#, it's gonna make your life easier, you'll be able to read Java easier, C/C++ easier, PHP, Perl and all C-derived languages.
    Basically that's the reason it's more popular, if you already know C you are a good programmar, if you get to choose between C# and VB you'll choose C# as VB is different and something new to learn, I think from the point of view of .net VB and C# is pretty much the same, but in the real market C# is the real deal, it has only advantages over VB.

    It doesn't matter which syntax is better, is all about standards, people already think that way, if you give them a chance you'll know why.
    03/04/11 @ 23:34
    Comment from: Imam kuncoro [Visitor]
    Imam kuncoro I have no big problems switching from vb, C# or Java. Yes, I face a little bit difficulties when switching or porting to C or C++.
    I thing most of my friends like me. We usually discussing the algorithm only.
    03/05/11 @ 21:24
    Comment from: Keith [Visitor]
    Keith I am a hobbyist C/C++ programmer who has just recently ventured into the .Net arena with C#. I still prefer native over managed but as far as the managed code is concerned: Does it matter really which language you start with? You always end up with IL. VB.Net is as powerful as C# and the code is easily convertible between the two. Whatever works for you go with it.
    03/07/11 @ 09:05
    Comment from: robiwon [Visitor]
    robiwon Let go of the past, embrace C#
    03/09/11 @ 18:15
    Comment from: Fiyin [Visitor]
    Fiyin I learned BASIC, C, C++, Assembler and C# (in that order) and I can proudly say that BASIC (qbasic, vb6 & vb.net) has served me the most. I use c#.net for hobby programs and that's just to preserve my skills.
    I program embedded systems (in c & assembler) and vb.net is great for the control system app. I still use C more than C# and from my experience, most clients don't even care about the language you use.

    Bottomline is if it's serving you purpose stick with it. People who are truly multilingual don't argue on stuff like this; they know that each language has it's strength and weakness and that the job will tell which to use or keep using.
    03/21/11 @ 00:24
    Comment from: larry [Visitor]
    larry I didn't wade through all of the comments, but I don't believe anyone has discussed how our skillsets (VB, C#, Java, ....) affect our marketability. I'd love to see some statistics on installed code-base by language and industry; I've never been able to find any (I can't afford Gartner). Currently I'm a VB programmer because my employers seem to think the training is easier and so that's what we write in. If I could choose, I'd probably pick Java with C# running a close second, but I don't get to choose and I don't think I care. The only things I can do in C# that I can't do in VB are esoteric and need a real good reason to do anyway. My opinion, worth about two cents.
    04/04/11 @ 07:21
    Comment from: Crisb [Visitor]
    Crisb VB.Net Vs VC#.Net
    The important thing is .Net.

    Lot of people say that VC# is better, but VB.Net has
    functions like IsDate(), IsNumeric(), that VC# does not have.

    Oh, sorry! Yes, VC# it has if you use
    using Microsoft.VisualBasic;

    or you can create it with:
    public static bool IsNumeric(object Expression)
    {
    double retNum;

    return Double.TryParse(Convert.ToString(Expression), System.Globalization.NumberStyles.Any, System.Globalization.NumberFormatInfo.InvariantInfo, out retNum);

    }

    I am wondering why?
    With the Windwos trash, it happens something similar.

    I don't know why VC# is more powerful.
    I use both, I am trying to use VC# more.
    06/26/11 @ 14:00
    Comment from: Tariq [Visitor] Email · http://programmerinme.blogspot.com
    Tariq Yes I feel strongly that Microsoft is also discouraging use of vb.net. I am working with vb from version 4. We had written from small program to complete ERP system. Now a days most of the books and online examples you will only get c# examples. In books they will usually mention that for vb code check CD provided with the book. Even getting a decent team vb.net is seems to be impossible. What we doing now a days we hire fresher in train them in vb

    Let's see how long we can continue with this.

    Tariq
    11/13/11 @ 07:41
    Comment from: Torsten [Visitor] · http://www.dotmaniac.net
    Torsten I want to add two points to this discussion:

    first a confirmation that in the .Net-community Vb.Net is indeed marginalized. E.g. I visited the BASTA in Mainz (Germany) this summer. There was a visual basic day with only 3 to 5 participants within 5 sessions. In the other rooms (agile development, building a C# factory, ...) there were about 50 to more than 100 (estimated) people. And on one of the slides of the vb-lecturer was written, that vb is the language for "individual programmers". Sounds like a capitulation to me. When the following day the lecturer (Dino Esposito) asked to his audiance of about 80 people who programms in vb, no one (even not me) raised his hand. I am convinced that I was not the only person programming in vb, but that no one dared to raise his hand to declare that he is an outsider.

    Second example: we think about outsourcing some programming to an it-consulting company. When they heart that we use Vb.net, they first told us that this is not a programming language. After they saw our products, they changed the argument telling us that the new project should still be done in C# because it is easier to find people with C# knowledge.

    So, what do I want to tell you?

    First, there exists a kind of social discrimation in the communits against Vb.Net developers, where a rule exists: the worse the programming skills of the individual programmer, the more the programmer is inclined to discrimate.

    Second, because of the first point combined with the fact that there are much more resources for C# than in vb.Net and that the demand of C# programmers on the job market is higher, the life of a vb.Net programmer is tougher. As a vb.Net programmer this means it is quite natural being seduced to switch to C# to make life simpler.

    On the other hand, this means that every vb.Net developer out there having some experience and knowledge consciously made the decision to code in vb.Net because of his personal preferences, in stark contrast to many C# developers who decided to pick up what's mainstream. This said, all veteran people coding in vb.Net earn my personal respect.
    12/18/11 @ 09:47
    Comment from: David [Visitor] · http://www.ripteq.com.au
    David I have to agree with Torsten. I have recently been to some code presentations in Sydney where the presenters have asked the crowd who programs in VB.NET. When no-one raises their hand (and why would you?), the presenter goes on to make jokes about not having to dumb down their presentations, etc.

    There is a stigma attached to programming in VB. I find this incredibly strange given most programmers I know are considerate and intelligent people. They know you can achieve just as much in VB and C#, however VB bashing is considered fair game.
    12/18/11 @ 15:08
    Comment from: "Happy" Jack [Visitor]
    "Happy" Jack Didn't read the other comments but think you're reacting to hype. Considering it's history (VB.NET is based on Basic as C#.NET is on C; and both bases are older than most of my co-works), I don't think it will go away any time soon. It will be here longer than COBOL, and that language isn't dead, lack of newsprint not withstanding.

    VB.NET is just as much fun as any other language. Having seen the multitude of changes over my 40 years experience in this field, fighting over language choice is a waste of time & effort (except when starting new applications at which time available resources is more significant). I'm convinced that for the vast majority of programmers, the language which which they are allowed to play (explore, toy) the most will be their language of choice, and this is usually college training.

    Us old programmers might be going the way of old soldiers but listen: don't waste your time on the trivial.

    "Happy" Jack
    :=)
    12/29/11 @ 07:00
    Comment from: rik [Visitor]
    rik i spent 8 years as a vb.net/oracle programmer & then was told a huge project was now in C# because someone didn't take notes in a meeting correctly & spent 1 1/2 years building the core. so, i went thru a little "curly brace" pain, but doing so much javascript made the transition much easier. but, now since i have apps both in vb.net & c#. some oracle, some sql server, i spend much of my day switching back and forth. the difference - i'll have to get back w/ you on that as i do, winforms,webforms,webservices,windows services in both languages and for me, i can get what i need done in either. C# intellisense doesn't hold your hand as much as it does in vb.net (which is nice) - but, i kinda like switching back and forth. it does keep you on your toes for sure.it's like having two beautiful girlfriends. you're not so much in a hurry to pick only one. i would stay where you are comfortable as long as it meets your business needs.
    12/29/11 @ 07:03
    Comment from: Michele [Visitor] · http://www.divalleinvalle.it
    Michele I think that using VB.NET or C# doesn't make no difference if before the dialect there isn't a good project for classes, interfaces, etc.
    If a programmer likes writing in C# but hasn't no ability of structuring objects, he works like a mason without a project, using concrete or bricks according to his tastes.
    12/29/11 @ 07:17
    Comment from: Mike [Visitor]
    Mike Longtime VB developer here, never got into C++ and was late to .NET because, as is the case, cheap employer and why rewrite if what you have is still viable and still works.

    Being in .NET now I have forced myself to do some C# since if I ever have to look for a new job I know that will be way more prevalent. Obviously I am more comfortable with VB.NET and I code mostly in that. Like others have said, with the examples online, it is pretty easy to copy/paste C# code and change it to VB format, same libraries, etc. So I'm not really at a loss when I need to look something up.

    I feel ya though, there is a lot of distaste for VB.NET which I think is just a carry over of the feelings of VB which allowed a lot of really bad programmers to write apps. The .NET community needs to get over itself now especially since there isn't any real difference anymore.
    12/29/11 @ 07:18
    Comment from: Don [Visitor]
    Don Use C#. VB is dying. It's much easier to adapt to the C# syntax if you're familiar with Java and vice versa. Go with the flow unless you're trying to go after a niche market.
    12/29/11 @ 07:39
    Comment from: James [Visitor]
    James I am a VB6, VB.Net, and VBA programmer. I remember when I was in College one student asked the instructor his opinion of a new language call C, the instructor basically said it was a fad and would not stand the test of time as the other older languages. I was taught Fortran in College and I know of a company that uses Fortran due to its speed and it is an old language. The Colbal programmers made lots of money during the 2000 date scare because it was exclusively used in financial programming. I like VB.Net and I will continue to program proudly in VB.Net. I use VBA all the time and since it is part of alot of programs out there like MSOffice, AutoCAD, Visio, and many many others I don't think VB is going away. I have found the VBA and VB.Net are dominant in the Industrial Controls programming with HMI and such. I have been using VBA with MSExcel for simple and quick tools to speed up processes. I just don't like dealing with those brackets and parenthese and semi colons which seem to waste a lot of time. I would rather type VB in Russian than have to deal with C# syntax. That said I have also used LISP which is considered to be an artificial intelligence language and is also used in AutoCAD and it reads like Latin text with brackets, parathenses, semi colons. It is just my preference to use VBA and VB.Net and I will continue to do so until it dies. I can learn any programming language but until I have to for a project I don't want to take the time from other projects.

    Pascal, Fortran are both still around so I don't think VB will fade away as it is still very useful. I say to all programmers pick your programming language that you like and proudly raise your hand, if the instructor makes a joke making fun of your programming language of choice then it is he that is the fool alienating a customer.

    I think the future language will be more object based with simple ease of use style like VB that doesn't require brackets, paratheses, semi colons, or any other section wrappers. Just my opinion. I don't care if others don't like VB, it gets my job done and that is all I care about and not pleasing others. I tend to not follow the pack but instead choose my own path.
    12/29/11 @ 07:45
    Comment from: Marcel OUEDRAOGO [Visitor]
    Marcel OUEDRAOGO Things fall apart now : .NET languages has been abandonned by Microsoft. HTML CSS3 Javascript are today programming languages. And Desktop OB (OutOfBrowser) applications will be Web IN (InBrowser) applications. I was desapointed that MS don't want to tell us the thruth on his Windows 8 basic implementation knowledges.
    12/29/11 @ 07:47
    Comment from: balto [Visitor]
    balto The knowledge required for application programming in any .NET language is 90% .NET classes and 10% using the specific language structure. The language is mostly irrelevant -- and personal preference. For me, there would be a problem with programmers who only know one language.
    12/29/11 @ 07:52
    Comment from: Eric [Visitor]
    Eric My preference is definitely c# over vb.net. I do, however, work in vb.net. As someone previously mentioned vb.net is now pretty much on par with c# but they both have their pros and cons. The end game is that between the two languages you can accomplish just about the same thing and while vb.net is "frowned upon", it's not going anywhere. I would say your best bet is to learn c# at your own pace and at that point you can easily transpose c# examples to vb.net
    12/29/11 @ 08:08
    Comment from: Simon Whale [Visitor]
    Simon Whale This old VB is the joke language has been going on since VB v C++ and is still going on.

    The question I would like to raise being someone that develops around 70% in VB.NET.

    IF VB.NET is a dead language why would they decide to develop the language in parrell with C#? VB.net 2010 introduced many features that C# has such as the ability to update lists and collections using Lambda, dropping the line continuation etc.

    Yes there is more scope to develop C# as the language is still young, but VB.NET will now get the same features.

    Plus they both run on the same framework so I personally I dont see a problem using both! Main advantage I see for using C# is the IL compiler works in it's favour.
    12/29/11 @ 08:10
    Comment from: Bassam Muhammad [Visitor]
    Bassam Muhammad if you like syntax of VB more (like me) stick to it unless if you must move to c# due to oblicatory reasons like policy for ex , otherwise no need as both are the same , so better to learn syntax of c# also to be able to easily understand the examples , you will be more productive sticking with what you like, its totally a self preference issue as MS say, MS demos in c# because simply their internal developers use it since they came from C++ , this is not our case self developers
    12/29/11 @ 08:15
    Comment from: DanW [Visitor]
    DanW With Visual Studio 2010, VB and C# are now almost indistinguishable from a funtionality point of view. Even in MS documentation, they now say that form most developers, which language is a matter of personal preference.

    For me, the case sensitivity and dependence on bracketing make C# a non-preference.

    I will guess that with the next release of Visual Studio, the two languages might become functionally identical.

    MS will keep VB. They always want to be accessible to a new developer, who will of probably prefer the readability of VB.

    I read too many little statements by C# developers who say that VB is bad, wrong, unprofessional, or just horrible. They know better - they just like having something else or someone else to feel better than.
    12/29/11 @ 08:42
    Comment from: Justin [Visitor] · http://www.geekswithblogs.net/jboyer
    Justin I started with VB.Net and think it is a good language. It can do pretty much anything that C# can do. I now use and prefer C# because of the more succinct syntax but to each his own. At the end of the day, a language is just a tool. If a company wants me to use Java, Ruby, Python or any other language, I will gladly learn how to use it well. It does seem that Microsoft is giving much more attention to the C# community, which is unfortunate. But if you like a language, then stick with it until there is clear evidence of its demise. Of course, there's always legacy apps :)
    12/29/11 @ 08:52
    Comment from: Leo [Visitor]
    Leo I did VB.net for a couple of years and I think it actually is good enough for anything you want to do, except moving to a different language, but if you are a C# guy, you are halfway to do java, PHP or even C++. As a VB guy, had to do this change (Vb.net to Java) and it was pretty trumatic, indeed. (Curly brackets hell, capitalization, semicolons, get used to read code, etc.) and your productivity gets delayed because of this simple things which in the other case would be more natural, you can focs your attention on language and library particularities than first getting used to just 'read and write' code.

    As Rodrigo T. said above, is "french" better than "german" or "english"...? I would say, choose "english", only because everyone talks it, even a little bit. You will have a lot more access to examples, help and info in "english" rather than "french" or "german", right?. It doesn't mean other languages are bad or anything. It's just a "strategic" decision.

    You could say I am overreacting, but hey, in case you are joining an already ongoing project on a different programming language, you need to start being productive fast, right? and you feel pretty damn idiot when your code does not compile because you did "dim myVar as integer;"(but used semicolon, nice!) in Java, and you never get it, and your partner says "What is that 'dim' shit!?"... you know what I mean?

    And for the punchline, I am a spanish native speaker, and thanks to understanding english is that I could find and read this wonderful article, thanks!
    12/29/11 @ 09:34
    Comment from: Outsourcing Nepal [Visitor] · http://blog.outsourcingnepal.com
    Outsourcing Nepal We have been with vb.net since long and we definitely will be with it in future too.
    12/29/11 @ 09:34
    Comment from: Roland [Visitor]
    Roland so here we go, the lemmings are jumping off the cliff again.

    one of the first comments has it right. A REAL Programmer does not care about the language needed or employed to solve a problem.

    C# is still in it's youth even compared to VB. Also remember that without VB/VB.NET there never would have been a C#.

    the biggest difference between vb and c#?

    in C# you can easily confuse the hell out a yourself (and yes i have seen this done in C#, done way to often) by declaring variables in the following manner:

    string me;
    string Me;
    string mE;

    all of which are perfectly valid to be used side by side. This unfortunate disaster about to happen is a unfortunate inheritance from it's C++ parent.

    you cannot do that in VB.NET however, VB.NET won't let you. the 3 will all turn out to be the exact same variable.

    oh and the other big difference? a semi colon at the end of a line of code.

    other than that the two are more alike that most C# only Fan Boys (Lemmings) admit to.

    me, i like VB.NET, i also like C#, PHP, C++, and plenty of other languages. Which one i use for a given project depends on the scope of the project.

    one might be done in VB.NET, the next one (Or even parts of the first one) done in C#.

    so to me, the language is not at fault. It is the fault of the programmer. allot of you have lost the ability to form your own informed opinions and have become like lemmings.
    12/29/11 @ 09:57
    Comment from: Rick Brooks [Visitor]
    Rick Brooks I find it amusing that most of these conversations come from developers in the lofty situation that they are the sole owners and decision makers for the applications they write. Most of us in the real world are subject to writing and maintaining apps as the business dictates. If there is a new application or platform being discussed I can weigh in with my opinion of whqt is to be done. Otherwise I have to adapt to what exists and dance with the one who brung ya.
    12/29/11 @ 10:03
    Comment from: Horus [Visitor]
    Horus Microsoft has never had interest in any community. They just push products, and they need to continue pushing, that is the old pre open source model. Software as a product, it's the same with mobile phones, everybody is being pushed to buy the new model. If you want to belong to real community, switch to an opensource language.
    12/29/11 @ 10:06
    Comment from: Francesco Lentini [Visitor] · http://www.semplicity.com
    Francesco Lentini My idea is that people despise things as Visual Basic. Too easy. Linear, human-oriented, english-like programming language.

    Complicated life is much better. So, life is exactly as you can see.
    12/29/11 @ 10:10
    Comment from: Dan Sutton [Visitor] · http://www.opwernby.com
    Dan Sutton While it's arguable that C# and VB are ultimately the same thing (if you don't believe me, download a copy of the .Net decompiler from Telerik and check out what it does to a .Net EXE file) C# is a far more expressive way to program, and the syntax is terser and closer to "what we like to do". C#, in fact, is everything Java should've been -- a Java replacement for these days, as opposed to 15 years ago. VB, on the other hand, is an attempt to take that beauty and cludge it onto a BASIC-like syntax: a reverse-compatibility exercise for old VB 6 programmers: I believe it exists to get such people into .Net... but now that this exercise is pretty much complete, ten years later, its usefulness must be seen as pretty much over.
    12/29/11 @ 11:08
    Comment from: daf [Visitor] Email
    daf A tool for a task, I say. I program in about 10 different languages, depending on the scenario and need. There's nothing particularly wrong with VB.Net -- though it wouldn't be my choice to start a project in it. C# is neater and quicker to write -- and I find that the IDE annoys me less by not attempting to in/out-dent everything every time I start to insert a new logic block.
    But again, a tool for a task. If it's where you'd rather be, then so be it -- the MSIL code is (practically, barring case sensitivity) the same, so who cares? If you like it, use it. If you find that it's cumbersome to write and C# looks prettier (as I do) then use that. You don't need to re-write your existing code -- the two can play nicely with each other thanks to .Net. So, if you're just wondering, start new stuff in C#. Maintain your VB.Net. If nothing else, it's always good to have more than one language in active use -- it keeps the brain fresh.
    12/29/11 @ 11:23
    Comment from: Kay [Visitor]
    Kay "Do you know how hard it is to even find VB.Net developer on the web that have great blogs? I guess most of them decided to blog in C# instead"

    That's positive thinking. The reality is there aren't any, certainly not comparitively. VB.net originated as a way to attempt to turn secretaries with macro scripting ability into fully-fledged developers. It failed miserably, but microsoft stayed committed to it.

    I wrote basic, when I was 7 and learning to write applications on an IBM XT. I graduated to C and never looked back.

    Do I look down at VB.NET and VB in general? Yes. I'm not ashamed to admit that because it's archaic and back-trending. If anything it should have given way to better and more modern languages like *gag* ruby which more accurately convey the purpose being the language of simple "readability".

    Even at a syntactical level things like the word dim are unecessary and unreadable unless you know it's short for "dimension," which in and of itself has entirely lost its original meaning. There's no reason the compiler couldn't just figure out that you're declaring a variable if the key is at the start of a statement scope and is followed by the as keyword and a type. At the very least it should have been replaced years ago by a different keyword like instantiate, create, or other things in that vein. This is coupled with less than mild irritants like line-break line termination (unreadability) and don't even get me started on lambda expressions in VB.

    VB.NET has strong points like the my namespace (which is now in C#) and the with keyword, but the cons far outweigh the pros. The fact it all but mandates VB.NET for advanced features is one of the reasons that Windows Workflow Foundation still collects dust in all but a few cases.

    In response to the title: yes, bail on VB. You may not agree with me, but everyone else can't be wrong.
    12/29/11 @ 11:47
    Comment from: awicurrent [Visitor]
    awicurrent All should push on Microsoft for the allowing of Mixing C# and vb codes. While the default might be VB, it should allow the importing of code in C# by simply noting the code type for the module or class or form for that mater is in C# and not VB. Then things become much easier for all.

    Wake up Microsoft. (After all they share a common runtime code) In the end this will make all programmers in the Microsoft world stronger.

    12/29/11 @ 12:02
    Comment from: Michael [Visitor]
    Michael I have a non-US keyboard. On my keyboard the characters {[]};()#@ all require at least a two-key combination. I suspect a lot of non-US keyboards have the same problem. Because of this I dislike all languages using these characters.
    And I really do not understand why we still use a language-style based on very old C when the computers and compilers now are so powerful that a language could be optimized for humans and not for the compiler. Is it because programmers are conservative?
    On the other hand, frameworks are now more important and increasingly complicated, languages are more and more like the glue for the framework components.
    12/29/11 @ 12:24
    Comment from: Sterling Camden [Visitor] Email · http://chipstips.com
    Sterling Camden Your title provoked the somewhat snarky response "You have to ask?" But when I read this statement: "Copy paste coding gets even better when you are a C# programmer since there are so much more examples out there," I just shook my head.
    12/29/11 @ 12:38
    Comment from: Breathing Meat [Visitor]
    Breathing Meat C# and VB.NET have been converging for so long that the practical differences between them are negligible. Both offer complete targeted access to the .NET framework. It's only older technologies that folks should be considering moving away from - classic ASP and the like are the things that are worth porting. There is nothing to be gained from moving away from VB.NET.
    12/29/11 @ 14:15
    Comment from: C-Dan [Visitor] · http://c-dan.com
    C-Dan I prefer vb over c#. All my coder pals do c# but I just love the way VB looks and feels way more organized and lucid as compared to C#. I have converted entire c# projects to vb when they are brought to me for further improvement.
    WPF n VB.net make my day. C# and winforms, shoo away
    :D
    12/29/11 @ 16:15
    Comment from: Stefano Zaglio [Visitor]
    Stefano Zaglio VB/C# are "wrapper" for .NET and CLI. C# looks like C++ but is not C++. Why not simplify tools to manage code written in a language that is a constant from 30 years? Because Microsoft gain money from chickens like me, that not grow writing spaghetti code for few money while work as reseller for Microsoft products. Microsoft know that can count on a new generation of donkeys every 10 years. Are 30 years that I write and re-write same things (in MSSQL/TSQL Enterprise - 54.000€/Processor - do not exists fopen,fwrite,...). There is teorically a big difference but pratically no difference between me an my collegues 10 years younger.
    12/30/11 @ 01:27
    Comment from: Tiba [Visitor] Email
    Tiba VB.net is just as strong and fast as C#, you just have to set it up like so:

    Option Strict:ON(if you have this off you are BAD!!)

    Integer overflow checks:OFF(i only have this on in Debug mode)

    And what is with all the } and { and ; in C# i think they make code look bad and y do we need them...... is it so ppl look at it and think its C++ or something?


    Anyway both C# and VB.net rock! its all about how you want to abstract the .Net Framework(If you think about it you dont code in C# or VB.net i feel i code in .Net i just use VB.net as the layer to control .Net)

    Every thing you can do in C# i can do in VB.net(well i cant use unsafe code) just as well
    12/30/11 @ 02:23
    Comment from: Dan Rhea [Visitor]
    Dan Rhea Personally, I really like VB.NET. The code is easy to read, quick to create and with some discipline on my part easy to maintain. I see its demise predicted every year, but I assure you that there are still a lot of us out here perfectly happy to keep developing in it.

    I find I don't mind if sample code is in C# or VB... I can read either one and apply an example to my own code.

    I also spent years writing code in Delphi and the transition to .NET was pretty painless (and yes, I did have previous experience in pre .NET VB as well). It probably helps that I constantly play with other languages and platforms. It's good to remain flexible.
    12/30/11 @ 06:35
    Comment from: Tazmanian Hassan [Visitor]
    Tazmanian Hassan There are hardly any reasons to move an existing VB.NET codebase to C# and many reasons not to, including the development costs.

    There is hardly any point in having two languages which are the same (excluding syntax), and Microsoft should phase out VB.NET eventually. All that is needed is a reliable source code conversion tool.

    12/30/11 @ 07:32
    Comment from: Leo [Visitor]
    Leo I think it is now clear that thanks to the underlying .Net framework, it makes no difference to the final project if you did it in VB, C# or J#, or whatever the dotnet compliant available language of your choosing.

    It is also clear that VB has not any language, algorithm or any programming scheme weaknesses, since you can always 'translate' from VB to C# and viceversa.

    I think the differences are still on programmer adaptability, available support, training, examples, documentation, googling for help, number of blogs and writers, active communities, and the number of projects being done with it. I think those who choose C# over VB are not 'lemmings' as someone stated above, but the exact oposite. Are we, VB lovers insisting on living on a isolated island? Let me go further:
    It is like the windows vs linux war,(mid 00's) remember? Those times, companies always chose win above *ux because of its ~100% installed base, available support, etc. So any software company,(and still do, I must admit) obviously chose to develop win instead of *ux apps simply because they had more potential customers, right? is the same principle applied to what strategy and tools you use to develop, you go with the flow, is where the money is. It is true HyperCard apps were easy to develop with an amazing english-like language, but would you choose it now, knowing that it is abandoned, has no support, and less users each day? The same goes to VB. The same happened to J#, it could be dropped if MS sees that 'as a product' it is not being used. Is just a matter of resource redirecting, it has nothing to do with the language itself. It can be, of course, years away, but the trend is noticeable. As a small example, why did Miguel de Icaza first chose C# instead of VB for MONO?... for a broader audience, probably.

    As a footnote. VB is a good programming language, it gets things done, it is readable, it is complete, I love it. But I have to admit, it seems that the flow goes always stronger to C#, so I better start to practice.
    12/30/11 @ 12:17
    Comment from: Bob Delaney [Visitor] Email · http://www.facebook.com/bobdelaneympp
    Bob Delaney I read this exchange of views from top to bottom, and I found it very enlightening and informative. I am a weekend coder who maintains just a few web sites now, and I have a site with a bit of Javascript and server-side VB.Net. I was considering moving it all to C#, as the language is very similar to JavaScript.
    Though I can't say I have come to a conclusion (I was and am leaning toward converting it), I have come to the conclusion that if I do, it is because I feel like learning C#, rather than because VB may leave me in time.
    Clearly, Microsoft will continue to support VB. Clearly a lot of people continue to like it, especially if they have ever written anything non-trivial in VB. I find the assertion that C# leads to fewer keystrokes interesting. VB's more verbose syntax can lead to routines that tend to be more self-documenting. When curly braces are nested, I need to make more comments that indicate which statement block has just ended than in VB, where End Sub, End Select, or End If tend to be pretty obvious, and those comments after the curly brace ending the statement block do count as keystrokes.
    Thanks to everyone who posted, and for the informative and professional demeanour of the postings. Happy New Year.
    12/30/11 @ 21:39
    Comment from: Tim [Visitor]
    Tim I have been writing in VB since VB3 and VBA and of course into .net since inception. I have to chuckle as VB was the most popular language through the years but never got respect from other language developers. I made the jump to C# as it's necessary to keep up with technologies. I found it easy to learn. I actually attribute that to the fact that I know javascript. I enjoy the cleanliness of C# vs the verboseness of VB: braces VS Function/End Function, switch{} vs select case end select, etc... I unfortunately feel that VB will go away. I'm a member of a MS user group in CT and no one is writing in VB any more. I recently went on several interviews and all but one were C#. Oh well. Keep the skills honed and do your best to not tread to deeply into a technology that MS may abandon. I remember my first "so happy" choice was ASP vs ActiveXDocuments for web. Phew!!!
    01/01/12 @ 10:59
    Comment from: Mr. Chug [Visitor]
    Mr. Chug Much as I love(d) VB, C# is the way to go.

    C# is an international standard. http://www.ecma-international.org/publications/standards/Ecma-334.htm

    C# has to support of Mono. Your C# runs on linux, iOS, Android, and so on. http://mono-project.com

    -C
    01/02/12 @ 07:50
    Comment from: Joe Barrett [Visitor]
    Joe Barrett I'm not sure why the author sets up the problem as "VB.NET and WinForms" vs "C# and ASP.NET". Either language works with either application.
    01/02/12 @ 08:46
    Comment from: OGI [Visitor] · http://www.dws-slice.com/
    OGI VB .NET is almost identical to C# and maybe the bad reputation of VB .NET is caused by stupid rumors spreaded in the web by people who never used that language. And the rumors can really destroy a product, no matter how good or useful is that product.
    01/03/12 @ 03:25
    Comment from: rmcmullan [Visitor]
    rmcmullan "Spaghetti programmers"? What are they? Are they like spaghetti westerns? Are they a self-identified group? Is there a group of people widely known as the spaghetti programmers out there somehwere that I somehow missed out on?
    01/03/12 @ 09:38
    Comment from: OGI [Visitor] · http://www.dws-slice.com/
    OGI To: 'rmcmullan'

    Spaghetti code is a code that is so much messed out that even its creator can't tell what actually this code does. There is many types of bad code out there, see this article:
    http://www.yacoset.com/Home/signs-that-you-re-a-bad-programmer
    01/03/12 @ 15:58
    Comment from: jasper [Visitor] Email · http://www.codecomplete.co.za
    jasper It all goes through the CLR so there are no performance differences. The syntax is about the same, so there are few coding advantages, c# just has all those silly ; and { } all over the place to slow things down - they're not really needed anymmore visual studio auto indents so why to you need superflous delimiters? It doesnt make reading the code any easier.

    By the time your app is compiled and installed the customers dont even know the difference.

    Simple answer: if you are an employee: use C# because some project manager wants it on his CV. If you are self employed use VB and save 20% in coding time by leaving out thousands of ; { } .

    There are plenty of websites out there that instantly convert examples between C# and VB so youre not losing out. Generally the syntax is so similar you can interpret the gist of the example yourself.
    01/06/12 @ 02:47
    Comment from: MarcusXIT [Visitor]
    MarcusXIT People that say C# is better then VB.NET and the job market believes, just shows how ignorant folks are out there. I've been programming in VB.NET since .NET came out and of yet to hear of something I can't do that C# can. I don't like all those C# semicolons and braces its an eye sore. That was stone-age. Wake up folks VB.NET or C# your either can program in .net or you suck. they are so similar you can run them thru a web converter and toggle between languages like speaking English or speaking English. Stop the VB.NET bashing and jump on board with me you will be happy as your life becomes easier and others follow. ditch the braces
    Basic all purpose symbolic instruction code Visual B.A.S.I.C. Remember all .net goes back to same MSIL anyway
    01/19/12 @ 18:26
    Comment from: Ali [Visitor] · http://www.vivitech.co.uk/
    Ali I think vb.net is a good language to learn, it does pretty much what the others can do. If you want to create java like code you could do c# instead.
    01/31/12 @ 02:45
    Comment from: Eric [Visitor]
    Eric I really think the point is moot. VB had its hay day and it was well. I live in the greater Portland,OR area and I can't remember anyone asking for a VB.NET programmer in the last 3 years. RIP VB.NET.

    Here its almost exclusively C#. I think I heard of some jobs in counties and state work in VB.NET a few years ago but yeah..not sure you want in that.

    As soon as .NET came out many years ago I leaped head first into C# and have never regretted it. I have several friends that were initially stubborn and stayed with VB.NET but have all converted to C# developers.

    There are just much much fewer shops that code in VB.NET then C#. If I were doing that again I would go straight into C#. NOTE: I am a java developer as well and syntax wise C# is pretty close.

    VB.NET is your grand fathers 3GL business language.
    05/22/12 @ 12:08
    Comment from: Mac [Visitor]
    Mac VB.net vs C#
    This is a never ending battle on code writing.
    For vb/vb6 the use of Option Explicit Off for spaghetti developers you cannot know what data type for a certain variable.but it is for faster coding.
    also when it comes to coding conditional statements looping,etc. vb/vb.net do not provide standard codings so its so hard to maintain and learning Vb.net style of coding takes a lengthy amount of time to learn.A .NET newbie must go on to C# because with C# even a java programmer can learn in a quick span of time and debug a basic functionality due to standard of coding.for software managing I will go to C#

    but for the functionality they present,they are the same because of .NET framework.its one for you to choose.

    I'm a spaghetti coder since my College days but when i get accessed to industry they change my way of coding.to be a great developer there you must not stop studying.Every months there is always a programming evolution and you must cope up with it or else you will be left behind
    08/16/12 @ 20:33
    Zil I hate vb now, i go along with c# much better than vb..
    10/21/12 @ 00:58

    Leave a comment


    Your email address will not be revealed on this site.

    To mislead the spambots.

    Your URL will be displayed.
    (Line breaks become <br />)
    (Name, email & website)
    (Allow users to contact you through a message form (your email will not be revealed.)