9 авг. 2021
Python — «лучший» первый язык программирования!?

Python — «лучший» первый язык программирования!?

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

Есть громадная база данных одного из банков России (несколько миллионов записей). Это записи транзакций (покупок) клиентов банка. Записи обезличены, то есть отсутствуют полностью личные данные клиентов. Необходимо было по этой базе, для каждого из клиентов определить к какой возрастной группе клиент относится. Было всего 4 группы клиентов:

  • 15-20 лет – молодежь
  • 20-30 лет – молодые специалисты
  • 30-45 лет – взрослые
  • 55- и больше – пенсионеры и люди предпенсионного возраста

Да, в базе точно указано время и место транзакции (покупки), цена: Аптека, Билеты на концерт, Билеты на транспорт, Путевка в санаторий и.т.д.

Для чего это было нужно — история умалчивает. Но возможно это обезличенная база конкурента, а скорее всего – это тестовое задание для определения навыков начинающего ПИТОН программиста. Естественно, с налета, с поворота эту задачу я не осилил, но впоследствии, посоветовавшись со своими друзьями, кое-что получилось. Но хотел рассказать не об этом, а о том, насколько сложно изучить этот язык и вообще имеет ли смысл им заниматься. Поехали!

Что такое Python и насколько он опасен?

  • Python – это язык программирования, который отлично подходит для начинающих.
  • Python во многом похож на Ruby (если не знаете что это – не беда), но менее многословен, чем другие языки программирования.
  • Python доступен. Даже если вы не проходили курс CS (а это для российского работодателя – важно), вы все равно можете написать полезный инструмент на Python. Язык высокоуровневый, поэтому вам не нужно иметь дело с низкоуровневыми аспектами программирования, такими как управление памятью.
  • Python можно использовать для написания сценариев, анализа веб-страниц и создания наборов данных. Язык популярен в научном сообществе для научных вычислений; есть библиотеки, которые упрощают совместное использование проектов академического кода на Python.
  • Python — это язык веб-программирования, поэтому он легко взаимодействует с Интернетом. Он «знает», как получать и отправлять веб-запросы и общаться с базами данных.
  • Python считается «слабо типизированным». В этой категории языков программирования не требуется указывать тип значения, возвращаемого функцией при ее определении или тип переменной перед ее созданием.
  • Сообщество Python гостеприимно, хорошо поддерживается и хорошо документировано. Это важно для новичка!

питон язык начинающих

Почему Python — отличный первый язык программирования для начинающих?

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

Что еще часто используется с Python?

  • Django и Flask — самые популярные веб-фреймворки с Python.
  • Блокноты Jupyter популярны в среде ученых, людей, использующих машинное обучение, и людей, занимающихся академической стороной вычислений в целом. Они позволяют вам делиться исполняемыми фрагментами кода вместе с объяснениями того, что делает код.

Список знаний которыми должен обладать начинающий ПИТОНИСТ

Как программисты используют Python в своей работе?

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

Крупные веб-ресурсы, которые используют Python в некоторых аспектах:

  • Google
  • Facebook*
  • YouTube
  • Pinterest
  • Dropbox
  • Spotify
  • Netflix
  • Quora

Какие недостатки у Python?

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

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

Какие есть альтернативы Python?

  • Самая распространенная альтернатива Python — это Ruby. Ruby похож по синтаксису на Python, поэтому может быть сложно выучить Ruby и Python один за другим.
  • Другой основной альтернативой на веб-арене является Full-Stack JavaScript. Python и JavaScript не слишком похожи, но их можно использовать для аналогичных целей.

Почему все-таки первый язык Python вместо Ruby и Full-Stack JavaScript?

  1. Этика проектирования очень хорошо подходит для начинающих программистов. Идеи, заложенные в Python, хорошо сочетаются с высокоуровневым подходом к коду и дизайну, который вы можете использовать при создании сложной системы.
  2. Обучение Python помогает начинающим уделять первоочередное внимание к элегантности кода, а не пытаться написать наиболее «умную» или сложную программу.
  3. Кроме того, это действительно хороший язык для изучения основных тем в области информатики. На начальных этапах необходимо изучить те основы концепции среднего/продвинутого уровня, которые будут востребованы при приеме на работу, например:
    • Анализ времени выполнения
    • Связанные списки
    • Рекурсия
    • Как понимать, анализировать и создавать алгоритмы

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

Какую работу может получить начинающий Python программист? И сколько за это платят?

Ниже несколько реальных свежих вакансий для начинающих «питонистов».

Специалист службы поддержки (с техническими знаниями)

от 15 000 руб.

ЯНДЕКС

Кемерово

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

Умеете читать языки JavaScript, HTML и Python. Имеете высшее или неоконченное высшее образование (техническое будет плюсом). Помогали людям онлайн.

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

Обладали крепкими знаниями Python. Имели опыт работы, но не обязательно с MongoDB, понимали ее сильные и слабые стороны.

Стажер-программист Python

от 15 000 руб.

ООО ЦАР ОТРАДА

Курск

Всему научим, всё расскажем — главное желание! Вакансий несколько. Требования: Знания Python обязательно. Знания HTML, CSS, JS. Понимание базовых основ работы.

Программист Python

20 000 – 20 000 руб.

Можно работать из дома

Рыбкин Кирилл Сергеевич

Москва

Знания Python3. Знание ООП, алгоритмов и структур данных. Умение работать в команде. Опыт работы с Git.

Парсинг информации (текст, картинки, таблицы, заголовки, характеристики, цены и т.д.). Структурирование информации. Заливка информации в БД сайта.

Умение реализовать вышеперечисленные задачи на Python. Требования: Опыт работы с python3 от 1года. Знание библиотек: lxml или beautifullsoup…

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

* Организация, запрещенная на территории РФ