Solved

Which language is better to learn C#.net or VB.net?

Posted on 2013-06-11
10
572 Views
Last Modified: 2013-06-13
Afternoon,

I need some advice on which langauge (C#.NET or VB.NET) is better to learn in the long run.

I've been working in IT for about 14 years now as a Network\Systems Administrator in the Banking industry. I've never done any programming, closest I've come to it, if you even really can call it programming, is making batch scripts.

About a month ago I got in to programming with VB.Net, i found it easy to understand for the most part and really got in to it. But in all honesty, Im an absolute beginner with programming and have been using a lot of my time going through tutorials on the net as well as forums to create applications for my company. Because of my turtle slow progress with creating applications in VB.net, my boss wants to send me on a training course to improve my programming skills.

So I went online and found a training center which has a course for beginners VB.NET, though I was told by the training center that they dont have enough people for the class as VB.net is not so popular.

They recommended me to look in to C# which is apparently similar to VB.Net and is more popular then VB.net. The cost of the courses is the same, so maybe the training center is right about the popularity of C#.

I've been looking around the Internet for an idea as to which path to take (C#.net or VB.net) but can't find anything current. Also a lot of the things I find are very technical explaining the advantages and disadvantages of each of these languages, and because i am just a beginner to programming I become lost as I dont really understand what is being said.

Is someone able to shed some light on this and advise which language is best?

Thanks,
N

PS. I understand this type of question can cause arguments between developers, so please control yourselves. Since this is a point system I will award points to only those who do not argue with eachother and who give a realistic answer.
0
Comment
Question by:nobushi
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
  • +3
10 Comments
 
LVL 42

Assisted Solution

by:sedgwick
sedgwick earned 125 total points
ID: 39239163
The difference between the 2 is syntax in the most part.
U should go with what u feel comfortable with.
After a while you will find it rather easy to start practicing the other language.
U should use either one to learn some programming fundamentals like object oriented, polymorphism etc.
0
 
LVL 9

Assisted Solution

by:TvMpt
TvMpt earned 125 total points
ID: 39239169
C# and VB.NET are identical in form and function. They can both be used to build the same identical systems with exactly the same code. There's no real difference - the beauty of the .NET Framework.

As you already know C# is much more popular and that could be a big advantage when you need the find examples in your studies. Other advantage, in my opinion, is if you need to do something in Java, will be much more easy to read and understand...
0
 
LVL 40

Assisted Solution

by:Kyle Abrahams
Kyle Abrahams earned 125 total points
ID: 39239174
In my experience is better to learn both.  At the end of the day both languages are compiled down to the MSIL (intermediate language) and from there down to machine code.

With that said there are a lot more examples that are usually C# related.  Programmers I talk to feel it's a more "pure" langugage it's case sensitive and looks more like code at the end of the day.  But it's just personal opinion.

C# or VB .Net can be converted (http://www.developerfusion.com/tools/convert/csharp-to-vb/) to each other so learning one is essentially learning the other.  Think of them as different dialects of the same language.  They may look and sound different, but it boils down to the same.

I would focus more on learning the tools and controls.  A dropdown list is a dropdown list in both C# & VB.  How you talk to it may be a little different, but the overall behavior isn't changed.

Knowing the difference between when to use a List Box, a Drop down, or more complex things like a Data Adapter vs a Data Reader seperate out the experienced /skilled programmers from those who don't understand what's going on and why it's better to use one over the other.

Each tool has it's own application that suits a particular need or needs.  Can you use a wrench to hammer in a nail, sure.  Would you, especially if you had a hammer?  I look at each class and control as a different tool.  Learning when to use each one is the true key to learning .Net.
0
MS Dynamics Made Instantly Simpler

Make Your Microsoft Dynamics Investment Count  & Drastically Decrease Training Time by Providing Intuitive Step-By-Step WalkThru Tutorials.

 
LVL 86

Accepted Solution

by:
Mike Tomlinson earned 125 total points
ID: 39239305
One simple reason C# is more popular is because it is a "C-based" language:
http://en.wikipedia.org/wiki/List_of_C-based_programming_languages

Thus learning C# means you'll be comfortable with a widely used language syntax, making it easier to "jump" to other languages (or at least understand the gist of code written in them).

The reason above is why you'll find more courses and code examples in C#.  It's just a simple numbers game.  More people are used to C-based language syntax because of the history of programming.

VB.Net syntax is similar to VBA, which is used in MS Office applications, so it's useful in that respect.

Just some things to consider...
0
 
LVL 1

Author Closing Comment

by:nobushi
ID: 39239325
Thank you all very much for sharing your opinions with me.

Take care,
N
0
 
LVL 40
ID: 39241629
Everything everybody is saying is true.

But although I prefer VB and even earn my living by giving training in VB, I would advise going for C#.

It is true that VB is becoming less popular. My classes used to be full. But for the last year or so, they are filled only to 25 to 50% of their capacity. Part of that is due to the fact that Windows 8 did not have a great impact. But my fellow C# trainer does not see so big a drop in attendance.

And the reason for that is probably that Microsoft does not give the impression that VB as a very bright future, now that Bill Gates is not there anymore to support the language as he did before.

In the past, every time there was a new version of Windows or new features in .NET, the code examples were both in VB and C#. When there was only one language used, VB was often preferred because C# programmer can very easily understand VB, while the reverse is not always true. Nowadays, C# is in front, and in many instances, VB is not even there to be seen.

Try to find a book, published by Microsoft or other, that shows you how to program the Windows Store applications (mobile applications for the new Windows 8 interface) in VB. They are almost all using C# only. Just go on Amazon and compare the results of a search on "windows store VB" or "windows store Visual Basic" to the result for "windows store c#".

Personally, although I prefer VB by a long way, I fear that VB is going down. This debate has been raging on since the beginning of the century, and was futile. But looking at the way the new version of Windows is presented to programmers by Microsoft, it looks as if C# is winning the war.
0
 
LVL 86

Expert Comment

by:Mike Tomlinson
ID: 39241693
I feel ya James.  VB is my "native" language.  I got comfortable with C# out of necessity.  For personal projects I always write in VB...
0
 
LVL 1

Author Comment

by:nobushi
ID: 39241781
Thanks for your input James.

Would any of you know of a good training center in the USA that have beginner courses in C#?

As mentioned before I have very little experiance in programming.

Ive found this test center, which looks like a beginners course:
http://www.netcomlearning.com/courses/info.phtml?ID=10266

Would any of you have any other recommendations in the USA? I've searched on google and find a lot of the course to be online. I want to find a center where I can go and physically sit in the class, as I feel this will  minimize distractions.
0
 
LVL 40

Expert Comment

by:Kyle Abrahams
ID: 39245754
Actually check with your department of labor.  Right after I graduated with my masters in CS I *still* couldn't find my first job.  A training school actually contacted me and referred me to get a voucher from my state DOL to have the school get paid directly from the state, while I reaped the benefits.

Strangely enough I stared out c++.  Learned VBA / VB out of necessity for a few projects, got really comfortable in it and for the last year or so I've been in C# again.  Now I look at VB code and it seems foreign to me.
0
 
LVL 1

Author Comment

by:nobushi
ID: 39245780
Thanks for the tip :)
0

Featured Post

Resolve Critical IT Incidents Fast

If your data, services or processes become compromised, your organization can suffer damage in just minutes and how fast you communicate during a major IT incident is everything. Learn how to immediately identify incidents & best practices to resolve them quickly and effectively.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
Today I had a very interesting conundrum that had to get solved quickly. Needless to say, it wasn't resolved quickly because when we needed it we were very rushed, but as soon as the conference call was over and I took a step back I saw the correct …
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
Attackers love to prey on accounts that have privileges. Reducing privileged accounts and protecting privileged accounts therefore is paramount. Users, groups, and service accounts need to be protected to help protect the entire Active Directory …

751 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question