и посмотреть медиа
Библиотека питониста: Python Django Flask
и посмотреть медиа
Все полезное для Python разработчиков: Django, Flask и библиотеки.
Все полезное для Python разработчиков: Django, Flask и библиотеки.
Комплексный канал для питонистов. Содержит подборки библиотек, гайды по Django и Flask, примеры кода и советы. Все самое нужное в одном месте для эффективной работы и обучения веб-разработке на Python.
👀 Краткая выжимка нашей имбовой рассылки по ИИ Ниже — небольшая подборка, а если хотите фулл, то подписывайтесь на рассылку 💬 Новости ▫️ Энтузиасты получили доступ к Anthropic Mythos Группа из Discord-канала, искавшая доступ к ещё не вышедшим моделям, угадала URL Mythos по шаблонам URL других моделей Anthropic и через аккаунт стороннего подрядчика получила доступ к инструменту ▫️ Anthropic тайно устанавливает шпионское ПО при установке Claude Desktop Claude Desktop без спроса прописывает в семь браузеров (Chrome, Brave, Edge, Chromium, Arc, Vivaldi и Opera) Native Messaging bridge, который дает расширению Claude доступ к авторизованным сессиям, DOM и формам за пределами песочницы. Удалить это нельзя — приложение восстанавливает файл с настройками при каждом запуске. ▫️ Три бага, которые сломали Claude Code Сначала снизили режим мышления с high до medium ради скорости, потом словили баг с кешированием, из-за которого модель теряла контекст каждый ход вместо одного раза, а под конец добавили системный промпт с жесткими лимитами на длину ответов — все это вместе выглядело как общая деградация модели, хотя API б 🤖 Инструменты для ИИ Google DESIGN.md — открытый стандарт описания дизайн-систем для UI-агентов designdotmd.directory — каталог DESIGN.md файлов beads — система памяти для агентов swarm-forge — оркестратор агентов, работающих в разных git worktree одного проекта browser-harness — дает агентам полный контроль над браузером agentmako — превращает код в локальную базу знаний и скармливает AI-агентам готовый контекст thonops — cобирает сайт на Next.js, обновляя страницу на лету при любой правке кода и заливая проект на Vercel в пару кликов vibechord — инструмент для запуска нескольких AI-агентов и управления ими из одного места monitorability-evals — открытый датасет от OpenAI для оценки того, насколько хорошо можно отслеживать и контролировать поведение языковых моделей в различных сценариях 🖥 Разбор пяти AI-проектов, набравших тысячи звезд на GitHub: Hermes Agent — самообучающийся ассистент с долгой памятью DeerFlow — мультиагентный фреймворк с изолированными песочницами Multica — аналог Jira для AI-команд Claude Code Game Studios — 48 агентов-коллег для инди-геймдева MarkItDown — конвертер любых документов в Markdown ⚡️ Скиллы ui-skills.com — 12 кураторских скилов для UI Nothing Design Skill — скил для Claude Code по созданию пользовательского интерфейса в дизайн-языке Nothing: монохромный, типографический, индустриальный codex-marketplace.com — каталог плагинов, скилов и хуков для Codex с установкой в одну команду и рейтингом от коммьюнити TBM Recommender — прикручивает к AI-агентам базу рассылки TBM про продукты и менеджмент, вытаскивая релевантные посты через хитрую трехуровневую выборку ради экономии токенов 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🏃♀️ Proglib Academy #буст
Открыть канал и посмотреть медиа🚨 Ловить все исключения подряд — почти всегда плохая идея Многие пишут так: try: ... except (ValueError, TypeError, KeyError, NameError): print("Что-то пошло не так") Выглядит «надёжно». Но на практике такой код часто прячет реальные баги и усложняет отладку. Допустим, вы читаете CSV с датами и хотите обработать ошибки: try: start = parse_date(row["start"]) end = parse_date(row["end"]) except (ValueError, TypeError, KeyError, NameError): print("Некорректная дата") На первый взгляд — всё ок. Но проблема в деталях. 1. NameError здесь вообще лишний NameError обычно означает баг в коде. Например, вы случайно написали: star_date вместо start_date Если ловить NameError, программа просто проглотит ошибку — и вы даже не заметите, что сломали код. Иногда traceback — это полезно. 2. ValueError — логичная ошибка Если в CSV дата битая: 2026-00-01 то datetime честно скажет: ValueError Это уже ошибка данных пользователя — её как раз нормально обрабатывать. 3. TypeError — тоже может быть валидным кейсом Например, если дата отсутствует: name,start,end Q1,2025-01-01, Тут программа получает None вместо даты. Это проблема входных данных, а не вашего кода — обработать её можно. 4. KeyError — не всегда стоит ловить Если пользователь ошибся в заголовке: name,Start,end (большая S вместо маленькой) код выдаст: KeyError: 'start' И это… полезная ошибка. Если вы её поймаете и покажете: > Invalid date on line 1 пользователь вообще не поймёт, что проблема в заголовке. Лучше проверить headers заранее: required = ["name", "start", "end"] for col in required: if col not in reader.fieldnames: print(f"Missing column: {col}") sys.exit(1) Когда except Exception всё-таки нормален Есть исключение из правила: mission-critical код. Например, вы обрабатываете 1000 файлов и не хотите, чтобы один битый файл остановил весь процесс. Тогда такой код оправдан: for path in files: try: process(path) except Exception as e: log_error(path, e) Один файл упал → идём дальше. Главное — логировать ошибку, а не silently ignore. 📍 Навигация: Вакансии • Задачи • Собесы Библиотека питониста #буст
Открыть канал и посмотреть медиа🐍 TIL: в Python можно вручную разбудить lazy import Недавно в Python появились lazy imports — модуль не импортируется сразу, а загружается только тогда, когда он реально нужен. То есть: lazy import json не загружает json сразу в память. Вместо модуля вы получаете специальный объект-заглушку: globals()["json"] # 👇 И тут есть неожиданный трюк. Оказывается, lazy import можно зарезолвить вручную: lazy import json resolved_json = globals()["json"].resolve() После этого: resolved_json.dumps({"x": 1}) будет работать как обычный модуль json. Что интересно — lazy import сам не исчезает: globals()["json"] # То есть Python, вероятно, делает примерно следующее под капотом: globals()["json"] = globals()["json"].resolve() когда понимает, что модуль уже реально понадобился. Самый интересный вопрос здесь: что именно триггерит пробуждение lazy import? Скорее всего, это происходит через __getattribute__ / __getattr__, но сам механизм внутри выглядит довольно элегантно. 📍 Навигация: Вакансии • Задачи • Собесы Библиотека питониста #буст
Открыть канал и посмотреть медиа🧠 Один из лучших способов понять алгоритмы — не читать про них, а смотреть как они работают шаг за шагом. Наткнулись на классный Algorithm Visualizer — интерактивный проект, где можно буквально увидеть алгоритмы в действии. 📍 Навигация: Вакансии • Задачи • Собесы Библиотека питониста #буст
Открыть канал и посмотреть медиаДо 31 мая можно забрать любой курс Proglib Academy со скидкой 40% Если давно хотели прокачаться в Python, ML, алгоритмах или AI-агентах, сейчас самое время выбрать программу и начать обучение по сниженной цене. 🎁 Разработка AI-агентов — от 49.000 ₽ (вместо 69.000 ₽) Практический курс по разработке AI-агентов для автоматизации задач, работы и собственных проектов 🎁 Курс AgentOps — 129.000 ₽ (вместо 149.000 ₽) Для разработчиков и LLM-инженеров, которые хотят внедрять AI-логику в бэкенд и сохранять стабильность сервиса. 🎁 Математика для разработки AI-моделей — 23.990 ₽ (вместо 31.990 ₽) Практическая база по математике для анализа данных, ML и дальнейшего развития в AI. 🎁 Математика для Data Science — от 29.990 ₽ (вместо 39.990 ₽) Курс для тех, кто хочет решать задачи, которые дают на собеседованиях на позицию дата-сайентиста в бигтехе. 🎁 ML для старта в Data Science — 28.990 ₽ (вместо 38.990 ₽) Разберётесь в машинном обучении: от базовых понятий и линейных моделей до ансамблей, бустинга и рекомендательных систем. 🎁 Основы IT для непрограммистов — 16.990 ₽ (вместо 28.990 ₽) Курс для IT-рекрутеров, маркетологов, проджектов, продактов и всех, кто работает с IT, но не пишет код. 🎁 Архитектуры и шаблоны проектирования — 27.990 ₽ (вместо 37.900 ₽) Освоите основные паттерны проектирования и прокачаете навыки архитектора программного обеспечения. 🎁 Специалист по ИИ — 89.000 ₽ (вместо 113.900 ₽) Курс для тех, кто хочет получить профессию в сфере ИИ, собрать портфолио из 5 проектов и научиться разрабатывать сложных AI-агентов. 🎁 Алгоритмы и структуры данных — 33.990 ₽ (вместо 57.990 ₽) Подготовитесь к алгоритмическим собеседованиям, разберёте структуры данных и научитесь писать более эффективный код. 🎁 Программирование на языке Python — 27.990 ₽ (вместо 47.390 ₽) Освоите Python на практике: без сухой теории, с пошаговой прокачкой навыков и итоговым проектом в портфолио. 🙌 Выбирайте курс по ссылке, оставляйте заявку, и менеджер поможет подобрать программу под ваши цели — Ссылка скрыта
Открыть канал и посмотреть медиаБиблиотека питониста #развлекалово
Открыть канал и посмотреть медиа🤖 AI меняет работу разработчиков — вопрос только в масштабе С 8 апреля по 8 мая 2026 года прошло исследование State of Web Dev AI 2026, в котором приняли участие 7 258 разработчиков. И независимо от отношения к AI — за или против — кажется, почти все согласны в одном: ИИ уже серьёзно влияет на то, как мы пишем код, учимся и строим продукты. Исследование собрало много интересных данных о том, как именно меняется работа разработчиков — от ежедневного использования AI-инструментов до отношения к будущему профессии. 👇 Что изменилось у вас за последний год? 📍 Навигация: Вакансии • Задачи • Собесы Библиотека питониста #буст
Открыть канал и посмотреть медиаБиблиотека питониста #развлекалово
Открыть канал и посмотреть медиа🚀 List comprehensions знают все. Но используют их максимум на 20% возможностей Вот приёмы, которые реально стоит добавить в свой арсенал 👇 1️⃣ Условие не только в конце Обычно comprehension используют как фильтр, но if может стоять и в начале — тогда это уже замена значения: # фильтр — оставляем только чётные [x for x in nums if x % 2 == 0] # замена — нечётные превращаем в 0 [x if x % 2 == 0 else 0 for x in nums] 📌 Разница только в позиции if, но смысл полностью меняется. 2️⃣ Flatten — развернуть список списков matrix = [[1,2,3],[4,5,6],[7,8,9]] flat = [x for row in matrix for x in row] 👉 читается как обычный цикл: «для каждой строки → для каждого элемента» 3️⃣ Dict и set comprehensions # инверсия словаря d = {'a': 1, 'b': 2} inv = {v: k for k, v in d.items()} # уникальные домены emails = ['[email protected]', '[email protected]', '[email protected]'] domains = {e.split('@')[1] for e in emails} 4️⃣ Генератор вместо списка (когда данных много) # список — всё в памяти total = sum([x**2 for x in range(10_000_000)]) # генератор — ленивые вычисления total = sum(x**2 for x in range(10_000_000)) ⚡ Вторая версия экономит память в разы — критично для больших данных. 5️⃣ Walrus-оператор := внутри comprehension results = [ y for x in data if (y := heavy_function(x)) > 0 ] 👉 значение считается один раз и сразу используется в условии. 💬 Какой приём был для вас новым? 📍 Навигация: Вакансии • Задачи • Собесы Библиотека питониста #буст
Открыть канал и посмотреть медиаOnly registered users can share their opinion.
Be the first to share your impression of this resource!
Examples of works: covers, previews, logos, avatars and other graphics for inspiration.