Visual Basic Versus C#

Ok… as many of my fellow developers do, I try to stay neutral when it comes to discussing which of these two languages are better than the other. Until I read this article here. I honestly think this guy either has no idea the fundamentals of good programming or just maybe bumped his head or something while writing this article. Even the comments that defend him are ridiculous. Let me break a few of his comparisons and let you be the judge.

Case-Sensitivity

This I thought was by far the funniest one. How does one say “C# is bad because it’s case sensitive”? That’s like saying “C# is bad because it conforms to language standards and good programming practice!”. I mean seriously, If I were to have the ability to make 5 variables in the same scope ‘x’ (which this gentlemen most likely has done), how on earth would I know what references what in 6-12 months? Not to mention the fact that the Intellisense in Visual studio is so good now that you are just getting a tad over lazy. I know we as developers by definition are lazy, but seriously?

Stupid Symbols

This one was just comical. Lets call all the symbols that are used in every other C based language and call them stupid. To me that makes you stupid. Standards are what makes the IT world go round, so to say that VB standing by itself spelling out the word ‘and’ instead of ‘&&’ does not qualify as an advantage to me. Apparently this guy has never had to switch between languages before. I have had to switch between C#, C++ and PHP before all in a matter of months before. Now, although that is probably not the norm, do you know how comforting it was to know that a great deal of the syntax was the same?

That wretched semi colon

Not even sure I have to defend this one, but I will briefly. The semi colon has been around for ever and is ANY respectable language. No I don’t consider Ruby on Rails respectable regardless of it’s popularity. The reason for the semi colon is to tell the compiler that you are done with your statement. Over time, it has also has become a point of reference for the developer to see where things stop too. With all the longer statements and parameters in methods, how easy is it to determine the end of the statement when the developer that wrote the code developed on a 24 inch screen and you look at it now with a 19 inch laptop? Now everything wraps and makes you want to cry. I know I would.

Conclusion

All in all I think C# is superior, but that’s my personal preference. I can see where some people just learned on basic, that’s what they know and feel comfortable. I get it. But please, in the future, come up with better reasons than these if you want to attach C#. These are just silly.

Advertisements

About Gregg Coleman

I am Senior-level Software Engineer working primarily these days with .NET. I have a good working knowledge of ASP.NET MVC, Web Forms, WCF web services and Windows Services. I spend much of my time in the Web Services (SOAP and REST) world in my current job designing and implementing various SOA architectures. I have been in the software engineering industry for about 6 years now and will not now nor ever consider myself an "expert" in programming because there is always so much to learn. My favorite thing about designing software is there are always new emerging technologies and something to learn every day! My current job has me spending much of my job on the bleeding edge of technologies and changing gears all the time, so I'm never bored and always challenged. On my spare time I enjoy weight training, reading and venturing to new places near by. Of course programing and learning new technologies are another hobby of mine.
This entry was posted in .NET, .NET 4.5, C#, Computer Technology, Programming, Programming Paradims and tagged , , , , , . Bookmark the permalink.

4 Responses to Visual Basic Versus C#

  1. Concerned says:

    Ruby on Rails is not a programming language, its a web framework. Semi-colons add nothing that a carriage return leaves out. “and” is far more expressive than “&&”. If you’re having issues with line-wrapping than your lines are too long, stop nesting functions. Line-wrapping is a function of your text editor, not the programmer in most cases.

    • Although I can appreciate your thoughts, alas you are missing the point. The fact that out of all that I wrote, your first point was that Ruby on Rails is a web framework shows how off the point you are. “and” may be more “expressive”, but is hardly a reason to go against standards. Pretty much the rest of the respectable world uses &&, so “lets be different” geeze… A carriage return DOES NOT dictate a statement is complete. Many languages (and I do include “web frameworks and scripting languages” in this statement as most good programmers are working in everything these days.) allow you multi-line programming so that you can make things more readable. If think if you have to “stop” nesting or chaining functions, there is an issue since most languages include and encourage it these days.

  2. Concerned says:

    What standards? ALGOL-type shit? Its all arbitrary. Multi line programming is not more readable, if your c# ends up looking like minified JS then you got some issues. Nesting function calls IS and issue, it makes it difficult to understand program flow. This is not to say passing functions around is a no-no, but their call-site should not be in the function args.

    • I guess you are a little confused. Multi-line is more readable to “most” people, maybe not yourself. I can understand where nesting can be an issue if you aren’t used to it, but it tends to keep things cleaner and if named properly, allows a developer that does not need to touch a particular method know what it is doing rather than having to trudge through the code to do so. For instance, LINQ’s OrderByDescending chained method makes it very obvious that your list will be provided in descending order. You don’t have to look at the code to do so. Can you do this in normal programming, sure. But I think that the chained method forces the developer a little more to name things appropriately. Just a developers opinion, no need for everyone to get so upset. I was just upset that another developer would promote the way he did, but everything is up to the developers comfort level.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s