В этой статье я хочу поделиться с вами о чем часто рассказываю начинающим разработчикам и программистам.
Не зацикливайтесь на определенном языке программирования
C, C++, Java, CSharp, JavaScript, TypeScript, Swift... От разнообразия языков программирования кружится голова.
Большинство начинающих разработчиков ложно думают что выбор первого языка программирования - это как выбор факультета в фильмах о Гарри Поттере - необратимо.
На самом деле выбор первого языка программирования только повлияет на ваши первые впечатления о пути становления разработчиком. Всегда можно выбрать другой язык программирования или смежную с разработкой профессию, например Dev OPs (простым языком - это специалист, который помогает разработчикам публиковать их наработки на публичный сервер). Помните, что перейти на другой язык программирования - если есть понимание как программировать - не трудно.
Первый язык программирования
Для первого языка программирования - советую выбрать функциональный язык, одни из популярных в этой нише JavaScript и Python. Функциональность проще говоря - говорит о том, что этот язык работает на функциях, где каждый фрагмент кода своего рода функция.
Функциональные языки позволят быстрее добиться результата. Описать программу можно так, будто мы говорим машине что хотим от нее получить в несколько предложений.
Строготипизированные языки такие как C++ или Java могут дать ложное впечатление о программировании, так как чтобы получить простой результат - порой необходимо описать в два раза больше кода, этот лишний код - нужен для реализации различных подходов в программировании, типизации и оптимизации.
Не нужно гнаться за оптимизацией с самого начала
Современные компьютеры, телефоны достаточно мощны чтобы позволять выполнять неоптимизированный код разработчиков. Вначале лучше разобраться с программированием в целом.
Не пугайтесь программировать пока нет первых знаний
Мне нравится относиться к программированию как к конструктору Lego. Задача разработчика - построить то, что хочет видеть заказчик при помощи того, что есть у него в его наборчике (в инструментах языка программирования и библиотек). К другим языкам программирования можно относиться как к другому набору, например, не Lego, а Mega Blox.
Постарайтесь найти ментора
В IT дружелюбная атмосфера, на каждый язык программирования есть чат в телеграмме - где всегда можно спросить совета и вам помогут.
Но я рекомендую найти ментора или более опытного специалиста в данном языке программирования, который поможет вам и терпеливо будет отвечать на ваши вопросы, когда вы будете в тупике.
Курсы
Необязательно сразу же оплачивать дорогостоящие курсы по программированию, все видеоуроки и советы можно найти в интернете, даже на YouTube или сайтах.
Однако, для кого-то оплата дорогостоящего курса является мотивацией чтобы не забросить свое начинание на пути разработчика - тогда могу посоветовать GeekBrains или Нетологию.
На GeekBrains и Нетологии можно найти единомышленников, которые также как и вы постягают азы в разработке, а также опытного преподавателя - наставника, который сможет стать вашим первым ментором.
Компьютер и ноутбук
Меня часто спрашивают нужен ли особенный ноутбук или компьютер для разработки?
Для разработки мобильных приложений на iOS - нужен любой MacBook, поддерживающий последние версии XCode. Для того чтобы выложить приложение в App Store дополнительно придется потратить 99$ в год.
Для разработки мобильных приложений на Android - рекомендую запастись оперативной памятью, потому что сборки приложений могут быть ресурсозатратными. Чтобы выкладывать приложения в Play Market - один раз необходимо заплатить 25$ за один аккаунт.
Важно понимать, что программировать можно и в простом блокноте!
Практикуйтесь
Программирование - это прежде всего практика. Тут мне нравится сравнивать программирование с часами налёта у пилотов самолета. Чем больше вы будете программировать - тем большего результата вы добьётесь. Старший разработчик - это разработчик, который провел большое количество часов за программированием.