Which language to start with

This is a discussion on Which language to start with within the A Brief History of Cprogramming.com forums, part of the Community Boards category; Hello
I've learned Visual Basic .NET, some Python, and beginnings of Java. And I was just wondering what language I ...

Which language to start with

Hello
I've learned Visual Basic .NET, some Python, and beginnings of Java. And I was just wondering what language I should learn now. The decision is between either C or C++. So I was hoping somebody could give me some insight on which language would be better to learn. Also I am hoping to go to college for Game Development, just in case a certain language would be better for this.

Sorry if this is not the correction section to post this, but I was unable to find a place for introductions. So it seemed like this was the most appropriate place to post this.

To properly learn C++, you will also need to learn C, as 99.9% of all things you can do in C, will work equally well in C++ (of course, purist C++ programmers will say "That's not the way to do it in C++", but the compiler will not make such objections).

However, whilst C++ can do C, you will also need to learn "the C++ way of doing things", or you will still not be particularly successful in the C++ arena.

Until you can build a working general purpose reprogrammable computer out of basic components from radio shack, you are not fit to call yourself a programmer in my presence. This is cwhizard, signing off.

thank you all for the insight I am going to work on learning C.
Generally how long does it take to learn C?

The basics: A couple of weeks or so. Fully - a few years or so (assuming you "ever" learn it all).

Note also that learning a language is generally considered the easy part - learning how to program is the hard part. So if you are already comfortable with other programming languages, then it's easier. But C and C++ have some advanced features that are different from most other languages (particularly the ones you mention, in the fact that C and C++ uses pointers).

Until you can build a working general purpose reprogrammable computer out of basic components from radio shack, you are not fit to call yourself a programmer in my presence. This is cwhizard, signing off.

I'm not quite sure what that means, but I think you should have a working knowledge of Java before you jump into something else. Nothing quite ruins a mind like trying to learn several programming languages at once, and C++ will be doing things differently from Java which will lead to confusion you're not prepared to handle. When you have a working knowledge of the languages you're already learning, you will have an easier time working with the differences and similarities it has with C++.

I recommend leaning C first (as I haven't gone into C++ yet). I went from PHP to python to C, where I had learnt the basics of C before python (as I didn't have much time to read the manual).
I have been programming in C for roughly a year now (dived head-first into Windows Programming with little experience beyond pointers).
The concepts are not that hard to master, it is applying them to programs that is the hard part. Another difficult thing is comming up with problems that are feasible, wihtin what you know and time-frame, to program. That might just be me though .
If you even spend years learning C, then move on to C++, C++ will not take that long to master as most of the stuff in C carries over to C++. Thats the concept I work from (hope it's right)

Nothing quite ruins a mind like trying to learn several programming languages at once, and C++ will be doing things differently from Java which will lead to confusion you're not prepared to handle. When you have a working knowledge of the languages you're already learning, you will have an easier time working with the differences and similarities it has with C++.

I agree.

slats, I think you should concentrate on Python and Java for now. Consider developing simple games in those languages. Aside from helping you build your knowledge on how to use those languages to solve problems (and problem solving is a skill that you can keep even when switching languages), the simple games you develop could come in handy in an entrance interview for your target college.

Originally Posted by P4R4N01D

If you even spend years learning C, then move on to C++, C++ will not take that long to master as most of the stuff in C carries over to C++. Thats the concept I work from (hope it's right)

Yes, much of one's C knowledge would carry over to C++. On the other hand, C++ introduces new constructs and idioms not present in C, and some of these are fundamental to using C++ effectively. If one's aim is to learn C++, there is no gain in learning C before learning C++.

slats, I think you should concentrate on Python and Java for now. Consider developing simple games in those languages. Aside from helping you build your knowledge on how to use those languages to solve problems (and problem solving is a skill that you can keep even when switching languages), the simple games you develop could come in handy in an entrance interview for your target college.

Yes, much of one's C knowledge would carry over to C++. On the other hand, C++ introduces new constructs and idioms not present in C, and some of these are fundamental to using C++ effectively. If one's aim is to learn C++, there is no gain in learning C before learning C++.

Thank you very much.
I will stick with Python and Java for now.
I'll be back in a few months(or years) depending on when I am done with those.

Regardless of the language you choose I would encourage studying different types of programming (I.E. procedural, OOP, logic, etc) as these are the real foundations to programming. Syntax is fairly easy to pickup once you firmly understand then general concepts.

slats, I think you should concentrate on Python and Java for now. Consider developing simple games in those languages. Aside from helping you build your knowledge on how to use those languages to solve problems (and problem solving is a skill that you can keep even when switching languages), the simple games you develop could come in handy in an entrance interview for your target college.

Do no discourage people who wish to learn C++.
I think it is perfectly valid and useful to learn C++ even before any other language is learned!

C++ has some really good stuff to ease the newbies!
I will recommend C++ for learning how to program, other languages are more like get your work done, the fastest!