Питонические атаки


Гео и язык канала: не указан, Русский
Категория: Технологии


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

Связанные каналы

Гео и язык канала
не указан, Русский
Категория
Технологии
Статистика
Фильтр публикаций


Репост из: Николай Хитров
PYTHON_GIL=0

Скажи кто-нибудь лет 10 назад, что такое вольют в python... Никто бы не поверил

https://github.com/python/cpython/pull/116338


Его уже не остановить.

Автор Ruff анонсировал утилиту uv — сверхбыстрый пакетный менеджер для Python, написанный, конечно же, на Rust. Пока что это drop-in замена для pip, venv и pip-tools, но глобальная цель — создать Cargo-like experience для Python. Если что, Cargo — это пакетный менеджер для Rust, рок-звезда среди пакетных менеджеров. Он получился настолько хорош, что все теперь его копируют.

Запоминайте, вместо:

pip install ruff

Теперь делаем:

uv pip install ruff

Анонс здесь: https://astral.sh/blog/uv

2k 0 67 19 44

Репост из: CPython notes
Небольшой новый синтаксический PEP: https://peps.python.org/pep-0736/
Вообще, наверное, полезно. С каждым днём мы все больше и больше похожи на раст


Как там 3.12, друг?
Опрос
  •   😎 Уже обновился, использую в проде
  •   😴 Заблочился об какую-то зависимость (напишу в коммент)
  •   🧐 Не спешу обновляться, потому что не вижу смысла
  •   💀 Я на Python 2.7, брат
360 голосов


Кстати, Python 3.12.1 вышел. Все, кто ждал первого баг-фикс релиза и не обновлялся до 3.12 — настало ваше время.

Метрика поддержки 3.12 в библиотеках на данный момент находится на отметке 36.9%. Если сравнивать скорость адопшена с предыдущим релизом, то для 3.11 примерно в этот же момент времени метрика была равна 25.6%. Кажется, экосистема пакетов постепенно "ускоряется" в плане поддержки новых версий языка.


Репост из: sanspie's notes
Вышел The State of Developer Ecosystem 2023, в котором в этом году особенно уделили внимание влиянию AI на процесс разработки.

Языки
По классике, на первом месте JS, на втором Python, бурный рост TS и Rust, падение php и objective-c. Так же из интересного некоторые(~10%) разработчики хотят изучить Rust и Go в ближайший год, а разработчики на Scala и Rust наоборот в большинстве не хотят изучать другие языки.

Жизнь
Из интересного 30% разработчиков находят работу через знакомства, что доказывает что лучше вкладываться в удобные рабочие часы и высокую ЗП, которую большинство разработчиков считают самым важным. Еще из забавного 75% разработчиков не окончили различные курсы, которые они проходили. Из грустного 50% разработчиков не следят за своим психическим здоровьем и 75% испытывали выгорание.
Those who have experienced burnout feel tired more often.

70% разработчиков пишут код на выходных и только 19% не работают.
У большинства разработчиков 16 GB – 32 GB оперативы, хотя не удивительно, ведь опрос проводил JetBrains.

AI
84% разработчиков знают какой-либо из AI tools, большинство из них сомневаются в надежности этих сервисов в плане хранения данных. 60% уверены, что AI полностью изменит процесс разработки и будет сам писать код. 77% используют ChatGPT, 46% Copilot. Чаще всего их применяют для того, чтобы писать код и обрабатывать natural language, реже для документации и прочей работы с текстом. Половина разработчиков с радостью переложат написание кода и тестов на AI, но та же половина не захочет передавать написание кода ИИ.
AI assistants are most commonly used to help developers perform routine tasks, like writing documentation, code comments, and commit messages, as well as searching. However, developers prefer to do their own coding, including understanding the code and recent code changes, debugging, and of course, writing code, even though 79% of the respondents mentioned that writing code is their most time-consuming activity.


DB
Из грустного 64% разработчиков до сих пор используют MySQL и только половина использует Postgres. MySQL чаще всего используют в связке с MariaDB, что не удивительно, из-за их совместимой апи. Так же наблюдается значительное падение использование oracle в снг, думаю понятно почему.

DevOps and Cloud
54% на докере, 39% без ничего, 13% на кубере. Странно, что большинство разработчиков не знакомы с docker-compose, при том, что большая часть использует докер. 60% на aws, далее azure и гугл, но в этом году появляется Alibaba, которые предоставляют быстрый хостинг на территории Азии. В этом опросе только 10% разработчиков используют, однако на территории Китая около трети сайтов крутятся на Alibaba Cloud, а их главный конкурент - Huawei.

Development
Большинство(60%) разработчиков используют windows, на linux и на маке сидят одинаковое кол-во - по 40%. 41% разработчиков контрибутят в open-source, половина из них делает это постоянно. Еще из интересного в кросс-платформенной разработке 2 место после винды занимает linux, как target для разработчиков, обгоняя макось.
62% of developers follow the Secure Software Development Life Cycle (SSDLC).

34% разработчиков пишут микросервисы, из их большинство используют различные протоколы поверх http.

Python
бОльшая часть разработчиков используют последнюю LTS - 3.11. Половина до сих пор на МЛ и аналитике, 40% на вебе. Django обогнал Flask как основной фреймворк, однако FastAPI понемногу догоняет его. Большинство разработчиков, около трети, пишут на vs code, несмотря на удобства в pycharm-а

Отчет очень информативный и красивый, с большим кол-вом смежной аналитики. Рекомендую изучить самостоятельно, например статистику по другим яп:
C C# C++ Go Java JavaScript Kotlin PHP Python R Ruby Rust Scala Swift and Objective-C

https://www.jetbrains.com/lp/devecosystem-2023/

1.4k 0 18 13 26

16 декабря будет Pytup с достаточно высокоранговыми спикерами. Можно смотреть онлайн или прийти оффлайн в Москве. Обещают рассуждения про 3.12. Регистрируемся?

https://yandex.ru/pytup/


Репост из: CPython notes
Даешь цветные трейсбеки!
https://github.com/python/cpython/pull/112732


До какого уровня сможете дойти? Я чёт пока на 5 правиле застрял.

https://oskaerik.github.io/theevalgame/


Репост из: запуск завтра
Мы у себя в компании протестировали ИИ-помощники для программистов. По результатам, добавили Github Copilot в список инструментов, которые оплачиваем всем нашим сотрудникам — он ускоряет написание рутинного кода. Цитирую коллегу:

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

Ещё из интересных инструментов, которыми пользуются коллеги:

- Phind: классный ассистент для программистов, которому можно позадавать вопросы. Доступен без VPN, никогда не отваливался и, что важно, дает ссылки на источники;

- Machinet: плагин, окно чата, которое видит весь твой проект. В нем можно написать «вот есть ручка //products, напиши такую же только для //orders и сделай такие же тесты» или «почини N+1 запросы в методе getusers на открытой вкладке»

Если ничем таким ещё не пользуетесь — рекомендую попробовать!


PSF и JetBrains запустили своё ежегодное исследование Python Developers Survey 2023. Погнали заполнять! 👇

https://survey.alchemer.com/s3/7554174/python-developers-survey-2023

Через год, когда подведут результаты, будет повод написать пост, типа такого 😅


В Х-твиттере наткнулся на статистику использования компилируемых языков в пакетах для Python. Зачем люди пишут пакеты для питона на Go?


Пользуетесь какой-нибудь LLM при написании кода? 🤖
Опрос
  •   Да, GitHub Copilot
  •   Да, ChatGPT
  •   Да, но другое (напишу в комменты)
  •   Нет, это для слабаков
  •   Я и есть LLM
320 голосов




А вы заметили, что Python 3.7 EOLнулся еще этим летом? Теперь walrus оператор есть во всех поддерживаемых версиях языка. Кстати, кто-нибудь нашел для него хорошие применения?

Python release cycle


Вышел второй выпуск подкаста core.py от двух кор-разработчиков CPython. В этот раз про PEP 703 и выпиливание GIL — тема, которая волнует многих. Уже во всех радиоприемниках страны!

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

https://podcasters.spotify.com/pod/show/corepy/episodes/Episode-2---PEP-703-Removing-the-GIL-e2b8egi

P.S.: Да, для прослушивания этого подкаста, вероятно, потребуется включенный VPN. По крайней мере, в Apple Podcasts с российским айпишником он не включается.


Репост из: Николай Хитров
Славянский язык программирования

Мем про древних Русов и ящеров продолжает набирать обороты. В этот раз мемологи сделали типовой урок с hello world на В++ - великом языке программирования древних Русов

P.S. Концовка улыбнула😁

https://youtu.be/KffVhdWAgXc?si=gIoaMfb4nhqs43al


Moscow Python проводит митап вот прямо сейчас: https://www.youtube.com/watch?v=B_HprPoVoig


Репост из: Коробка с питоном
Пока я спал, руководящий совет языка принял PEP 703 (Making the Global Interpreter Lock Optional in CPython).

Кратко о том, о чём говорится в посте:

1. Руководящему совету ясно, что несмотря на все проблемы и недостатки потоков, nogil будет полезен для Python, так как позволит находить более масштабируемые решения.
2. В то же время, они не уверены, получится ли убрать GIL не сломав при этом обратную совместимость - всё же не хотелось бы терять десятилетия развития базы пакетов. Существующая пакетная экосистема - это одна из сильных сторон языка, как и простая интеграция библиотек на C c CPython.
3. Оценить влияние nogil без реализации сложно, поэтому nogil должен выпускаться в составе регулярных релизов и не обязательно он там должен быть по-умолчанию.
4. Это всё ещё не гарантированная история. Если что-то пойдет не так - от изменений откажутся. Развёртывание должно быть постепенным и наиболее плавным.
5. Выкатка будет происходить в 3 фазы, которые возможно изменятся:
- В первой фазе nogil сделают возможным таргетом при сборке, чтобы разработчики могли тестировать свои пакеты.
- Во второй фазе, когда изменения в API и ABI будут сформированы, а поддержка nogil от сообщества будет достаточной, nogil-сборку добавлят как "поддерживаемую, но не по умолчанию".
- В третьей фазе nogil-сборку сделают сборкой "по-умолчанию", а от gil-сборки будут отказываться.
6. При успешной реализации nogil, ожидается падение производительности на 10-15% в худшем случае.

#pep


Astral официально анонсирует ruff format

График со скоростью работы я сначала неправильно считал, не заметил ruff. А он там вверху, просто полосочка очень мелкая.

Еще интересное заявление про статус форматтера:

While this is a Beta release, we consider the Ruff formatter production-ready. We’ve been using it in production for a while now, as have our alpha users from GitHub and Discord — including Dagster, whose monorepo contains over 50 Python packages and 500,000 lines of code.

Ну что, переезжаем с Black на Ruff?

P.S.: Кстати, я, кажется, начинаю понимать, почему Astral. Как-то связано с AST? Но ведь и линтер, и форматтер работают над CST! Кстрал должно быть!

1.2k 0 17 14 24
Показано 20 последних публикаций.