• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Which programming language to learn?

hoyaguru

Senior member
I'm thinking about learning how to do some programming. I do a lot of work with Excel macros, and enjoy it, so I figured maybe I could get into programing. The thing is, there are so many different programming languages to learn, which one should I start with? Java? And are those "Java for Dummies" books worth buying, or is there a better series?
 
I'd also vote for C. So many languauges use similar syntax and it is so well respected on its own.
 
It might be better to decide on some project first, then pick a language that's well-suited to the task.

For example, C/C++ for modding games makes more sense than java or C#, while java and C# are good choices for server-side programming (along with C++, PHP).

Do you have any long-term goal or just want to learn for its own sake?
 
I'm learning Java right now after having used C++ in the past, VB (not .NET 🙁), and some scripting languages. My only complaint with any of them is that I don't get to do enough right now to keep any of it fresh.

Figure out what you want to do, and then ask this question for more useful answers.
 
Originally posted by: DaveSimmons
It might be better to decide on some project first, then pick a language that's well-suited to the task.

For example, C/C++ for modding games makes more sense than java or C#, while java and C# are good choices for server-side programming (along with C++, PHP).

Do you have any long-term goal or just want to learn for its own sake?

No real long-term goal, though if I can learn something that I can make money with in the future, that would be the best way to go I guess. I'm not sure what different languages are for. I thought Java was supposed to be the next big thing.
 
Originally posted by: hoyaguru
Also, what exactly can you do once you know C?
Not much (if you only know C).

You also need to learn domain-specific APIs such as Win32 and DirectX for Windows, OpenGL and UI toolkits for linux, database APIs for server-side programming, etc.
 
Originally posted by: hoyaguru
Also, what exactly can you do once you know C?
C is a good choice because it's pretty universal across platforms, and it will teach you the basic techniques and skills that you can then apply to other languages you learn.
 
Originally posted by: hotchilisauce
Originally posted by: yellowfiero
C
Then:
Assembly

...after which you can proceed to tear your hair out

Assembly is pretty good for understanding pointers and how memory works. I don't like it, but it helps a lot.
 
As stated before, it really depends what you want to do. If you are interested in stand alone apps then I defer to the wisdom of others. For web programming you might look at perl or PHP. I prefer perl but that is probably a matter of not having access to an MySQL server so PHP doesn't offer me anything over perl.

My programming is mostly recreational. I've programmed in BASIC, FORTRAN, a tiny bit of C++, LabView, perl, javascript, and PHP. Perl has been the most fun. I never could get to like the syntax of C++ or javascript. It is probably a result of spending so much time programming BASIC and FORTRAN that I really like verbs and C++ and javascript don't have many verbs. If you want to really cover the extremes of programming try learning command driven FORTRAN and then shift to LabView, a rigidly object oriented language.
 
I started with C++ and it's a very good foundation to build on when learning other programming languages.
 
C, then the OOP stuff with C++, then learn java

the C family will help you in learning any other language, java will be easier than C++ since the syntax is very close, but takes out some of the more complicated things like pointers and garbage collection
 
Back
Top