Питонические атаки
1.19K subscribers
183 photos
4 videos
1 file
459 links
Всяческие заметки про программирование на Python и другие весёлые истории.
Download Telegram
JetBrains Fleet — a lightweight editor but with a twist!

Вы посмотрите какая красота. Похоже, JetBrains вдохновились VSCode, учли все те проблемы, с которыми они страдают в последнее время в своих полноценных тяжелых монолитных IDE, и запилили свой легковесный редактор.

Уже существует минимум три способа, чтобы работать в IDE удаленно — CodeWithMe, Projector, Remote Development. И вот теперь есть ещё и четвертая альтернатива. Походу, JetBrains отчаянно пытается решить проблемы, которые порождены монолитностью их IDE (фронтенд и бэкенд нельзя/сложно отделить друг от друга). Возможно, другие попытки лишь отчасти решают проблему, поэтому JetBrains пилят новый редактор с нуля 🤔

Fleet уже поддерживает 7 популярных языков, в том числе и Python, конечно. Скоро добавят ещё языков.

Интересно за этим понаблюдать. Записался на превью (EAP).

https://blog.jetbrains.com/blog/2021/11/29/welcome-to-fleet/

#jetbrains
Python Daily
Introducing PyCharm 2021.3! #jetbrains #pycharm #nothabr #news #releases #newsletter
Добавили поддержку poetry, какие-то интеграции с FastAPI.
This media is not supported in your browser
VIEW IN TELEGRAM
"Imagine if I have an error 404 or something"

Это Pablo Galindo Salgado переименовывал ветку master в main в репозитории CPython, и довёл гитхаб до приступа.

https://twitter.com/pyblogsal/status/1389559682159808518?s=20
Ну все, теперь точно можно обновляться до 3.10, потому что уже выпустили первый багфикс релиз. От версии с 1 или больше на конце уже можно ожидать какой-то надежности. Все самые очевидные грабли уже потоптаны. Да и большинство либ к этому моменту уже тоже должно было адаптироваться, так что обязательно попробуйте обновиться.

Анонс: https://pythoninsider.blogspot.com/2021/12/python-3101-is-available.html

Список изменений: https://docs.python.org/3/whatsnew/changelog.html#python-3-10-1-final
Forwarded from DevBrain
Всем привет! Состоялся релиз Django 4.0💥 https://www.djangoproject.com/weblog/2021/dec/07/django-40-released/
💩1
Ура, товарищи! Достигнута очередная большая веха в развитии канала!

Во-первых, на канале уже 700+ читателей. Я раньше и подумать не мог, что кому-то может быть интересно читать мои потоки мыслей вперемешку со всякими статьями и ссылками, которые я нахожу занятными. Мне приятно. А если вы ещё и пишете комменты, то я вообще в восторге. Всегда рад пообщаться обо всем, что связано с моим любимым ЯП. Спасибо! ❤️

Во-вторых, на канал в комменты наконец-то пришли спамеры! Расцениваю это как отметку качества. Наконец-то они признали существование канала. Чтож, я ждал вас, механические ублюдки. Надо настроить бота, чтобы чистил комменты.
Forwarded from Python Daily
Если вы хотели попробовать сделать свою игру - вот список видео (+ бонус) с которых можно начать знакомство с pygame:

Введение: The ultimate introduction to Pygame
Тут объяснят основы: отрисовка изображений, позиционирование, коллизии, передвижение, анимации и т.д.

Большая и подробная серия видео про разработку платформера: Mario in Python with Pygame (and pirates)
Продолжение предыдущего ролика, которое объясняет такие вещи как: передвижение камеры, создание уровня в редакторе карт, глобальная карта локаций, UI и т.д.

Как работать с координатами в изометрических играх:
Introduction to Isometric Movement in Games
How Isometric Coordinates Work in 2D games

Основы создания тайлов для изометрических игр:
Pixel Art Class - Isometric Tile Basics!
Pixel Art Class - Isometric Character Basics

БОНУС
Огромный список примеров реализации разных механик и проблем: PyGame Examples and Answers

#pygame #gamedev #pydaily #nothabr
🔥 В 10:00 приходите на лайвкодинг во Fleet!

📹 «Лайвкодинг во Fleet, новой IDE от JetBrains»

Посмотрим на автодополнение, рефакторинг и анализ кода.
Попробуем написать код в несколько рук.
Испытаем IDE типовым проектом на Spring Boot.
Не про Python, но мы же все интересуемся новыми IDE. Через 40 минут начало стрима с лайвкодингом в JetBrains Fleet!

#jetbrains
моржовый оператор или что-то, я хз, я присваиваю через равно

#пятница #meme
Давайте на мгновение перестанем деградировать и почтим Python 3.6 минутой молчания. Это был хороший релиз, который принёс нам f-строки. Пожалуй, тот самый релиз, который многих заставил наконец обновиться с Python 2. Покойся с миром!

Нет, серьезно. Больше в 3.6 не будут исправляться даже проблемы безопасности. Вот представьте, что там найдётся что-то вроде нашумевшей джавовой уязвимости log4shell (а рано или поздно такое обязательно находится везде, ведь не бывает кода без проблем), и вы рискуете остаться с этим один на один. Мейнтейнеры питона пофиксят свежие версии, а 3.6 так и останется уязвимым. Так что если вы до сих пор используете 3.6, то крайне рекомендую обновиться раньше, чем к вам пришла беда.

По данным из PyPI stats, 15% загрузок все ещё происходят с 3.6. Вот не будьте такими. Лучше будьте как 1,5%, которые уже обновились до Python 3.10!

Хорошая статья по теме: https://pythonspeed.com/articles/stop-using-python-3.6/
Пользуясь случаем напоминаю, что 3.7 и 3.8 сейчас находятся на этапе security fixes only. То есть, если вы хотите, чтобы в вашем питоне исправлялись всякие баги с неправильным поведением и падениями, то вам нужно быть как минимум на 3.9.

Вот хорошая диаграмма, визуализирующая время жизни разных версий интерпретатора: https://python-release-cycle.glitch.me/
👍1🔥1
Всем, кто пережил праздники и постепенно возвращается к жизни — с очередным наступившим!

В последнее время почти перестал читать новости и статьи, поэтому и тем для постов стало резко меньше. Зато я стал больше гулять и передвигаться на общественном транспорте. Или, например, в электричке на 6 часов без интернета. В таких условиях прям здорово залипнуть в окошко и слушать какой-нибудь легкий бубнёж. Короче, в качестве компенсации за отсутствие постов хочу порекомендовать подкаст, который мне давно уже рекомендовали, но я только недавно до него добрался.

Moscow Python Podcast — это удивительно годное шоу. Я прослушал уже выпусков десять, и мне прям нравится. Вроде всего лишь лёгкие разговоры под кофеёк, но оно пропитано какой-то непередаваемой мудростью. Ведущие классные — особенно Гриша Петров, который для меня уже стал легендой российского айти. Длина выпусков тоже оптимальная — хоть не страшно включать, а то некоторые подкасты и по 3 часа делают выпуски.

Вот тут вы найдёте все ссылки: https://podcast.python.ru/

Я слушаю на Яндекс.Музыке, поэтому скину отдельно: https://music.yandex.com/album/6892837
👍5👎1
Forwarded from Code Mining
PyNose: a Test Smell Detector for Python

А ещё в прошлом году у JetBrains Research вышла определялка говнокода в python-тестах. Работает для Unittest & Pytest. Версия 1.0.0 вышла в декабре'21.

Виды test smell, которые выделяют авторы:
- Assertion Roulette
- Conditional Test Logic
- Constructor Initialization
- Default Test
- Duplicate Assert
- Empty Test
- Exception Handling
- Lack of Cohesion of Test Cases
- Magic Number Test
- Obscure In-Line Setup
- Redundant Assertion
- Redundant Print
- Sleepy Test
- Suboptimal Assert
- Test Maverick

Использовать можно в виде плагина к Pycharm.

Код: https://github.com/jetbrains-research/pynose

Подробности в статье: https://arxiv.org/abs/2108.04639. Единственное, она описывает предыдущую версию, которая в ветке ASE2021.
👍10🎉1🤩1💋1
Forwarded from UfoStation
Григорий Петров - Почему Python медленный?

Не смотря на заявленное название в докладе рассматриваются и другие языки, в том числе Java, C#, JavaScript и другие. Рекомендую к ознакомлению всем интересующимся языками программирования.
👍11
Forwarded from Senior Python Developer
Шуточный пакет pyjokes

Если в вашей крови течёт PEP, а дома вас ждёт домашняя змея в клетке, то и шутки вам нужны соответствующие. Вы всегда можете получить их с помощью модуля pyjokes. Устанавливается, как всегда, через pip.

Также есть отдельная категория с шутками Чака Норриса. Don't worry about tests, Chuck Norris's test cases cover your code too.
Forwarded from Хитрый Питон
Интересная статья про то, почему декоратором @lru_cache нельзя обертывать методы классов. Если коротко - объект не будет удаляться garbage collector-ом что может привести к неожиданным утечкам памяти. Также @lru_cache не умеет игнорировать self в списке аргументов, поэтому кэш будет для каждого объекта свой и кеширование по факту не будет работать.

С методами классов, статическими методами и обычными функциями работает, как и ожидается.

https://rednafi.github.io/reflections/dont-wrap-instance-methods-with-functoolslru_cache-decorator-in-python.html