Найти тему
Programmers Studio

Как выбрать первый язык программирования

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

Сначала приведу несколько постулатов, которые просто примем за истину:

- Путь в серьёзное программирование долгий и сложный

- Программирование требует полного погружения и "безбашенно ворваться"

- Технологии и подходы меняются очень быстро

- Алгоритмы и основы практически не меняются а только дополняются

- Освоить новую технологию если вы уже специалист в какой то технологии многократно проще

- Кроме технических навыков, soft skills также важны и они не меняются от смены техи

Эти постулаты можно оспаривать и много обсуждать, но это не цель данной статьи.

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

На протяжении всего времени, до того как вы сможете зарабатывать какие-то деньги при помощи программирования вам придётся идти на голом энтузиазме. На пути вы встретите множество проблем которые на определённом этапе развития могут казаться непреодолимыми. И в этот момент у вас должно быть достаточно воли и желания этот период преодолеть. Поэтому управление собственной мотивацией я считаю наиболее важной частью процесса обучения.

Поэтому первый язык и технологию я рекомендую выбирать строго по любви. Во всех технологиях к которым вы сейчас свободно найдёте бесплатные онлайн курсы есть заработки, просто полностью исключите вопрос "сколько я заработаю" из критериев выбора. Также я считаю что бесплатных образовательных материалов сейчас неимоверно много и я не вижу особого смысла покупать платные онлайн курсы. Из платного образования кружки с программированием и роботостроением для детей я считаю хорошей идеей, также любые технические лицеи, гимназии, университеты, т.е. классическое образование, если вы находитесь в возрасте приемлемом для такого образования.

-2

Итак, алгоритм как я советую выбрать язык программирования:

Идёте и гугл, яндекс или чем вы пользуетесь и забиваете там запрос: "бесплатные онлайн курсы программирования" и выбираете просто по описаниям 5 разных языков. Почитайте про разные, может что-то зацепит. Если что-то зацепило, всё выбор сделан, берите это.

По каждому языку идёте в википедию и читаете про этот язык. Что-то не понравится, то выкидывайте. Останется 2-3 языка. Если что-то зацепило, всё выбор сделан, берите это.

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

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

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

-3

Несколько очень частых вопросов:

Нужен ли английский?

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

Нужна ли высшая математика?

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

Нужна ли высшее образование?

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

Нужно ли X?

Чтобы начать прямо сейчас - нет. Точно не стоит откладывать по принципу "выучу, потом займусь программированием". Ну вы поняли :)

И самое главное: догматов - нет, понятия "правильно" - нет, мнений вокруг - миллионы. Получайте кайф и шлите всех лесом, в том числе меня и эту статью, если вам нравится что-то делать не так как я написал - делайте.