Ну тут и ответы конечно есть...
Смысл учить С, С++ есть, только если вы на 1-2 курсе университета и у вас в запасе пару лет)) Иначе нужно учить основы Java и там уже отталкиваться от направления.
В общем, на собственном опыте работает примерно такая программа:
1) Есть очень хорошая программа от Якова Файна на русском (там у него еще книга на английском - http://www.amazon.com/Java-Programming-24-Hour-Trainer-Yakov/dp/0470889640 ) - https://www.youtube.com/playlist?list=PLkKunJj_bZefB1_hhS68092rbF4HFtKjW
Я училась по нему, там хорошие практические задания. Там конечно есть свои недостатки, вроде использования Эклипса, а не более приличной IDE, но на данном этапе - это мелочи.
2) Следующий этап - это досконально прочитать небезызвестную "Философию Java" + https://habrahabr.ru/post/212707/
3) Далее можно попробовать пройти какой-нибудь курс у преподавателя или в большой компании, нанимающий студентов/стажеров, вроде Епама: тут зависит от того, хорошо ли вы уясните основы - тогда возьмут бесплатно. Иначе платный курс, к примеру, на https://geekbrains.ru.
Кроме того необходимо примерное понимание алгоритмов: разобраться с разными видами сортировок и более правильными методами решения уже известных задач.
Всякие javarush вообще не работают на деле - тут опыт многих моих одногруппников и знакомых. Поиграться можно, но возлагать надежды, что это приведет вас хоть минимально к уровню junior developer-а не стоит. Лучше читайте хабр, интересуйтесь новым в сфере, пробуйте запустить новый фреймворк, написать на нем что-то, "пощупать" функционал - больше пользы будет.
Самое главное, кончено, это ответить себе как вы ходите развиваться: пойти в Андройд (тут вроде как неплохо тоже уметь запилить что-то на javascript, C# или Objective-C/Swift в зависимости от компании) или в веб (тут к вам добавится еще знание верстки, javascript и все околовеба). Мое субъективное мнение, что интересных задач и более серьезное программирование в вебе :)
На javarush, к слову, задачки теперь платные. Год назад было иначе :(