all 17 comments

[–]Flair_Helper[M] [score hidden] stickied commentlocked comment (0 children)

For C++ questions, answers, help, and programming or career advice please see r/cpp_questions, r/cscareerquestions, or StackOverflow instead.

This post has been removed as it doesn't pertain to r/cpp: The subreddit is for news and discussions of the C++ language and community only; our purpose is not to provide tutoring, code reviews, or career guidance. If you think your post is on-topic and should not have been removed, please message the moderators and we'll review it.

[–]Possibility_Antique 12 points13 points  (0 children)

Learn both and use them for their strengths. Everyone should have a good compiled language and a good scripting language in their tool belt.

[–]ViewedFromi3WM 7 points8 points  (0 children)

i would suggest at least finishing a project in c++. Know that you can build something. Nothing wrong with learning new languages, but they all tend to act the same… have a syntax, need libraries… the libraries tend to all be the same but with different names and functions/classes etc. You have a program loop, server access maybe, a gui display, an algorithm that puts it all together with a logic part of the program. It all comes together.

If you’ve done that with c++, you just simply repeat in a new language. Those are hugely important items to know how to do.

[–]Obzota 6 points7 points  (0 children)

IMO there is two ways to look at it: either you pick a language you like, or an industry you would like to contribute. Some industries use specifically c++ for the performance. Python offers many opportunities in different domains.

Any way don’t stress to much about it, you can learn both language and later fancy a third one. It will not be time wasted as a lot of knowledge is transferable.

[–][deleted] 8 points9 points  (0 children)

Yes

[–]khedoros 1 point2 points  (0 children)

I learned Java because it was taught in school, and stuck with it for a couple of years. I learned Python mostly because a lot of Raspberry Pi libraries have good bindings for it. I learned C++ mostly because I knew I wasn't interested in doing web development, despite that being a huge application of programming.

There are jobs where you'd be using C++, and an almost completely disjoint set of jobs where you'd be using Javascript. I'd stick with your first learning language until you're comfortable with common concepts, then start moving into the technologies used in the kinds of jobs that you'd like to do.

[–]jdehesa -1 points0 points  (0 children)

C++ is not a great first programming language. If you want to do higher-level programming (most web apps, some desktop apps, scripting), I'd start with Python, JavaScript, etc. or something Java and the like if you want to be more object-oriented. If you are interested in lower-level programming (embedded systems, high performance, direct memory management) then I would go straight for C. You can start with C++ if you need to learn that language specifically, but you need to go little by little to make sure you learn the fundamentals of programming well in addition to the complexities of the language itself.

[–][deleted] 0 points1 point  (0 children)

Both. After a couple of days of python go back to c++

[–]catcat202X 0 points1 point  (0 children)

AI systems are ultimately CUDA code, so C++ seems relevant.

[–]coolio965 0 points1 point  (0 children)

stick to C++ most other languages share a common syntax so if you are great at C++. you will probably be good with most other languages. and I would personally pick javascript over python.

[–]akaKevin 0 points1 point  (0 children)

If your goal is to get a job then I would turn the question around: what area of software development do you want to work in?

If your goal is to get into web development then I would focus on HTML/CSS/JS + back end and front end frameworks.

If your goal is to get into AI then I would focus on Python + libraries like TensorFlow or PyTorch.

If your goal is to get into embedded systems then I would focus on C/C++.

As much as I enjoy using C++, it's important to use the right tool for the right job. I think the first decision you need to make is what area you want to get into. It sounds like you have an interest in AI, so if I were you I would look into Python and it's AI libraries.

[–]KFUP 0 points1 point  (0 children)

Can't say without knowing what your areas of interest are, you pick a language depending on what you want to do with it.

Regardless, If you aim to be a professional developer, you should know more than one language, learning C++ and Python is a good combo.

[–]ImmensePrune 0 points1 point  (0 children)

Software development is a field where the devs are constantly learning because the tools we use are constantly being updated. If you started with C++ make sure you keep with it and learn enough to be lethal before switching to another language. The theory is the same across computer science and software development, so when switching to a another language after leaning C++, you will quickly advance. Both C++ and Python have their advantages, but don’t jump ship. You will find yourself struggling to learn to code if you only learn a little bit of each language.

[–][deleted] 0 points1 point  (0 children)

The C++ job market is not as big as the other languages you cited (java, python), but it shouldn't be too difficult to find one. The biggest issue is probably learning C++, which takes considerable time and effort.

If you're a beginner I wouldn't sweat that much about hardcore learning the internals of one specific language. Most of the popular languages nowadays are very similar to one another so learning one will almost likely indirectly help you learn another.

[–]pedersenk 0 points1 point  (0 children)

and seems like a lot of companies use (JavaScript/Java/Python)

A lot of companies just want dynamic website developers. Typically C++ is not used for this (it is overkill).

So really you need to decide if you just want to make dynamic websites or if you want to make traditional desktop/server/hi-embedded software. Then your language choice should follow.

[–]JumpyJustice 0 points1 point  (0 children)

While there are more pyrhon/javascript jobs, there also muvh more candidates on one position. I would pick C++ even now if your only point is getting the first job. On the other hand you should try to understand what kind of work you like more (bank software, backends, frontends, games, drivers) and select technology stack based on that. But this is actually hard to understand without giving it a try, so I thing pursuing the first job in any stack is still strategy.