39269
Все самое полезное для питониста в одном канале. Список наших каналов: https://t.me/proglibrary/9197 Курс по ML: https://cl Для обратной связи: @proglibrary_feeedback_bot По рекламе: @proglib_adv РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
🔥 Расширения VS Code, которые должен попробовать каждый разработчик
📍 Наш курс по Питону
Библиотека питониста
#буст
📌 Зачем дата-сайентисту матанализ?
Основная компетенция специалиста по Data Science – способность анализировать и интерпретировать данные, а математика является фундаментом для начала работы.
В карточках мы разбираем основные разделы математики, с которых стоит начать изучение специалисту по анализу данных.
Хотите подготовиться к офферу или подтянуть знания? Оставляйте заявку на наш курс по математике для Data Science 💙
P.S. Только до 31 мая на курс (и вообще на все программы Академии) действует СКИДКА 40%
А как у вас дела с высшей математикой?
❤️ — Помню всё
🔥 — Знаю основы
🌚 — Ничего не знаю
🏃♀️ Proglib Academy
🐍 Первый GUI-проект на Python
Нашли отличный туториал, где шаг за шагом показывают, как собрать калькулятор на Tkinter — стандартной библиотеке Python для создания графических интерфейсов.
Что внутри:
• создание GUI-окна с Tkinter
• работа с кнопками и обработкой событий
• создание экрана вывода (`Entry`)
• базовая логика калькулятора (`+`, -, *, /, `=`)
• кнопка очистки AC
• улучшение интерфейса и UX
📌 Отличный способ прокачать Python через практику, а не только теорию.
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
🔥 База по экономике токенов и кэшированию от AI Platform Lead из Bitrix24
Знакомьтесь, Сергей Нотевский. AI Platform Lead в Bitrix24.
Он один из ключевых экспертов нашего курса AgentOps. На своих лекциях он детально разбирает экономику AI-агентов, кэширование токенов, LLM-инфраструктуру и вывод генеративных систем в стабильный прод.
Мы попросили Сергея поделиться материалами для тех, кто хочет оптимизировать косты на LLM в проде. Сохраняйте методичку по prefix cache метрике, которая напрямую влияет на ваши деньги.
Как говорят создатели Manus:
“KV-cache hit rate is the single most important metric for a production-stage AI agent.”
Экономика кэширования — особенности провайдеров и как правильно считать затраты.
Частые анти-паттерны — почему ваш кэш постоянно сбрасывается и вы платите больше.
Кэш в AI-агентах — специфика работы с памятью в автономных системах.
🐍 Python 3.15: полезные изменения, которые могут пройти мимо внимания
Пока все обсуждают lazy imports и ускорение Python, в 3.15 появятся несколько менее заметных изменений, которые могут заметно повлиять на повседневную разработку.
🔁 TaskGroup в asyncio можно будет нормально останавливать
Если вы работали с asyncio.TaskGroup, то знаете: «аккуратно» завершить группу задач раньше было неудобно.
Часто приходилось использовать исключения, suppress() и не самые очевидные конструкции.
В Python 3.15 появится TaskGroup.cancel() — группу задач можно будет завершать одной командой, без лишней сложности.
🧩 Контекстные менеджеры станут лучше работать как декораторы
Раньше с async-функциями, генераторами и async-генераторами были ограничения: декоратор мог завершиться раньше, чем сам код.
В 3.15 это исправят — контекст сможет корректно покрывать весь жизненный цикл функции.
🧵 Потокобезопасные итераторы
Итераторы — основа Python, но в многопоточности они могут вести себя непредсказуемо.
В 3.15 добавят инструменты вроде:
— serialize_iterator
— synchronized_iterator
— concurrent_tee
Работать с генераторами между потоками станет проще и безопаснее, без постоянной возни с Queue.
📊 Counter получит оператор XOR (`^`)collections.Counter начнёт поддерживать симметрическую разницу.
Если раньше были:
— & → пересечение
— | → объединение
то теперь появится и ^.
🧊 Immutable JSON
Благодаря frozendict JSON можно будет сразу превращать в неизменяемые структуры — удобно для кэширования и безопасной работы с данными.
📌 Python 3.15 пока только в beta, но уже видно: релиз будет не столько про «громкие» изменения, сколько про множество небольших улучшений для повседневной разработки.
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
📱 Вышел Python 3.14.5 — и в нём откатили одно из самых обсуждаемых изменений
Python 3.14.5 — это maintenance-релиз с ~154 исправлениями, улучшениями сборки и документации.
Но самое интересное — не багфиксы.
Разработчики откатили incremental garbage collector, который был в Python 3.14.0–3.14.4.
Причина — сообщения о сильном потреблении памяти в production.
Теперь Python снова использует generational GC из 3.13.
Что ещё важно в ветке 3.14:
— Free-threaded Python теперь официально поддерживается
— Появились t-strings для кастомной обработки строк
— В стандартной библиотеке теперь есть multiple interpreters
— Добавлена поддержка Zstandard (`zstd`)
— uuid стал быстрее, появились версии 6–8
— Официальные сборки получили экспериментальный JIT
Для macOS-инсталлятора также обновили Tcl/Tk до версии 9.
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
😎 Знакомьтесь с экспертом Proglib.academy: AI-архитектор Андрей Носов
Андрей — один из ключевых спикеров нашего курса AgentOps. Он выстраивает архитектуру, которая выживает в суровом проде и активно делится своим опытом.
За что его ценит IT-комьюнити:
🟣 Топ-спикер AI Conf 2026
Его доклад про мифы семантического поиска и провалы Naive RAG стал одним из самых рейтинговых на конференции.
Андрей внедряет инженерный подход в сложные системы, заменяя «слепую веру» в эмбеддинги строгой логикой графов.
Разработал уникальный набор из 14 unit-тестов, на которых ломается стандартный векторный поиск (от слепоты к отрицаниям до конфликта версий).
Регулярно выступает на крупнейших хайлоад-площадках, разбирая архитектуру отказоустойчивых ИИ-сервисов.
🐍 В Python может появиться `!p` для красивого вывода объектов (PEP 813)
В Python хотят добавить новый форматтер !p для pretty print прямо в f-string.
Сейчас:
print(data)
dict, JSON или сложный объект.
print(f"{data!p}")
pprint.pformat().pprint ради дебага.__pprint__()
__pprint__()
repr() часто выглядит странно или перегруженно.__pprint__() можно явно указать:
print(variable)
!p превращает вывод в человекочитаемый формат — прямо внутри f-string.
✔️ Основные концепции ООП: простыми словами и с понятными примерами
Многие заучивают термины, но не понимают, как это выглядит в реальном коде.
Разбираемся без сложной теории.
1️⃣ Инкапсуляция
Скрывайте внутренние данные за публичными методами.
Идея простая: объект сам контролирует, как с ним взаимодействуют.
Например, банковский аккаунт хранит баланс и PIN «внутри себя». Изменить баланс напрямую нельзя — только через специальные методы пополнения или списания.
Так код становится безопаснее: никто случайно не сломает внутреннюю логику.
2️⃣ Абстракция
Давайте простой интерфейс, скрывая сложность внутри.
Пользователю класса не обязательно знать, как всё устроено — важно понимать, как этим пользоваться.
Например, сервис отправки писем может внутри управлять подключением, авторизацией, повторными попытками и обработкой ошибок.
Но для разработчика всё сводится к одному действию: «отправить письмо».
Сложность скрыта — интерфейс остаётся простым.
3️⃣ Наследование
Переиспользуйте общую логику и расширяйте поведение.
Вместо копирования кода можно вынести общую логику в базовый класс.
Например, есть общий класс «Животное». У всех животных может быть одинаковая структура, но каждое из них издаёт свой звук.
Собака — лает, кошка — мяукает.
Общее поведение хранится в одном месте, а различия переопределяются.
4️⃣ Полиморфизм
Один интерфейс — много реализаций.
Код может одинаково работать с разными объектами.
Например, есть разные фигуры: круг, квадрат, треугольник.
У каждой фигуры свой способ отрисовки, но внешний код работает с ними одинаково — просто вызывает действие «нарисовать».
Не важно, что именно передали — важна общая договорённость.
Какая концепция ООП в своё время казалась вам самой непонятной? 👇
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
🔥 PyTorch 2.12: один из самых сильных релизов для performance
Команда PyTorch выкатила v2.12, а заметный шаг в сторону production ML и ускорения вычислений.
⚡ До 100× быстрее `linalg.eigh` на CUDA
Batched eigendecomposition теперь работает в разы быстрее благодаря новому backend selection через cuSolver. Для scientific computing и ML-задач это может превращать минуты вычислений в секунды.
🧠 Новый `torch.accelerator.Graph`
Появился единый API для graph capture/replay across hardware — CUDA, XPU и другие backends. Ещё один шаг к hardware-agnostic PyTorch.
🚀 Fused Adagrad optimizerAdagrad(fused=True) теперь выполняется в одном CUDA kernel — меньше overhead, быстрее обучение.
📦 Экспорт сильно сжатых моделейtorch.export теперь поддерживает Microscaling (MX) quantization, что важно для дешёвого inference и edge deployment LLM.
🎮 CUDA Graphs + control flowtorch.cond теперь можно запускать внутри CUDA Graphs — branching начинает жить прямо на GPU.
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
Talanto.work - сайт для всех, кто ищет работу в IT.
Мы спарсили за вас все возможные телеграм каналы и сайты с вакансиями исключительно из сферы IT.
Вам не нужно следить за тем, когда выходит вакансия и где, всё это уже сделано за вас.
Просто настройте фильтры у нас на сайте и получайте уведомления в телегу, как только вакансия вышла.
Например: все вакансии Python
На talanto.work собрано 28.000+ вакансий из разных .ru и иностранных сайтов: разработка, QA, аналитика, DevOps, продакт, дизайн, менеджмент и другие IT/Digital-направления.
Более 1700 вакансий за последний месяц из телеграм каналов.
Что еще есть на сайте:
🟠 Фильтры для нормального поиска
Можно искать по стеку, грейду, зарплате, стране, формату работы, релокации и типу занятости.
🟠 Разбор резюме
Загружаете CV и получаете конкретные рекомендации: что улучшить, какие навыки добавить, где слабая структура и что может мешать пройти ATS.
🟠Проверка соответствия вакансии и резюме
Рядом с вакансией всегда есть кнопочка узнать соответствие, насколько ваш профиль ей подходит. Сервис покажет процент совпадения, сильные стороны и пробелы в резюме
🟠Сопроводительное письмо за 10 секунд
Вставляете вакансию и получаете персональное письмо под конкретную компанию и роль, а не шаблон “прошу рассмотреть мою кандидатуру”.
🟠Уведомления в Telegram
Задаёте фильтры один раз и бот присылает новые подходящие вакансии прямо в Telegram.
Поиск работы в IT сейчас и так сложный. Мы хотим, чтобы вы тратили меньше времени на листание сайтов и больше на точные отклики туда, где у вас реально есть шанс.
✈️ 28.000+ вакансий
🟢Бот с уведомлениями о ваших вакансиях: @TalantoWorkBot
🟢Написать сопровод
🟢Разобрать резюме
🟢Проверить соответствие резюме вакансиям
Реклама. Киренкина Марина Дмитриевна, ИНН 345702417736. Erid 2VtzqvSFhV9
Библиотека питониста
#развлекалово
📘 Книга: Learn Algorithms Through Python
Визуальный гид по алгоритмам и структурам данных на Python.
Параллельно можно усилить базу через практику: онлайн-курс по математике для Data Science от Proglib Academy — 30 уроков с задачами, тестами и финальным проектом в портфолио, чтобы закрепить алгоритмы уже на прикладных кейсах.
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека дата-сайентиста
#буст
🔥 Знакомьтесь с экспертом Proglib.academy: Эмиль Сатаев
Эмиль — эксперт с 8-летним опытом в разработке, который специализируется на внедрении LLM и агентных подходов в реальные коммерческие сервисы. Он точно знает, как проектировать архитектуру так, чтобы ИИ-функции работали стабильно в связке с внешними системами.
🏃♀️ Уже 14 мая Эмиль проведет открытый вебинар!
Обсудим самую «больную» тему: «Почему AI-продукты на базе LLM ломаются и как сделать, чтобы работало».
🗓 Когда: 14 мая в 19:00 (Мск)
Почему Эмиля стоит послушать:
🟣 8+ лет в разработке (Backend и Frontend)
Прошел путь от фулстека до Backend Platform Developer в SMIT.Studio.
Работал исследователем в Институте ИИ НИУ ВШЭ и в Национальном университете Сингапура (NUS).
Ведет семинары в НИУ ВШЭ, в том числе по проектированию и разработке агентских систем.
Его главная суперсила — умение правильно встраивать LLM через API, выстраивать workflow и агентную логику в сложных распределенных системах.
📦 Dependency version pinning ≠ security patching
Интересный и важный разбор о том, как стоит (и не стоит) управлять версиями зависимостей в Python-проектах.
Если вы — разработчик библиотеки, то:
dependencies = [
"urllib3>=2",
]
"urllib3>=2.6.3"
🔥 Python typing становится намного умнее
Вот несколько идей, которые сейчас двигают экосистему Python вперёд:
1️⃣ AI + Type Checking = меньше багов
Оказалось, что AI пишет код заметно лучше, если после каждого изменения получает ошибки типизации.
Например:
def add(a: int, b: int) -> int:
return a + b
add("1", 2)
x # (B, T, C)
x: Tensor[B, T, C]
Protocol.
Closeable & Iterable
Partial[User]
class User:
name: str
age: int
{
"name": str | None,
"age": int | None
}
🐍 Полезный курс: Advanced Python Mastery
В нем меньше про «как написать TODO-приложение» и больше про то, как Python работает изнутри: итераторы, генераторы, декораторы, дескрипторы, внутренние механизмы языка и паттерны, которые используются в популярных библиотеках и фреймворках.
Хотя он в основном ориентирован на возможности Python 3.6, почти всё актуально и сегодня.
✅ Курс
📍 Наш курс по Питону
Библиотека питониста
#буст
Библиотека питониста
#развлекалово
⚡ Идеи проектов для разработчиков
В списке собраны проекты, которые помогают:
→ прокачать навыки
→ попробовать новые технологии
→ собрать портфолио
→ сделать что-то, что не стыдно показать
📌 Суть простая: берёте идею → делаете MVP → постепенно улучшаете.
Иногда этого достаточно, чтобы выйти из режима «учу, но не строю».
👇 Какой проект вы давно хотели сделать, но всё откладывали?
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
🧠 Шпаргалка по структурам данных и алгоритмам
Если готовитесь к собеседованиям, изучаете DSA или хотите быстрее ориентироваться в сложности операций — вот база.
Какую структуру данных вы чаще всего используете в работе?
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
🐍 Python Software Foundation готовит план развития Python на 5 лет
У Python Software Foundation появился стратегический план до 2031 года — и это напрямую влияет на будущее экосистемы Python.
Что в приоритете:
• Безопасность экосистемы Python и PyPI
• Развитие ключевой инфраструктуры (`CPython`, pip, python.org, `PyPI`)
• Поддержка мирового Python-сообщества через гранты и мероприятия
• Привлечение новых разработчиков и снижение барьеров для входа
• Финансовая устойчивость фонда
Интересный момент: PSF прямо говорит, что расходы растут быстрее возможностей. В 2025 году даже пришлось временно остановить грантовую программу из-за лимита бюджета.
Полный план опубликуют в июне 2026, а сообщество уже может оставлять обратную связь.
По сути — это roadmap того, как будет развиваться инфраструктура Python в ближайшие годы.
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
🧠 10 золотых правил чистого кода
1️⃣ Избегайте скрытых чисел и строк — выносите в константы
2️⃣ Используйте говорящие имена
3️⃣ Ранний возврат вместо глубокой вложенности
4️⃣ Не раздувайте списки аргументов — группируйте данные
5️⃣ Функции должны делать одну вещь
6️⃣ Не дублируйте код (DRY)
7️⃣ Держите решения максимально простыми (KISS)
8️⃣ Чаще выбирайте композицию, а не наследование
9️⃣ Комментарии объясняют «почему», а не «что»
🔟 Пишите понятные коммиты — это история проекта
Какое правило вы бы добавили ещё? 👇
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
📚Напоминаем про наш полный курс «Самоучитель по Python для начинающих»
Мы написали и собрали для вас в одну подборку все 25 глав и 230 практических заданий!
🐍 Часть 1: Особенности, сферы применения, установка, онлайн IDE
🐍 Часть 2: Все, что нужно для изучения Python с нуля – книги, сайты, каналы и курсы
🐍 Часть 3: Типы данных: преобразование и базовые операции
🐍 Часть 4: Методы работы со строками
🐍 Часть 5: Методы работы со списками и списковыми включениями
🐍 Часть 6: Методы работы со словарями и генераторами словарей
🐍 Часть 7: Методы работы с кортежами
🐍 Часть 8: Методы работы со множествами
🐍 Часть 9: Особенности цикла for
🐍 Часть 10: Условный цикл while
🐍 Часть 11: Функции с позиционными и именованными аргументами
🐍 Часть 12: Анонимные функции
🐍 Часть 13: Рекурсивные функции
🐍 Часть 14: Функции высшего порядка, замыкания и декораторы
🐍 Часть 15: Методы работы с файлами и файловой системой
🐍 Часть 16: Регулярные выражения
🐍 Часть 17: Основы скрапинга и парсинга
🐍 Часть 18: Основы ООП – инкапсуляция и наследование
🐍 Часть 19: Основы ООП – абстракция и полиморфизм
🐍 Часть 20: Графический интерфейс на Tkinter
🐍 Часть 21: Основы разработки игр на Pygame
🐍 Часть 22: Основы работы с SQLite
🐍 Часть 23: Основы веб-разработки на Flask
🐍 Часть 24: Основы работы с NumPy
🐍 Часть 25: Основы анализа данных с Pandas
🚀 FastAPI с нуля: за 5 минут до работающего API
FastAPI — один из самых быстрых Python-фреймворков для построения API. Автодокументация, типизация, async из коробки.
Поехали.
📦 Установка
pip install fastapi uvicorn
# main.py
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def root():
return {"message": "Hello, World!"}
uvicorn main:app --reload
http://127.0.0.1:8000 — API уже отвечает.http://127.0.0.1:8000/docs — интерактивная Swagger-документация, сгенерирована автоматически.
from pydantic import BaseModel
class User(BaseModel):
name: str
age: int
email: str
@app.post("/users")
def create_user(user: User):
return {"created": user.name}
if not isinstance(...).
# /items/42
@app.get("/items/{item_id}")
def get_item(item_id: int, q: str = None):
return {"id": item_id, "query": q}
item_id — из URL, q — из query string (`?q=test`). Всё типизировано.
import asyncio
@app.get("/slow")
async def slow_endpoint():
await asyncio.sleep(1) # не блокирует сервер
return {"status": "done"}
async def когда делаете запросы к БД или внешним API — сервер продолжает обрабатывать другие запросы пока ждёт.
project/
├── main.py
├── routers/
│ ├── users.py
│ └── items.py
└── models/
└── schemas.py
from routers import users
app.include_router(users.router, prefix="/users")
GET / POST / PUT / DELETE эндпоинты/docs
🔐 secure: библиотека для тех, кто устал от copy-paste security headers
Если делаете backend на Python, то наверняка сталкивались с хаосом вокруг security headers:Content-Security-PolicyX-Frame-OptionsStrict-Transport-SecurityPermissions-Policy
Обычно это превращается в copy-paste по middleware, hooks и handlers.
secure предлагает более аккуратный подход — один объект политики безопасности для всего приложения.
Например, в FastAPI достаточно подключить middleware:
from fastapi import FastAPI
from secure import Secure
from secure.middleware import SecureASGIMiddleware
app = FastAPI()
secure_headers = Secure.with_default_headers()
app.add_middleware(
SecureASGIMiddleware,
secure=secure_headers
)
🗓 Уже через пару часов стартует вебинар!
Тема:
Почему AI-продукты на базе LLM ломаются и как сделать, чтобы работало
🧠 Pyrefly v1.0: быстрый type checker для Python вышел в stable
Pyrefly официально достиг версии 1.0 и готов к production.
Что изменилось
⚡ Производительность
• до 125× быстрее обновление diagnostics после сохранения файла
• на 20–36% быстрее полная проверка больших проектов (PyTorch, Pandas)
• 2–3× быстрее индексация проекта
• до 60% меньше памяти
🛠 Новые пресеты конфигурации
Появились режимы basic, strict, legacy (для миграции с mypy) и другие — можно быстро настроить уровень строгости без ручной конфигурации.
🧩 Лучше понимает реальный Python
Меньше false positive, улучшена работа с:
* dataclasses
* enums
* ParamSpec
* overloads
* type narrowing
📓 Поддержка экосистемы
Лучше работает с Django, Pydantic, Pytest и теперь полноценно поддерживает Jupyter notebooks (.ipynb) — почти как обычные .py файлы.
🤖 Что дальше
Команда делает ставку на AI-агентов и экспериментальную проверку tensor shapes в PyTorch.
🔗 Ссылка на релиз
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
🧠 MCP на Python: самый простой пример
LLM сама по себе не умеет работать с реальным миром. Она не знает время, дату и не может выполнять код — только генерирует текст.
MCP (Model Context Protocol) решает это, добавляя модели внешние инструменты на Python.
В примере из статьи:
🕒 функция get_current_time() — возвращает текущее время
📅 функция get_current_date() — возвращает текущую дату
🤖 модель через Ollama (llama3.2) может вызывать их по необходимости
Запрос пользователя → модель понимает, нужен ли инструмент → вызывает Python-функцию через MCP → получает результат → формирует ответ
Пример:
«Сколько сейчас времени?»
→ модель вызывает get_current_time()
→ получает 10:35:15
→ отвечает уже человеческим текстом
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека дата-сайентиста
#буст
🚨 Django выпустил срочные security-обновления: 6.0.5 и 5.2.14
Команда Django выпустила новые патч-релизы Django 6.0.5 и Django 5.2.14, закрывающие сразу 3 уязвимости безопасности.
🔹 CVE-2026-5766 — DoS через загрузку файлов в ASGI
Обнаружена возможность обхода лимита FILE_UPLOAD_MAX_MEMORY_SIZE в ASGI-запросах при некорректном или заниженном Content-Length.
Злоумышленник потенциально мог отправить слишком большой файл, который попадал в память сервера, вызывая деградацию сервиса или проблемы с производительностью.
Важно: Django напоминает, что ограничение загрузки файлов нужно настраивать не только в Django, но и на уровне веб-сервера (Nginx, Apache, reverse proxy).
🔹 CVE-2026-35192 — Session Fixation через кешируемые страницы
Проблема затрагивает проекты, где включён:
SESSION_SAVE_EVERY_REQUEST = True
UpdateCacheMiddleware могла привести к тому, что запросы с заголовком:
Vary: *
Это очень полезный репозиторий с 300+ инженерными статьями от крупных tech-компаний про реальные проблемы масштабирования.
Но читать всё подряд не стоит — лучше по темам. Для старта:
— Netflix / Uber / Slack / Stripe — архитектура и масштабирование,
— Figma / DoorDash / GitHub — поиск и производительность,
— Meta / LinkedIn / Netflix — ML-системы.
Минус: часть статей — немного «инженерный маркетинг», а не чистая практика. Но как источник реальных кейсов — очень сильная подборка.
🔗 Ссылка на ресурс
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека дата-сайентиста
#буст