C++ and Java. The king programming languages.

Dear Community,

I know C++ and Java are the king programming languages.
- Java allows enterprise server applications, plus mobile development with android.
- C++ many usages but no mobile development.

I heard from a friend who programs, that Java will sooner or later die and some web technologies are not even supporting it any more.

I am learning python because its easy, needs less lines of code thus you write more code faster, plus its elegant. On the money side of things some python jobs pay just as well as java or c++.

But I don't want to waste my time learning a language that won't give me much value and usage, or that is very different from the king languages I already mentioned.


QUESTIONS:

1) Should i forget learning Python (even though Python is mostly associated as web server related, and C++ wont replace it) and jump full head on C++?

2) Or should i just learn Java which is easier, then C++?

As i am not an experienced programmer i can't really tell how it affects you, learning one language for 1 year or more and then move to another one, because the one you studied dies and is no longer supported.

C++ will be around for a long time. I don't know for sure but since so many things still use it; i am applying "Moore's law".


Thanks,
John
C++ and Java are the king programming languages.
This is an unverified assertion.

C++ many usages but no mobile development.
This is false. C++ can be used in mobile development. In fact, it's pretty much the only option if you need cross-platform mobile development.

I heard from a friend who programs, that Java will sooner or later die and some web technologies are not even supporting it any more.
I don't do Java, but I don't see it going away for the next few decades.

I am learning python because its easy, needs less lines of code thus you write more code faster, plus its elegant.
Python is many things, but one of the things it's not, is elegant. Haskell and Lisp are elegant languages. Python is an ugly mess.

On the money side of things some python jobs pay just as well as java or c++.
However, the average C++ job pays more than the average Java job, which pays more than the average Python job. This is partly because of the relative quantities of skilled programmers in each language.

1) Should i forget learning Python (even though Python is mostly associated as web server related, and C++ wont replace it) and jump full head on C++?
If we're talking about web servers, I don't think any of the languages you mentioned are the best alternative. You'd be better off with Node.js or PHP. Certainly not C++.

2) Or should i just learn Java which is easier, then C++?
More habits need to be unlearned when migrating from Java to C++ than from C++ to Java. It's actually easier to learn C++ first, partly because Java evolved from it (among other languages).
Last edited on
C++ and Java are the king programming languages.

This is an unverified assertion.

Well i guess it's relative. Really comes down to needs.

I heard from a friend who programs, that Java will sooner or later die and some web technologies are not even supporting it any more.
I don't do Java, but I don't see it going away for the next few decades.

I hope so.

I am learning python because its easy, needs less lines of code thus you write more code faster, plus its elegant.
Python is many things, but one of the things it's not, is elegant. Haskell and Lisp are elegant languages. Python is an ugly mess.

Humm didn't know that. Either way Haskell and Lisp have no usage.
--------------------------------------------------------------------------------------------------------
 
On the money side of things some python jobs pay just as well as java or c++.

However, the average C++ job pays more than the average Java job, which pays more than the average Python job. This is partly because of the relative quantities of skilled programmers in each language.

Money is important to me but i guess the decision here should be, what do you really want to do and develop. What gives you motivation, passion and drive.
--------------------------------------------------------------------------------------------------------
 
1) Should i forget learning Python (even though Python is mostly associated as web server related, and C++ wont replace it) and jump full head on C++?


If we're talking about web servers, I don't think any of the languages you mentioned are the best alternative. You'd be better off with Node.js or PHP. Certainly not C++.

Does Node.js replace PHP fully? Node.js is faster, seems to be the future but John Sonmez from simpleprogrammer.com said java script is doomed.

http://simpleprogrammer.com/2013/05/06/why-javascript-is-doomed/

I do want to build my own website. So i must choose wisely!
--------------------------------------------------------------------------------------------------------
 
2) Or should i just learn Java which is easier, then C++?


More habits need to be unlearned when migrating from Java to C++ than from C++ to Java. It's actually easier to learn C++ first, partly because Java evolved from it (among other languages).

Well java seems to fit my purpose better. C++ is faster as it runs native on the OS but its Windows native. For Linux and OSX i don't even know how big of a headache is involved to run a C++ program.

I favour Windows as an OS, but if i do end up building an app, i would like it to be available to Linux and Mac users. This is where java is the big winner. Wider availability!
C++ is faster as it runs native on the OS but its Windows native.

Utterly. Uninformed. That pretty much describes the content of your posts.

It doesn't matter what your first language is. The important thing, if you wish to be a programmer, is to learn to program.
 
C++ is faster as it runs native on the OS but its Windows native.

Utterly. Uninformed. That pretty much describes the content of your posts.

It doesn't matter what your first language is. The important thing, if you wish to be a programmer, is to learn to program.

Uninformed yes! I need to read a lot and talk to people who know this.

Agree with you that it does not matter which language you learn. But i know the following. If i develop something i want it to run on other OS's. If C++ does not do that i wont learn it for now.
C++ is faster as it runs native on the OS but its Windows native.
No, it's not. C++ has always been a platform-agnostic language. Well-designed C++ code can be easily compiled to target a number of platforms. See for example:
https://developer.mozilla.org/en-US/docs/Mozilla/C%2B%2B_Portability_Guide
http://www.qt.io/download-open-source/#section-3
https://github.com/keepassx/keepassx#install
http://www.qbittorrent.org/download.php

For Linux and OSX i don't even know how big of a headache is involved to run a C++ program.
If this is your concern, then C++ is the preferable language, as it doesn't require the system to have the huge dependency that is the JRE. You could use a development machine to compile the code into a single executable, copy it to the machine that will run it, and done.

I favour Windows as an OS, but if i do end up building an app, i would like it to be available to Linux and Mac users. This is where java is the big winner. Wider availability!
Perhaps you're confusing source code portability with binary portability.
Binary portability: The final output of the compiler is executable as-is on n > 1 platforms
Source code portability: The code is written such that it can be passed unaltered to n > 1 compilers for n platforms in order to produce n different executables that each runs in its target platform.
Java compilers produce portable binaries, but C++ compilers accept portable source code.
Last edited on
johnatanasoff wrote:
Either way Haskell and Lisp have no usage.

Not true. Just because they are not as widespread or common doesn't mean that they aren't useful. In fact, the very different way of programming with Haskell can make it more suitable for some kinds of problems than a language like Java.

johnatanasoff wrote:
but John Sonmez from simpleprogrammer.com said java script is doomed.
simpleprogrammerdotcom wrote:
I don’t suggest you shun JavaScript and go off with me to a floating island in international waters where we will build a new internet, one that isn’t infected by JavaScript.

I actually use JavaScript.
Not only do I use JavaScript, but I have to use JavaScript and so do you.

And if you are smart and want to have a good career in software development, you’ll take everything I am saying with a grain of salt, knowing that I could be completely wrong.

Last edited on
simpleprogrammerdotcom wrote:
1
2
3
4
5
6
7
8
9
I don’t suggest you shun JavaScript and go off with me to a floating island in international waters 
where we will build a new internet, one that isn’t infected by JavaScript.

I actually use JavaScript.
Not only do I use JavaScript, but I have to use JavaScript and so do you.

And if you are smart and want to have a good career in software development, you’ll take
everything I am saying with a grain of salt, 
knowing that I could be completely wrong.


I read several times articles pointing how bad javascript is and that it will be replaced blablabla.
But there is no escape, therefore no point of me nagging about it.
Last edited on
Javascript sucks utterly and is (IMO) in the long run unsustainable as a server language, by virtue of its awfulness. But right now it's the most profitable web-related language to learn.
It will almost certainly be replaced; I predict within ten years time. However, the thing that will replace it will not be too alien to JS programmers. It will be the C++ -> Java thing all over again.
If it's not replaced then its grammar will be restricted in some way to allow/require static type checking, and something will be figured out to deal with callback hell.
OP wrote:

I heard from a friend who programs, that Java will sooner or later die and some web technologies are not even supporting it any more.


On September 1st of this year Google Chrome stopped supporting the Netscape API which some parts of Java use to run. This was a churlish and obnoxious move an Alphabet's (then Google) part, disabling it by default would have been sufficient but I'm sure they didn't want to see how many people were going to tell them they're wrong. The end-user can grant permission for Java plug-ins to run on a per domain basis, but with so much functionality removed there is really no point. Java isn't going anywhere, it should be rolled back and re-written in a few places which Alphabet thinks they are doing with this PPAPI (which btw, no one else uses), but it has far too much momentum to just disappear anytime soon.

As an anecdotal example, I'm a SysAdmin. Literally ten minutes before I started to write this rant one of our C Level people called me over to see why he couldn't use the web interface for our bank. Care to guess the reason?
that post should be in the lounge forum instead.

however programming language is not about popularity but about context.
Topic archived. No new replies allowed.