Python - самый популярный язык программирования

В далеком 2009 году я решил вернуться в роль инженера из роли менеджера. Начал смотреть по сторонам - на чем пишут самые крутые компании и люди. Помню как выписывал в текстовый файл заметки - Гуглу нужен Javascript, Python, Java, C++. Из всего этого списка я только не работал тогда с Python. Мой приятель Алексей Кинёв был в то время фанатом Django (Python web framework) и рассказывал невероятные истории про свой опыт использования языка и фреймворка.

Я скачал какую-то книгу, прочитал до середины, начал писать разные упражнения, а потом прошел tutorial Django. Так несколько дней спустя у меня уже работало веб-приложение, в котором не было страшного количество конфигурационных файлов как в Java, минимум слоев абстракции. Читать и модифицировать исходный код было легко и приятно. Сообщество и доступные библиотеки тоже очень радовали. После нечитаемой документации корпоративных инструментов сложно было поверить, что бывает иначе. В любую свободную минуту я открывал документацию на python.org и читал-читал-читал.

Язык тогда набирал популярность. Многие стартапы (включая YouTube) писали свои веб-приложения на Python или Ruby. Появился scikit-learn, предоставляющий удобный интерфейс для большинство библиотек машинного обучения. Библиотека numpy оказалась удобнее многих специализированных языков программирования, привлекая все больше пользователей из академической среды.

Сложности

Были и сложности. Интерпретатор CPython работал небыстро, сложные вычисления порой использовали только один поток. Проблемы с низкой скоростью исполнения языка пытались решать в проектах Unladen Swallow, PyPy. В конечном итоге самым рабочим вариантом оказалось вынесение сложных вычислений в оптимизированные библиотеки.

Еще предстояла миграция Python 2 -> Python 3. Версии языка были не (очень) совместимы между собой. Почти все библиотеки нуждались в дополнительных усилиях по поддержке Python 3.

Другие языки программирования обещали вытеснить этот игрушечный язык. У Ruby были крутые рельсы, на Perl и PHP крутилось больше веб-сайтов, язык R был специально создан для статистики, а JavaScript пришел на server-side благодаря node.js.

Самый популярный язык программирования в 2023

Тем не менее сообщество успешно перешло на Python 3, а Python популярен как никогда. Самый популярный язык по версии TIOBE Index. 2й (после JavaScript) по опросам Stack Overflow, при этом только Rust и TypeScript обгоняют Python по привлекательности (Admired) среди Top-10 языков. Python-based веб-фреймворки не стали очень популярны, но в списке Other frameworks and libraries две трети (66.93%) опрошенных разработчиков используют NumPy, Pandas, TensorFlow, Scikit-learn, PyTorch.

Язык придуманный в рождественские праздники 1989 года актуален в 2023 году как никогда. Он управляет тренировкой больших языковых моделей, Python colabs - самое популярное средство экспериментирования, обучения, создания демок.

Причины популярности

Python безусловно оказался в нужное время в нужном месте, оказавшись очень удобной доской для волн глубокого машинного обучения. Тем не менее, мне кажется что именно принципы языка (The Zen of Python) и его здоровое живое сообщество позволили ему не просто оставаться актульным, но и брать новые высоты.

Язык созданный людьми и для людей, а не корпорациями для машин, оказался очень удачной платформой для взаимодействия исследователей, инженеров, и энтузиастов. Поучительно что PyTorch стал более популярным чем TensorFlow в ML community именно из-за своей питоновости, простоты, прозрачности.

Сам язык тоже безусловно стал более богатым. Type hints помогают выжить когда небольшая библиотека разрастается до огромной. dataclasses минимизируют количество boilerplate code, новый синтаксический сахар приблизил Python к функциональным языкам.

Я с интересом наблюдаю за эволюцией языка, за open-source сообществом, которое развивает язык и его важнейшие библиотеки. Хорошо что не все в мире управляется деньгами и корпорациями.

comments powered by Disqus