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

Почему язык программирования python считается универсальным

  • автор:

Почему Python такой популярный

Python признан самым популярным и эффективным языком программирования в 2022 году.

Спросили у ChatGPT, как Python набирал популярность с 1990-х годов и почему Python популярен в Data Sceince, Machine Learning, веб-разработке и разработке игр.

Дисклеймер Статья написана ChatGPT.

Как развивался Python

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

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

Он имеет богатую библиотеку пакетов и сообщество разработчиков, которые поддерживают и развивают язык. Также, многие компании, такие как Google, NASA и Dropbox, используют Python для своих проектов.

Python был разработан в 1989 году Guido van Rossum как инструмент для упрощения разработки сценариев и автоматизации задач.

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

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

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

Как развивался Python в 1990-х годах

  1. Начало разработки: в 1989 году Guido van Rossum начал разрабатывать Python, как удобный инструмент для системного администрирования.
  2. Релиз первой версии: в 1991 году была выпущена первая версия Python, которая начала использоваться в малом количестве проектов.
  3. Расширение функциональности: в 1990-х годах Python получил ряд новых функциональных возможностей, включая поддержку ООП, интерфейсов к базам данных и веб-разработки.

Как развивался Python в 2000-х годах

Python получил широкую популярность в 2000-х годах и продолжал расти в этот период.

  1. Релиз Python 2.0: в 2000 году был выпущен Python 2.0, который включал в себя ряд улучшений по сравнению с предыдущими версиями.
  2. Улучшение стандартной библиотеки: в 2000-х годах стандартная библиотека Python получила ряд важных улучшений, таких как добавление новых модулей и улучшение существующих.
  3. Рост популярности: в 2000-х годах Python стал одним из самых популярных языков программирования, используемых в различных областях, таких как наука, образование, бизнес и интернет.
  4. Рост сообщества: сообщество разработчиков Python также получило рост в 2000-х годах, благодаря чему было создано множество новых библиотек.
  5. Использование в научных исследованиях: в 2000-х годах Python стал популярным в области научных исследований, используемым для анализа данных и симуляций.
  6. Использование в игровой индустрии: в 2000-х годах Python также начал использоваться в игровой индустрии для разработки игр и инструментов для их создания.
  7. Расширение функциональности: в 2000-х годах Python получил ряд новых функциональных возможностей, включая поддержку многопоточности, веб-разработки и мобильных приложений.

Как развивался Python в 2010-х годах

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

  1. Было выпущено несколько версий Python, включая Python 3.x, которая принесла множество улучшений в функциональности и производительности.
  2. Количество библиотек, пакетов и инструментов, доступных для Python, росло, делая его более мощным и универсальным языком. Сюда вошли такие популярные библиотеки, как NumPy, pandas, Matplotlib и другие.
  3. Развивалось сообщество Python, в котором все больше пользователей и разработчиков вносили свой вклад в развитие языка. Это привело к расширению спектра ресурсов, включая учебники, форумы и онлайн-сообщества, для изучения и использования Python.

В целом, 2010-е годы стали для Python десятилетием непрерывного роста и развития, укрепив его позиции как одного из самых популярных и широко используемых языков программирования.

Почему Python популярен сегодня

Вот некоторые причины, по которым Python стал одним из самых популярных языков программирования в мире:

  1. Простота изучения и использования: Python имеет простой и понятный синтаксис, что делает его легким в изучении и использовании, особенно для начинающих. Он также имеет обширную стандартную библиотеку, которая предоставляет множество функциональных возможностей из коробки, избавляя от необходимости писать сложный код.
  2. Универсальность: Python является языком общего назначения и может использоваться в различных приложениях, включая веб-разработку, анализ данных, машинное обучение, научные вычисления и многое другое.
  3. Большое и активное сообщество: Python имеет большое и активное сообщество разработчиков, которые постоянно вносят свой вклад в развитие языка и создают новые библиотеки и инструменты. В результате пользователи Python получают огромное количество ресурсов и поддержки.
  4. Отлично подходит для науки о данных: Python широко используется в науке о данных и машинном обучении благодаря своим мощным библиотекам, таким как NumPy, Pandas, Matplotlib и другим. Эти библиотеки позволяют легко выполнять сложный анализ и визуализацию данных.
  5. Популярность в промышленности и академических кругах: Python широко распространен как в промышленности, так и в научных кругах, что делает его универсальным языком с широким спектром применения. Такие компании, как Google, Facebook и Netflix, используют Python в процессе разработки.
  6. Кросс-платформенная поддержка: Python может работать на различных платформах, включая Windows, macOS, Linux и другие. Это делает его очень переносимым языком, который можно использовать на различных системах без каких-либо изменений.
  7. Открытый исходный код: Python является языком с открытым исходным кодом, что означает, что его исходный код находится в свободном доступе и может быть изменен или распространен кем угодно. Это привело к созданию большого количества сторонних библиотек и инструментов для этого языка.

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

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

Почему Python популярен в Data Science и Machine Learning

Python является популярным языком программирования в области науки о данных по нескольким причинам. Во-первых, он имеет большое и активное сообщество пользователей, что означает наличие множества ресурсов для обучения и решения проблем. Это сообщество также разработало ряд мощных библиотек для анализа и визуализации данных, таких как NumPy, Pandas и Matplotlib.

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

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

Наконец, Python имеет растущее число специализированных библиотек для конкретных областей науки о данных, таких как машинное обучение (scikit-learn), глубокое обучение (TensorFlow, PyTorch) и обработка естественного языка (NLTK). Эти библиотеки позволяют специалистам по изучению данных легко применять передовые методы к своим данным, не прибегая к написанию сложных алгоритмов с нуля.

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

В частности, в области машинного обучения Python также популярен по ряду причин:

  1. Богатая экосистема библиотек: Python имеет обширную библиотеку предварительно написанного кода, который можно использовать для задач машинного обучения, например NumPy для числовых вычислений, pandas для анализа данных и Matplotlib для визуализации данных. Эти библиотеки упрощают выполнение задач машинного обучения, поскольку они предоставляют функции, реализация которых в противном случае потребовала бы значительного времени и усилий.
  2. Совместимость: Python может легко взаимодействовать с другими языками программирования, такими как C и C++, которые обычно используются для высокопроизводительных вычислительных задач. Это позволяет вам использовать лучшие инструменты из разных языков для создания решения, отвечающего вашим потребностям.
  3. Универсальность: Python можно использовать для широкого спектра приложений, от веб-разработки до научных вычислений и машинного обучения. Эта универсальность означает, что вы можете использовать один и тот же язык для различных задач, что упрощает интеграцию различных частей вашего проекта.
  4. Большой корпус предварительно обученных моделей. В машинном обучении часто бывает так, что модели уже обучены на больших наборах данных и доступны для использования при решении аналогичных задач. Популярность Python в машинном обучении означает, что существует большой набор предварительно обученных моделей, доступных для использования, что экономит время и усилия разработчиков.
  5. Хороший баланс между высокоуровневой абстракцией и низкоуровневым управлением. В то время как Python предоставляет высокоуровневые абстракции, упрощающие выполнение сложных задач, он также обеспечивает низкоуровневое управление, позволяющее при необходимости оптимизировать производительность. Этот баланс делает его отличным выбором для машинного обучения, где часто требуются как высокоуровневые абстракции, так и низкоуровневый контроль.

Почему Python популярен в веб-разработке

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

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

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

Почему Python популярен в разработке игр

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

  1. Кроссплатформенная совместимость: код Python может работать на нескольких платформах, включая Windows, Mac и Linux, без каких-либо изменений, что упрощает разработку и распространение игр на нескольких платформах.
  2. Абстракции высокого уровня: Python предоставляет абстракции высокого уровня, такие как объекты, модули и классы, которые упрощают разработку игр. Эти абстракции упрощают структурирование кода, его повторное использование и управление сложными игровыми системами.
  3. Библиотеки разработки игр: для Python доступно несколько библиотек разработки игр, таких как Pygame, Panda3D и Pyglet, которые предоставляют предварительно созданные функции и классы для общих задач разработки игр. Это экономит время и усилия разработчиков, позволяя им сосредоточиться на создании уникальных и инновационных игровых механик.
  4. Быстрое прототипирование: простой для изучения синтаксис Python в сочетании с его высокоуровневыми абстракциями делает его идеальным выбором для быстрого прототипирования. Разработчики игр могут быстро тестировать и дорабатывать игровые механики, не тратя много времени на низкоуровневые задачи программирования.
  5. Большой пул талантов: из-за его популярности существует большой пул разработчиков Python, доступных для разработки игр, что облегчает игровым студиям поиск нужных им талантов. Кроме того, простота изучения Python означает, что разработчики игр могут быстро приобрести навыки, необходимые для создания игр на Python.

Итак, Python является популярным выбором для разработки игр благодаря своей простоте, кросс-платформенной совместимости, высокоуровневым абстракциям, библиотекам для разработки игр, возможностям быстрого прототипирования и большому пулу талантов.

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

Заключение

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

Почему язык программирования python считается универсальным

AppleGameplays5

11 месяцев назад

GermionaGrainger

Ответ:

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

Почему Python?

Python programming

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

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

Что такое Python?

Python это язык программирования общего назначения, нацеленный в первую очередь наповышение продуктивности самого программиста, нежели кода, который он пишет. Говоря простым человеческим языком, на Python можно написать практически что угодно (веб-/настольные приложения, игры, скрипты по автоматизации, комплексные системы расчёта, системы управления жизнеобеспечением и многое многое другое) без ощутимых проблем. Более того, порог вхождения низкий, а код во многом лаконичный и понятный даже тому, кто никогда на нём не писал. За счёт простоты кода, дальнейшее сопровождение программ, написанных на Python, становится легче и приятнее по сравнению с Java или C++. А с точки зрения бизнеса это влечёт за собой сокращение расходов и увеличение производительности труда сотрудников.

Для демонстрации лаконичности рассмотрим код на Python и Java, который открывает файл и сохраняет его содержимое в переменную:

Код на Java использует обновлённый интерфейс для работы с системой ввода-вывода. Старый способ выглядел бы ещё ужаснее 🙂

Кто использует Python?

Грош цена даже самому продвинутому языку программирования, если до него никому нет дела. Одним из составляющих успеха любой технологии является сообщество, созданное вокруг неё. Именно оно предопределяет будущий вектор развития путём совместных усилий. Сообщество вокруг Python одно из самых сильных в мире IT. Это сложный хорошо организованный и постоянно развивающийся организм. Помимо сотни тысяч индивидуальных разработчиков и небольших софтверных компаний, Python поддерживают такие гиганты IT как:

  • Google
  • Dropbox
  • Mozilla
  • Facebook
  • Yandex
  • Red Hat
  • Microsoft (с недавних пор очень активно, в частности с Visual Studio)
  • Intel (активно ведёт исследовательскую работу в области параллельных вычислений на Python)

. и многие многие другие. Впечатляет, не правда ли? Что же касается крупных и популярных проектов, написанных на Python то это такие монстры как:

  • YouTube (большая часть кодовой базы полностью на Python)
  • Первая версия поискового паука Google была написана на Python, а позже, из-за чрезвычайно высокой нагрузки и требований к скорости, была переписана на C++.
  • Десктопный клиент Dropbox
  • Reddit
  • Instagram (500M юзеров на Python)
  • Bitbucket (Python 2.7 и Django 1.7.11)
  • EVE Online MMOPG
  • Quora
  • Spotify
  • Критические сервисы PayPal, обрабатывающие до 2 миллиардов запросов в сутки. Подробнее можно узнать в подкасте от TalkPython, выпуск #54
  • Сервисы Mozilla
  • Популярный сервис идей Pinterest
  • Сервис комментариев Disqus (использую в этом блоге, сервис реализован на Django)
  • Внутренние сервисы Facebook (см. постер в моей заметке о PyCon)
  • Система контроля версий Mercurial (до некоторых пор разработчики Python использовали её в своей работе)
  • Сервисы Wargaming

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

О чём это может говорить? О многом. А самое главное о том, что крупные корпорации не боятся строить свой бизнес вокруг Python, они уверены в том, что технология будет жить, а следовательно проблем с поиском специалистов ждать не стоит. Более того, разнообразие приложений также радует, что свидетельствует о широком круге задач, которые Python решает мастерски.

В заметке про книгу «Структура и Интерпретация Компьютерных Программ«, я писал о том, что она была взята за основу в качестве учебного материала для вводного курса по программированию в MIT, компьютерным языком на тот момент выступал диалект Lisp — Scheme. Времена меняются, сейчас в качестве цифрового lingua franca лидирует что. Правильно, Python. Именно его используют в качестве надёжного инструмента в столь удивительном ремесле.

Недостатки Python

Удивительный мир программирования

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

Скорость

Одним из главных недостатков является его относительно низкая скорость выполнения. Python является языком с полной динамической типизацией, автоматическим управлением памятью. Если на первый взгляд это может казаться преимуществом, то при разработке программ с повышенным требованием к эффективности, Python может значительно проигрывать по скорости своим статическим братьям (C/C++, Java, Go). Что касается динамических собратьев (PHP, Ruby, JavaScript), то здесь дела обстоят намного лучше, Python в большинстве случаев выполняет код быстрее за счет предварительной компиляции в байт-код и значительной части стандартной библиотеки, написанной на Си. На конференциях мне довелось пообщаться с ребятами из крупных компаний вроде Wargaming, у многих из них наблюдается тренд перехода в сторону статики, и чаще всего это Go, Rust.

Интересный доклад про скорость и оптимизацию CPython (родная реализация языка на Си) был прочитан на PiterPy 2015 в Санкт-Петербурге:

Динамическая типизация

Для начинающих программистов, язык программирования с динамической типизацией на первый взгляд (и на второй и даже на третий) может казаться отдушиной, райским наслаждением, особенно для тех, кто ранее имел дело со «статикой». Но есть и обратная сторона луны. С ростом кодовой базы (а это часто неизбежный процесс в успешных проектах), следить за типом передаваемых друг другу данных бывает очень сложно (а при отсутствии внятных доков и тестов практически невозможно), отсюда появляются проблемы, когда, например, у None пытаются вызвать метод или обратиться к атрибуту в процессе выполнения кода. Для решения такого рода проблем динамические языки обрастают всевозможными костылями, свистелками и перделками в виде type annotations, проектов mypy по статическому анализу кода и так далее. Это же в свою очередь накладывает негативный оттенок на эстетическую сторону кода.

В связи с ограничениями языка, появляются альтернативные реализации интерпретаторов: PyPy, Pyston, Jython, Cython и многие другие. Сейчас тренд хорошо заметен именно в эту сторону, например Pyston разрабатывается в стенах т.н. Мекки Python программистов — компании Dropbox 🙂

Заключение

Несмотря на ряд проблем исторически присущих Python, он продолжает оставаться лидирующим инструментом в ряде ниш:

Python шагает по планете: как сайд-проект стал одним из самых популярных языков программирования в мире

Python шагает по планете: как сайд-проект стал одним из самых популярных язык. главное изображение

Программист Гвидо ван Россум придумал Python, так как ему не нравились существующие языки программирования. В интервью для ZDNet ван Россум рассказал историю создания «пайтона», а также о его перспективах.

Пролог

В конце 1994 года группа программистов из разных уголков США собралась, чтобы поговорить о своём новом секретном оружии. В числе участников первого воркшопа по недавно представленному языку Python был инженер Барри Варшава (Barry Warsaw). На встрече присутствовали около 20 разработчиков, и все они были в восторге от нового инструмента.

Барри вспоминает слова одного из участников воркшопа: «Пожалуйста, никому не говорите, что я был здесь, пусть Python будет моим секретным оружием в конкурентной борьбе». По словам Варшавы, уже в 1994 году было понятно, что «пайтон» открывает новые возможности перед программистами, и что писать код и решать практические задачи с помощью этого языка проще и удобнее.

«Это какое-то сочетание читабельности и удовольствия от работы», — так Барри Варшава делится первыми впечатлениями от Python.

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

Python — язык общего назначения. Он применяется в разных сферах, включая веб-разработку, Machine Learning, Data Science. Этот язык используют крупные компании, правительственные организации, образовательные учреждения. Например, Python применяют в NASA, Netflix и Instagram.

Python: ранние годы

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

«Пайтон» создал программист Гвидо ван Россум из Нидерландов. В конце 80-х годов прошлого века Гвидо работал в Центре математики и информатики в Амстердаме. Ван Россуму не нравились существующие языки программирования, поэтому он стал работать над новым. Гвидо хотел сделать одновременно простой и мощный инструмент.

Гвидо ван Россум, разработчик языка «питон»

Создатель «пайтона» Гвидо ван Россум

Для постороннего наблюдателя идея создания своего языка программирования может показаться похожей на идею самостоятельно собрать самолёт. Однако Гвидо ван Россум, которому в конце 80-х было около 30 лет, начинал не с нуля. В течение трёх лет в Центре математики и информатики он работал над ABC — интерпретируемым языком программирования. Поэтому Гвидо представлял, как разрабатывать интерпретатор команд и синтаксис.

Важно понимать сложности, с которыми сталкивался ван Россум в конце XX века. Он работал в операционной системе Amoeba, которая требует использования оболочки C или Unix. У этих оболочек есть серьёзные ограничения. Например, C требует ручного управления памятью. Также в ней не хватает библиотек, поэтому программисту нужно заново изобретать велосипед в каждом проекте. А главное ограничение командной оболочки Unix — низкая скорость работы, из-за которой специалисту трудно реализовать сложную логику.

Ограничения этих языков были настолько серьёзными, что создание собственного языка не казалось ван Россуму безумной идеей. «Я подумал, почему бы не взять лучшие идеи из ABC и не создать более простой и удобный язык программирования», — вспоминает Гвидо ван Россум. Он позаимствовал название у комик-группы Летающий цирк Monty Python и стал работать над языком в конце 1989 года.

«В те дни я редко выходил из дома, так как в основном смотрел телевизор и писал код», — рассказывает Гвидо. Кстати, ван Россум оказался в хорошей компании. В конце 80-х мир увидел несколько языков программирования, которые появились благодаря недовольству инженеров инструментами, которые были им доступны. Так Ларри Уолл создал Perl, а Джон Оустерхаут разработал Tcl.

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

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

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

Сегодня каждый желающий может опубликовать обучающий курс на специализированной платформе, например, на Code Basics, в несколько кликов. А в конце 80-х и начале 90-х популяризировать языки программирования было сложнее. Гвидо ван Россум столкнулся с этим, ещё когда работал над ABC.

«Когда я впервые приехал в США примерно в 1985 году, в моём багаже были кассеты с магнитной лентой», — рассказывает Гвидо. В блокноте у ван Россума были адреса и телефоны людей, которые заинтересовались ABC. Гвидо встречался с ними и демонстрировал возможности языка с помощью кассет.

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

Гвидо ван Россум представил Python в новостных группах alt.sources в 1991 году. Это фактически был opensource-проект, хотя термин open source впервые использовали только через 6 лет. Пользователям Usenet приходилось загружать файл с интерпретатором Python целую ночь. Но это уже было намного эффективнее походов от двери к двери с кассетами.

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

Почему Python победил

К середине 90-х Python стал популярным языком программирования. Это воодушевляло Гвидо ван Россума. Специалист считал, что другие программисты используют «пайтон» по той же причине, которая привела Гвидо к идее создать новый язык программирования. Они хотели работать с высокоуровневым языком, который не имеет ограничений командной оболочки Unix, но в то же время остаётся простым.

Барри Варшава утверждает, что Python уже в 90-е был сбалансированным языком: с одной стороны простым и удобным, а с другой мощным. По мнению Варшавы, в те времена подобных качеств не было ни у одного языка программирования, кроме «пайтона».

«Я работал с Perl, C и Tcl, и это не доставляло мне удовольствия», — говорит Барри. Он продолжает: «Когда появился Python, я понял, что значит наслаждаться написанием кода».

Барри Варшава, один из энтузиастов языка «питон»

Барри Варшава на первом воркшопе по Python в 90-е

Уже в первые годы существования «пайтон» выделялся чистым и понятным синтаксисом. Группировка блоков кода с помощью отступов привлекала программистов в 90-е годы и привлекает их в 2019 году.

Представитель исследовательской компании Gartner Финтан Райан (Fintan Ryan) отмечает, что чистота синтаксиса сыграла едва ли не основную роль в популяризации Python.

По словам Гвидо ван Россума, чистый синтаксис Python появился не случайно. Гвидо подчёркивает, что программирование — это не только создание инструкций для машины. Это ещё и обмен идеями между разработчиками. Поэтому код должен быть понятным людям.

В свою очередь, Финтан Райан подчёркивает, что Python с начала 90-х предлагал программистам не только чистый синтаксис. «В этом языке были реализованы классы, обработка исключений, lambda-функции, функции высших порядков map и filter», — говорит Финтан.

По словам ван Россума, Python мог не появиться, если бы существующие в 80-е годы языки были более совершенными. Гвидо нравился Perl, но он не мог использовать его в операционной системе Amoeba. «Если бы не эта несовместимость, я бы никогда не задумался о создании нового языка программирования», — говорит ван Россум.

Python в середине 90-х завоёвывал популярность и признание, но всё равно отставал от самых востребованных языков. Главными конкурентами «пайтона» были Perl и Tcl/Tk. Разработчики этих языков тоже стремились к простоте использования и широким возможностям.

По данным StackOverflow Developer Survey, в настоящее время Python развивается быстрее других языков программирования. Популярность Perl упала настолько сильно, что этот язык попадает не во все исследования. На иллюстрации ниже визуализирован феноменальный рост популярности «пайтона».

график популярности языка программирования «питон»

Рост популярности Python

Как объяснить разную судьбу Perl и Python? Гвидо ван Россум считает секретом успеха «пайтон» простоту работы с кодом относительно больших приложений. «Perl был удобным для программ, в которых 10 строк кода», — вспоминает Гвидо. По его словам, когда дело касалось приложений, в которых 500 строк кода и тысячи строк библиотек, программисту требовались дополнительные усилия, чтобы поддерживать такую программу на Perl. «С Python такой проблемы нет, код всё время остаётся читабельным, и программисту не приходится тратить слишком много времени на его поддержку», — утверждает ван Россум.

По словам ван Россума, в начале и середине 90-х разработчики нуждались в инструменте, который позволял писать большие приложения без дополнительных усилий. Здесь Python превосходил Perl, C, C++ и Java.

Гвидо ван Россум в середине 90-х ещё работал в Центре математики и информатики. Но Python уже набрал обороты, поэтому Гвидо много времени тратил на общение с разработчиками из разных стран мира.

Python и интернет

К середине 90-х программисты использовали «пайтон» для решения разных задач, включая программы для создания аудиозаписей и первые попытки веб-разработки, которая в дальнейшем стала одной из главных сфер применения языка. Гвидо ван Россум отмечает, что его сильно интересовал опыт применения Python в веб-разработке.

А Финтан Райан вспоминает, что с помощью Python программисты могли быстро создавать сложные программы. По словам эксперта, этот язык снизил порог входа в разработку в целом и веб-разработку в частности. Райан подчёркивает универсальность Python: «Системные администраторы использовали новый язык для автоматизации систем, разработчики полюбили его за возможность писать код в функциональном стиле». По мнению Финтана Райана, Perl в этом смысле сильно уступал «пайтону».

В 1994 году на Python обратил внимание Майкл Маклэй из Национального бюро стандартов США (NBS). Сегодня это ведомство называется Национальным институтом стандартов и технологий. Маклэй увидел перспективы использования «пайтона» в NBS. По словам ван Россума, в то время в этой организации было «очень много данных, но не хватало программистов, чтобы их обрабатывать».

Майкл Маклэй пригласил Гвидо ван Россума на работу в NBS в качестве приглашённого эксперта от Центра математики и информатики. По задумке специалистов, этот шаг должен был помочь продать Python руководству NBS. Решение Маклэя сыграло важную роль в жизни ван Россума и судьбе «пайтона». К слову, первый воркшоп по этому языку состоялся именно в офисе NBS.

ван Россум на первом воркшопе по «питону»

Гвидо ван Россум, Барри Варшава и Роджер Массе

В NBS ван Россум познакомился с Бобом Каном, который участвовал в разработке протокола TCP/IP. Кан пригласил ван Россума на работу в Корпорацию национальных исследовательских инициатив (CNRI). Это неправительственная организация, которая занималась исследованием и развитием информационных сетей. Это приглашение пришлось кстати, так как ван Россум в то время серьёзно задумывался о своём будущем в Центре математики и информатики.

По словам Гвидо, Центр математики и информатики был научным учреждением, поэтому руководство ставило специалиста перед необходимостью получения степени PhD. Ван Россум предпочитал развивать Python, а не заниматься научными исследованиями.

В апреле 1995 года Гвидо ван Россум присоединился к команде CNRI. Здесь он разрабатывал программы Knowbot. Команда работала на Python. В CNRI ван Россум сотрудничал с Джереми Хилтоном, Роджером Массе, Барри Варшавой, Кеном Манхаймером, Фредом Дрейком. Эти люди стали ядром сообщества Python и сыграли важную роль в развитии языка.

Вместе с новыми друзьями Гвидо ван Россум открыл сайт python.org. На этом ресурсе хранилось ядро Python. Также сайт помогал координировать работу специалистов, которые участвовали в развитии «пайтона».

Уже во второй половине 90-х вокруг Python сформировалось многочисленного сообщество. Чтобы формализовать управление языком, Гвидо ван Россум и его друзья создали прообраз Python Software Foundation. Окончательно эта организация оформилась в 2001 году. Регулярные воркшопы по Python превратились в ежегодные конференции PyCon.

К началу XXI века Python развивался преимущественно благодаря вкладу сообщества. Программисты уже не шутили на тему «что будет с языком, если ван Россум отойдёт от дел по непредвиденным обстоятельствам». Тем не менее Гвидо играл ключевую роль в развитии языка. К нему даже приклеился ярлык «доброжелательный диктатор». Он отлично иллюстрирует стремление ван Россума участвовать в ключевых вопросах развития «пайтона».

Финтан Райан из Gartner подчёркивает, что стремление создателя языка контролировать его развитие — нормальное явление. Точно так же вели себя создатели Perl Ларри Уолл и создатель Node.js Райан Дал.

Сам Гвидо ван Россум считает, что важным фактором успеха «пайтона» стала именно открытость. По его словам, ключевые вопросы развития языка всегда обсуждались в сообществе.

Эволюция Python

В следующие годы Python быстро развивался. Тектонические изменения произошли в 2008 году, когда был представлен Python 3.0.

В 2018 году Гвидо ван Россум оставил неформальный пост доброжелательного диктатора, то есть перестал руководить разработкой языка. Это решение связано с нежеланием сообщества имплементировать предложение ван Россума об использовании в «пайтоне» выражений присваивания. Гвидо считал, что новый инструмент ускорит Python. Представители сообщества посчитали, что выражения присваивания снизят читабельность кода на Python.

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

«Это не было революцией, но я почувствовал, что ключевые люди в сообществе мне не доверяют», — прокомментировал ситуацию Гвидо ван Россум. По мнению Гвидо, дискуссия, которая привела к его отставке, стала возможной благодаря популярности Python.

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

Барри Варшава отмечает, что 25 лет назад Гвидо ван Россум самостоятельно справлялся с ответственностью за будущее «пайтона». «В текущих условиях это слишком большая нагрузка на одного человека», — говорит Варшава.

По словам Варшавы, выборы в наблюдательный совет будут проводиться после каждого серьёзного обновления «пайтона». «Если мы хотим, чтобы Python развивался так же успешно в следующие 25 лет, управлять процессами должны молодые лидеры, а не я и Гвидо», — подчёркивает Барри Варшава.

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

Мариатта Виджая, эксперт по языку программирования «питон»

Будущее Python

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

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

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

Рассел Кит-Магги указал и на другие проблемы, требующие внимания сообщества. Среди основных:

  • инструменты тестирования Python некорректно работают на мобильных девайсах;
  • установочные файлы приложений на «пайтоне» слишком «тяжёлые»;
  • для корректной работы библиотеки asyncio на разных платформах требуются дополнительные усилия;
  • многие модули стандартных библиотек невозможно использовать с интерпретаторами, отличными от CPython.

Барри Варшава поддерживает опасения Кит-Магги. По мнению Варшавы, сообщество Python должно уделить внимание совместимости языка с планшетами и смартфонами, а также с современными технологиями, например, WebAssembly.

Варшава считает важным «научить» Python эффективно распределять задачи между ядрами процессоров. Барри подчёркивает важную роль подинтерпретаторов Python, над которыми работает Эрик Сноу. Эти подинтепретаторы обеспечивают возможность исполнять код на «пайтоне» на разных ядрах процессора.

Разработчики Python модернизируют стандартную библиотеку. Недавно сообщество предложило удалить из неё устаревшие модули. Стандартная библиотека считается одной из сильных сторон «пайтона». Благодаря ей о Python говорят, что у него «батарейки в комплекте». Однако на Python Language Summit 2019 активно обсуждалась возможность выбора библиотек из репозитория PyPl. Теоретически такая возможность обеспечила бы программистам большую свободу выбора инструментов.

В сообществе Python активно обсуждается возможность расширения органов управления. Этот шаг позволил бы отразить разнообразие участников сообщества, в частности, его гендерный и расовый состав. Мариатта Виджая отмечает, что хотела бы привлекать в сообщество PyLadies больше представителей из Индии и Африки.

Барри Варшава говорит, что развитием Python в большей степени управляет сообщество, несмотря на разговоры о доброжелательной диктатуре. Примером созданного сообществом проекта, который сильно повлиял на «пайтон», стал Type Hints. Этот инструмент позволяет проверять типы и уменьшать количество ошибок во время работы. Ещё один пример созданного сообществом инструмента — упомянутая выше библиотека asyncio.

Гвидо ван Россум тоже уверен, что сообщество будет главным двигателем дальнейшего развития Python. «У нас очень сильное сообщество и новая система управления, поэтому мы готовы к вызовам, с которыми столкнётся язык», — говорит ван Россум.

Барри Варшава поддерживает ван Россума: «Если кто-то сомневается в способность комьюнити найти новые способы использования языка, посмотрите на первый в истории снимок чёрной дыры». В начале 2019 года благодаря программам, написанным на Python, астрономам удалось получить снимок космического объекта.

чёрная дыра, фото обработано с помощью Python

Адаптированный перевод статьи Python is eating the world: How one developer’s side project became the hottest programming language on the planet by Nick Heath. Мнение авторов оригинальной публикации может не совпадать с мнением администрации «Хекслета».

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *