C++ is an amazing language. Its ability to manipulate data structures and the way to can conceptualise objects is unparallelled. My concern though is that it has become way too complicated to use. Writing a basic C++ program is easy enough but to really use the power of the language, the things that set it apart from Java and the others you really need to know quite a bit. Most people don't get there and as a result drop it in favour of one of the other languages that are "easier" to get good at. Any thoughts on this?