Ответ: Что лучше начать изучать?
Разные языки имеют разные абстракции мышления.
Например в C++ разработчик должен знать как работает память на низком уровне, и нужно иметь больше "успешных" способностей архитектуринга.
На C# например проще, т.к. он полностью OOP, и не требует заботы например о памяти, хотя также имеет сложные абстракции и весьма мощный и как HolyDel сказал "объёмный", но скорее не язык, а .Net. Т.к. язык по себе имеет фичи, и они менее богаты чем в С++, что делает C# более стабильным, но за счёт богатства и мощности .Net - этот вариант становиться хорошим выбором.
Java же очень схожа с C# .Net, но я работая на обоих предпочитаю C#, т.к. IDE во много удобнее, больше консистенции в .Net и лучше документации. Хотя на обоих можно решить почти одинаковые задачи практически одинокого с мелкими различиями на низком уровне.
Но работая с разными программистами, понимаешь что ценность в программисте не в его знании языка, а в мышлении как программист. А это сложная система набора способностей по разным дисциплинам.
Способность мыслить и моделировать системы, алгоритмы, аналитически - это очень важно. Этому классическая система образования не совсем способствует, т.к. "правильного" пути в этой области нету, тут главное здравый смысл и широкие взгляды учитывая кучу тонкостей и деталей.
Аналитическое прогнозирование - это тоже одна из областей, котороая must-have для любого разработчика который имеет право решения выступает на весьма высоком посту. Тут очень важен опыт, и осведомлённость в разных технологиях и как они взаимосвязаны. Мыслить нужно не языком, а набором технологий. Многие не имеют способности хотя бы предположить как что-то может быть сделано или например какие ресурсы веб система с определённой нагрузкой будет требовать.
И самое главное - желание. Тут мотивировать себя - это ключ, без этого далеко не уйдёшь. Нужно не только мотивировать себя писать код, но и развиваться, т.к. разработчик - это постоянно развивающаяся сущность, который должен учиться постоянно и двигаться вперёд прогрессу. Иначе может произойти такая ситуация что если выбираешь актуальную технологию сегодня, вкладываешь года на специализацию в ней, а затем другие новички с лучшей технологие получают твоё место работы, и ты уже не нужен, не смотря на то какой ты специалист в уже устаревшей технологии.
Просто работать программистом - такого не бывает. Есть разные направления, но это сложно выбрать направление пока учишься или даже порой когда заканчиваешь учиться, пока не начнёшь работу и не сменишь пару мест.
Изучай технологии, что происходит, что актуально, и занимайся прототипированием.
Ну и по себе: Алкоголь - враг концентрации и фокусу. Наркотики - враг мотивации. Потусить - бездна траты единственного ресурса: Время.
Больше мысли самостоятельно, чем по книгам или наводкам учителей. К сожалению наша система это не поощряет, и порой наказывает за "произвол", но твой собственный путь и ошибки имеют в десятки больше пользы чем следования чьих-то, не столь очевидных в деталях тебе. Но не зацикливайся и не уходи в чрезмерное погружение.
ИМХО.
|