🔥 Не пропустите событие лета для DS-комьюнити
23 июня, 19:00 Мск — бесплатный вебинар с Никитой Зелинским «AI-агенты для DS: обзор курса и практические кейсы»
😤 Пока все обсуждают, «как бы внедрить LLM», мы покажем, как строить полноценных AI-агентов, которые делают работу вместо тебя. За час Никита разложит по полочкам:
— архитектуру курса и ключевые модули
— частые ошибки студентов, о которых не принято говорить вслух
— реальные юзкейсы: от чат-ассистентов до систем поддержки решений в проде
➡️ Что почитать от Никиты до Веба:
— Как adversarial-атаки живут даже при смене модели (и почему «подвинуть кровати в борделе» не спасёт)
— Самый быстрый пакетный менеджер uv и эксперимент «pip vs uv»
— 17 методов XAI и 20 метрик на NIPS’24: как не утонуть в «объяснимости»
⚡️ Хотели задать Никите свой каверзный вопрос? Ловите шанс: только в прямом эфире — отвечаем на всё, что обычно «остаётся за кадром».
⏰ МЕСТ МАЛО регистрация закроется, как только забьём комнату. Действуй сейчас → https://clc.to/1iGw6Q
23 июня, 19:00 Мск — бесплатный вебинар с Никитой Зелинским «AI-агенты для DS: обзор курса и практические кейсы»
— архитектуру курса и ключевые модули
— частые ошибки студентов, о которых не принято говорить вслух
— реальные юзкейсы: от чат-ассистентов до систем поддержки решений в проде
— Как adversarial-атаки живут даже при смене модели (и почему «подвинуть кровати в борделе» не спасёт)
— Самый быстрый пакетный менеджер uv и эксперимент «pip vs uv»
— 17 методов XAI и 20 метрик на NIPS’24: как не утонуть в «объяснимости»
⚡️ Хотели задать Никите свой каверзный вопрос? Ловите шанс: только в прямом эфире — отвечаем на всё, что обычно «остаётся за кадром».
⏰ МЕСТ МАЛО регистрация закроется, как только забьём комнату. Действуй сейчас → https://clc.to/1iGw6Q
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁18💯4❤2
🎯 Что посмотреть и решить: LeetCode для Data Science и аналитики
В подборке — подробные разборы популярных задач с LeetCode, полезные для подготовки к собеседованиям в аналитике данных, Data Science и инженерии:
✅ полное пошаговое объяснение решений на SQL и Python
✅ разбор реальных кейсов из технических интервью
✅ советы для новичков и профи, которые хотят повысить уровень
В видео — практические техники и полезные лайфхаки, чтобы уверенно решать задачи и пройти собеседование.
🎬 Смотреть и учиться: https://clc.to/qF59mg
Библиотека питониста #буст
В подборке — подробные разборы популярных задач с LeetCode, полезные для подготовки к собеседованиям в аналитике данных, Data Science и инженерии:
В видео — практические техники и полезные лайфхаки, чтобы уверенно решать задачи и пройти собеседование.
Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍2👏1
🔍 Код-ревью: как не поругаться и улучшить код
Недавно спросили:
Код-ревью — это не просто поиск ошибок. Это часть инженерной культуры: возможность учиться, делиться опытом и вместе делать код лучше.
Но чтобы ревью не стало тормозом или ареной споров, важно выстроить процесс правильно.
1️⃣ Чёткие цели и ожидания
Ревью — это не только «работает или нет». Мы смотрим на читаемость, архитектуру, соответствие гайдлайнам, тесты, безопасность и возможные побочные эффекты.
✅ Важно заранее договориться, что считается «блокером», а что — рекомендацией.
2️⃣ Гайдлайны и чек-листы
Хороший чек-лист помогает не забыть важное:
✅ Есть ли тесты и документация?
✅ Соответствует ли код стилю (
✅ Не сломано ли API?
✅ Понятна ли логика?
Такой список снижает субъективность и упрощает обсуждение.
3️⃣ Формат общения
Тон — критически важен. Мы не говорим:
🙅♂️ «Почему ты сделал это так странно?»
А говорим:
✅ «Как думаешь, если сделать вот так — будет понятнее? Вот пример...»
Ревью — это диалог, а не суд. И да, автор тоже имеет право отстоять решение, если оно обоснованное.
4️⃣ Обратная связь и обучение
Каждое ревью — шанс узнать что-то новое.
✅ Хорошие команды не просто указывают на ошибку, а объясняют «почему» и «как лучше».
5️⃣ Инструменты и скорость
Обычно используется Pull Request + CI.
Линтеры и типизация (
✅ Ревью лучше делать в течение дня, чтобы не тормозить разработку.
💬 А как устроено ревью у вас в команде? Что работает, а что вызывает споры? Делитесь в комментариях 👇
Библиотека питониста #междусобойчик
Недавно спросили:
Как вы организуете код-ревью в Python-команде и как избежать конфликтов?
Код-ревью — это не просто поиск ошибок. Это часть инженерной культуры: возможность учиться, делиться опытом и вместе делать код лучше.
Но чтобы ревью не стало тормозом или ареной споров, важно выстроить процесс правильно.
Ревью — это не только «работает или нет». Мы смотрим на читаемость, архитектуру, соответствие гайдлайнам, тесты, безопасность и возможные побочные эффекты.
Хороший чек-лист помогает не забыть важное:
black
, ruff
, mypy
)?Такой список снижает субъективность и упрощает обсуждение.
Тон — критически важен. Мы не говорим:
А говорим:
Ревью — это диалог, а не суд. И да, автор тоже имеет право отстоять решение, если оно обоснованное.
Каждое ревью — шанс узнать что-то новое.
Обычно используется Pull Request + CI.
Линтеры и типизация (
black
, ruff
, mypy
) — на автомате, чтобы не обсуждать стиль вручную.💬 А как устроено ревью у вас в команде? Что работает, а что вызывает споры? Делитесь в комментариях 👇
Библиотека питониста #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤4🔥3😢1
Юлия, мидл Python-разработчик, рассказывает о том, как использует AI-технологии для автоматизации программирования.
Какие AI-инструменты облегчают вашу работу с Python? Делитесь в комментариях 👇
Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13👍6👏3😢1
😤 «AI-агенты — это всё игрушки, зачем на это курс покупать, когда всё есть в интернете?!»
Ага, конечно. Вот только на YouTube никто не:
Уже 23 июня в 19:00 по МСК ты можешь сам всё узнать на бесплатном вебинаре с экспертом Никитой Зелинским.
👉 Что будет на вебинаре:
— Разбор структуры курса
— Ответы на частые вопросы студентов
— Примеры из реальных проектов с AI-агентами
— И, конечно, как это всё можно использовать в работе прямо сейчас
А если уже всё понял и хочешь идти учиться — лови промокодlucky на 5.000₽
🔗 Ссылка на курс
P.s. Ждем тебя!
Ага, конечно. Вот только на YouTube никто не:
• Разберет твои вопросы вживую
• Не покажет, как применять AI-агентов на практике
• Не поможет встроить это в реальную работу DS-специалиста
Уже 23 июня в 19:00 по МСК ты можешь сам всё узнать на бесплатном вебинаре с экспертом Никитой Зелинским.
👉 Что будет на вебинаре:
— Разбор структуры курса
— Ответы на частые вопросы студентов
— Примеры из реальных проектов с AI-агентами
— И, конечно, как это всё можно использовать в работе прямо сейчас
А если уже всё понял и хочешь идти учиться — лови промокод
🔗 Ссылка на курс
P.s. Ждем тебя!
❤5👾1
Думаешь, чтобы стать крутым программистом, нужен диплом престижного вуза? А вот и нет!
И знаешь что? Этому может научиться каждый.
Читайте полную статью и узнайте, какие качества помогут вам стать настоящим профи!
▶️ Читать статью
Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🔥1
📌 Холивар: одна строка — одно действие
В сообществе Python-программистов давно спорят: как лучше оформлять код — разбивать каждое действие на отдельную строку или использовать методные цепочки?
➡️ Подход «одна строка — одно действие»:
— Улучшает читаемость
— Упрощает отладку
— Позволяет легко комментировать каждое действие
— Делает
Пример:
➡️ Подход с цепочками методов:
— Более выразителен, особенно при работе с данными
— Помогает избежать временных переменных
— Позволяет видеть весь «путь трансформации» объекта в одном месте
— Хорошо работает с API вроде pandas, SQLAlchemy, Fluent-style интерфейсами
Пример:
⚠️ Но где проходит граница между выразительностью и нечитаемым монолитом?
💬 А вы что предпочитаете в повседневной практике — лаконичные цепочки или строго пошаговый стиль?
Приводите примеры, делитесь опытом — обсудим!
Библиотека питониста #междусобойчик
В сообществе Python-программистов давно спорят: как лучше оформлять код — разбивать каждое действие на отдельную строку или использовать методные цепочки?
— Улучшает читаемость
— Упрощает отладку
— Позволяет легко комментировать каждое действие
— Делает
git diff
и blame
более нагляднымиПример:
df = df.dropna()
df = df[df["age"] > 18]
df = df.sort_values("score", ascending=False)
df = df.reset_index(drop=True)
— Более выразителен, особенно при работе с данными
— Помогает избежать временных переменных
— Позволяет видеть весь «путь трансформации» объекта в одном месте
— Хорошо работает с API вроде pandas, SQLAlchemy, Fluent-style интерфейсами
Пример:
df = (
df.dropna()
[df["age"] > 18]
.sort_values("score", ascending=False)
.reset_index(drop=True)
)
⚠️ Но где проходит граница между выразительностью и нечитаемым монолитом?
Приводите примеры, делитесь опытом — обсудим!
Библиотека питониста #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤4🔥3❤🔥1
😱 Уже завтра — вебинар про AI-агентов! Мест почти не осталось
На вебинаре вы получите то, чего нет в открытых источниках — живой разбор, примеры и прямой диалог с экспертом. Но только если придёте.
➡️ Что будет:
— покажем структуру курса и ключевые модули
— обсудим вопросы, которые обычно остаются за кадром
— разберём реальные кейсы: как применять AI-агентов — от чат-ботов до систем поддержки решений
📅 Уже 23 июня в 19:00 МСК
🎙️ Ведёт Никита Зелинский — эксперт в AI и DS
👉 Зарегистрируйтесь заранее, чтобы не забыть:
https://clc.to/_lDV0Q
🫢 Для тех, кто дочитал до конца →промокод lucky, он даст −5.000₽ на курс
На вебинаре вы получите то, чего нет в открытых источниках — живой разбор, примеры и прямой диалог с экспертом. Но только если придёте.
➡️ Что будет:
— покажем структуру курса и ключевые модули
— обсудим вопросы, которые обычно остаются за кадром
— разберём реальные кейсы: как применять AI-агентов — от чат-ботов до систем поддержки решений
📅 Уже 23 июня в 19:00 МСК
🎙️ Ведёт Никита Зелинский — эксперт в AI и DS
👉 Зарегистрируйтесь заранее, чтобы не забыть:
https://clc.to/_lDV0Q
🫢 Для тех, кто дочитал до конца →
❤3👍1
За последние 7 дней в экосистеме Python вышло множество заметных обновлений. Вот самые интересные из них — с краткими пояснениями, зачем они могут быть вам полезны:
Библиотека питониста #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤2👏1
Forwarded from Библиотека задач по Python | тесты, код, задания
Что выведет код сверху?
👾 — Ошибок нет
👍 — Деление на ноль!
🥰 — ZeroDivisionError
⚡️ — Ничего
Библиотека задач по Python
👾 — Ошибок нет
👍 — Деление на ноль!
🥰 — ZeroDivisionError
⚡️ — Ничего
Библиотека задач по Python
👍142👾4🥰2⚡1
Python разработчик — от 100 000 ₽, удалёнка
Python-разработчик — от 195 000 до 250 000 ₽, удалёнка
Django Backend Developer — от 250 000 до 330 000 ₽, гибрид (Санкт-Петербург)
Программист-разработчик Python — от 200 000 ₽, офис (Москва)
Team Lead Python (E-commerce), офис (Москва)
Библиотека питониста
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5👍2
Mojo — компилируемый язык с синтаксисом Python и скоростью C. Создан для ML, численных вычислений и высокопроизводительного кода.
Теперь Python умеет напрямую вызывать Mojo-функции — и это меняет игру.
1. Установка:
uv pip install modular --index-url https://dl.modular.com/public/nightly/python/simple/
2. Mojo-функция:
fn factorial(py_obj: PythonObject) raises -> PythonObject:
var n = Int(py_obj)
var result = 1
for i in range(1, n + 1):
result *= i
return result
3. Вызов из Python:
import mojo_module
print(mojo_module.factorial(10))
На
factorial(10)
разница небольшая.Но при подсчёте простых чисел до 20 000:
— Python: \~0.45 сек
— NumPy: \~0.26 сек
— Mojo: \~0.01 сек (!)
При больших числах (
factorial(100)
) возможны переполнения — тип Int
ограничен. Также Mojo всё ещё в стадии активной разработки.Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤6❤🔥1
Сейчас большинство представлений об ИИ ограничиваются одним агентом — моделькой, которая что-то предсказывает, генерирует или классифицирует.
Но реальный прорыв начинается, когда этих агентов становится несколько.
Когда они начинают взаимодействовать друг с другом.
Когда появляется координация, распределение ролей, память, планирование — всё это и есть мультиагентные системы (MAS).
— Microsoft делает язык DroidSpeak для общения между LLM
— Open Source-фреймворки вроде LangChain, AutoGen, CrewAI, LangGraph — бурно развиваются
— компании, включая МТС, уже применяют MAS в боевых задачах
🎓 На курсе мы подходим к этому практично:
Именно на третьем уроке вы впервые собираете не просто «умного бота», а живую систему из агентов, которая работает вместе — как команда.
Причём по-настоящему: врач, SQL-аналитик, travel-планировщик, Python-генератор, поисковик.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍1
GIL — удобное решение для безопасности, но стало тормозом.
— Guido van Rossum
GIL (Global Interpreter Lock) — глобальная блокировка интерпретатора Python. Она не даёт выполнять Python-байткод более чем одному потоку одновременно.
Это решение появилось ещё в 90-х, когда одноядерные процессоры были нормой. Сейчас же — реальность многопоточная. А GIL мешает полностью использовать многозадачность на уровне CPU.
Из-за GIL Python-программы не могут полноценно использовать многопоточность в CPU-bound задачах. Вместо этого:
— мы используем
multiprocessing
, создавая отдельные процессы (дорого)— мы прибегаем к C-библиотекам: NumPy, Cython, PyTorch, чтобы обойти ограничения
Но всё это — костыли. И комьюнити давно мечтает избавиться от GIL.
PEP 703 предлагает сделать GIL опциональным.
Вместо полного отказа от GIL — аккуратный переход:
1. Python 3.13 (вышел в 2024) — можно собрать без GIL (
--disable-gil
)2. 2026–2027 — возможность переключения GIL в рантайме
3. 2028+ — по умолчанию Python будет без GIL
1. Скачайте установщик Python 3.13 с офсайта
2. На этапе установки выберите Free-threaded Python (experimental)
3. После установки появятся два интерпретатора:
—
python3.13
— обычный—
python3.13t
— Python без GILПроверьте:
import sysconfig
print(sysconfig.get_config_var("Py_GIL_DISABLED"))
# True для python3.13t
Пример CPU-bound задачи с потоками:
import threading, time
def cpu_task(n):
s = 0
for i in range(n): s += i*i
N = 100_000_000
def run():
threads = [threading.Thread(target=cpu_task, args=(N,)) for _ in range(4)]
start = time.time()
for t in threads: t.start()
for t in threads: t.join()
print(f'{time.time() - start:.2f} сек')
run()
— Python 3.13:
~13.5 сек
— Python 3.13t (без GIL):
~3.7 сек
Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
❤21👍8🔥5⚡1