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 C# Is not a "Better" Language Than VB.NET

Why C# Is not a "Better" Language Than VB.NET

Scheduled Pinned Locked Moved The Lounge
csharpcomquestion
41 Posts 18 Posters 0 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 Ryan Binns

    Christian Graus wrote: How do events occur/get handled at design time ? The syntax is different, but how does the behaviour differ ? I'm not sure how it gets wired up. There's not a lot of difference, except if you change the name of the method, you only have to change it in one place (great for forgetful people like me ;)) Christian Graus wrote: I like the VB syntax here, but I don't see how it's more than syntactic sugar Isn't that the whole point of the article? There's very little difference between the two languages except for syntax?

    Ryan

    "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"

    C Offline
    C Offline
    Christian Graus
    wrote on last edited by
    #19

    Ryan Binns wrote: Isn't that the whole point of the article? There's very little difference between the two languages except for syntax? Yeah, and MY point was that even the article mentioned things C# can do that VB.NET cannot, and failed to mention anything in the other direction. So there IS difference apart from syntax, and it's all in C#'s favour ( can do more/doesn't have crappy legacy VB6 'features' ) But I agree in part - the Handles keyword is nice and compact, it's where you'd expect it to be, and I for one would be happy to see C# support it. Christian I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer

    1 Reply Last reply
    0
    • C Chris Maunder

      Why C# is not a better language than VB.NET[^]. Interesting read. cheers, Chris Maunder

      E Offline
      E Offline
      El Corazon
      wrote on last edited by
      #20

      I know I have mentioned before, I don't consider any language "better" than all the others. Each language has their superior qualities. Lisp handles data expressions better than most languages, I certainly would not consider it "better" than C/C++ or C# just because of how it handles data. Assembly can do almost anything, but its nature of being too close to machine code and difficulty reading makes it powerful and difficult to use at the same time. Thus we have higher languages to make things easier. Very little can beat hand-optimized assembly for speed. But time wise justifies that extra effort only in the most extreme cases. I like the various C incarnations as a general purpose system for its balance between flexibility and power. That doesn't mean I fall in the VB haters group. Heck I used to write basic, even wrote my own interpreter for basic for other languages to make it easier to maintain code. In almost every case you can find at least one point in any language comparison that one side does better than the others.... Except maybe Cobol. X| Cobol used to be the language of choice to make fun of, now it is Basic. It neither bothers, nor excites me wether VB lives or dies. I write C++, and will probably migrate to C# someday, it doesn't matter to me if someone else doesn't. I say live and let live. _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

      1 Reply Last reply
      0
      • C Chris Maunder

        Why C# is not a better language than VB.NET[^]. Interesting read. cheers, Chris Maunder

        M Offline
        M Offline
        Member 96
        wrote on last edited by
        #21

        I don't think any real career programmers ever have the luxury of this silly ongoing debate. Judging by what I've seen here in the past it's no wonder managers are outsourcing programming -- the North American programmers are sounding more and more like a bunch of spoiled children. Does a waiter get to choose which customers they deal with? Does a ditch digger get to choose what type of soil they will dig? What kind of shovel they will use? Does a construction worker specialize in a certain kind of nail? Or hammer? Come on people, some of you are starting to sound terminally unemployable.

        C 1 Reply Last reply
        0
        • M Member 96

          I don't think any real career programmers ever have the luxury of this silly ongoing debate. Judging by what I've seen here in the past it's no wonder managers are outsourcing programming -- the North American programmers are sounding more and more like a bunch of spoiled children. Does a waiter get to choose which customers they deal with? Does a ditch digger get to choose what type of soil they will dig? What kind of shovel they will use? Does a construction worker specialize in a certain kind of nail? Or hammer? Come on people, some of you are starting to sound terminally unemployable.

          C Offline
          C Offline
          Christian Graus
          wrote on last edited by
          #22

          John Cardinal wrote: Does a waiter get to choose which customers they deal with? Does a chef get to choose his saucepan ? John Cardinal wrote: Does a ditch digger get to choose what type of soil they will dig? Of course not. No-one is complaining about the sort of application they get asked to write. John Cardinal wrote: What kind of shovel they will use? Almost certainly. John Cardinal wrote: Does a construction worker specialize in a certain kind of nail? Or hammer? They probably know that a $2 hammer is crap, and would never use it. They may well have a variety of decent hammers to choose from. John Cardinal wrote: Come on people, some of you are starting to sound terminally unemployable. I'm not sure why you think that. Any programmer who is unable to discuss the arguments for/against a given language surely has no brain at all ? Your analogies mostly fall flat, I am sorry, unless you're having a shot at the VB6 programmers who are running scared because they can't cope with VB.NET. Christian I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer

          M 1 Reply Last reply
          0
          • C Christian Graus

            Jim Crafton wrote: Marketing and because they were pissed at Sun. I agree. But in equal parts. Why was it needed for marketing ? Because the VB name was/is beyond redemption. There will always be a large number of developers who will not take anything tied to VB seriously. Jim Crafton wrote: There is absolutely NO reason that many of the issues with C/C++ would not have been properly fixed, and then made "toggleable" with compiler switches to turn off the MS specific parts. Yeah, but that would have had the C++ community up in arms. Christian I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer

            O Offline
            O Offline
            ogrig
            wrote on last edited by
            #23

            no way! While I love C++ and used it for millennia, it simply isn't good enough for the things where it's not the only option: doing things fast and with full control over resources (assembler would be better, but it has too many other issues: lack of portability, size of code, ..., you name it). And it doesn't take long to notice that for most of the stuff you work with Perl is much faster to write and maintain. Yes, it's not a compiled language, and that raises another lot of issues. On top of this there are the new directions in programming languages: patterns, portablity and security. The result are pseudo-languages like Java, C# and VB.NET, that are based on garbage collection (the death of the C++ destructors) and that don't exists without their libraries/virtual machines (You can write the C standard libraries in C, C# simply doesn't exist without .NET). Yes, you also have the marketing push to sell the whole thing (lines like: "garbage collection is the way of the future because developers are too stupid to manage mamery allocation on themselves"), but at the end of the day this is all you have: - security (garbage collection) - portability - patterns - script-like features for "standard" things (working with string and string representations) IMHO, saying "m-soft was pissed at Sun" misses the point completely. OGR

            J C 2 Replies Last reply
            0
            • C Chris Maunder

              Why C# is not a better language than VB.NET[^]. Interesting read. cheers, Chris Maunder

              R Offline
              R Offline
              Roger Alsing 0
              wrote on last edited by
              #24

              When people argue if vb.net is as good as c# they tend to list things that vb.net can do. and sure, vb.net can do almost everything that c# does , and it also have a few own things like late binding and indexed properties ( != indexers ) what makes vb.net BAAAD , is the fact that allows sloppy coding. and it also allows casting in ways that are really really strange.. eg: Dim myBool as Boolean myBool = nothing if myBool == false then ' this will fire because vb.net compiler casts "nothing" to "false" if assigned to a bool end if and this was NOT possible in vb6 , so god knows for what reason they did that in vb.net //Roger

              D M 2 Replies Last reply
              0
              • R Roger Alsing 0

                When people argue if vb.net is as good as c# they tend to list things that vb.net can do. and sure, vb.net can do almost everything that c# does , and it also have a few own things like late binding and indexed properties ( != indexers ) what makes vb.net BAAAD , is the fact that allows sloppy coding. and it also allows casting in ways that are really really strange.. eg: Dim myBool as Boolean myBool = nothing if myBool == false then ' this will fire because vb.net compiler casts "nothing" to "false" if assigned to a bool end if and this was NOT possible in vb6 , so god knows for what reason they did that in vb.net //Roger

                D Offline
                D Offline
                Daniel Turini
                wrote on last edited by
                #25

                1. The absence of the "using" statement for calling IDisposable creates resource-hungry programs. VB programmers simply do not call IDisposable, or do not call it in a reliable way. 2. "Unstructured error handling". Aka "On Error Goto". Aka bad code. 3. "On Error Resume Next". Aka "On Error F**k off". This is one of my favorites: in case of an error, resume the execution point on the next statement. Lots of fun here. 4. "On Error Goto 0" and "On Error Goto -1". I'm yet to find a VB programmer who can tell the difference between the two. 5. The "Mid" statement. No, not the function, the statement. Isn't it a work of a genius naming a statement and a function with the same name? 6. "Modules". Aka "I don't need any stinking classes". Aka "I won't ever need thread safety" 7. The "With" statement. Aka "I don't need any stinking methods. I manipulate an object outside the class definition and I call it information hiding". Aka the "data class" bad code smell. Aka "deriving a class is too much work". 8. "Option Compare Text". Aka "I don't need performance when comparing strings" 9. "Option Explicit Off". Aka "There's only one type, the powerful Object". Aka "I want to give away performance because I'm lazy typing variable declarations". Aka "I don't want a compiler checking the variable names for me. If I mistype a name, just create another one for me, pleeeease." 10. "Option Strict Off". Aka "What? Why can't I just assing this string variable to this integer variable?" 11. The hidden return variable. All functions have a hidden variable that is named with the same name as the function. Don't forget to assign to it. In any code path. If you forget, VB choses a default value for you and won't warn you. 12. BTW, there are no warnings. And this is meant to be "a productive language?" 13. REM. It'd be fun seeing a program entirely commented using exclusively REM. 14. "Array Covariance". I'm yet to know a VB programmer who can tell me what's this (BTW, I know). 15. The "Like" operator. The syntax is incompatible with the .NET Regex syntax. Answer quickly: should "x**y" match "xy" and "xay"? The answer is none. Can you explain why? 16. The "Concatenation Operator". Quoting MSDN: 'Also, there is a special case in that Nothing is treated in concatenation expressions as if it were the empty string literal ""' 17. I'm yet to find a VB programmer who can declare a char constant. 18. x!abc. Aka x("abc") 19. Copy-in/copy-out semantics when passing an argument passed to a reference parameter and the argument needs to

                B R M C 4 Replies Last reply
                0
                • D Daniel Turini

                  1. The absence of the "using" statement for calling IDisposable creates resource-hungry programs. VB programmers simply do not call IDisposable, or do not call it in a reliable way. 2. "Unstructured error handling". Aka "On Error Goto". Aka bad code. 3. "On Error Resume Next". Aka "On Error F**k off". This is one of my favorites: in case of an error, resume the execution point on the next statement. Lots of fun here. 4. "On Error Goto 0" and "On Error Goto -1". I'm yet to find a VB programmer who can tell the difference between the two. 5. The "Mid" statement. No, not the function, the statement. Isn't it a work of a genius naming a statement and a function with the same name? 6. "Modules". Aka "I don't need any stinking classes". Aka "I won't ever need thread safety" 7. The "With" statement. Aka "I don't need any stinking methods. I manipulate an object outside the class definition and I call it information hiding". Aka the "data class" bad code smell. Aka "deriving a class is too much work". 8. "Option Compare Text". Aka "I don't need performance when comparing strings" 9. "Option Explicit Off". Aka "There's only one type, the powerful Object". Aka "I want to give away performance because I'm lazy typing variable declarations". Aka "I don't want a compiler checking the variable names for me. If I mistype a name, just create another one for me, pleeeease." 10. "Option Strict Off". Aka "What? Why can't I just assing this string variable to this integer variable?" 11. The hidden return variable. All functions have a hidden variable that is named with the same name as the function. Don't forget to assign to it. In any code path. If you forget, VB choses a default value for you and won't warn you. 12. BTW, there are no warnings. And this is meant to be "a productive language?" 13. REM. It'd be fun seeing a program entirely commented using exclusively REM. 14. "Array Covariance". I'm yet to know a VB programmer who can tell me what's this (BTW, I know). 15. The "Like" operator. The syntax is incompatible with the .NET Regex syntax. Answer quickly: should "x**y" match "xy" and "xay"? The answer is none. Can you explain why? 16. The "Concatenation Operator". Quoting MSDN: 'Also, there is a special case in that Nothing is treated in concatenation expressions as if it were the empty string literal ""' 17. I'm yet to find a VB programmer who can declare a char constant. 18. x!abc. Aka x("abc") 19. Copy-in/copy-out semantics when passing an argument passed to a reference parameter and the argument needs to

                  B Offline
                  B Offline
                  Baconbutty
                  wrote on last edited by
                  #26

                  I would say the biggest effect of VB on myself is that having started to self-learn C# I find that I am somewhat lost on quite important aspects of modern coding. VB has slowly over the last 8-10 years eroded some skills I had learned during my FORTRAN years. The use of classes has never been one of my strong points and as VB lets you slap any old code together to make something that works I have never had a pressing reason to come to grips with them until now. The trouble is with tight deadlines and changing specifications (yes - i know that shouldnt happen but it does :) ) the main job is to get the product written and out earning money. VB is quick, easy and dirty and it gets the job done - however it doesn't encourage decent programming in my opinion. I still remember having to write your own code in FORTRAN rather than be a cut and paste merchant being pampered by colour coded Intellisense - ahh proper programming - those were the days :)

                  1 Reply Last reply
                  0
                  • D Daniel Turini

                    1. The absence of the "using" statement for calling IDisposable creates resource-hungry programs. VB programmers simply do not call IDisposable, or do not call it in a reliable way. 2. "Unstructured error handling". Aka "On Error Goto". Aka bad code. 3. "On Error Resume Next". Aka "On Error F**k off". This is one of my favorites: in case of an error, resume the execution point on the next statement. Lots of fun here. 4. "On Error Goto 0" and "On Error Goto -1". I'm yet to find a VB programmer who can tell the difference between the two. 5. The "Mid" statement. No, not the function, the statement. Isn't it a work of a genius naming a statement and a function with the same name? 6. "Modules". Aka "I don't need any stinking classes". Aka "I won't ever need thread safety" 7. The "With" statement. Aka "I don't need any stinking methods. I manipulate an object outside the class definition and I call it information hiding". Aka the "data class" bad code smell. Aka "deriving a class is too much work". 8. "Option Compare Text". Aka "I don't need performance when comparing strings" 9. "Option Explicit Off". Aka "There's only one type, the powerful Object". Aka "I want to give away performance because I'm lazy typing variable declarations". Aka "I don't want a compiler checking the variable names for me. If I mistype a name, just create another one for me, pleeeease." 10. "Option Strict Off". Aka "What? Why can't I just assing this string variable to this integer variable?" 11. The hidden return variable. All functions have a hidden variable that is named with the same name as the function. Don't forget to assign to it. In any code path. If you forget, VB choses a default value for you and won't warn you. 12. BTW, there are no warnings. And this is meant to be "a productive language?" 13. REM. It'd be fun seeing a program entirely commented using exclusively REM. 14. "Array Covariance". I'm yet to know a VB programmer who can tell me what's this (BTW, I know). 15. The "Like" operator. The syntax is incompatible with the .NET Regex syntax. Answer quickly: should "x**y" match "xy" and "xay"? The answer is none. Can you explain why? 16. The "Concatenation Operator". Quoting MSDN: 'Also, there is a special case in that Nothing is treated in concatenation expressions as if it were the empty string literal ""' 17. I'm yet to find a VB programmer who can declare a char constant. 18. x!abc. Aka x("abc") 19. Copy-in/copy-out semantics when passing an argument passed to a reference parameter and the argument needs to

                    R Offline
                    R Offline
                    Richard Day
                    wrote on last edited by
                    #27

                    Daniel Turini wrote: what's the point of having a feature that can only be used in sloppy coding? It WILL be abused. Backwards compatability?

                    D 1 Reply Last reply
                    0
                    • J Jim Crafton

                      Christian Graus wrote: why did Microsoft need to create C# Marketing and because they were pissed at Sun. There is absolutely NO reason that many of the issues with C/C++ would not have been properly fixed, and then made "toggleable" with compiler switches to turn off the MS specific parts. For example, there is no reason that I can see that adding a simple property to arrays so that it's current length can be properly determined could not have been added. Nor is there any reason a new, real, bona-fide "string" primitive could not have been added with full support for unicode. Nor is there any reason an *optional* GC could not have been added. Etc, etc, etc. And ALL of this could have been done with out a huge friggin 23 MB runtime, and the requirement of running under a stupid byte-code "managed code" framework. ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF!

                      P Offline
                      P Offline
                      Phil Harding
                      wrote on last edited by
                      #28

                      AMEN BROTHER :-D Phil Harding.
                      myBlog [^]  |  mySite [^]

                      1 Reply Last reply
                      0
                      • D Daniel Turini

                        1. The absence of the "using" statement for calling IDisposable creates resource-hungry programs. VB programmers simply do not call IDisposable, or do not call it in a reliable way. 2. "Unstructured error handling". Aka "On Error Goto". Aka bad code. 3. "On Error Resume Next". Aka "On Error F**k off". This is one of my favorites: in case of an error, resume the execution point on the next statement. Lots of fun here. 4. "On Error Goto 0" and "On Error Goto -1". I'm yet to find a VB programmer who can tell the difference between the two. 5. The "Mid" statement. No, not the function, the statement. Isn't it a work of a genius naming a statement and a function with the same name? 6. "Modules". Aka "I don't need any stinking classes". Aka "I won't ever need thread safety" 7. The "With" statement. Aka "I don't need any stinking methods. I manipulate an object outside the class definition and I call it information hiding". Aka the "data class" bad code smell. Aka "deriving a class is too much work". 8. "Option Compare Text". Aka "I don't need performance when comparing strings" 9. "Option Explicit Off". Aka "There's only one type, the powerful Object". Aka "I want to give away performance because I'm lazy typing variable declarations". Aka "I don't want a compiler checking the variable names for me. If I mistype a name, just create another one for me, pleeeease." 10. "Option Strict Off". Aka "What? Why can't I just assing this string variable to this integer variable?" 11. The hidden return variable. All functions have a hidden variable that is named with the same name as the function. Don't forget to assign to it. In any code path. If you forget, VB choses a default value for you and won't warn you. 12. BTW, there are no warnings. And this is meant to be "a productive language?" 13. REM. It'd be fun seeing a program entirely commented using exclusively REM. 14. "Array Covariance". I'm yet to know a VB programmer who can tell me what's this (BTW, I know). 15. The "Like" operator. The syntax is incompatible with the .NET Regex syntax. Answer quickly: should "x**y" match "xy" and "xay"? The answer is none. Can you explain why? 16. The "Concatenation Operator". Quoting MSDN: 'Also, there is a special case in that Nothing is treated in concatenation expressions as if it were the empty string literal ""' 17. I'm yet to find a VB programmer who can declare a char constant. 18. x!abc. Aka x("abc") 19. Copy-in/copy-out semantics when passing an argument passed to a reference parameter and the argument needs to

                        M Offline
                        M Offline
                        Marc Clifton
                        wrote on last edited by
                        #29

                        That's a great list. How can anyone argue with that list? Given that they probably can't, why would anyone defend VB? Why would anyone use VB? The answer is that they are witless, which just goes to promote that VB is defended by bad programmers. :-D Marc MyXaml Advanced Unit Testing YAPO

                        1 Reply Last reply
                        0
                        • C Chris Maunder

                          Why C# is not a better language than VB.NET[^]. Interesting read. cheers, Chris Maunder

                          M Offline
                          M Offline
                          Marc Clifton
                          wrote on last edited by
                          #30

                          Chris Maunder wrote: Interesting read. I refuse to read articles from sites where the text width is smaller than the width of the advertising panels. It's impossible to read! That site must have been designed by VB programmers. Marc MyXaml Advanced Unit Testing YAPO

                          1 Reply Last reply
                          0
                          • C Chris Maunder

                            Why C# is not a better language than VB.NET[^]. Interesting read. cheers, Chris Maunder

                            R Offline
                            R Offline
                            Rocky Moore
                            wrote on last edited by
                            #31

                            Well, finally with .NET, it really does not matter much which language you use. However, I am not falling in that "right tool for the right job" garbage. I use C# for one reason, I like it! I do not use VB.NET for one reason, I hate the syntax! That is how simple it really is, all these wars one which language is best is nothing but a joke. The only language that makes any different is C++ and that only due to possible performance gains. That is going to be the nice part about the next version of VS.NET, it will be able to combine C#/VB.NET, C++ or any other .NET language all in the same assembly. You spot something in VB you want to use in your code, drop it in. Microsoft should come up with a wonderbangger cross translator so that when you click a C# tab, all your code is in C#, you click the VB.NET tab and all your code is in VB.NET, now that would surely solve the problem ;) Rocky <>< TechTV's ScreenSavers death blow![^]

                            M 1 Reply Last reply
                            0
                            • O ogrig

                              no way! While I love C++ and used it for millennia, it simply isn't good enough for the things where it's not the only option: doing things fast and with full control over resources (assembler would be better, but it has too many other issues: lack of portability, size of code, ..., you name it). And it doesn't take long to notice that for most of the stuff you work with Perl is much faster to write and maintain. Yes, it's not a compiled language, and that raises another lot of issues. On top of this there are the new directions in programming languages: patterns, portablity and security. The result are pseudo-languages like Java, C# and VB.NET, that are based on garbage collection (the death of the C++ destructors) and that don't exists without their libraries/virtual machines (You can write the C standard libraries in C, C# simply doesn't exist without .NET). Yes, you also have the marketing push to sell the whole thing (lines like: "garbage collection is the way of the future because developers are too stupid to manage mamery allocation on themselves"), but at the end of the day this is all you have: - security (garbage collection) - portability - patterns - script-like features for "standard" things (working with string and string representations) IMHO, saying "m-soft was pissed at Sun" misses the point completely. OGR

                              J Offline
                              J Offline
                              Jim Crafton
                              wrote on last edited by
                              #32

                              ogrig wrote: On top of this there are the new directions in programming languages: patterns, portablity and security. The result are pseudo-languages like Java, C# and VB.NET, that are based on garbage collection (the death of the C++ destructors) and that don't exists without their libraries/virtual machines (You can write the C standard libraries in C, C# simply doesn't exist without .NET). This is nonsense :) patterns - have NOTHING to do with the language. I can write singleton patterns in VB, C/C++/C#/ObjectiveC/ObjectPascal/Python, the list goes on. portablity - is only marginally tied to the language, it's definitely tied to the implementation. But there is little in most languages that is completely non-portable to other platforms. security - again has little to do with the language and *everything* to do with the runtime library that comes with it. Unless you're referring to overflow error exploits, and then I'd agree, that's definitely language related. ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF!

                              O 1 Reply Last reply
                              0
                              • C Christian Graus

                                John Cardinal wrote: Does a waiter get to choose which customers they deal with? Does a chef get to choose his saucepan ? John Cardinal wrote: Does a ditch digger get to choose what type of soil they will dig? Of course not. No-one is complaining about the sort of application they get asked to write. John Cardinal wrote: What kind of shovel they will use? Almost certainly. John Cardinal wrote: Does a construction worker specialize in a certain kind of nail? Or hammer? They probably know that a $2 hammer is crap, and would never use it. They may well have a variety of decent hammers to choose from. John Cardinal wrote: Come on people, some of you are starting to sound terminally unemployable. I'm not sure why you think that. Any programmer who is unable to discuss the arguments for/against a given language surely has no brain at all ? Your analogies mostly fall flat, I am sorry, unless you're having a shot at the VB6 programmers who are running scared because they can't cope with VB.NET. Christian I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer

                                M Offline
                                M Offline
                                Member 96
                                wrote on last edited by
                                #33

                                Christian Graus wrote: John Cardinal wrote: Come on people, some of you are starting to sound terminally unemployable. I'm not sure why you think that. Any programmer who is unable to discuss the arguments for/against a given language surely has no brain at all ? Your analogies mostly fall flat, I am sorry, unless you're having a shot at the VB6 programmers who are running scared because they can't cope with VB.NET. You and others here are somehow missing the overwhelming point of this issue: a language is a tool to solve a problem. There is much merit in arguing the strengths and weaknesses of a language versus a specific problem. There is nothing but wind and noise in arguing about which language is better. Condemning people who primarily use VB is way off the mark and arrogant. They may be working wonders under trying circumstances. If I drive a $38K sports car should I snear at all those who could only afford an economy car? You act as though those VB people have a *choice* in the matter. Most often I suspect they don't. They are fellow programmers trying to earn a living. To dismiss them as stupid or inept is shameful arrogance and I'm tired of it. Some people here are exhibiting the "Neutered cat" mentality of such gross contentment that they think they can still dictate and pick the cream of the jobs. A true professional should be proficient in any language they are likely to find work in. The days of being a career programmer are long gone if they ever existed in the first place.

                                C 1 Reply Last reply
                                0
                                • R Roger Alsing 0

                                  When people argue if vb.net is as good as c# they tend to list things that vb.net can do. and sure, vb.net can do almost everything that c# does , and it also have a few own things like late binding and indexed properties ( != indexers ) what makes vb.net BAAAD , is the fact that allows sloppy coding. and it also allows casting in ways that are really really strange.. eg: Dim myBool as Boolean myBool = nothing if myBool == false then ' this will fire because vb.net compiler casts "nothing" to "false" if assigned to a bool end if and this was NOT possible in vb6 , so god knows for what reason they did that in vb.net //Roger

                                  M Offline
                                  M Offline
                                  Member 96
                                  wrote on last edited by
                                  #34

                                  To be fair any language can be sloppily coded. Back in the day I remember seeing assembly code that was sloppily coded.

                                  1 Reply Last reply
                                  0
                                  • R Rocky Moore

                                    Well, finally with .NET, it really does not matter much which language you use. However, I am not falling in that "right tool for the right job" garbage. I use C# for one reason, I like it! I do not use VB.NET for one reason, I hate the syntax! That is how simple it really is, all these wars one which language is best is nothing but a joke. The only language that makes any different is C++ and that only due to possible performance gains. That is going to be the nice part about the next version of VS.NET, it will be able to combine C#/VB.NET, C++ or any other .NET language all in the same assembly. You spot something in VB you want to use in your code, drop it in. Microsoft should come up with a wonderbangger cross translator so that when you click a C# tab, all your code is in C#, you click the VB.NET tab and all your code is in VB.NET, now that would surely solve the problem ;) Rocky <>< TechTV's ScreenSavers death blow![^]

                                    M Offline
                                    M Offline
                                    Member 96
                                    wrote on last edited by
                                    #35

                                    Rocky Moore wrote: That is going to be the nice part about the next version of VS.NET, it will be able to combine C#/VB.NET, C++ or any other .NET language all in the same assembly. You spot something in VB you want to use in your code, drop it in. Um...not sure what you mean here, I am working on a project right now with the business object framework layer written in VB.NET, my business objects are in C#. No problems at all.

                                    R 1 Reply Last reply
                                    0
                                    • M Member 96

                                      Rocky Moore wrote: That is going to be the nice part about the next version of VS.NET, it will be able to combine C#/VB.NET, C++ or any other .NET language all in the same assembly. You spot something in VB you want to use in your code, drop it in. Um...not sure what you mean here, I am working on a project right now with the business object framework layer written in VB.NET, my business objects are in C#. No problems at all.

                                      R Offline
                                      R Offline
                                      Rocky Moore
                                      wrote on last edited by
                                      #36

                                      The point is that the next version of VS.NET (if you can afford it) will allow mixed sources in the "same" assembly, not requiring them to be in different dlls. In your project view, you can have a mix of any .NET languages instead of just one. Rocky <>< TechTV's ScreenSavers death blow![^]

                                      1 Reply Last reply
                                      0
                                      • O ogrig

                                        no way! While I love C++ and used it for millennia, it simply isn't good enough for the things where it's not the only option: doing things fast and with full control over resources (assembler would be better, but it has too many other issues: lack of portability, size of code, ..., you name it). And it doesn't take long to notice that for most of the stuff you work with Perl is much faster to write and maintain. Yes, it's not a compiled language, and that raises another lot of issues. On top of this there are the new directions in programming languages: patterns, portablity and security. The result are pseudo-languages like Java, C# and VB.NET, that are based on garbage collection (the death of the C++ destructors) and that don't exists without their libraries/virtual machines (You can write the C standard libraries in C, C# simply doesn't exist without .NET). Yes, you also have the marketing push to sell the whole thing (lines like: "garbage collection is the way of the future because developers are too stupid to manage mamery allocation on themselves"), but at the end of the day this is all you have: - security (garbage collection) - portability - patterns - script-like features for "standard" things (working with string and string representations) IMHO, saying "m-soft was pissed at Sun" misses the point completely. OGR

                                        C Offline
                                        C Offline
                                        Christian Graus
                                        wrote on last edited by
                                        #37

                                        ogrig wrote: While I love C++ and used it for millennia, it simply isn't good enough for the things where it's not the only option What did I say that makes you think I disagree with this ? ogrig wrote: And it doesn't take long to notice that for most of the stuff you work with Perl is much faster to write and maintain. I work in websites and image processing. If Perl does a better job for what you do, more power to you. None of my comments were against Perl. ogrig wrote: On top of this there are the new directions in programming languages: patterns, portablity and security. How are they new ? ogrig wrote: The result are pseudo-languages like Java, C# and VB.NET, that are based on garbage collection (the death of the C++ destructors) and that don't exists without their libraries/virtual machines (You can write the C standard libraries in C, C# simply doesn't exist without .NET). This is a dumb argument. At some point, your C code turns into assembler, so does my C# code. The existence of a VM is really not a major issue. I would agree that I find the absence of deterministic destruction annoying. ogrig wrote: security (garbage collection) These are unrelated. ogrig wrote: portability The world is full of portable C code. ogrig wrote: patterns The original patterns book ( GoF ) did not need any of the languages you refer to in order to impliment their patterns. ogrig wrote: IMHO, saying "m-soft was pissed at Sun" misses the point completely. Not at all. If that were not the case, they would have contributed to Java instead of creating a competitor. Christian I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer

                                        1 Reply Last reply
                                        0
                                        • M Member 96

                                          Christian Graus wrote: John Cardinal wrote: Come on people, some of you are starting to sound terminally unemployable. I'm not sure why you think that. Any programmer who is unable to discuss the arguments for/against a given language surely has no brain at all ? Your analogies mostly fall flat, I am sorry, unless you're having a shot at the VB6 programmers who are running scared because they can't cope with VB.NET. You and others here are somehow missing the overwhelming point of this issue: a language is a tool to solve a problem. There is much merit in arguing the strengths and weaknesses of a language versus a specific problem. There is nothing but wind and noise in arguing about which language is better. Condemning people who primarily use VB is way off the mark and arrogant. They may be working wonders under trying circumstances. If I drive a $38K sports car should I snear at all those who could only afford an economy car? You act as though those VB people have a *choice* in the matter. Most often I suspect they don't. They are fellow programmers trying to earn a living. To dismiss them as stupid or inept is shameful arrogance and I'm tired of it. Some people here are exhibiting the "Neutered cat" mentality of such gross contentment that they think they can still dictate and pick the cream of the jobs. A true professional should be proficient in any language they are likely to find work in. The days of being a career programmer are long gone if they ever existed in the first place.

                                          C Offline
                                          C Offline
                                          Christian Graus
                                          wrote on last edited by
                                          #38

                                          John Cardinal wrote: There is nothing but wind and noise in arguing about which language is better. Really ? So if a language has unnatural syntax, or 'features' that encourage sloppy programming, those things should not be mentioned ? On what basis does language evolution happen then ? John Cardinal wrote: Condemning people who primarily use VB is way off the mark and arrogant. They may be working wonders under trying circumstances. Hell, I've always admitted that probably 5% of VB users can code. No argument there. I'm not interested in condemning anyone, I'm interested in discussing the usefulness of VB as a tool. If a hammer was made of balsa wood, and a lot of people were using it, would it be invalid to discuss the usefulness of a balsa wood hammer ? John Cardinal wrote: You act as though those VB people have a *choice* in the matter. Most often I suspect they don't. They are fellow programmers trying to earn a living. To dismiss them as stupid or inept is shameful arrogance and I'm tired of it. Really ? You're saying that people learn VB, not by choice ? Then why are so many VB users not versed in other languages ? How did they become 'programmers' against their will ? I've done some VB work, because there have been a couple of cases where I could not move the client to C# or C++. That's fine. I'm sure others are in the same boat, due to ignorant end users. My comments are directed at the language, not the users, and they are based on personal experience. John Cardinal wrote: Some people here are exhibiting the "Neutered cat" mentality of such gross contentment that they think they can still dictate and pick the cream of the jobs. I guess it depends on the market you are in, but I have in fact knocked back jobs because they involved VB, and come out in front for it. John Cardinal wrote: A true professional should be proficient in any language they are likely to find work in. See above - I've done VB and VB.NET work, I'm not for a moment suggesting I am unable to use VB ( although the reason I had to is that management recognised that most people in the pool they draw from are incapable of using C# or C++ ). Christian I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer

                                          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