Learning to program:  VB, C++ or C#?

Posted on 2011-03-24
Last Modified: 2012-05-11

I don't have a technical question, more after some advice on learning a new language.

As a complete programming beginner, which is better to learn c++, C# or VB?

Which is easier and which will give me better job prospects?

Many Thanks for all advice.
Question by:JakeSpencer
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

Accepted Solution

Kendor earned 125 total points
ID: 35205383
C++ is definitely the toughest to learn from all the languages you mentioned - however it is not microsoft dependent as the other two. If you really know how to program in C++ theres no problem for you to get a job, nor is it a problem to learn C#.

As a beginner I would start by learning C# it is a nice and easy to learn language. Also Java would be a good option to start with.

Assisted Solution

m_walker earned 125 total points
ID: 35205554
I am a c programmer from way back and moved into c++.  The basics for c are the same for java, php, c#.  So once you learn c++ and then try to learn/use the others then most things just make sense.   That said, I think the 3GLs are getting phased out for the 4GLs like .NET  and java and scripting like php, vbscript and jscript.

I like my old borland c++ builder.  I like to have my apps as stand alone as the can be.  single file, run of a usb and so on.  

At the end of the day I think it depends on what you want to do and access to support when needed.

If c# is easier to learn, then start there.  Try to focus on concepts more then the code.... good program design can be applied to all programming, specific code is only good for that.

When learning, start with as much non-gui as you can.  gui has a lot of drag and drop, and while easy, you are not really learning it.  It is only when you start typeing in lines of code that you start to learn.  Also do the basics.  As un-exciting as it is, write the simple hello world program.  If you think you will write a great app as your first app, it will get too hard too quick.  I still right very simply apps, just to test a single function and make sure it works as I want, or to learn how a new API works.  Then once I understand it, I then design and code the real app.

I can not stress enough the code design.  Its easy to skip this and just sit down and type code, but it can end up a mess and very hard to debug.  Sit down with a pen an paper (or visio) and use blocks to outline the program flow, then wrte a function for each block.

Good luck and remember to have fun....  
LVL 37

Assisted Solution

TommySzalapski earned 125 total points
ID: 35208128
C# and VB are just about the same. Only the syntax is very different.

If you want to be able to write scripts for Windows and MS Office, then use VB.
If you want quick development for Windows and web applications, use C#.
If you want to learn how a computer works and get a base that will help you learn any language fairly quickly, use C++.

C++ applications run faster, but if you want fancy interfaces and dialog boxes, you'll have to use some third party library. I recommend learning C++ first because C# is kind of a crutch. Learning C++ is like learning to drive a manual transmission for your first car. It'll take a bit longer to learn, but then you can drive either kind of car.
LVL 27

Assisted Solution

dpearson earned 125 total points
ID: 35211698
If you're a complete beginner you're definitely best to start with C#.  C++ is much harder and VB usage is rapidly declining so it little workplace value.

C# is relatively easy to learn and sets you up well in the current job market.

It also means you'll essentially know Java (at one time both languages came from the same root) and that's probably the #1 language for getting a job today.

But C# is also very marketable.  You won't easily get a job with C++ because there are a lot of experienced C++ devs out there and it's a language that requires a strong background - so very hard to get an entry level position with C++.  So even though it's a good language to know for finding work - it's much harder to gain entry into that world if you're just a beginner.

So from your list C#.  Otherwise consider Java (they're really similar but Java isn't Windows only).


Author Comment

ID: 35213453
Many thanks for all your comments.  A friend of mine works as a C++ programmer for a large software company.  His opinions echo dpearson's above, in that as a junior programmer I am much more likely to find a job using C#, perhaps for a company who needs to automate some of their systems, rather than a c++ programmer where I would want to work for a software company.

Many thanks again for all your advice guys.  Looks like I will try C#.

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

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

Introduction Many of the most common information processing tasks require sorting data sets.  For example, you may want to find the largest or smallest value in a collection.  Or you may want to order the data set in numeric or alphabetical order. …
Having just graduated from college and entered the workforce, I don’t find myself always using the tools and programs I grew accustomed to over the past four years. However, there is one program I continually find myself reverting back to…R.   So …
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
In a recent question ( here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…

730 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