Смотря что хотите писать: для мобильных устройств (Java ) или для десктоп (C++), при том под какую ОС тоже можно ещё сделать выбор языка. Даже если выучите один из выше приведённых, то другие языки для изучания пойдёт легко. Так же если Вы хотите программировать контроллеры то можно сразу ассемблер.
Первым надо учить не язык, а учебник программирования. А язык будет тем, который используется в этом учебнике для объяснения алгоритмов - удобным именно для обучения. Потому как любой язык программирования - не цель обучения, а инструмент для записи алгоритмов в понятной компьютеру форме. И написание кода на конкретном языке - предпоследний этап в работе программиста. Тогда как основная часть работы - нахождение оптимального способа достижения заданной цели при заданных условиях (т. е. алгоритма, который будет реализовывать твой код).