Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Why is VB being forsaken?

Why is VB being forsaken?

Scheduled Pinned Locked Moved The Lounge
csharplearningc++dotnet
103 Posts 50 Posters 4 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J jdperk

    To add my opinion to this topic. I for one like VB. I have used VBScript, VB, VB6, VBA, and VB.Net. It is easy to use since it is more readable than C# and other cryptic type code. I don't think VB is going away any time soon and here is why. VBA which is a subset of VB is in many applications Excel, Visio, Access, AutoCAD, and many others just to name a few. I work with VBA more than any other language these days. I can learn another language if I choose to I just can't be an expert at every language so I choose VB as my language of choice. VB.Net can do what C# can do so it is a wash and just a preference. When VB dies that is when I will move to C# or the new language at that time. I suggest stop comparing languages and use the one that you like and can get the job done that you are coding. If C++ is better then use it, if F# is better than use it, pick the right tool for the job.

    G Offline
    G Offline
    giuchici
    wrote on last edited by
    #82

    There was nothing in what you said that deserved a down vote but nevertheless it still happened. Au contraire, you just stated some facts but somebody could not take it. I bet that's somebody who even in C# cannot finish anything and his code is uglier than hell. It happened that in the last 5 years I used both languages equally and every time I program in one I find myself missing features from the other one. I like them both; they are great languages with just "a bit" of succinctness advantage for C#. But hey don't forget that somebody's gold can be somebody's dirt. Not everybody loves the curly braces, and this goes for any other features. So again, I agree that there's nothing important about this VB vs. C# debate. Important is what you create and I am positive both languages will allow anybody to do things so great many of us will never get there. However, back to the original poster's question. Sadly it is just life, things, species ... disappear. I was a FoxPro/Visual FoxPro programmer. They disappeared (not quite, but soon). Even though there was still a ton of VFP code out there (jobs too) there was a moment when I had to leave that boat as otherwise I would have been stuck with it and today look for niche jobs or contracts in Visual FoxPro. Don't fight the current; plus, it is not a good thing to be too sentimental in this world. Look at Silverlight which is another concern of so many people. VB may be dying after a long good life almost as a wise old man with a fulfilled life but with Silverlight is like killing a child (spoiled one but nevertheless ...). However with all the lack of samples and the silence around it I don't think VB's death s going to happen that fast. You probably have another 2-3 years to switch to some other language :D. It's just a programming language after all (vocabulary and syntax are much simpler than the ones of a natural language) so be prepared and again don't be sentimental ... just let it go. Cheers

    giuchici

    1 Reply Last reply
    0
    • J jim norcal

      All the programming I have done has been with VB then VB.NET. Microsoft keeps continues to develop and release it along side C# and the rest. However, over the last few years, I have seen very little new information out there regarding VB. Very few articles on Code Project and other sites. Oh, and I'm a subscriber to MSDN magazine and I haven't seen a single line of VB.NET code in .. in .. I can't even remember the last issue. I can say at least the last four issues there hasn't been anything in VB.NET. It's all been C#, C++ and even F# but no VB! Is Microsoft trying to push it to the side so it whithers and dies and hope that no one notices or pays attention? Even here on Code Project I've noted next to nothing new on VB. Every week I get the newsletter with all the new articles and rarely do I see anything on VB.NET. There may be one article among the 30 C# articles but that's on a good week. So, what am I supposed to do? Just stop using it, pick up a "Learning C# For Lonely, Left Behind VB.NET Programmers" and just think of VB.NET as fond memories of long ago? I have a hard time with such a concept. VB.NET has evolved into a good language and is capable of doing pretty much anything C# can do (using the .net framework, of course) so why isn't it promoted more by MS and others?

      F Offline
      F Offline
      Fabio Franco
      wrote on last edited by
      #83

      I am a former VB X programmer and I can say that I never want to look back. The most horrible programming practices I've seen was in VB. I'm not saying that you can't do horrible things in other languages, but VB (VB and VB.net) by far is the language I saw the most coding horrors so far. Maybe because it's more appealing to begginers, maybe it's because the compiler is more forgiving or maybe it was by chance. The thing is that I started to dislike it once I was enlightened by the C like languages. And I think you will too if you give C# a chance. Sometime ago I had a hard time debugging VB.net code like this:

      Dim someBoxedBool As Boolean = Nothing

      someBoxedBool = False

      If (someBoxedBool = Nothing) Then
      'Initialize it
      someBoxedBool = False
      End If

      Of course this isn't real scenario but I had a hard time figuring out why it always evaluated to true if the value was False or if the variable was null. There was no way to determine if the variable was assigned a value or not, this made me loose a few hours as the compiler did the magic that performs implicit casting. I know that if I was a seasoned VB.Net developer I'd catch this earlier, but magics like this can make the living hell of a developer. And I think many C# developers like me hates this and other magic stuff of VB compilers. I know that VB.net community have been dwindling in the past few years. I doubt that it will go away anytime soon though, but I definetely wouldn't bet on its future. If I were you, I'd definetely learn C#, as it has a bigger market than VB and it's growing much faster than VB. I believe it's a win win scenario. Learning new stuff is always good, it gives you a different perspective, so give it a shot. If you like it move, if not, you have a more complete resumè and more flexibility.

      "To alcohol! The cause of, and solution to, all of life's problems" - Homer Simpson

      O 1 Reply Last reply
      0
      • A Alan Burkhart

        I don't have any real evidence to back this up, but I get the impression that part of the "anti-VB" sentiment goes back to the good ol' days. In the mid 80's I wrote an application in MS BASIC for a limo service that allowed their dispatchers to see reservations on a 24-hour grid. The app was very fast (by the standards of the day) and the limo service was much pleased with it. But some of my friends and co-workers crucified me because I wrote it in BASIC. Even back then many people were put off by the first word within the acronym: Beginners. I think maybe any form of BASIC still carries that unfair stigma to this day. It's a good language, and as Chris pointed out elsewhere here there are a lot of articles for it. Not as many as C#, but a lot.

        XAlan Burkhart

        R Offline
        R Offline
        Renzo Ciafardone
        wrote on last edited by
        #84

        Well i wrote my very first "real "program in BASIC, since it was/is an interpretative language there was no need to compile it, or do anything else other that run it once you had the code ready. It was a program that told you the type of triangle based on it size length or angles by the way. I even remember i did it on a 8086 with a monochromatic amber screen, 5 1/4 floppy, NO HARD DISK whatsoever, sadly i don't remember the DOS version. So I know basic is really "beginner friendly", but not much later i learned pascal, i immediately though that BASIC "style" was too verbose, THEN i learned C, oh boy that was a beauty to write on, the first couple of weeks i spent more time REWRITING code that worked just to try to make it more compact, 10 lines of atomic instructions cramped on a single crazy statement, for the heck of it. This was early 90's, i was on my teens and everything i did was for my own use, so "readability" was an alien concept to me... I do think of C style not as something superior per se, but that is just right, and most programmers i know feel the same. Problem is there are lots of smugs that will tell you that "other" languages suck, but thats being just stupid. I would like to VB to die, but just because i have this personal philosophy about life, if 2 thinks do exactly the same, there is no reason for both to exist, is a survival of the fittest thing. VB does not do anything better or worse than many other languages, so i don't see a reason for it to continue existing. But it is not ME who will decide that, it will be the environment...

        1 Reply Last reply
        0
        • G GuyThiebaut

          I can only speak from my experience on this so here goes... I started off with .Net using VB. I wrote my code in a completely procedural manner - meaning I did not use any of the object oriented facilities available within .Net. A friend of mine was very much into object orientation with a langauge called REXX. I started to become interested and as a consequence I decide to teach myself C#. I did a search on VB and C# tutorials and articles and found many more on C# so I decided that it would be better to learn C#. It was quite a leap going from VB to C#(all those curly brackets and no if then else statements...) but I have not looked back since. When I started with C# I did the old thing - procedural code - slowly I learnt about object orientation and started to use it. I then started to love programming in C# - because: I found that I am forced into better programming methods with C#(can't say why exactly). I find C# to be a much more 'elegant' programming language than VB - if I am going to spend hours coding I want a language I enjoy programming in. There are lots of articles on C# - for that reason alone you will find more support on C#. VB encourages me to write crap code because it is so verbose... I don't think there is anything fundamentally wrong with VB - however I would encourage you to learn C# even if it is just as an exercise in learning something new.

          Continuous effort - not strength or intelligence - is the key to unlocking our potential.(Winston Churchill)
          K Offline
          K Offline
          KP Lee
          wrote on last edited by
          #85

          GuyThiebaut wrote:

          A friend of mine was very much into object orientation with a langauge called REXX.

          That's interesting, I haven't used REXX for over 8 years now. When I did, it was on an IBM/TSO mainframe and had no coorelation to OO whatsoever. (Similar in style to vbs.)

          G 1 Reply Last reply
          0
          • M MSBassSinger

            I started VB with 1, after years of programming in FORTRAN, COBOL, Clipper, and QuickBasic. I never did use procedural programming, but did modular programming. That made the transition to OOP inVB4 through 6 pretty easy. Since my VB6 programs were OO, they ported easily to VB.NET. I also learned C# several years ago. I program in C# where I work since C# is the comfortable choice for the decision makers with a Java and C background. I program in VB.NET for my own development. I find VB.NET to be more productive, even in complex n-tiered apps. VB.NET does everything C# does, so why should I program in a 1960s throwback style when I can program in a simpler, more powerful syntax? I hear the anti-VB folks talk about C# being more "elegant". Huh? What does that mean? My wife and daughter are elegant. I don't want my language of choice to be girly or curly. :) I think "elegant" is used in the context of programming languages when one is unable to give a coherent reason for using a language. Simply put, if Java or C/C++ is your background, then use C#. If VB6 is your background, then use VB.NET. If you want to be mire hirable, know both well. After all, 80% of being an excellent .NET developer is knowing the framework.

            C Offline
            C Offline
            cpkilekofp
            wrote on last edited by
            #86

            From Dictionary.com:

            el·e·gant   /ˈɛlɪgənt/ Show Spelled
            [el-i-guhnt] Show IPA

            –adjective

            1. tastefully fine or luxurious in dress, style, design, etc.: elegant furnishings.
            2. gracefully refined and dignified, as in tastes, habits, or literary style: an elegant young gentleman; an elegant prosodist.
            3. graceful in form or movement: an elegant wave of the hand.

            For most of us who use the term, programming elegance is expressed by the third definition. C, C++, etc. use fewer symbols to convey more meaning, the C-like syntax imparting grace through requiring fewer decorations. Thus, it appears to be purely a matter of taste at first. My experience, though, is that their are more programmers who are better programmers who appreciate the elegance of C-like syntax than there are programmers who are better programmers who prefer the wordier but more easily remembered keywords and forms of languages like VB.NET, FORTRAN, and COBOL. That experience may be influenced by the fact that I've had to maintain C code written by BASIC programmers as well as BASIC code written by C programmers - let me tell you, the better attempt was NOT made by the BASIC programmers. C-like syntax is harder to learn than wordier syntaxes, so it's less likely that any given BASIC programmer can learn C that it is that any given C programmer can learn BASIC, given equal exposure or lack thereof to the system being learned. Unfortunately, given this observation, since smarter people usually write better code, it is strongly suggested that more of that better code is being written in C# that is being written in VB. I expressed this opinion well before the advent of .NET when my client (and former employer at the time) expressed surprise that I would reject C/C++ for a new project he was staring. First, I told him, you'll need a database management system for what you want to do, which means that if you have Access, you can build a prototype with little difficulty; second, Access used (and still uses) a dialect of BASIC, and BASIC programmers are cheap and easily disposable because fewer of them are going to write code that requires deep intellect to understand and maintain, thus new programmers will spend less time getting up to speed on what their predecessors were doing. Note that the application my client wanted to build, while complex, was not "rocket science"; if it had been "rocket science", I would have recommended C/C++ as the develompent language without hesitation, simply becau

            1 Reply Last reply
            0
            • N Not Active

              Agreed. Compared with the clean syntax of C#, VB.NET is horrid. Though, aside from these aesthetic, the major issue I've encountered is with the skills and abilities of those using VB compared with those coming from OO backgrounds.


              I know the language. I've read a book. - _Madmatt

              P Offline
              P Offline
              PIEBALDconsult
              wrote on last edited by
              #87

              Well we have horrible practioners in both languages here. It really does come down to experience and training in both (or any) language.

              1 Reply Last reply
              0
              • O Oakman

                Mark Nischalke wrote:

                Compared with the clean syntax of C#, VB.NET is horrid.

                One of the silliest things some folks do is think that their personal preferences are actually laws of nature. When someone is used to reading one language and has trouble with the other that defines not the language, but the programmer.

                The 3-legged stool of understanding is held up by history, languages, and mathematics. Equipped with these three you can learn anything you want to learn. But if you lack any one of them you are just another ignorant peasant with dung on your boots. R. A. H.

                P Offline
                P Offline
                PIEBALDconsult
                wrote on last edited by
                #88

                Not necessarily, for instance: VB.net has certain restrictions on how you can format your code (e.g. linebreaks) that C-like languages just don't have. C-like languages have multi-line comments, VB.net does not. In C# I can make an event based on a delegate that returns a value, in VB.net you can't. While that's not something most situations require, it's nice to know I can when I need to. C# has auto-implemented properties, VB.net does not (at least not in the version I have to use at work). That's what comes to mind at the moment and my dinner is getting cold.

                O R 2 Replies Last reply
                0
                • P PIEBALDconsult

                  Not necessarily, for instance: VB.net has certain restrictions on how you can format your code (e.g. linebreaks) that C-like languages just don't have. C-like languages have multi-line comments, VB.net does not. In C# I can make an event based on a delegate that returns a value, in VB.net you can't. While that's not something most situations require, it's nice to know I can when I need to. C# has auto-implemented properties, VB.net does not (at least not in the version I have to use at work). That's what comes to mind at the moment and my dinner is getting cold.

                  O Offline
                  O Offline
                  Oakman
                  wrote on last edited by
                  #89

                  If someone is used to one language and regards having to use another as a trial, no amount of discussion, explanation, or examples will convince him that his problems lie within himself and not the language. Suffice to say that for every goody that C# has, VB.NET has a one,too, a different one. For every gotcha that VB.NET has, C# has one, too. When it comes to C# and VB.NET, there's nothing wrong in preferring one language over another, but folks who think that their personal preference represents a real-world value judgement that should be recognized by all is making a mistake. Developers who go so far as to claim that all or most of their peers who use their language choice are superior in skills and ability to those who use the other, are amusing. Developers who refuse to learn as much as possible about any language that might get them a job are shooting themselves in the foot.

                  The 3-legged stool of understanding is held up by history, languages, and mathematics. Equipped with these three you can learn anything you want to learn. But if you lack any one of them you are just another ignorant peasant with dung on your boots. R. A. H.

                  1 Reply Last reply
                  0
                  • F Fabio Franco

                    I am a former VB X programmer and I can say that I never want to look back. The most horrible programming practices I've seen was in VB. I'm not saying that you can't do horrible things in other languages, but VB (VB and VB.net) by far is the language I saw the most coding horrors so far. Maybe because it's more appealing to begginers, maybe it's because the compiler is more forgiving or maybe it was by chance. The thing is that I started to dislike it once I was enlightened by the C like languages. And I think you will too if you give C# a chance. Sometime ago I had a hard time debugging VB.net code like this:

                    Dim someBoxedBool As Boolean = Nothing

                    someBoxedBool = False

                    If (someBoxedBool = Nothing) Then
                    'Initialize it
                    someBoxedBool = False
                    End If

                    Of course this isn't real scenario but I had a hard time figuring out why it always evaluated to true if the value was False or if the variable was null. There was no way to determine if the variable was assigned a value or not, this made me loose a few hours as the compiler did the magic that performs implicit casting. I know that if I was a seasoned VB.Net developer I'd catch this earlier, but magics like this can make the living hell of a developer. And I think many C# developers like me hates this and other magic stuff of VB compilers. I know that VB.net community have been dwindling in the past few years. I doubt that it will go away anytime soon though, but I definetely wouldn't bet on its future. If I were you, I'd definetely learn C#, as it has a bigger market than VB and it's growing much faster than VB. I believe it's a win win scenario. Learning new stuff is always good, it gives you a different perspective, so give it a shot. If you like it move, if not, you have a more complete resumè and more flexibility.

                    "To alcohol! The cause of, and solution to, all of life's problems" - Homer Simpson

                    O Offline
                    O Offline
                    Oakman
                    wrote on last edited by
                    #90

                    Fabio Franco wrote:

                    know that if I was a seasoned VB.Net developer I'd catch this

                    So aren't you saying that if you knew what you were doing, this bad code wouldn't have been a problem? Most people with a year of VB under their belt would have ripped it out very quickly. I agree that newbies can write some really stinker code. And it does appear that a lot of the "PLZ HLP- Do my rgnt homework!" kiddies from southern Asia are trying - and failing - to write VB rather than C#. That may be, I suppose, the fault of the reputation that classic VB had - but VB had that rep because it was being compared to C++ not C# which is no harder to learn, no more likely to keep coders on the straight and narrow, and certainly no more likely to produce maintainable code than VB.NET. Because I have had to deal with converted COBOL programmers in a couple of shops I, have seen just as much putrid writing beginners code in C# as in VB.

                    The 3-legged stool of understanding is held up by history, languages, and mathematics. Equipped with these three you can learn anything you want to learn. But if you lack any one of them you are just another ignorant peasant with dung on your boots. R. A. H.

                    F 1 Reply Last reply
                    0
                    • O Oakman

                      Fabio Franco wrote:

                      know that if I was a seasoned VB.Net developer I'd catch this

                      So aren't you saying that if you knew what you were doing, this bad code wouldn't have been a problem? Most people with a year of VB under their belt would have ripped it out very quickly. I agree that newbies can write some really stinker code. And it does appear that a lot of the "PLZ HLP- Do my rgnt homework!" kiddies from southern Asia are trying - and failing - to write VB rather than C#. That may be, I suppose, the fault of the reputation that classic VB had - but VB had that rep because it was being compared to C++ not C# which is no harder to learn, no more likely to keep coders on the straight and narrow, and certainly no more likely to produce maintainable code than VB.NET. Because I have had to deal with converted COBOL programmers in a couple of shops I, have seen just as much putrid writing beginners code in C# as in VB.

                      The 3-legged stool of understanding is held up by history, languages, and mathematics. Equipped with these three you can learn anything you want to learn. But if you lack any one of them you are just another ignorant peasant with dung on your boots. R. A. H.

                      F Offline
                      F Offline
                      Fabio Franco
                      wrote on last edited by
                      #91

                      Oakman wrote:

                      So aren't you saying that if you knew what you were doing, this bad code wouldn't have been a problem?

                      Not really, that code wasn't written by me and things like these are not very intuitive to debug. What I meant is that if VB.Net was my primary language I'd wouldn't loose as much time to spot this as I did. In any case implicit behaviors like this are not easy to spot and can give a hard time to debug.

                      Oakman wrote:

                      not C# which is no harder to learn

                      I still believe VB.Net has bigger appeal to beginners, therefore that might be one of the reasons I stumble into more coding horrors on VB.Net than C#.

                      Oakman wrote:

                      I, have seen just as much putrid writing beginners code in C# as in VB.

                      I guess this in the end comes to personal experiences, like I had. I agree that bad code can be done on both languages.

                      "To alcohol! The cause of, and solution to, all of life's problems" - Homer Simpson

                      O 1 Reply Last reply
                      0
                      • F Fabio Franco

                        Oakman wrote:

                        So aren't you saying that if you knew what you were doing, this bad code wouldn't have been a problem?

                        Not really, that code wasn't written by me and things like these are not very intuitive to debug. What I meant is that if VB.Net was my primary language I'd wouldn't loose as much time to spot this as I did. In any case implicit behaviors like this are not easy to spot and can give a hard time to debug.

                        Oakman wrote:

                        not C# which is no harder to learn

                        I still believe VB.Net has bigger appeal to beginners, therefore that might be one of the reasons I stumble into more coding horrors on VB.Net than C#.

                        Oakman wrote:

                        I, have seen just as much putrid writing beginners code in C# as in VB.

                        I guess this in the end comes to personal experiences, like I had. I agree that bad code can be done on both languages.

                        "To alcohol! The cause of, and solution to, all of life's problems" - Homer Simpson

                        O Offline
                        O Offline
                        Oakman
                        wrote on last edited by
                        #92

                        Fabio Franco wrote:

                        that code wasn't written by me

                        Just so you don't think I was accusing you of writing it, I knew that. I meant that it seemed possible that your inexperience with the language made you hesitant about making a judgement that wouldn't have been the case had you known it as well as I assume you know C#

                        Fabio Franco wrote:

                        I guess this in the end comes to personal experiences

                        I ended up working for 3 fortune 500's in a row. They had been mostly writing for minis that talked to mainframes and after Y2K had senior developers who they wanted to convert to writing code for WIN Server. It seemed that in every case they wanted to be "C" programmers, not "VB" so they had taken a developmentor course in C# and were happily writing COBOL procedurals in .NET. :rolleyes:

                        The 3-legged stool of understanding is held up by history, languages, and mathematics. Equipped with these three you can learn anything you want to learn. But if you lack any one of them you are just another ignorant peasant with dung on your boots. R. A. H.

                        F 1 Reply Last reply
                        0
                        • O Oakman

                          Fabio Franco wrote:

                          that code wasn't written by me

                          Just so you don't think I was accusing you of writing it, I knew that. I meant that it seemed possible that your inexperience with the language made you hesitant about making a judgement that wouldn't have been the case had you known it as well as I assume you know C#

                          Fabio Franco wrote:

                          I guess this in the end comes to personal experiences

                          I ended up working for 3 fortune 500's in a row. They had been mostly writing for minis that talked to mainframes and after Y2K had senior developers who they wanted to convert to writing code for WIN Server. It seemed that in every case they wanted to be "C" programmers, not "VB" so they had taken a developmentor course in C# and were happily writing COBOL procedurals in .NET. :rolleyes:

                          The 3-legged stool of understanding is held up by history, languages, and mathematics. Equipped with these three you can learn anything you want to learn. But if you lack any one of them you are just another ignorant peasant with dung on your boots. R. A. H.

                          F Offline
                          F Offline
                          Fabio Franco
                          wrote on last edited by
                          #93

                          Oakman wrote:

                          I meant that it seemed possible that your inexperience with the language made you hesitant about making a judgement that wouldn't have been the case had you known it as well as I assume you know C#

                          You got it.

                          Oakman wrote:

                          were happily writing COBOL procedurals in .NET.

                          :~

                          "To alcohol! The cause of, and solution to, all of life's problems" - Homer Simpson

                          1 Reply Last reply
                          0
                          • J jim norcal

                            All the programming I have done has been with VB then VB.NET. Microsoft keeps continues to develop and release it along side C# and the rest. However, over the last few years, I have seen very little new information out there regarding VB. Very few articles on Code Project and other sites. Oh, and I'm a subscriber to MSDN magazine and I haven't seen a single line of VB.NET code in .. in .. I can't even remember the last issue. I can say at least the last four issues there hasn't been anything in VB.NET. It's all been C#, C++ and even F# but no VB! Is Microsoft trying to push it to the side so it whithers and dies and hope that no one notices or pays attention? Even here on Code Project I've noted next to nothing new on VB. Every week I get the newsletter with all the new articles and rarely do I see anything on VB.NET. There may be one article among the 30 C# articles but that's on a good week. So, what am I supposed to do? Just stop using it, pick up a "Learning C# For Lonely, Left Behind VB.NET Programmers" and just think of VB.NET as fond memories of long ago? I have a hard time with such a concept. VB.NET has evolved into a good language and is capable of doing pretty much anything C# can do (using the .net framework, of course) so why isn't it promoted more by MS and others?

                            K Offline
                            K Offline
                            Kenneth Kasajian
                            wrote on last edited by
                            #94

                            I honestly don't get this kind of thinking. Why do you have a hard time learning a new language? You learn new technologies all the time, why not a new language? And why only use one language? Use many. Don't just stick with C#. Everyone should look at languages like Python and Scheme. It will make you a better programmer, no matter what language you use.

                            ken@kasajian.com / www.kasajian.com

                            1 Reply Last reply
                            0
                            • P PIEBALDconsult

                              Not necessarily, for instance: VB.net has certain restrictions on how you can format your code (e.g. linebreaks) that C-like languages just don't have. C-like languages have multi-line comments, VB.net does not. In C# I can make an event based on a delegate that returns a value, in VB.net you can't. While that's not something most situations require, it's nice to know I can when I need to. C# has auto-implemented properties, VB.net does not (at least not in the version I have to use at work). That's what comes to mind at the moment and my dinner is getting cold.

                              R Offline
                              R Offline
                              Randy R Jackson
                              wrote on last edited by
                              #95

                              C-like languages have multi-line comments, VB.net does not.

                              P 1 Reply Last reply
                              0
                              • R Randy R Jackson

                                C-like languages have multi-line comments, VB.net does not.

                                P Offline
                                P Offline
                                PIEBALDconsult
                                wrote on last edited by
                                #96

                                Wow, deja vu.

                                1 Reply Last reply
                                0
                                • L ljw1004

                                  I'm Lucian Wischik, the VB language PM at Microsoft. Since VS2010 we've put a huge amount of resources behind VB. We haven't announced all the new features, but here are just some of the new VB features we've already announced: * Async programming, developed absolutely equally with C#. * Iterators, like C#, but also allowing lambda iterators and yield inside try blocks which C# doesn't have. * VBCore - removes the dependency on Microsoft.VisualBasic.dll, so VB is as easy for 3rd-parties to use as C#. * New platforms - VB support added to Windows Phone 7, to the Micro Framework (i.e. Netduino), to XNA. * (and smaller fixes, like no longer prettylisting that blasted "ByVal" in front of everything, and emitting minimally-qualified names) And of course all of these features benefit from the things we know and love about VB, like QuickFixes and XML. Here's an interesting code snippet which ties together several unique VB features at the same time:

                                  Sub Main()
                                  Dim xml =

                                        <%= Iterator Function()
                                              For Each robot In {"alpha", "beta", "gamma"}
                                                Yield *   Robot <%= robot %> reporting in for duty
                                              Next
                                            End Function()
                                         %>
                                  

                                  Console.WriteLine(xml)
                                  End Sub

                                  What this shows is code that on the surface looks similar in structure to ASP/PHP, but is actually fully typesafe. Personally, I've switched over all my hobby web-services from python to this kind of VB because I can code them quicker and with fewer bugs thanks to the type safety. -- Lucian Wischik, VB language PM

                                  R Offline
                                  R Offline
                                  Randy R Jackson
                                  wrote on last edited by
                                  #97

                                  Oh man... I've been programming in VB versions since VB ver3. I use C# when nessarry but squirly braces are just visual noise to me after so many years of VB. It's just my personal preference. I've written programs in VB.net that manage some of our primary military services. That code will be around for a while. My experience is that it's the programmer's experience and ability to get the job done right that makes a differnce. I usually end up firing language snots and anyway C# is a too alternative lifestyle. Hanky please...

                                  modified on Tuesday, August 2, 2011 5:44 PM

                                  1 Reply Last reply
                                  0
                                  • C Chris Boss

                                    I won't comment about Microsofts reasons or motives in changing VB, but I will comment about the Basic language and why some may prefer not to switch to C#. BASIC has a very, very long history and despite all the criticism it has received it has endured. Why ? Because Basic is a more natural language as far as its syntax. Even non-programmers can examine Basic code and make some sense of what it is doing, unlike C code which is an acquired taste. I have been programming in Basic since 1975. I learned some Fortran, gotten plenty of books on C (interested) and even purchased a C compiler or two, but just never picked up the language. Very quickly the syntax of the language (C) was counter intuitive to my first language Basic. Now I did take the time to learn some machine language (wrote a compiler using Basic for the 6502 CPU for the commodore 64). I also learned some intel assembler and wrote some library code for use with PDS 7.1 using assembler. To me machine language and assembler was easier to pick up than C. Over the years I moved on to VB 1.0, 2.0 and finally 5.0 Pro (stopped there). Amazingly, it was all the OOP stuff which I began to dislike. While OOP has its place, OOP is not the programming panacea it was first thought to be. I personally prefer more procedural style coding over OOP and I am far more productive with such code. I still love the Basic language and it still lives despite dot.net. For the last 10 years I have used PowerBasic, rather than any Microsoft Basic. I still like VB, but it has changed too much for me and is not efficient enough for me. From my experience I find it is best not to learn too many different programming languages. You know the old saying, "jack of all trades, but master of none". I find it better to pick the language you are most productive in and to become an expert in it. If you want to learn a second language, I would recommend it be assembler (or machine language). Learning machine language makes one appreciate what a compiler does even more. One of the beauties of Basic is its readability. One can pick up code written years ago and quickly make sense of it. Now one good reason the Basic language should not be changed (the core language left alone), but rather simply add new features to it, is that if languages keep changing every few years, then much time is lost in having to rewrite code for a new syntax. When you can have perfect code which was written years ago, simply reused today, then you don't have to reinvent the wheel all the time. Sure

                                    R Offline
                                    R Offline
                                    Randy R Jackson
                                    wrote on last edited by
                                    #98

                                    Thank you Chris. That's what I meant to say.

                                    1 Reply Last reply
                                    0
                                    • K KP Lee

                                      GuyThiebaut wrote:

                                      A friend of mine was very much into object orientation with a langauge called REXX.

                                      That's interesting, I haven't used REXX for over 8 years now. When I did, it was on an IBM/TSO mainframe and had no coorelation to OO whatsoever. (Similar in style to vbs.)

                                      G Offline
                                      G Offline
                                      GuyThiebaut
                                      wrote on last edited by
                                      #99

                                      My understanding is that a group of developers either bought it up or branched it off into OO. It may be called OO REXX now... It is open source and still an interpreted language although you can create a wrapper for it to run as a exe.

                                      Continuous effort - not strength or intelligence - is the key to unlocking our potential.(Winston Churchill)
                                      1 Reply Last reply
                                      0
                                      • J jim norcal

                                        All the programming I have done has been with VB then VB.NET. Microsoft keeps continues to develop and release it along side C# and the rest. However, over the last few years, I have seen very little new information out there regarding VB. Very few articles on Code Project and other sites. Oh, and I'm a subscriber to MSDN magazine and I haven't seen a single line of VB.NET code in .. in .. I can't even remember the last issue. I can say at least the last four issues there hasn't been anything in VB.NET. It's all been C#, C++ and even F# but no VB! Is Microsoft trying to push it to the side so it whithers and dies and hope that no one notices or pays attention? Even here on Code Project I've noted next to nothing new on VB. Every week I get the newsletter with all the new articles and rarely do I see anything on VB.NET. There may be one article among the 30 C# articles but that's on a good week. So, what am I supposed to do? Just stop using it, pick up a "Learning C# For Lonely, Left Behind VB.NET Programmers" and just think of VB.NET as fond memories of long ago? I have a hard time with such a concept. VB.NET has evolved into a good language and is capable of doing pretty much anything C# can do (using the .net framework, of course) so why isn't it promoted more by MS and others?

                                        U Offline
                                        U Offline
                                        User 5775657
                                        wrote on last edited by
                                        #100

                                        I have been programming in VB for years and face the same concerns. Microsoft have said that VB and C# would join at some point and I have found that both Languages have many things in common and more so as time goes on. What both VB and C# programmers are facing is the many changes in technology as I believe Steve Jobs said he would be aggressive in all technology as we are in a technology overhaul and by having your teams in all technologies you should have a chance of staying in the technology race. Currently I have invested lots of time and money in Silver-light with no true understanding of which of these technologies will survive. Like VB I not sure that Silverlight will survive like many of the new product that seem to come weekly. I don’t think Microsoft can give us a clear answer to what will happen in the future as they too like us don’t know what the future holds.

                                        1 Reply Last reply
                                        0
                                        • J jim norcal

                                          All the programming I have done has been with VB then VB.NET. Microsoft keeps continues to develop and release it along side C# and the rest. However, over the last few years, I have seen very little new information out there regarding VB. Very few articles on Code Project and other sites. Oh, and I'm a subscriber to MSDN magazine and I haven't seen a single line of VB.NET code in .. in .. I can't even remember the last issue. I can say at least the last four issues there hasn't been anything in VB.NET. It's all been C#, C++ and even F# but no VB! Is Microsoft trying to push it to the side so it whithers and dies and hope that no one notices or pays attention? Even here on Code Project I've noted next to nothing new on VB. Every week I get the newsletter with all the new articles and rarely do I see anything on VB.NET. There may be one article among the 30 C# articles but that's on a good week. So, what am I supposed to do? Just stop using it, pick up a "Learning C# For Lonely, Left Behind VB.NET Programmers" and just think of VB.NET as fond memories of long ago? I have a hard time with such a concept. VB.NET has evolved into a good language and is capable of doing pretty much anything C# can do (using the .net framework, of course) so why isn't it promoted more by MS and others?

                                          M Offline
                                          M Offline
                                          Matt McGuire
                                          wrote on last edited by
                                          #101

                                          Maybe the C# guys have too much free personal time to make the articals and code examples. after a work day, I have a family and hobbies that in no way include computers; not that i haven't thought about writing up an article a time or two for VB. Stick with VB.net, it's a nice language. I've tried C#, I just feels like another knockoff of C, or Java adapted for modern times. Why MS doesn't promote VB more, I don't know, maybe thay just figure VB'ers will stick around. C# gets lots of add time to try and entice Java, C++ and others over to .NET. VB doesn't realy have any 'half cousins' sharing the same synthax to pull from.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups