TGViewer
Channel Public Channel
Питонические атаки

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

@pythonic_attacks

Всяческие заметки про программирование на Python и другие весёлые истории.
Subscribers
1.15K
Photos
184
Videos
4
Links
462

Showing posts older than #469 · Back to latest

Older Posts 18 shown
Post #468 995
Небольшая подборка flake8 плагинов для тех, кто уже использует 3.10 и хочет писать тайп-хинты красиво:

1. flake8-new-union-types — заставляет переписывать Union[X, Y] на X | Y;

2. flake8-pep585 — заставляет использовать встроенные классы, например, list[dict[str, int]], без импортов из typing.

Знаете ещё полезное? Делитесь в комментариях!

#flake8
GitHub GitHub - xome4ok/flake8-new-union-types: Flake8 plugin to enforce the new Union and Optional annotation syntax defined in PEP 604 Flake8 plugin to enforce the new Union and Optional annotation syntax defined in PEP 604 - GitHub - xome4ok/flake8-new-union-types: Flake8 plugin to enforce the new Union and Optional annotation sy...
  • ❤ 12
  • 👏 1
Post #467 1.2K
У Stack Overflow запустился очередной ежегодный опрос среди разработчиков. Уже 12 год подряд.

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

Take the survey
Qualtrics 2022 Stack Overflow Developer Survey Stack Overflow is the largest, most trusted online community for developers to learn, share​ ​their programming ​knowledge, and build their careers.
  • 👍 6
Post #466 1.26K

Forwarded from DevBrain

Вышла первая бета python 3.11: https://www.python.org/downloads/release/python-3110b1/
Версия 3.11 несёт в себе большое количество новых фич. Скоро выпущу подробный пост с разбором каждой фичи. Помимо этого в рамках инициативы Faster Python заявляется, что версия 3.11 в среднем на 22% быстрее чем 3.10 😲😲
Python.org Python Release Python 3.11.0b1 The official home of the Python Programming Language
  • 🤯 3
  • 👍 2
Post #465 1.5K
Post #464 1.11K
GitPod — напомню: это сервис, предоставляющий эфемерные облачные окружения для разработки — объявил о партнёрстве с JetBrains. Раньше в их облачные окружения можно было подключаться через VSCode, vim и emacs, а теперь добавляется возможность ходить туда ещё и из пайчарма, голэнда или чем вы там пользуетесь.

Только представьте какой это кайф — подключаешь свою IDE к облачной среде разработки, а там уже интерпретатор правильный выбран, зависимости установлены (включая все дурацкие нативные либы, которые компилируются только в определенных условиях, и то полтора часа) и проиндексированы. Всё сделано заранее, можно начинать работать СРАЗУ ЖЕ! Подключился, поработал, запушил работу, выкинул грязное окружение. Для следующей таски возьмёшь новое, чистое.

Раньше для меня GitPod был «альтернативой GitHub Codespaces», но теперь они явно превзошли оригинал.

https://www.gitpod.io/blog/gitpod-jetbrains

Дисклеймер: единственный минус для россиян, что сервис хочет денег в иностранной валюте и работает на иностранных облаках и в европейской юрисдикции, поэтому снова применяются все эти уже ныне ставшие обыденностью сложности и опасения. Со всеми иностранными ништяками теперь всё не просто.
www.gitpod.io Gitpod x JetBrains join forces to solve 'works on my machine' problem - Blog Gitpod and JetBrains announce partnership and deep product integration to bring remote development to developers around the world
  • 🔥 3
  • 👎 1
Post #463 1.08K

Forwarded from Коробка с питоном

Тут часть ядра pydantic переписали на Rust и он стал в 17 раз быстрее (код бенчмарка тут) чем обычный Pydantic.

Пока что WIP, выглядит многообещающее, но нет самой интеграции с pydantic, поэтому схемы могут делаться только через словари. Целью стоит увеличение скорости работы в ДЕСЯТЬ раз.
GitHub GitHub - pydantic/pydantic-core: Core validation logic for pydantic written in rust Core validation logic for pydantic written in rust - pydantic/pydantic-core
  • 🔥 12
  • 🤔 2
  • 👎 1
  • 🥰 1
Post #462 1.01K

Forwarded from Технологический Болт Генона

Для тех, кто питонами балуется Bloomberg открыл интересный тул

Memray is a memory profiler for Python
https://github.com/bloomberg/memray

Notable features:
- Traces every function call so it can accurately represent the call stack, unlike sampling profilers.
- Also handles native calls in C/C++ libraries so the entire call stack is present in the results.
- Blazing fast! Profiling causes minimal slowdown in the application. Tracking native code is somewhat slower, but this can be enabled or disabled on demand.
- It can generate various reports about the collected memory usage data, like flame graphs.
- Works with Python threads.
- Works with native-threads (e.g. C++ threads in native extensions)

Memray can help with the following problems:
- Analyze allocations in applications to help discover the cause of high memory usage.
- Find memory leaks.
- Find hotspots in code which cause a lot of allocations.
+
Тред, который подглядел в @nocproject
https://twitter.com/1st1/status/1516859294896906241
  • 👍 3
  • 🔥 3
Post #461 1.06K
Экспортировать свои данные с гитхаба можно вот на этой странице в разделе "Export account data":

https://github.com/settings/admin

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

Буквально через 10 минут после запроса гитхаб мне на почту прислал ссылку на архив с моим барахлом: репозитории и связанные с ними ишьюсы и пулл-реквесты. Мои действия в чужих репозиториях в этот экспорт, к сожалению, не попали. А ещё отдельно обидно за звёздочки — список лайкнутых репо тоже не попал в экспорт. Я звёздочками пользуюсь примерно как закладками — ставлю их на разные классные проекты. Уже поставил несколько сотен. Не хотелось бы потерять этот список годноты.

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

git clone foo.git foo

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

#github
GitHub GitHub is where people build software. More than 150 million people use GitHub to discover, fork, and contribute to over 420 million projects.
  • 👍 5
  • 🥰 1
Post #460 1.08K
Питонические атаки И если у вас на гитхабе что-то ценное лежит, то вы на всякий случай склонируйте себе эти репо. Ходят слухи, что гитхаб начал блокировать аккаунты россиян. В панику не впадайте, но подготовьтесь к худшему. https://habr.com/ru/news/t/661113/
Зашёл в настройки на гитхабе, чтобы на всякий случай экспортировать оттуда архив со всеми своими данными, и заметил, что там можно назначить наследника, который после моей смерти сможет управлять моими репозиториями.

Хочу, чтобы потомки передавали мою коллекцию хелло ворлдов по наследству из поколения в поколение!

https://docs.github.com/en/site-policy/other-site-policies/github-deceased-user-policy

P.S. А на самом деле это крутая практика. С начала эпохи интернета уже прошло достаточно много времени, и люди начали умирать, и вполне логично начать как-то управлять их цифровым наследием. Такое рано или поздно должно появиться во всех приличных сервисах.

#github
  • 👍 21
  • 🥰 1
Post #459 1K
Слышал, что ещё не все познали радость использования тайп хинтов в своих больших программах на питоне. Поэтому держите хороший вводный видос на эту тему от Łukasz Langa (Вукаш Ланга!).

Хотя этому выступлению уже 5 лет и типизация в питоне всё это время постоянно развивалась, информация всё ещё актуальная, потому что основные принципы не поменялись. Сейчас в основном только доуточняются разные краевые случаи.

И я наконец понял, почему List[str] несовместимо с List[Optional[str]].

https://www.youtube.com/watch?v=Mn4AOttRmpI

#typing
YouTube «Gradual Typing of Production Applications» Łukasz Langa, Facebook Выступление на конференции PYCON RUSSIA 2017
  • ❤ 12
  • 💩 3
  • 👍 1
  • 🥰 1
Post #458 840
И если у вас на гитхабе что-то ценное лежит, то вы на всякий случай склонируйте себе эти репо. Ходят слухи, что гитхаб начал блокировать аккаунты россиян. В панику не впадайте, но подготовьтесь к худшему.

https://habr.com/ru/news/t/661113/
  • 🥰 8
  • 😢 4
  • 🤬 3
  • 😱 1
Post #457 794
httpie — популярный консольный curl-like HTTP-клиент, написанный на питоне — потерял 54k звёзд на гитхабе из-за глупой ошибки. Репо входил в топ-80 самых популярных репо на гитхабе. 🤦‍♂️

Короче, можно пойти и снова поставить им звёздочку: https://github.com/httpie/httpie

Вот тут постмортем: https://httpie.io/blog/stardust
GitHub GitHub - httpie/cli: 🥧 HTTPie CLI — modern, user-friendly command-line HTTP client for the API era. JSON support, colors, sessions… 🥧 HTTPie CLI — modern, user-friendly command-line HTTP client for the API era. JSON support, colors, sessions, downloads, plugins & more. - httpie/cli
  • 🤔 1
  • 😱 1
  • 😢 1
  • 🤮 1
Post #456 4.77K
Используете ли вы змеиный чехол в своих программах?

#meme
  • 😁 24
  • 🤯 4
  • ❤ 2
  • 👎 1
  • 🥰 1
Post #453 1.04K
  • 🥰 1
Post #452 952
Опубликовали статистику скачиваний интерпретатора с python.org за последний год. Вычислено на основе access-логов.

Больше всего оттуда качают предсобранные установщики для Windows, но много и тех, кто скачивает просто исходники (это, вероятно, линуксоиды и маководы с pyenv и тому подобным). Чуть-чуть есть и людей, которые скачивают предсобранные установщики для macOS.

Python 2.7 держится по популярности примерно на уровне 3.6.

Для Windows самая популярная с большим отрывом версия интерпретатора сейчас — 3.10.

Но при этом в исходниках нет такого явного фаворита: качают все версии — и 2.7, и с 3.6 по 3.10 — примерно одинаково. Причём больше всего качают 3.7, а меньше всего 3.10. Может быть дело в том, что в современных линуксах обычно есть свежий питон, а более старые версии приходится откуда-то ставить? (А я обычно в любом случае ставлю все нужные мне версии из pyenv — системный питон лучше вообще не трогать, пусть спокойно себе лежит).

Там же в треде есть и ссылки на похожие исследования за 2020 и 2019 годы.

https://discuss.python.org/t/python-download-stats-for-march-2022/14908
Discussions on Python.org Python download stats for March 2022 Previously: May 2020 and March 2019 Every now and then I’m given permission to pull the access logs for python.org downloads and run some analysis. We don’t currently have a pipeline set up to make this data publicly available, but I’ll share my high level…
  • 👍 7
  • 🥰 1
Post #451 806
Что думаю по этому поводу.

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

С другой стороны, централизация — это однозначно плохо. Появляется единая точка отказа. Хоть они в последнее время и няшки, но всё равно — Microsoft начинает иметь слишком много влияния над опенсорсом. Такие перекосы обязательно рано или поздно выльются в проблемы. Например, мир разоссорится ещё сильнее, в США придумают очередные какие-нибудь весёлые ограничения для жителей недружественных стран, а GitHub (американская компания) будет обязан подчиниться.

В любом случае — спасибо, что переехали не в Jira!
  • 👍 9
  • 😁 4
  • 🤔 2
  • 🥰 1
Post #450 829
Питонические атаки Переезд с BPO на GitHub Issues начнётся сегодня. Думаю, на выходных оба баг-трекера будут недоступны. Так что если вы вдруг обнаружите баг в питоне, лучше попридержите проблему до понедельника и зашлите её сразу же в GitHub Issues 🌝 https://discuss.python.org/t/github…
Миграция из BPO в GitHub Issues заняла больше времени, чем ожидалось, но она наконец-то завершена.

BPO переведён в read-only режим.

Новый питонячий баг-трекер теперь официально находится здесь: https://github.com/python/cpython/issues
GitHub Issues · python/cpython The Python programming language. Contribute to python/cpython development by creating an account on GitHub.
  • 🔥 5
Post #449 1.14K
Vim-like браузер на питоне.

Ладно-ладно, это, конечно, не совсем правда. Там под капотом QtWebEngine, который по сути Chromium и написан он на C++. Тем не менее, вся обвязка вокруг непосредственно отображения страницы написана на питоне.

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

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

Короче, сижу на этом уже полгода, годная гиковская дурь.

https://github.com/qutebrowser/qutebrowser
  • 👍 11
  • 👎 2
  • 🔥 2
  • 👏 2
  • 🥰 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →