should i learn C++ or Visual Basic first?

Oct 19, 2000
17,860
4
81
Hey guys. I'm gonna try to teach myself some basic programming skills, and I want to know what is better to start out with, Visual Basic or C++? I hope to start school sometime next year, and I hate going into things blind. I want to know a little to get started with. So which would be easiest to check out first? I plan to learn the basics of both. Thanks.
 

ndee

Lifer
Jul 18, 2000
12,680
1
0
I suggest C if you really want to learn programming. VB in the beginning is too simple IMHO.
 

nord1899

Platinum Member
Jun 18, 2001
2,444
0
0
Let me give you a bit of background on me.

In High School, I studied Pascal for 2 years. Went to college where I studied Java and C++ over 4.5 years.

At my first job, they taught us Visual Basic. In less than a week, I had a fully functioning IM client. Not as polished as AIM, but fully functioning.

So study C++ to learn how to program. When you are proficient in C++, which would be in 1 or 2 years depending on how fast you go, VB will be a joke to pick up. I really doubt it works the other way around though.
 
Jun 18, 2000
11,191
765
126
I think you should stick with something like QBasic - NOT Visual Basic, they are different. QBasic will teach you general concepts like variables, loops, and consequences (if/then/else). You don't need to know Basic inside and out before moving on to C, but you should have a reasonable grasp of what programming is, and how to problem solve.

Useful or not, C is way too advanced for someone with NO programming experience.
 

chiwawa626

Lifer
Aug 15, 2000
12,013
0
0
I say start with VB....If its too hard then u know you shouldnt be programming. Vb will give you an idea of simple logic and will prepair you for c++...Vb can easily be picked up in a week or so, i suggest learning vb first to get the ideas of programming logic.
 

alkemyst

No Lifer
Feb 13, 2001
83,769
19
81
Really this question depends on what you want to do with it....

If you choose C I like Deitel and Deitel's material on it and C++....good stuff.

VB isn't as easy as everyone makes it out to be, sure you can hack stuff together quicker than C a lot of times, but it is hard to do advanced stuff.

Same with PERL, easy to do some rather complex C like things, but advanced PERL is hard too.

 

Beattie

Golden Member
Sep 6, 2001
1,774
0
0
C
C++
Java

C really isnt too hard for a beginner to learn. Just stay away from pointers until you get the hang of other things.
 

BigJohnKC

Platinum Member
Aug 15, 2001
2,448
1
0
C++ is good for procedural programming, java is good for object-oriented, VB is good for nothing :p. It all depends on what you want to do with it. Once you learn one language, they all become pretty easy to learn. I started out in Java, and taught myself VB in an afternoon a few years later.
 
Oct 19, 2000
17,860
4
81
Useful or not, C is way too advanced for someone with NO programming experience.
This is what I was thinking, which is why I was asking this question.

I say start with VB....If its too hard then u know you shouldnt be programming. Vb will give you an idea of simple logic and will prepair you for c++...Vb can easily be picked up in a week or so, i suggest learning vb first to get the ideas of programming logic.
This was also my philosophy.

I in no way hope to attain a grand knowledge of either language/program, I just want to be able to hold my own when school starts. I like to have a knowledge of something before I dive into it, especially something that is going to be a financial strain and is going to take atleast a 2 year dedication. Thanks for your input.
 

Alex

Diamond Member
Oct 26, 1999
6,995
0
0
i started with vb about 6 years ago and now im learning java in first year of college, we learn c next year.

although vb is different a lot easier than java or c, it helps build fundamental skills and concepts that everyone already mentioned so basically when you learn if statements and loops in java or c, although the syntax is different (not that different, actually) the idea is the same and its so easy to put into practice
 

Alex

Diamond Member
Oct 26, 1999
6,995
0
0
Originally posted by: Shiva112
neither...learn Java ;)

lol :p

actually, on a serious note, that's prolly the best idea cuz c is a compiler and vb is a translator and java is smack in the middle, actually more towards vb but still its the middle ground!
 

Maverick

Diamond Member
Jun 14, 2000
5,900
0
71
Java is well documented and easy to get into...you can even download all the tools you need to get started for free (legally :p)
 

AU Tiger

Diamond Member
Dec 26, 1999
4,280
0
76
Learn C first. This will make Java and C# easier to learn if you choose to learn those later.

I wouldn't recommend Visual Basic because it has recently been overhauled for .NET meaning VB 6 <> VB .NET. These two versions are like different languages now.
 

KevinMU1

Senior member
Sep 23, 2001
673
0
0
If you want to use a language just to learn programming and problem-solving concepts, use Java. Not only is it free an readily available, it hides all of the "dirty work" that makes programming hard, and lets you focus on the concepts and what you're trying to do, rather than how you are going to do it.
 

Yomicron

Golden Member
Mar 5, 2002
1,735
1
81
Originally posted by: Shiva112
neither...learn Java ;)
LOL

Java... what a lame excuse for an object orientated language (not as bad as C++, but sill bad)

I would learn C first, it will teach you the basics of programming
For your intro to object oriented programming I would learn a real OO language, such as Smalltalk.
Once you are proficient in Smalltalk, I would work with some C++ or Java that way you can apply some real OO design to Java and C++.



*NOTE* Do NOT read too much into that "not as bad as C++" part, I'm not saying C++ is bad, its just not the true object orientated language people think it is.
 

gopunk

Lifer
Jul 7, 2001
29,239
2
0
Useful or not, C is way too advanced for someone with NO programming experience.

what? C was my first programming language, and it was just fine. well, unless you consider making webpages to be "programming"...

they taught C as the intro to programming course here for many years (now it's java... ha! glad i got the last C/C++ class)
 

manly

Lifer
Jan 25, 2000
12,874
3,647
136
Originally posted by: Yomicron
Originally posted by: Shiva112
neither...learn Java ;)
LOL

Java... what a lame excuse for an object orientated language (not as bad as C++, but sill bad)
Care to explain that stick up your ass, err I mean rationalize your disgust for Java?

The thing about C is that it's essentially a portable high-level assembly language. It's been wildly popular but it's a little too close to the metal to be considered a modern introductory programming language.

That doesn't mean that thousands of people haven't successfully first learned coding from C; just that contemporary belief is that C isn't ideal for the task. I have scant Python experience, but it's a better pick than Java for newbies because it has a standard interactive interpreter. The edit/compile/execute cycle isn't favored for beginning programming (partly why BASIC was a popular teaching language for many years).

Java does have some interpreters, but not a standard one in the SDK (search for the BeanShell if you want one).

C++ is such a behemoth language with myriad issues that I'd never recommend it to anyone learning programming from scratch. Arguably, Python, Java and C# are more sane choices. If anyone is wondering, I actually like C/C++; I just don't have the patience & dedication for those languages anymore when Java suffices most of the time.
 

gopunk

Lifer
Jul 7, 2001
29,239
2
0
C++ is such a behemoth language with myriad issues that I'd never recommend it to anyone learning programming from scratch. Arguably, Python, Java and C# are more sane choices. If anyone is wondering, I actually like C/C++; I just don't have the patience & dedication for those languages anymore when Java suffices most of the time.

i completely disagree, all 3 of those languages are high level, which is NOT what people should start out with. should kids learn to add and subtract, or should they learn how to use a calculator first? i choose the former. it may be easier, but i think it's important to get the nitty gritty down before you take any shortcuts.

yes, i know C and C++ are shortcuts too, but you know what i mean.
 

mithrandir2001

Diamond Member
May 1, 2001
6,545
1
0
C++ is slightly overrated. Oh, its powerful, sure, but not necessary to actually learn at this stage in the game. I've been a corporate developer for 6 years and haven't written a line of C++. Almost everything has been in VB or VBScript. I will be using C# however when devloping for .NET because it is more powerful than VB and almost as simple.
 

Yomicron

Golden Member
Mar 5, 2002
1,735
1
81
Originally posted by: manly
Originally posted by: Yomicron
Originally posted by: Shiva112
neither...learn Java ;)
LOL

Java... what a lame excuse for an object orientated language (not as bad as C++, but sill bad)
Care to explain that stick up your ass, err I mean rationalize your disgust for Java?

I was just saying that Java isn't a true object orientated language (which it is often advertised as). Smalltalk is one of the few true object orientated languages, it are no primitive types, everything is an object. Smalltalk is good for learning OO design for several reasons, for one, you can modify the code during run time, which is a very useful feature if you are just starting out. Smalltalk code is also very easy to read, which is great for beginners. Another nice feature is that you can test small segments of code on the fly. (type the code, select it, right click and select 'Do it') Plus the IDEs for Smalltalk allow you to easily structure your program, and allow you to view all of the code for all the methods of the pre-made classes.

I'm not saying you should never learn Java, but I don't feel it should be first language taught.