Про английский Вам уже ответили. и он нужен не для того, что бы осваивать язык программирования, а для того, чтобы:
- читать спецификации
- свободно читать документацию на используемые библиотеки/фреймоворки
- искать ответы на форумах и т.д.
Разговорный в данном случае, вторичен, но это не значит, что на него надо забивать.
Java проще, у нее ниже уровень вхождения, по сравнению с C++. Но если все таки планируете в будущем программировать под iOS, Mac OS, то изучайте паралельно C. Лучше сперва без плюсов. Потом уже C++.