В Grok студенты и преподаватели спрашивают нас, какой язык лучше. Какой язык используется чаще всего? Какой из них продвинет меня дальше в мире технологий? Нужно ли мне хорошо разбираться во всех них?

Такое мышление вводит в заблуждение. Вы знаете, какой язык лучше всего изучать? Любой из них.

Языки программирования - это постоянно меняющийся ландшафт

Языки все время меняются.

В Опросе разработчиков Stack Overflow 2018 самым любимым языком был Rust. До 2010 года Rust даже не существовал. Второй по популярности, Котлин, был изобретен только в 2011 году.

C ++ превратился из второй по популярности технологии в 2015 году в боязнь большинства респондентов в 2018 году.

В 2013 году работа на полную ставку PHP-разработчика в США была одной из самых высокооплачиваемых вакансий. В 2018 году PHP даже не попал в список.

И дело не только в языках: среда, для которой вы разрабатываете, также постоянно меняется.

До Интернета такие языки, как HTML, CSS и Javascript, были немыслимы. Смартфонам всего около десяти лет - первый iPhone был выпущен в 2007 году - и сегодня более половины всего веб-трафика приходится на мобильные устройства. Текущий рынок приложений оценивается в десятки миллиардов долларов, но до смартфонов вообще не существовало такого понятия, как мобильное приложение.

Самый важный навык - это не кодирование, а обучение

Неважно, какие языки вы знаете, потому что если вы хорошо учитесь, вы будете хорошим инженером-программистом.

Выберите язык и погрузитесь в него. Узнай это, используй, брось себе вызов. Почему? Потому что хорошее владение одним языком способствует развитию навыков владения другими. Если у вас есть четкое, твердое знание концепций программирования, они будут перенесены на любой язык в любом контексте. Это просто зависит от того, что вы пытаетесь построить.

Представьте себе: вы - звездный программист на Objective-C, создаете фантастические приложения для своего работодателя, AppCo. На конференции разработчиков Apple они объявляют о секретном проекте, над которым работают: язык программирования Swift!

Подождите секунду - вы знаете только Objective-C. Что будет с твоей работой? Остаток карьеры ?!

Просто: ты учишься. Вы знаете, как разрабатывать приложения, вы знаете, как анимировать, вы знаете, как использовать базовые структуры данных и так далее. Конечно, Swift может показаться немного незнакомым или по-другому справляться с некоторыми ситуациями, но большую часть пути к этому вы делаете.

Вы можете освоить новые языки неформально, возясь с дополнительными проектами, обучаясь у коллег по работе или пройдя формальный курс. Вот почему так много работодателей участвуют в обучении сотрудников и предлагают их оплатить; они наняли умных универсалов (как Google!), которые могут освоить любую новую технологию при достаточной практике.

Не зацикливайтесь на том, какой язык «лучший», или самый стабильный, или тот, который прослужит дольше всего - сосредоточьтесь на развитии общих знаний в области программирования.

Итак, какой язык мне следует учить?

Любой! (Ну, может, и не Фортран. Ему 61 ​​год.)

В качестве начального языка нам нравится Python - он мощный, но его легко освоить. Ознакомьтесь с нашим курсом Введение в программирование.

Детям младшего возраста (от 3 до 6 лет) мы рекомендуем начать с Blockly - он учит концепциям программирования более простым и наглядным образом. См. Введение в программирование (блочно).

Если вы учитель, освоить новую учебную программу по цифровым технологиям может быть непросто, особенно если вы раньше не занимались программированием. Grok предоставляет всем зарегистрировавшимся школьным учителям бесплатную учетную запись, которая включает в себя решения проблем, заметки и подсказки для учителей, а также бесплатный доступ ко всему контенту. Мы хотим, чтобы учителя любого уровня подготовки могли преподавать программирование в классе. Наш совет вам тот же - выберите язык и попробуйте!

Форма технологического мира постоянно меняется; способность учиться и меняться вместе с этим - самый полезный навык. Для начала выберите язык, который вам нравится изучать (забудьте о его перспективах на будущее!), И выучите его хорошо.

Самый важный навык для инженера-программиста - это не знать вещей, это умение учиться. Возможность учиться самостоятельно, учиться у других и учить окружающих - вот что будет способствовать вашей карьере - незнание всего, что нужно знать о каком-либо конкретном языке или технологиях.