Python instead of JAVA or C++ for stable career option?

I don’t know if it make sense or not but I am a bit confused,
One side Python is a good language with lots of innovative projects like Data Science , ML , AI etc going on in it and on other side JAVA is stable language of Professional company and corporation are using it , so in Job point of view it is good language to learn …

Which one you choose ??

Software Engineering is probably 10% about the language.
The other 90% are meta skills like analytical thinking etc.

Java is popular, because it is old, reliable, many devs know how to use it and there is many legacy code.
Look for the projects you want to build or the field you want to work in and look what is popular there.

1 Like

yeah JAVA is old but I want to choose a language that gives me a stable back if want to the job in corporate sector like in MNCs, probably they use JAVA more than the Python.

BTW: I am more interested in AI and ML

The ML community has adopted Python as their language of choice. Java is for boring, solid infrastructure that big companies rely on, e.g. to handle their backend.

Machine Learning is very interesting but I think it’s more the realm of the startup. If a big company wants to do a project with ML, I think they’ll recruit someone with a PhD or at least a solid reputation in the domain. They can afford to.

If working for a big company is important to you, especially if it’s not in the IT industry, go for Java. But you won’t do ML or AI.

That said, it’s not either/or. You’ll be a better developer if you learn both. Even if you never use one of them in your day job.

To finish, a word of caution: A big company can afford to be picky on who they recruit. Most of your competition will have a CS degree, so you’d better be very very good and know someone there if you don’t.

1 Like

Java the most widely used language, full stop. You can do almost anything in Java, it’s a solid stable choice and will be for a long time to come. Also we/r/t your post, a large percentage of “big data” tools are written in Java.

Python is a slightly older dynamic scripting lang, not as easy to safely write large applications in. It is pretty easy to learn and set up, it has an excellent standard library, it’s very easy to build tools with it, and is extremely common in academia (critically, it seems to have replaced Java as the standard academic teaching language). I guess are they’re the main reasons you get a lot of machine learning stuff built primarily to use via a Python interface - Tensorflow for example (although they’re generally all C/C++ underneath).

There are a lot of data/ML/AI libraries for Python. But there are for Java and C++ as well, Python is just much easier to learn and use. All of them are fairly solid options if you want a job :man_shrugging:

1 Like

You’re right but how I can learn JAVA, Python, JS at the same time + have to study for my degree to as I am in 2 year of my CS Degree ??

So learning both is a good option for career wise + I am learning JS too (Intermediate Stage), will it help to get me a stable Job on which I can rely ?

I’m a bit surprised that you are not learning any of those languages if you are studying for a CS degree. My son (currently in his 3rd year of CS degree) was taught Java, Python and JavaScript in his first year, C in his second year, Haskell as an option this year. What languages are you studying? Some universities choose to teach more academic languages so that the students learn a “pure” version of the concepts they are teaching but that shouldn’t be a problem. Once you have mastered the concepts, moving to a different language based on the same concepts is not hard.

Practically, I’d say, give your studies priority and, if you have time, learn one additional language for now. You can learn another one later.

Does your degree include a time in industry? Some do it for 3 months during the summer holiday, in others it’s a year. I think you can also arrange your own summer internship but I don’t really know and it probably differs depending on your country. Anyway if you have the chance, do it, that’s where you’ll be exposed to languages and tools used in the industry. And you’ll have access to experienced developers to guide you. To convince a company to take you on as a intern you need to show that you can program, you want to learn more and you’re prepared to work hard.

Regarding the stable job: There is no such thing as a job for life these days. As a developer you are in demand so even if you lost your job you should be able to get a new one fairly easily. That is, as long as you stay current. Don’t expect that you will be done with learning once you have a fairly stable job. If you don’t keep learning you’ll find one day that your skills are obsolete. You don’t want that.

1 Like