Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I can't say I disagree with the author. Even with all its troubles, there's simply too much legacy Java code to abandon. Much like Cobol and Perl, there will always be a need for Java programmers to--at the very least--maintain existing code.

If you're a complete newb, learning Java will also introduce you to the C-like family of languages. (Although I say everyone should learn C first in order to appreciate memory management)



> Much like Cobol and Perl, there will always be a need for Java programmers to--at the very least--maintain existing code.

Sure, if your goal is to get a job maintaining mainframe systems in banks for the next 30 years Cobol or Java are very good ideas.

On the other hand, there are already huge heaps of mediocre java programmers available for cheap, so it's not like the demand is that high.


It depends on what you think is cheap. But Java developers that even know a little are doing fairly well right now. Java developers that know a lot can demand top dollar and there are tons more opportunities to earn that amount than with pretty much any technology.


Java will certainly not teach you anything else from C but how to put statements in braces and a couple of constructs with similar syntax. And if someone thinks that is C, he doesn't know C.


> learning Java will also introduce you to the C-like family of languages Aren't Java and C, different family of languages?


Although a Java translation of a C program still looks C-ish, I agree; idiomatic Java is very different from idiomatic C. (This is not surprising; Java is intended to be "C++ done right", and idiomatic C++ is rather different from idiomatic C.)


Java is part of the C family of languages, you can draw a pretty straight line between C++ and most of Java's features (or non-features, or lacks of features).


Many C programmers would argue that C++ does not belong to the C family of languages.


The basic grammar and syntax are pretty much the same, as are most of the fundamental data types and their behaviors, and many other things. There are obviously a lot of differences, but if you know one language it usually isn't hard to read well-written code in the other language.


> as are most of the fundamental data types and their behaviors

Don't ever tell that any C-novice coming from Java. Or you will have fun with interesting array constructs or functions returning pointers to variables created on the stack, etc.


I think he means C-style syntax rather than C family of languages. Java certainly is made to read like C and C++ more than anything else even if it is very different under the hood.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: