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 did Microsoft even bother making VB.Net...

Why did Microsoft even bother making VB.Net...

Scheduled Pinned Locked Moved The Lounge
csharp
48 Posts 28 Posters 6 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.
  • R Robert Rohde

    Because they wanted "old" VB developers to switch to .NET?

    M Offline
    M Offline
    mmikey7
    wrote on last edited by
    #19

    Robert Rohde wrote:

    Because they wanted "old" VB developers to switch to .NET?

    Exactly! Interesting part is that VB.NET is not VB at all. Although they have similiar syntax they are quite different languages. "Government is not the solution to our problem. Government is the problem." -Ronald Reagan

    1 Reply Last reply
    0
    • A Allah On Acid

      I do programming in my free time, and used to do VB.NET, then switched to C#. They both do the same things, but C# totally puts vb to shame. VB is inheritly sloppy, but C# makes it so much easier to write clean, organized code. It also is better to have it where it does not automatically convert different data types automatically, that makes it easier to tell what you are doing. And the syntax, VB syntax is so messy and cumbersome, while C# syntax is clear and readable. Makes me wonder why Microsoft even made VB.net in the first place, C# is so much better.

      M Offline
      M Offline
      mmikey7
      wrote on last edited by
      #20

      Pumk1nh3ad wrote:

      C# is so much better.

      I wouldn't say it in this way. There are actually two things which are different among VB.NET, C# and C++/CLI. First thing is syntax, this is obvious and what syntax(language) to use is matter of style. Second thing is compiler and this is not so obvious. But I will not write here more about quality of compilers because it could lead to... you know... flame "Government is not the solution to our problem. Government is the problem." -Ronald Reagan

      1 Reply Last reply
      0
      • A Allah On Acid

        I do programming in my free time, and used to do VB.NET, then switched to C#. They both do the same things, but C# totally puts vb to shame. VB is inheritly sloppy, but C# makes it so much easier to write clean, organized code. It also is better to have it where it does not automatically convert different data types automatically, that makes it easier to tell what you are doing. And the syntax, VB syntax is so messy and cumbersome, while C# syntax is clear and readable. Makes me wonder why Microsoft even made VB.net in the first place, C# is so much better.

        K Offline
        K Offline
        Kevin McFarlane
        wrote on last edited by
        #21

        Oh no. Yet another language war! I'm just about to start a contract using VB .NET after only having done C# so far. But I've used classic VB a lot in the past too. To be honest, although I have my language preferences, I can live with most of them. One exception is Perl. However, in general, I disagree with the "why do we need more than one language?" school. Kevin

        1 Reply Last reply
        0
        • D Dave Kreskowiak

          Hmmm... I don't have a problem with it, or C#, or C++, or Java, or ... The underlying constructs are all the same to me. I get paid the same no matter what language(s) I use. "Clean" code is a matter of opinion. Tell me that, when doing Office automation, putting all the Missing values into the optional parameters, that a lot of the methods take, makes for cleaner code in C#! I'll take VB.NET over C# to do avoid that. The opposite is also true. C# supports unsafe code and pointers, where VB.NET does not. Big deal! If I need something like that, I'll write a C# class library to support my VB code. I get paid no the same, no matter what... RageInTheMachine9532 "...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome

          K Offline
          K Offline
          Kevin McFarlane
          wrote on last edited by
          #22

          I agree completely. Be prepared to use whatever is appropriate for the job. When other things are equal, use what you prefer. That's the professional attitude. I've mainly only used C# so far in .NET. But I'm about to start a VB .NET contract. I don't mind. Only problem might be silly recruiters who insist that you must have recent experience of X, Y, Z. So will C# jbs be closed to me when I finish this contract? Kevin

          D 1 Reply Last reply
          0
          • A Alvaro Mendez

            Pumk1nh3ad wrote:

            VB is inheritly sloppy, but C# makes it so much easier to write clean, organized code. It also is better to have it where it does not automatically convert different data types automatically, that makes it easier to tell what you are doing. And the syntax, VB syntax is so messy and cumbersome, while C# syntax is clear and readable.

            I've never been much of a fan of the VB syntax, especially after using curly braces for years. However, I have to say that using it in VS.NET 2003 wasn't bad. The verbosity is not an issue since the IDE writes much of it for you, and formats it with the proper casing and spacing between variables and operators. Something that for years I had wanted in the C/C++ IDEs has been available for VB for a while. So it's easy to adapt to it. I also find that the extra verbosity actually makes the code more readable:

            if (a < 1 && !foo())
            {
            ...
            }

            vs.

            If a < 1 And Not foo() Then
            ...
            End If

            VB code reads more like regular English. Regards, Alvaro


            K Offline
            K Offline
            Kevin McFarlane
            wrote on last edited by
            #23

            Alvaro Mendez wrote:

            if (a < 1 && !foo()) { ... }

            The ! operator is one of my pet peeves about the C-family languages. I agree VB is more readable here. Because of the lack of readability of the ! operator developers often compare to false, but this is less readable than if you could use a not keyword. I still oscillate between ! and comparing to false. The ! is particularly bad in contexts where you have if (something) followed by if (!something) You tend not to see the ! (no pun intended);) Kevin

            G 1 Reply Last reply
            0
            • C Charlie Williams

              To satisfy millions of their customers? Seems like a pretty solid reason to me. Charlie if(!curlies){ return; }

              G Offline
              G Offline
              Gary R Wheeler
              wrote on last edited by
              #24

              I don't get the impression they did that at all, given that VB.NET is completely not backward-compatible with VB6.


              Software Zen: delete this;

              Fold With Us![^]

              K 1 Reply Last reply
              0
              • K Kevin McFarlane

                I agree completely. Be prepared to use whatever is appropriate for the job. When other things are equal, use what you prefer. That's the professional attitude. I've mainly only used C# so far in .NET. But I'm about to start a VB .NET contract. I don't mind. Only problem might be silly recruiters who insist that you must have recent experience of X, Y, Z. So will C# jbs be closed to me when I finish this contract? Kevin

                D Offline
                D Offline
                Dave Kreskowiak
                wrote on last edited by
                #25

                Kevin McFarlane wrote:

                So will C# jbs be closed to me when I finish this contract?

                That probably depends on how you write your resume. Stress the fact that you're a language-independant developer with large .NET Framework experience and you should be fine. You'll, oc course, have to name-drop all the languages that comes standard in the Framework, because that's the game we have to play... RageInTheMachine9532 "...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome

                K 1 Reply Last reply
                0
                • T Tad McClellan

                  This is clearly a poor attempt at starting a religous debate between c# and VB. Pumk1nh3ad has been known to do this sort of thing from time to time. My suggestion is to ignore him. E=mc2 -> BOOM

                  L Offline
                  L Offline
                  Lost User
                  wrote on last edited by
                  #26

                  On the contrary, he raises a very good point about the convergence of these languages and did so in a logical manner. The tigress is here :-D

                  1 Reply Last reply
                  0
                  • D Dave Kreskowiak

                    Kevin McFarlane wrote:

                    So will C# jbs be closed to me when I finish this contract?

                    That probably depends on how you write your resume. Stress the fact that you're a language-independant developer with large .NET Framework experience and you should be fine. You'll, oc course, have to name-drop all the languages that comes standard in the Framework, because that's the game we have to play... RageInTheMachine9532 "...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome

                    K Offline
                    K Offline
                    Kevin McFarlane
                    wrote on last edited by
                    #27

                    I do all this but, e.g., I was asked by one recruiter if I had recent C# experience. He got stroppy when I told him it was a silly question. And you do see ads saying "must be recent." Kevin

                    D 1 Reply Last reply
                    0
                    • G Gary R Wheeler

                      I don't get the impression they did that at all, given that VB.NET is completely not backward-compatible with VB6.


                      Software Zen: delete this;

                      Fold With Us![^]

                      K Offline
                      K Offline
                      Kevin McFarlane
                      wrote on last edited by
                      #28

                      It was for syntax familiarity rather than backward compatibility. Same reason as why C# and Java follow C-style syntax when technically they should have abandoned it. But had they done so C-family developers would most likely have rejected C# and Java. Kevin

                      G 1 Reply Last reply
                      0
                      • K Kevin McFarlane

                        It was for syntax familiarity rather than backward compatibility. Same reason as why C# and Java follow C-style syntax when technically they should have abandoned it. But had they done so C-family developers would most likely have rejected C# and Java. Kevin

                        G Offline
                        G Offline
                        Gary R Wheeler
                        wrote on last edited by
                        #29

                        Agreed. From what I've read and heard, most VB developers start over from scratch when they convert. I think Microsoft dropped the ball, though, in not at least attempting to create some forward path from VB6 to VB.NET. Given their resources, it shouldn't have been that hard to create an automated tool that would do at least a partial port from VB6 to VB.NET, and then highlight the bits in the ported result that needed individual attention. One confession here; I'm not a VB developer. I think I've written only three or four VB apps total, none of which were other than small scale 'one-off' utilities.


                        Software Zen: delete this;

                        Fold With Us![^]

                        K 1 Reply Last reply
                        0
                        • G Gary R Wheeler

                          Agreed. From what I've read and heard, most VB developers start over from scratch when they convert. I think Microsoft dropped the ball, though, in not at least attempting to create some forward path from VB6 to VB.NET. Given their resources, it shouldn't have been that hard to create an automated tool that would do at least a partial port from VB6 to VB.NET, and then highlight the bits in the ported result that needed individual attention. One confession here; I'm not a VB developer. I think I've written only three or four VB apps total, none of which were other than small scale 'one-off' utilities.


                          Software Zen: delete this;

                          Fold With Us![^]

                          K Offline
                          K Offline
                          Kevin McFarlane
                          wrote on last edited by
                          #30

                          Gary R. Wheeler wrote:

                          I think Microsoft dropped the ball, though, in not at least attempting to create some forward path from VB6 to VB.NET.

                          They have done haven't they? It's called the upgrade Wizard? Or do you mean something else? Kevin

                          G 1 Reply Last reply
                          0
                          • K Kevin McFarlane

                            Gary R. Wheeler wrote:

                            I think Microsoft dropped the ball, though, in not at least attempting to create some forward path from VB6 to VB.NET.

                            They have done haven't they? It's called the upgrade Wizard? Or do you mean something else? Kevin

                            G Offline
                            G Offline
                            Gary R Wheeler
                            wrote on last edited by
                            #31

                            I was under the (admittedly vague) impression the wizard didn't work very well. I ought to shut up at this point; we're reaching territory where I don't know what I'm talking about :-O.


                            Software Zen: delete this;

                            Fold With Us![^]

                            D 1 Reply Last reply
                            0
                            • K Kevin McFarlane

                              I do all this but, e.g., I was asked by one recruiter if I had recent C# experience. He got stroppy when I told him it was a silly question. And you do see ads saying "must be recent." Kevin

                              D Offline
                              D Offline
                              Dave Kreskowiak
                              wrote on last edited by
                              #32

                              It's probably not a project you wanted to begin with. The contractor is showing a limited understanding of the .NET Framework... RageInTheMachine9532 "...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome

                              1 Reply Last reply
                              0
                              • A Allah On Acid

                                I do programming in my free time, and used to do VB.NET, then switched to C#. They both do the same things, but C# totally puts vb to shame. VB is inheritly sloppy, but C# makes it so much easier to write clean, organized code. It also is better to have it where it does not automatically convert different data types automatically, that makes it easier to tell what you are doing. And the syntax, VB syntax is so messy and cumbersome, while C# syntax is clear and readable. Makes me wonder why Microsoft even made VB.net in the first place, C# is so much better.

                                C Offline
                                C Offline
                                CSharpDavid
                                wrote on last edited by
                                #33

                                I think the real question is Why J# :-D

                                1 Reply Last reply
                                0
                                • A Allah On Acid

                                  I do programming in my free time, and used to do VB.NET, then switched to C#. They both do the same things, but C# totally puts vb to shame. VB is inheritly sloppy, but C# makes it so much easier to write clean, organized code. It also is better to have it where it does not automatically convert different data types automatically, that makes it easier to tell what you are doing. And the syntax, VB syntax is so messy and cumbersome, while C# syntax is clear and readable. Makes me wonder why Microsoft even made VB.net in the first place, C# is so much better.

                                  D Offline
                                  D Offline
                                  Duncan Edwards Jones
                                  wrote on last edited by
                                  #34

                                  I do programming as a full time job and have done so for a decade and a half. Microsoft made VB.Net specifically for me - and fortunately there were other people quite like me so the net result (pun intended) was that it was a good business decision. '--8<------------------------ Ex Datis: Duncan Jones Merrion Computing Ltd

                                  1 Reply Last reply
                                  0
                                  • G Gary R Wheeler

                                    I was under the (admittedly vague) impression the wizard didn't work very well. I ought to shut up at this point; we're reaching territory where I don't know what I'm talking about :-O.


                                    Software Zen: delete this;

                                    Fold With Us![^]

                                    D Offline
                                    D Offline
                                    Dan Neely
                                    wrote on last edited by
                                    #35

                                    it's a 90% solution. Exact values depend on the extent you used VB6 nasties in your code.

                                    R 1 Reply Last reply
                                    0
                                    • A Allah On Acid

                                      I do programming in my free time, and used to do VB.NET, then switched to C#. They both do the same things, but C# totally puts vb to shame. VB is inheritly sloppy, but C# makes it so much easier to write clean, organized code. It also is better to have it where it does not automatically convert different data types automatically, that makes it easier to tell what you are doing. And the syntax, VB syntax is so messy and cumbersome, while C# syntax is clear and readable. Makes me wonder why Microsoft even made VB.net in the first place, C# is so much better.

                                      X Offline
                                      X Offline
                                      Xoy
                                      wrote on last edited by
                                      #36

                                      Pumk1nh3ad wrote:

                                      VB is inheritly sloppy, but C# makes it so much easier to write clean, organized code.

                                      I'd more so say the opposite... VB has clearer keywords and the verbosity helps with the readability. Beyond that, its a matter of the person writing it. Nothing wrong with C#, but vb is typically more readable than C# (you'd have to try pretty hard to make it horrible)

                                      Pumk1nh3ad wrote:

                                      It also is better to have it where it does not automatically convert different data types automatically, that makes it easier to tell what you are doing.

                                      ehem. Thats optional. Learn about what you are criticizing & how to do stuff before you criticize it ;P I have option strict & option explicit set as the default for all my projects ;)

                                      Pumk1nh3ad wrote:

                                      And the syntax, VB syntax is so messy and cumbersome, while C# syntax is clear and readable.

                                      :laugh: no. Compare some typical code. Its not messy, just different. Verbose to be specific. I like verbosity. In VS, its not much of an issue in terms of typing, and makes it easier to read (and type).

                                      Pumk1nh3ad wrote:

                                      Makes me wonder why Microsoft even made VB.net in the first place, C# is so much better.

                                      Both are perfectly fine languages. Its all a matter of preference. If you can't handle VB having the word "BASIC" or "Beginner's" in it, then don't use it ;P Or if you just prefer cish syntax... or whatever your reason may be. Both have features that are appealing as opposed to the other. Its all a matter of preference, especially considering both do about the same things ;P

                                      K 1 Reply Last reply
                                      0
                                      • C code frog 0

                                        Gotta give you a 1 for that. I don't think he would do such a thing and I did not get that impression from him. I don't think he's caused any trouble since his original appearance here and I believe he's lapsed into being one of us that just hangs out. He's just discovering some of the things that have chaffed many of us for years. VB has always been a programming language sitting on a black box that sits on a black box that sits on a black box. But you can build stuff quickly as long as you don't need fancy. Use the built in stuff and VB would take you a long way. C++ has always been like building a high-rise one brick at a time. The main gripe for many has been VB is to restrictive and C++ to dangerous. Microsoft came out with C# for those. But the VB crowd tried it and got road-blocked by braces and colons and said, "Uh, we want VB." There's no holy war here. He's just making some observations. A 1 you get. A 1 you've earned. :-D

                                        I only read CP for the articles. Code-frog System Architects, Inc.

                                        B Offline
                                        B Offline
                                        bcweis
                                        wrote on last edited by
                                        #37

                                        The saving grace here is .Net. The CLR is the great religious equalizer. Regardless of the syntactical implementation of personal and team preference, it all gets compiled to run on the CLR. We all bow and pray to the Father, Son, and Holy Microsoft. (I'm a VB and C++ and C# developer)

                                        1 Reply Last reply
                                        0
                                        • K Kevin McFarlane

                                          Alvaro Mendez wrote:

                                          if (a < 1 && !foo()) { ... }

                                          The ! operator is one of my pet peeves about the C-family languages. I agree VB is more readable here. Because of the lack of readability of the ! operator developers often compare to false, but this is less readable than if you could use a not keyword. I still oscillate between ! and comparing to false. The ! is particularly bad in contexts where you have if (something) followed by if (!something) You tend not to see the ! (no pun intended);) Kevin

                                          G Offline
                                          G Offline
                                          Gavin Greig
                                          wrote on last edited by
                                          #38

                                          If this is a problem, you could always use the not keyword instead of ! C++ supports the following less well known keyword eqivalents:

                                          and &&
                                          and_eq &=
                                          bitand &
                                          bitor |
                                          compl ~
                                          not !
                                          or ||
                                          or_eq |=
                                          xor ^
                                          xor_eq ^=
                                          not_eq !=

                                          C# doesn't seem to support these alternatives, which were originally included in C++ to support development when the characters needed for the more usual variants weren't available on the keyboard. Gavin Greig "Haw, you're no deid," girned Charon. "Get aff ma boat or ah'll report ye." Matthew Fitt - The Hoose O Haivers: The Twelve Trauchles O Heracles. -- modified at 5:50 Tuesday 7th February, 2006

                                          K 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