Зачем изучать Python Статьи редакции

Студенты Skillbox, преподаватель и разработчик рассказывают об особенностях языка и требованиях рынка.

Материал подготовлен при поддержке Skillbox

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

​Python

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

Python — один из самых популярных и адаптивных языков, который очень быстро развивается. Разработчики на Python всегда востребованы на рынке.

Никита Соболев — разработчик, основатель студии Wemake.services

Если владеешь любым другим языком программирования, то научиться Python будет очень просто. Это моя история — я программировал на Java, но мне внезапно понадобилось изучить Python. Проблем не было: язык простой, входной порог низкий.

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

Спустя год работы с Python можно стать намного эффективнее. Для сравнения — я три года мучаюсь с языками Erlang и Elixir и всё равно многого не знаю, потому что у них есть своя специфика. С Python меньше трудностей.

Программисты со знанием Python очень сильно востребованы. Если указать в своем профиле на Github проекты с Python, у которых есть хотя бы 10–15 звездочек, то автоматически попадаешь в алгоритмы HR-специалистов, которые начинают заваливать письмами каждые два дня: сиди, выбирай и соглашайся на всё, что нравится.

Никита Соболев, Разработчик и основатель студии Wemake.services

Компаниям нужно много людей, но их просто нет в таком количестве. На рынке есть несколько подразделов Python-разработки, которые сейчас наиболее популярны — работодатели берут даже новичков. Первый — Data Science. Это направление практически полностью основано на Python. Специалистам нужна хорошая математическая подготовка и базовые знания языка.

Второй подраздел — это Scrapping. Разработчики пишут «пауков», которые ходят и собирают информацию на сайтах и используют для тех или иных целей полученные сведения. Таким специалистам нужны базовые знания программирования на Python.

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

Однако, естественно, есть веб-разработка, в которую достаточно сложно войти, обладая только начальными знаниями. В этой сфере установлены самые высокие требования. Но заняться веб-разработкой на Python, обладая базовыми навыками, тоже реально. Есть два варианта входа — это опенсорс и фриланс.

По моим субъективным оценкам, большая часть вакансий по-прежнему предусмотрена для программистов на Java и JavaScript. Но Python входит в тройку лидеров. Перед Python-программистом открывается много перспектив, потому что платформа достаточно разнообразная и используется для разных технологий. Карьерный рост тоже быстрый — из-за простоты языка.

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

Вадим Шандринов — преподаватель курса

Я программирую 30 лет. Впервые начал в восьмом классе, продолжил в институте. Именно Python-разработкой я занимаюсь с 2000 года.

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

Python — открытый язык, есть исходники. Программист может посмотреть, что и как делают другие разработчики. Так как язык старый, то для него написано много библиотек — на все случаи жизни.

Сейчас, как мне кажется, Python стал чересчур популярен — его начали использовать многие организации: NASA, Google, Dropbox, Instagram и другие. Подобная ситуация была с Java, который сейчас используют большие компании. Например, вся Android-разработка проходит на этом языке.

Я изучаю вакансии, которые публикуются на hh.ru: ежедневно соискателям доступно около 200 различных предложений. Рынок очень большой, специалисты сильно востребованы. Но есть провал — компаниям, как правило, нужен программист с уровнем Middle или Senior. Практически во всех вакансиях указывается опыт работы от двух–трех лет. Очень редко требуются Junior-программисты — позволить себе нанимать молодых специалистов обычно могут только большие компании вроде «Яндекса».

Поэтому Junior-программисты мучаются с поиском работы — они знают язык, у них есть проекты, но не могут трудоустроиться, несмотря на востребованность.

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

Особенность курса в том, что обучение начинается с самых основ. Мы включили много элементов геймификации — некоторые моменты я объясняю, что называется, на пальцах. Например, с помощью мультфильмов или инсценировок.

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

Вадим Шандринов, Преподаватель курса Python в школе Skillbox

Мы погружаем студентов в профессиональную среду с помощью использования системы контроля версий. У всех программистов это основной инструмент работы. Я взаимодействую со студентами через Git (распределённая система управления версиями): они пишут код, коммитят его, загружают на сервер, а я проверяю и оставляю комментарии.

Коммит — это комментарий разработчика, в котором описаны изменения, произошедшие в коде.

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

Курс разбит на две части. Первая посвящена самому Python, навыкам программированиям на нем. После прохождения первой части студент понимает, подходит ему это или нет. Вторая часть курса — веб-разработка с использованием фреймворка Django. После окончания обучения студент может себя позиционировать как крепкого Junior-программиста.

Django — это свободный фреймворк для веб-приложений на языке Python.

Игорь, 25 лет — студент с небольшим опытом программирования на C++

Я работаю преподавателем в клубах робототехники — рассказываю детям про электронику и программирование. У меня есть высшее техническое образование, но его качество я могу назвать «никаким». Также я обладаю базовыми навыками программирования на C++.

Я регулярно читаю журналы — «Популярную механику», «Машины и механизмы» и РБК. В этих изданиях говорится о развитии ИТ-индустрии, о машинном обучении, интернете вещей, блокчейне, квантовых компьютерах и других. В этих областях часто встречается использование Python: он популярен, а область его применения широка. Можно сказать, что язык поможет залезть в большое количество разных сфер.

Мне захотелось более плотно заняться программированием, и я решил попробовать изучить Python. Искал курсы в интернете, пересмотрел разные варианты и остановился на Skillbox.

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

Работы преподаватели проверяют с профессиональной точки зрения, как в реальной компании: код должен не просто работать, но и быть чистым. Сначала кажется, что преподаватель придирается к мелочам, но на самом деле он досконально изучает код — это хорошо.

Игорь Сенский, Студент

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

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

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

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

Александра, 29 лет — студентка с опытом программирования на C++

Я занимаюсь программированием пять лет. Один из языков, который я знаю — C++. Но моя работа связана с наукой, и написание кода не стоит на первом месте в списке моих обязанностей.

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

Я уже долгое время была подписана на Skillbox и увидела информацию о курсе по Python-разработке. Раньше я никогда не работала с этим языком и не интересовалась им, хоть и знала о его существовании. Зря: оказалось, что это клевый и интересный язык программирования.

Александра Олейникова, Студентка

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

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

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

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

У меня пока нет планов на использование Python на практике, потому что я не собираюсь уходить со своей работы. Я рассматривала этот курс в качестве встряски для мозга, чтобы вспомнить программирование: какой бы язык ни был, основы одинаковые, и есть, что вспомнить. Но, конечно, не хотелось бы закончить курс и совсем забыть про Python: это правда крутой язык.

Python — второй по популярности язык программирования в мире. Практический 4-х месячный курс программирования на Python с индивидуальным наставником подойдёт тем, кто хочет научиться основам программирования на универсальном, понятном и лаконичном языке.

  • Более 80 видеоуроков в 16 модулях.
  • Проверка каждого домашнего задания преподавателем.
  • Сертификат о прохождении курса.
0
46 комментариев
Написать комментарий...
kav

"Если указать в своем профиле на Github проекты с Python, у которых есть хотя бы 10–15 звездочек, то автоматически попадаешь в алгоритмы HR-специалистов, которые начинают заваливать письмами каждые два дня: сиди, выбирай и соглашайся на всё, что нравится"

Я понимаю что людям надо курсы свои продать, но это прям откровенное вранье)

Ответить
Развернуть ветку
Вадим Шандринов

10–15 звездочек на Github - это достаточно много, поверьте. И техлиды это знают.

Ответить
Развернуть ветку
Serge Shima

Враньё всё.
Вот что они обещают:

"После прохождения всей программы вы сможете претендовать на звание Senior Developer или тимлида"

Ответить
Развернуть ветку
Вадим Шандринов

Ctrl+F с Вами спорит :) где нашли такие обещания-то? пруф пожалуйста.
Крепкий джуниор, который сможет сам сделать сайт на 10 страниц и на 3-4 таблицы в базе данных, готовый работать в команде, со знанием принципов чистого кода - да, это наша цель.
А вот что вырастет из джуна - ему самому видней

Ответить
Развернуть ветку
Serge Shima
Ответить
Развернуть ветку
Вадим Шандринов

Это курс ПХП, не python, вы ошиблись -- https://skillbox.ru/php/
Для пайтона написано другое и за это я ручаюсь.

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
color

Да нет, он просто забыл добавить что:

вы из CA
у вас приличный профиль на линке

Тогда все сходится :)

Ответить
Развернуть ветку
Denis Kiselev

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

Такого человека и вправду могут пособеседовать. Нанять? По результатам бесед, имхо

Ответить
Развернуть ветку
Семен Смирнов

Даже непонятно, что тут больше рекламируется - курсы или Макбуки

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Svetlana Martynova

самостоятельно ради интереса учу питон и не чувствую себя врачом. Скажу что мной просто двигает интерес. Также питон куда легче чем Си и польза от него выше так как я сразу можно использовать как калькулятор. Куда это меня заведет не знаю (думаю со временем на Отус)

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Svetlana Martynova

а что лучше почитать по питону?

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Svetlana Martynova

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

Ответить
Развернуть ветку
Antony Sedov

Для первого языка может и нормально, но потом лучше всё-таки что-то более целенаправленное учить. Тот же PHP имеет огромные преимущества для веб разработки, которых у Пайтона нет. А про Java я вообще молчу.

Ответить
Развернуть ветку
Shoo

А в чем, простите, преимущество ПХП над Пайтоном в этой вашей веб разработке?

Ответить
Развернуть ветку
Mikhail Kashkin

Например нанимать дешевых script kiddies которые будут писать сайт местной сауны которым все равно никто не будет пользоваться.

Ответить
Развернуть ветку
Artem Korsunov

Мне кажется, вы немного неверно применяете понятие "скрипт кидди" — https://en.wikipedia.org/wiki/Script_kiddie

Ответить
Развернуть ветку
Shoo

Я слышал для такого JS проще, фуллстеков сразу берешь за смузи и скидку на посещение.

Ответить
Развернуть ветку
Antony Sedov

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

Ответить
Развернуть ветку
Shoo

А что мешает учить сразу Python+Django\Flask\Pyramid и получить тот же самый низкий порог вхождения на рынок труда того же самого вебчика?

Ответить
Развернуть ветку
Antony Sedov

Потому что иногда для мелких проектов достаточно простого пхп или js. И никто не будет хантить питонщика для этой цели.

Ответить
Развернуть ветку
Shoo

Я ещё раз спрошу, почему вы считаете что "простой пхп + js" предпочтительнее, чем "простой python + js"?
Какие-нибудь аргументики, выборки и прочее?

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Antony Sedov

Вообще-то пхп это уже давно ООП со всеми вытекающими. То что вы написали уже уходит в прошлое. Все курсы и книги по пхп почти в первых главах учат ООП.

Ответить
Развернуть ветку
Antony Sedov

И кстати, 122 без кавычек :)

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Antony Sedov

Вот почитайте, там многое из того, что я хотел вам донести.
https://habr.com/post/322332/

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Анатолий Машков

так может сказать только человек, который поверхностно знаком с Python'ом.

Ответить
Развернуть ветку
Nikita Tanygin

а вот и кодеры которые пишут php на любом языке подтянулись

Ответить
Развернуть ветку
Valentin Dombrovsky

А всех выпускников ждём на митапы MoscowPython. :)

Ответить
Развернуть ветку
Вадим Шандринов

А джуниор пайтон митапы больше не проводите?

Ответить
Развернуть ветку
Valentin Dombrovsky

Мы проводили пару раз - сейчас времени на это, к сожалению, нет. :( Хотя если найдётся человек, который захочет нам в этом помочь...

Ответить
Развернуть ветку
Вадим Шандринов

Я думал об этом, но тоже времени нет. Вот когда с курсом устаканится всё - время появится :)

Ответить
Развернуть ветку
Serge Shima

А на ваших митапах митболы будут?

Ответить
Развернуть ветку
Valentin Dombrovsky

Что значит "будут" - у нас 56-й митап в мае, мы 6 лет назад начали. ;)
Пицца иногда бывает. ;)

Ответить
Развернуть ветку
Serge Shima
Ответить
Развернуть ветку
Valentin Dombrovsky

Поздравляю, удачи. ;)

Ответить
Развернуть ветку
Вадим Шандринов

Это курс ПХП, не python -- https://skillbox.ru/php/
Для пайтона написано другое и за это я ручаюсь.

Ответить
Развернуть ветку
Mikhail Kashkin

А еще Django Girls, PyCon.

Ответить
Развернуть ветку
Valentin Dombrovsky

Django Girls тоже мы делали. И тоже пока приостановили. Ну выпускникам курсов это уже не нужно, думаю - там всё-таки базовый уровень.
Pycon - это хорошо.
Moscow Python Conf - тоже хорошо. :)

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
topovyj

Непонятно, нафига людям из статьи другие языки если у них есть опыт C++? :)
Да и если он есть, то курсы таким вряд ли были бы нужны.

Ответить
Развернуть ветку
Maxim Tsyplakov

насчет второго согласен
насчет первого: один плюс не делает человека человеком, два тоже :)

Ответить
Развернуть ветку
Евгений Николаев

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

Ответить
Развернуть ветку
Артем Митюшов

Аналогично, только у меня 16 лет опыта, и не вижу смысла менять шило на мыло.

Ответить
Развернуть ветку
Вадим Шандринов

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

Ответить
Развернуть ветку
irmr

Я смотрю, дальше базовых структур и данных никто не заходит

Ответить
Развернуть ветку
Maxim Tsyplakov

успешно скрэппить можно не только на Python

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Андрей Петров

напша на уши

Ответить
Развернуть ветку
43 комментария
Раскрывать всегда