I would prefer a hybrid automatic/manual memory manager, where you could explicitly delete objects from the heap, but also have a garbage collector to clean up if you forgot something or you have a data structure that's not worth figuring out how to delete correctly.
Manual memory management is easy, but you're just doing repetitive work which could be done by the computer, and humans are a lot more error prone in this regard: memory leaks or other mistakes usually done when working with pointers do happen. Humans make mistakes even when coding in high level languages and even when they have a very clear picture of what they want to do. Why not reduce the amount of errors and simply the programmers job (as long as the system you're working on isn't something low level)?
Java is how you prove you're a real man. That's why its called Java
You are now making serious enterprise level programs and getting paid 100.000$ a year.