Why newbies should pick C# over VB!
-
Dan Neely wrote:
It's generally trivial for an experienced dev to do the conversion; but newbies aren't experienced and generally don't know the available tools. Besides which, if it really was that easy, why don't you do it for them
Because I don't want to look like I'm advocating the continued use of VB.
".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997 -
DanielDyson wrote:
hehe! I thought my post might get such a response.
I figured you were just fishing for a response, so I thought I'd make sure you at least got a bite. All in good fun. I've been content with VB for a long time. Were I to pursue employment as a programmer, I'd probably download C# and spend a month frying my brain to learn it. Not because it's all that much better than VB, but because it's come to be an expected part of a programmer's resume. MS clearly states on their VS website that VB is for new or casual programmers. I fit neatly in the casual category. Aside from the occasional upload to CP, my projects [^] rarely leave my hard drive. By the way, the pawn shop here in town is running a special on royal scepters. Want me to send some pics for your perusal? :laugh:
Everybody SHUT UP until I finish my coffee...
lmao. That's ok, I used my omnipresence to check them out already.
-
lmao. That's ok, I used my omnipresence to check them out already.
DanielDyson wrote:
lmao. That's ok, I used my omnipresence to check them out already.
Private Sub CheckScepters() Handles Btn_SceptChk.Click
For Each s As Scepter In PawnShop.Scepters
Dim bmp as New Bitmap(s.Image)
Microsoft.VisualBasic.GodlyFunctions.SendToCP(bmp)
Next
End SubSee how easy it is with VB? :cool:
Everybody SHUT UP until I finish my coffee...
-
All differences in the languages aside (are there any ;P ), the main reason to pick C# for .NET development is that C# is the .NET language. All other languages may be dropped down the road, but C# will be alive as long as .NET is alive. BCL itself is written in C#, and Microsoft is using C# in some of its products (mostly servers). It is not going away. The same goes for Java on JVM. There are much nicer JVM languages than Java (Scala, Clojure, Fantom, ...) but Java is the JVM language and picking anything else for JVM development is an unnecessary risk.
Nemanja Trifunovic wrote:
All differences in the languages aside (are there any
There is one major one I can think of. I did an integer divide in VB.NET and started swearing at the language because it rounded up. That was before I found out you have to use a special divide symbol a=2/3 (a is 1) a=2\3 (a, like every other right thinking language is 0) The only other difference I've found is syntax. That, of course is major. PS I have to raise my hand at sometimes trying to help in VB.NET when I don't belong there either. (Definitely not, as an expert.)
-
VuNic wrote:
A more straight foward reason to avoid VB is, we should avoid VB.
Aside from sounding like a language bigot, could you elaborate? Why? As I said in an earlier post it's probably best to start off as a C# developer if you don't already have VB experience, perhaps, but I wouldn't be dogmatic about it. Both of the languages work fine. -Max
Max Peck wrote:
Aside from sounding like a language bigot
I can't think of a reason why. Both languages compile into MSIL. Their performance stats are declared to be the same and when I converted from VB.NET to C# one set of code and ran it, they had a difference in seconds. (Using code that ran in minutes and running twice in the same code produced the same differences in performance.)
-
Dan, No problem - I wasn't upset, I just felt that generalization was pushing it a bit. I agree - if someone is just starting out, particularly with .Net, C# would be a better bet. I was resistive to switching to it a year or two ago myself having gotten used to VB (in both flavors). However I started developing my own product and decided to educate myself on C# (having written C for many years) to see if I was missing anything. I bought several professional books geared for VS2008 in C# to "force" myself to work with it. I'm glad I did. My new code is far more concise than it might have been with VB.Net. Since "converting" to C# I seem to now be able to conceptualize OO concepts a bit easier. It's not that you "can't" do same in VB.Net (I have, in fact when modifying our legacy code) - the C# syntax just "speaks" it better if that makes any sense. So, I generally agree with the thread topic. Thanks, -Max :D
Wow, a good way of describing the differences between VB.NET and C#! I didn't see it myself because I first learned C# and then VB.NET. (First knowing FORTRAN, COBOL, PLI, REXX, CLIST, etc. Then starting to learn C++.) I also knew VB.NET was cludged together from VB script which wasn't OO oriented and typeless, so I ignored the fact that the OO part of VB.NET was nearly hidden.
-
Dan Neely wrote:
It's generally trivial for an experienced dev to do the conversion; but newbies aren't experienced and generally don't know the available tools. Besides which, if it really was that easy, why don't you do it for them
Because I don't want to look like I'm advocating the continued use of VB.
".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997 -
DanielDyson wrote:
So on the whole, VB programmers are unprofessional hackers and C# programmers are experienced, professional, seasoned coding gods.
Gods? Why don't you go ahead and replace your office chair with a golden throne while you're at it. As one who codes strictly as a diversion (I'm not a "professional" programmer), I enjoy VB. I started out with BASIC back in the '80s and when I downloaded VS 2003 VB seemed like a natural choice. It's an easy language to learn and also quite a capable language. If one wishes to advance from VB to a more powerful language, one should skip C# entirely and move to C++. I say this because VB can do just about anything C# can do. Switching from VB to C# simply means you have to learn a new syntax without any significant gains in the capability of the language. If I find myself in the mood for curly braces and semi-colons, I'll go write some Javascript. :)
Everybody SHUT UP until I finish my coffee...
-
KP Lee wrote:
Why not skip C++ and go directly to assembler or machine language?
Back during the Dark Ages, I tried learning Assembly on my trusty old TRS-80. After about a week I did in fact manage to put a dot in the middle of the screen.
Everybody SHUT UP until I finish my coffee...
-
Here's a very good reason for newbies to use C# as opposed to VB.NET. When you ask questions in a forum, you'll find that there are more people answering questions who are familiar with C# than there are VB guys. And while this is potentially a controversial thing to say, the typical C# developer who's answering questions is bound to give better and more accurate answers than the typical VB developer. Note how I said typical - there are several bad C# devs answering questions too, although percentage wise, there are many more bad VB answerers. What prompted this post is that I've frequently seen VB questions taking longer to get answered because most of the guys answering there don't know VB syntax. Or sometimes the guy answering has to prefix his answer with, "I don't really know VB syntax, but in C# you can do it this way, and hopefully you can convert that to VB..."
Regards, Nish
Latest article: Code Project Posts Analyzer for Windows Phone 7 My technology blog: voidnish.wordpress.com
Because C# is similar to Java. So if newbies get C#, java would be a piece of cake in a near future. Don't get me wrong, VB is very useful when user has to do or use some scripts or macros on office, and can make your life easier. But if you are developing a new software C# is better, because its syntax is less complicated.
-
KP Lee wrote:
Why not skip C++ and go directly to assembler or machine language?
Back during the Dark Ages, I tried learning Assembly on my trusty old TRS-80. After about a week I did in fact manage to put a dot in the middle of the screen.
Everybody SHUT UP until I finish my coffee...
Alan Burkhart wrote:
Dark Ages, ... trusty old TRS-80
Wow, if that is the dark ages, would 1973 be the stone age? I could create a dot then too. Just ask the computer to command the printer to print "." :laugh: (I know, the dot you are talking about is a graphical image on a screen.) In '73 you didn't combine the word "computer" with "graph" or "screen". In '73, a screen was 20 foot by 30 foot in a movie theater.
-
Alan Burkhart wrote:
Dark Ages, ... trusty old TRS-80
Wow, if that is the dark ages, would 1973 be the stone age? I could create a dot then too. Just ask the computer to command the printer to print "." :laugh: (I know, the dot you are talking about is a graphical image on a screen.) In '73 you didn't combine the word "computer" with "graph" or "screen". In '73, a screen was 20 foot by 30 foot in a movie theater.
Sometimes I miss those days. Home/small business computing was fresh and new. Different operating systems vying for a place in the future. Many people scoffed at the new "IBM PC" and said it'd never make it. I was stubborn for a time, writing viable (at the time) applications for the TRS-80. I finally saw the handwriting on the wall and switched to a DOS machine. That was the only time I ever programmed for a living. And I don't care what anyone else says about them - in its time, the old TRS-80 was a pretty darn good computer.
Everybody SHUT UP until I finish my coffee...
-
Here's a very good reason for newbies to use C# as opposed to VB.NET. When you ask questions in a forum, you'll find that there are more people answering questions who are familiar with C# than there are VB guys. And while this is potentially a controversial thing to say, the typical C# developer who's answering questions is bound to give better and more accurate answers than the typical VB developer. Note how I said typical - there are several bad C# devs answering questions too, although percentage wise, there are many more bad VB answerers. What prompted this post is that I've frequently seen VB questions taking longer to get answered because most of the guys answering there don't know VB syntax. Or sometimes the guy answering has to prefix his answer with, "I don't really know VB syntax, but in C# you can do it this way, and hopefully you can convert that to VB..."
Regards, Nish
Latest article: Code Project Posts Analyzer for Windows Phone 7 My technology blog: voidnish.wordpress.com