C vs C++
eugenejen: It really depends on what do you want to do. If you are going to write stuffs on Windows OS for financial companies, you need to learn C++ to read existing codes.If you want to build new system with Linux/BSDs. Then learning C is enough for you to do all useful things. Then you learn Java just as your friend says.C++ is really complicated if you use features beyond basic templates and classes. And in reality, it lacks of standard Application Binary Interface for using binary libraries as C does. And different compilers may interpreter some spec in C++ differently.C and Java is much simpler and uniform.