Мне никогда не был близок академический подход к изучению технологий, мне все время хотелось попробовать делать какие-то реальные вещи, по пути узнавая, как их правильно нужно делать.
Начинал я, как и многие, с Паскаля, но потом перешёл на С++, нормально выучив его, поучаствовав в Google Code-In, где улучшал текстовый редактор для какой-то непонятной операционной системы.
Кроме этого, в десятом классе выучил Python, написав плеер для вк и скрипт для скачивания музыки оттуда же.
На первом курсе немного поизучал Java и objective-c, написав сервер и приложение для расписаний своего университета.
После этого я пошёл на работу и стал учиться на ходу там, почитывая статьи и смотря на код других инженеров.
Резюмируя, как по мне, эффективный способ выучить язык: придумать себе проект и сделать его или поискать интересующий проект с открытым исходным кодом и реализовать что-то для него. В первом случае не имеет значение, если такой проект уже существует, ваша задача понять, как применять (и выбирать) те или иные технологии для конкретной задачи.
Имхо, читать умные книжки нужно начинать после получения первичных навыков разработки, чтобы не застревать на сложных (на первый взгляд, для незнакомого с технологией человека) аспектах.
Этот же подход верен и для каких-то технологий, а не только языков.
Какой язык более универсальный?
Сколько зарабатываете в месяц/за час?
Очень круто и вдохновляюще