Разработчик, много лет использующий SQLAlchemy, представил собственный ORM — SQLORM, рождённый из желания работать «ближе к базе» и избавиться от магии Unit of Work. В центре подхода — чистый SQL, вызываемый напрямую из Python-функций через докстринги, без скрытых транзакций и привязки объектов к сессии.
Например, SQL-функция здесь выглядит так:
@sql
def get_recent_orders(start_date, end_date):
"""
SELECT * FROM orders
WHERE created_at BETWEEN :start_date AND :end_date
ORDER BY created_at DESC
"""
А модели работают как лёгкий Active Record:
class User(Model):
id: int
name: str
email: str
# Запросы выполняются сразу — без Unit of Work
user = User.insert(name="Alice", email="[email protected]")
SQLORM позволяет выбирать данные из одной базы и вставлять в другую, не привязывая модели к конкретному движку. Модели следуют паттерну Active Record, поддерживают ленивую загрузку, связи и аннотации для генерации DDL. При этом ORM остаётся максимально тонкой оболочкой над DB-API и не пытается скрывать SQL под query builder’ом или DSL.
Проект уже имеет хорошую документацию и интеграцию с Flask.
@python_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤3🔥3
16 ноября 2005 года Адриан Холловейти объявил о первом релизе Django 0.90 — и вот, два десятилетия спустя, команда выпускает первый релиз-кандидат Django 6.0. Юбилей фреймворк встречает не с ностальгией, а с внушительной статистикой.
Вот что говорит двадцатилетняя история Django:
Django за 20 лет стал примером того, как выглядит действительно стабильный и зрелый фреймворк: без резких поворотов, с постепенными улучшениями и проработанными фикcами. И команда уверяет — следующие двадцать лет будут такими же продуктивными.
@python_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍7❤3
Андрей Карпаты (экс-директор по ИИ в Tesla) выложил llm-council — небольшой проект, в котором один запрос обрабатывают сразу несколько моделей.
Каждая генерирует свой ответ, после чего им показывают анонимные варианты друг друга. Модели критикуют, сравнивают и оценивают ответы, а итог формирует отдельная модель-«председатель», получающая весь контекст обсуждения.
Идея не нова, но масштаб личности заставил многих обратить внимание на этот проект (уже почти 4к звёзд на GitHub).
Карпаты использует этот подход для разбора сложных книг: LLM спорят о содержании глав, находят слабые места в аргументации друг друга и принимают коллективное решение. Интересно, что в таких «совещаниях» модели часто выбирают GPT-5.1 как наиболее качественный вариант, а Sonnet — как наименее полезный.
Код бэкенда для этого проекта небольшой, полностью на Python и легко читается.
@python_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍4🔥3😁1
В новой статье говорим о том, как делать код на Python быстрее без переписывания проектов с нуля.
В статье 10 практичных приёмов — от
sets и bisect до локальных функций и предвыделения памяти — которые дают реальный прирост скорости в типовых сценариях.📚 Читать на Хабр: https://habr.com/ru/articles/969848/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥4❤2🤩1
🐍 Почему Python — вообще не идеален для data science — и что с этим не так
Перевели любопытную статью: Клаус Вилке объясняет, почему Python, несмотря на статус языка №1 в data science, на самом деле делает многие базовые вещи... неудобными. И дело не в студентах, не в навыках и даже не в привычках — проблема глубже.
Автор двадцать лет руководит биоинформатической лабораторией. И вот типичный сценарий: студент показывает анализ, Клаус просит «чуть поменять график» — violin вместо boxplot, heatmap вместо line plot, плотность вместо гистограммы.
В R это 2–3 строки. В случае с Python студенты обычно отвечают:
И речь о вполне сильных ребятах.
Даже опытные дата-сайентисты, которые знают pandas, NumPy и matplotlib вдоль и поперёк, постоянно тонут в синтаксических костылях: лишние кавычки, лишние скобки, лишние манипуляции. То, что в R выражается естественным языком, Python требует «ручной сборки»: группировки вручную, столбцы в кавычках, агрегаты в виде кортежей, а иногда и возвращение в мир списков, циклов и словарей — просто чтобы сделать что-то концептуально простое.
Да, pandas вроде бы закрывает большинство задач. Но стоит анализу выйти за рамки «группировка + среднее» — и инструменты начинают работать против пользователя. Автор честно признаёт: в Python слишком легко сорваться с уровня анализа на уровень рутинной возни.
Вилке формулирует простой критерий: хороший язык для data science — это тот, где вы описываете намерение, а не механику. «Хочу взять пингвинов, убрать пропуски, сгруппировать по виду и острову, посчитать статистики». На R это почти копирует естественную фразу. В Python — похожие конструкции есть, но гораздо быстрее оказываешься среди индексов, типов и мелкой логики.
📚 Читайте и комментарийте на Хабр.
@python_for_devs
Перевели любопытную статью: Клаус Вилке объясняет, почему Python, несмотря на статус языка №1 в data science, на самом деле делает многие базовые вещи... неудобными. И дело не в студентах, не в навыках и даже не в привычках — проблема глубже.
Автор двадцать лет руководит биоинформатической лабораторией. И вот типичный сценарий: студент показывает анализ, Клаус просит «чуть поменять график» — violin вместо boxplot, heatmap вместо line plot, плотность вместо гистограммы.
В R это 2–3 строки. В случае с Python студенты обычно отвечают:
Окей, дайте немного времени, я вернусь
И речь о вполне сильных ребятах.
Даже опытные дата-сайентисты, которые знают pandas, NumPy и matplotlib вдоль и поперёк, постоянно тонут в синтаксических костылях: лишние кавычки, лишние скобки, лишние манипуляции. То, что в R выражается естественным языком, Python требует «ручной сборки»: группировки вручную, столбцы в кавычках, агрегаты в виде кортежей, а иногда и возвращение в мир списков, циклов и словарей — просто чтобы сделать что-то концептуально простое.
Да, pandas вроде бы закрывает большинство задач. Но стоит анализу выйти за рамки «группировка + среднее» — и инструменты начинают работать против пользователя. Автор честно признаёт: в Python слишком легко сорваться с уровня анализа на уровень рутинной возни.
Вилке формулирует простой критерий: хороший язык для data science — это тот, где вы описываете намерение, а не механику. «Хочу взять пингвинов, убрать пропуски, сгруппировать по виду и острову, посчитать статистики». На R это почти копирует естественную фразу. В Python — похожие конструкции есть, но гораздо быстрее оказываешься среди индексов, типов и мелкой логики.
📚 Читайте и комментарийте на Хабр.
@python_for_devs
Хабр
Почему Python — не лучший язык для data science. Часть 1 — опыт разработчика и исследователя
Команда Python for Devs подготовила перевод статьи Клауса Вилке о том, почему Python, несмотря на статус языка №1 в data science, вовсе не идеален для анализа данных. Автор показывает на реальных...
👍6🔥3💯3
🤩 Django 6.0 получил встроенные фоновые задачи — но это только начало пути
Django наконец добавил единый API для фоновых задач — модуль
Но есть нюанс: в Django 6.0 нет воркеров. Совсем. Фреймворк умеет ставить задачи в очередь, но не умеет их выполнять — этим по-прежнему должны заниматься внешние процессы. Из коробки есть только
Де-факто, это первый шаг большого пути, цель которого — не заменить Celery, а дать унифицированное ядро, на котором будут строиться адаптеры, бекенды и новые Open source-решения. Именно поэтому в Django 6.0 API простое и намеренно ограниченное: никаких ретраев, оркестрации, бэкоффов или цепочек задач.
@python_for_devs
Django наконец добавил единый API для фоновых задач — модуль
django.tasks. Это важное изменение: раньше у каждого решения (Celery, Huey, RQ и др.) были свои декораторы, свои подходы. Теперь есть общий стандарт, на который можно опираться.Но есть нюанс: в Django 6.0 нет воркеров. Совсем. Фреймворк умеет ставить задачи в очередь, но не умеет их выполнять — этим по-прежнему должны заниматься внешние процессы. Из коробки есть только
ImmediateBackend, который запускает задачу тут же, и DummyBackend, который не делает ничего.Де-факто, это первый шаг большого пути, цель которого — не заменить Celery, а дать унифицированное ядро, на котором будут строиться адаптеры, бекенды и новые Open source-решения. Именно поэтому в Django 6.0 API простое и намеренно ограниченное: никаких ретраев, оркестрации, бэкоффов или цепочек задач.
@python_for_devs
Хабр
Первый взгляд на новые фоновые задачи в Django 6.0
Команда Python for Devs подготовила перевод статьи о новых фоновых задачах в Django 6.0. Фреймворк наконец получил встроенный API для очередей задач — но без воркеров, так что чудес пока ждать рано....
👍7🔥3⚡2
🚀 Вышел Django 6.0
Фреймворк получил встроенные Background Tasks — лёгкий способ запускать фоновые процессы без Celery и тяжёлой инфраструктуры. Про них мы как раз недавно рассказывали.
Появились Template Partials — нормальные переиспользуемые куски шаблонов вместо хака с наследованием. Вёрстка сложных страниц станет куда чище.
На стороне безопасности — нативный CSP, наконец-то без сторонних пакетов. Плюс обновлённый Email API на базе
С релизом 6.0 ветки 5.2 и 5.1 ушли с основной поддержки — для всех старых проектов самое время планировать апдейт.
@python_for_devs
Фреймворк получил встроенные Background Tasks — лёгкий способ запускать фоновые процессы без Celery и тяжёлой инфраструктуры. Про них мы как раз недавно рассказывали.
Появились Template Partials — нормальные переиспользуемые куски шаблонов вместо хака с наследованием. Вёрстка сложных страниц станет куда чище.
На стороне безопасности — нативный CSP, наконец-то без сторонних пакетов. Плюс обновлённый Email API на базе
EmailMessage.С релизом 6.0 ветки 5.2 и 5.1 ушли с основной поддержки — для всех старых проектов самое время планировать апдейт.
@python_for_devs
👍8🔥3⚡2❤1
Forwarded from AI for Devs
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ JetBrains представила Air: новую агентную IDE
Компания выпустила Air — ADE (Agentic Development Environment), ориентированную на гибридную работу «разработчик + ИИ-агенты».
Это не просто чат с моделью внутри IDE, а отдельная среда разработки, где можно ставить задачи агентам, запускать их параллельно, контролировать изменения и коммитить результаты.
Air пока доступен в превью и работает только с одним агентом — Claude Agent, причём для использования требуется активная подписка Anthropic.
Версии для Windows и Linux обещают в 2026 году — сейчас приложение доступно только на macOS.
Сайт | Документация | Анонс в X | Анонс на Habr
@ai_for_devs
Компания выпустила Air — ADE (Agentic Development Environment), ориентированную на гибридную работу «разработчик + ИИ-агенты».
Это не просто чат с моделью внутри IDE, а отдельная среда разработки, где можно ставить задачи агентам, запускать их параллельно, контролировать изменения и коммитить результаты.
Air пока доступен в превью и работает только с одним агентом — Claude Agent, причём для использования требуется активная подписка Anthropic.
Версии для Windows и Linux обещают в 2026 году — сейчас приложение доступно только на macOS.
Сайт | Документация | Анонс в X | Анонс на Habr
@ai_for_devs
👍7😱4🔥3
Python for Devs
🐍 Почему Python — вообще не идеален для data science — и что с этим не так Перевели любопытную статью: Клаус Вилке объясняет, почему Python, несмотря на статус языка №1 в data science, на самом деле делает многие базовые вещи... неудобными. И дело не в студентах…
🐍 Почему Python — не лучший язык для data science. Часть 2
В продолжении цикла статей разбираемся уже не с привычками сообщества, а с ограничениями *самого языка* — и тем, почему они делают анализ данных в Python заметно тяжелее, чем в R.
Главная мысль проста: многие боли pandas и NumPy — не ошибки библиотек, а следствие того, как устроен Python изнутри.
🟣 Python тянет за собой call-by-reference: любая функция может незаметно мутировать ваш объект.
🟣 В языке нет единого представления пропусков — поэтому у NumPy одно, у pandas другое, у Polars третье, и все ведут себя по-своему.
🟣 Отсутствует встроенная векторизация, что рождает зоопарк несовместимых структур: списки, NumPy arrays, pandas Series, Polars Series — и бесконечные преобразования между ними.
И наконец — главный проигрыш Python: отсутствие нестандартной оценки выражений. То, что в R делается одной строкой, в Python превращается в лямбды, временные колонки и ручную сборку синтаксиса.
📚 Читайте и комментируйте на Хабр.
@python_for_devs
В продолжении цикла статей разбираемся уже не с привычками сообщества, а с ограничениями *самого языка* — и тем, почему они делают анализ данных в Python заметно тяжелее, чем в R.
Главная мысль проста: многие боли pandas и NumPy — не ошибки библиотек, а следствие того, как устроен Python изнутри.
И наконец — главный проигрыш Python: отсутствие нестандартной оценки выражений. То, что в R делается одной строкой, в Python превращается в лямбды, временные колонки и ручную сборку синтаксиса.
📚 Читайте и комментируйте на Хабр.
@python_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤3🔥3
⚡️ Вышел PyCharm 2025.3
В новом релизе JetBrains объединили пользователей Community с основным дистрибутивом, усилили инструменты для Data Science и удалённой разработки, а также расширили поддержку современных LSP-сервисов.
Коротко — самое важное:
— Community Edition переехал в единый дистрибутив PyCharm, вместе с полной поддержкой Jupyter.
— Полная работа с Jupyter-ноутбуками при удалённой разработке (Pro): интерактивные таблицы, графики, Variables, Data View.
— uv теперь менеджер окружений по умолчанию — быстрый старт и автоматическая установка нужной версии Python.
— Упреждающий анализ данных для pandas: пропуски, выбросы, дубликаты, корреляции + Fix with AI.
— Поддержка Ruff, Pyrefly, Pyright и ty через LSP — форматирование, типы, выводимые аннотации прямо в коде.
— Новое окно Process Output: вся диагностика команд IDE в одном месте, без модальных поп-апов.
— Новая тема интерфейса Islands по умолчанию.
— Обновлённый немодальный Welcome-экран с быстрым стартом проектов.
📚 Читайте и комментируйте на Хабр.
@python_for_devs
В новом релизе JetBrains объединили пользователей Community с основным дистрибутивом, усилили инструменты для Data Science и удалённой разработки, а также расширили поддержку современных LSP-сервисов.
Коротко — самое важное:
— Community Edition переехал в единый дистрибутив PyCharm, вместе с полной поддержкой Jupyter.
— Полная работа с Jupyter-ноутбуками при удалённой разработке (Pro): интерактивные таблицы, графики, Variables, Data View.
— uv теперь менеджер окружений по умолчанию — быстрый старт и автоматическая установка нужной версии Python.
— Упреждающий анализ данных для pandas: пропуски, выбросы, дубликаты, корреляции + Fix with AI.
— Поддержка Ruff, Pyrefly, Pyright и ty через LSP — форматирование, типы, выводимые аннотации прямо в коде.
— Новое окно Process Output: вся диагностика команд IDE в одном месте, без модальных поп-апов.
— Новая тема интерфейса Islands по умолчанию.
— Обновлённый немодальный Welcome-экран с быстрым стартом проектов.
📚 Читайте и комментируйте на Хабр.
@python_for_devs
👍7❤4🔥4
В свежем релизе фреймворк усиливает совместимость между СУБД, упрощает работу с email, улучшает ORM, добавляет удобства в шаблонах и снижает риск «выгорания» первичных ключей.
По сути эта статья – практическое руководство по миграции с пояснениями «почему именно так».
📚 Читайте и комментируйте на Хабр.
@python_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥4👍3
⚔️ Pyrefly & ty — два новых Rust-анализатора типов для Python
Оба работают инкрементально, используют Ruff для AST и показывают отличную скорость. В бенчмарках на PyTorch и pyrefly и ty оказываются в 10–20 раз быстрее классических анализаторов, причём ty в тестах стабильно обгоняет pyrefly ещё в 2–3 раза.
Pyrefly идёт по пути агрессивного вывода типов — пытается вывести максимум даже из полностью неаннотированного кода и за счёт этого ловит тонкие ошибки, которые mypy и pyright пропускают. Минус такой стратегии — иногда появляются ошибки там, где Python-программа вообще-то работает. Зато дженерики, перегрузки и сложные контейнеры pyrefly уже сейчас обрабатывает весьма уверенно.
ty, наоборот, придерживается принципа gradual guarantee: если код рабочий, анализатор не должен превращать его в «кладбище ошибок». Он реже делает жёсткие выводы, выдаёт значительно более читабельные ошибки и вводит крутые новые возможности вроде intersection types и negation types — единственная реализация таких типов в Python-анализаторах на сегодня.
Пощупать можно уже сейчас: у pyrefly есть sandbox, у ty — playground.
@python_for_devs
Оба работают инкрементально, используют Ruff для AST и показывают отличную скорость. В бенчмарках на PyTorch и pyrefly и ty оказываются в 10–20 раз быстрее классических анализаторов, причём ty в тестах стабильно обгоняет pyrefly ещё в 2–3 раза.
Pyrefly идёт по пути агрессивного вывода типов — пытается вывести максимум даже из полностью неаннотированного кода и за счёт этого ловит тонкие ошибки, которые mypy и pyright пропускают. Минус такой стратегии — иногда появляются ошибки там, где Python-программа вообще-то работает. Зато дженерики, перегрузки и сложные контейнеры pyrefly уже сейчас обрабатывает весьма уверенно.
ty, наоборот, придерживается принципа gradual guarantee: если код рабочий, анализатор не должен превращать его в «кладбище ошибок». Он реже делает жёсткие выводы, выдаёт значительно более читабельные ошибки и вводит крутые новые возможности вроде intersection types и negation types — единственная реализация таких типов в Python-анализаторах на сегодня.
Пощупать можно уже сейчас: у pyrefly есть sandbox, у ty — playground.
@python_for_devs
❤6👍4🔥2
🎓 Нашли бесплатный курс Introduction to LangChain (Python)
Внутри:
— 28 уроков
— 1.5+ часа видео
— практические проекты
Для тех, кто хочет уверенно войти в агентные системы: https://academy.langchain.com/courses/foundation-introduction-to-langchain-python
@python_for_devs
Внутри:
— 28 уроков
— 1.5+ часа видео
— практические проекты
Для тех, кто хочет уверенно войти в агентные системы: https://academy.langchain.com/courses/foundation-introduction-to-langchain-python
@python_for_devs
👍8🔥4❤3
This media is not supported in your browser
VIEW IN TELEGRAM
🎥 Manim — математические анимации уровня 3Blue1Brown на Python
Статичные формулы и графики плохо объясняют сложные идеи. Manim решает эту проблему, позволяя создавать математические анимации кодом — в том самом стиле, который сделал 3Blue1Brown эталоном визуальных объяснений.
Через Python можно управлять всем: фигурами, LaTeX-формулами, их пошаговыми преобразованиями, движением камеры и траекториями. Manim особенно хорош там, где важно показать процесс рассуждения, а не просто финальный результат — выводы формул, геометрию, графики функций.
📚 Подробнее в нашей новой статье на Хабре.
@python_for_devs
Статичные формулы и графики плохо объясняют сложные идеи. Manim решает эту проблему, позволяя создавать математические анимации кодом — в том самом стиле, который сделал 3Blue1Brown эталоном визуальных объяснений.
Через Python можно управлять всем: фигурами, LaTeX-формулами, их пошаговыми преобразованиями, движением камеры и траекториями. Manim особенно хорош там, где важно показать процесс рассуждения, а не просто финальный результат — выводы формул, геометрию, графики функций.
📚 Подробнее в нашей новой статье на Хабре.
@python_for_devs
👍7❤3🔥3
⚡️ Опубликована предварительная страница What’s new in Python 3.15
До релиза ещё далеко, документ в статусе draft и будет заметно меняться, но часть ключевых направлений уже видна.
Коротко, что уже заявлено:
— PEP 799: отдельный пакет для профилирования и организации profiling-инструментов
— PEP 799: Tachyon — высокочастотный статистический sampling-профайлер
— PEP 686: UTF-8 становится кодировкой по умолчанию
— PEP 782: новый C API PyBytesWriter для создания bytes-объектов
— Существенные обновления JIT-компилятора
— Улучшенные сообщения об ошибках
Полный список изменений и детали в официальном changelog.
@python_for_devs
До релиза ещё далеко, документ в статусе draft и будет заметно меняться, но часть ключевых направлений уже видна.
Коротко, что уже заявлено:
— PEP 799: отдельный пакет для профилирования и организации profiling-инструментов
— PEP 799: Tachyon — высокочастотный статистический sampling-профайлер
— PEP 686: UTF-8 становится кодировкой по умолчанию
— PEP 782: новый C API PyBytesWriter для создания bytes-объектов
— Существенные обновления JIT-компилятора
— Улучшенные сообщения об ошибках
Полный список изменений и детали в официальном changelog.
@python_for_devs
Python documentation
What’s new in Python 3.15
Editor, Hugo van Kemenade,. This article explains the new features in Python 3.15, compared to 3.14. For full details, see the changelog. Summary – Release highlights: PEP 799: A dedicated profilin...
👍8⚡3🔥2❤1
В новой статье рассматриваем релиз через призму внутреннего устройства интерпретатора и производительности:
– свободная многопоточность
– конкурентные интерпретаторы
– удалённая отладка
– инкрементальная сборка мусора
– и новый Tail Calling интерпретатор
Это взгляд инженера на то, как Python становится быстрее, масштабируемее и взрослее.
📚 Читайте и комментируйте на Хабр.
@python_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤3🔥2
🤔 Почему Python иногда «течёт» по памяти — и при чём тут weakref
В Python управление памятью в основном держится на подсчёте ссылок: объект живёт, пока на него есть хотя бы одна сильная ссылка. В большинстве случаев это работает прозрачно, но есть коварные сценарии — циклические ссылки, кэши и списки подписчиков — где объекты начинают жить дольше, чем нужно.
Да, в CPython есть GC, который умеет разрывать циклы. Но он запускается не сразу, работает не бесплатно и не спасает от логических утечек, когда вы сами «держите» объект через кэш или реестр.
Здесь на сцену выходят слабые ссылки (
На практике это даёт несколько очень полезных паттернов:
— автоочищающиеся кэши через
— реестры и singleton-подобные структуры, которые не держат объекты насильно
— списки подписчиков (`WeakSet`), где не нужно вручную отписывать «умершие» объекты
— аккуратную работу с долгоживущими менеджерами и короткоживущими сущностями
Отдельный бонус — callbacks у
📚 Подробнее в нашей новой статье на Хабре.
@python_for_devs
В Python управление памятью в основном держится на подсчёте ссылок: объект живёт, пока на него есть хотя бы одна сильная ссылка. В большинстве случаев это работает прозрачно, но есть коварные сценарии — циклические ссылки, кэши и списки подписчиков — где объекты начинают жить дольше, чем нужно.
Да, в CPython есть GC, который умеет разрывать циклы. Но он запускается не сразу, работает не бесплатно и не спасает от логических утечек, когда вы сами «держите» объект через кэш или реестр.
Здесь на сцену выходят слабые ссылки (
weakref). Они позволяют ссылаться на объект, не продлевая его жизнь. Как только пропадают сильные ссылки — объект удаляется, даже если на него кто-то «смотрит» через weakref.На практике это даёт несколько очень полезных паттернов:
— автоочищающиеся кэши через
WeakValueDictionary— реестры и singleton-подобные структуры, которые не держат объекты насильно
— списки подписчиков (`WeakSet`), где не нужно вручную отписывать «умершие» объекты
— аккуратную работу с долгоживущими менеджерами и короткоживущими сущностями
Отдельный бонус — callbacks у
weakref: можно повесить логику очистки, которая сработает ровно в момент сборки объекта.📚 Подробнее в нашей новой статье на Хабре.
@python_for_devs
Хабр
Как устроено управление памятью в Python и какую роль в нём играют слабые ссылки
Команда Python for Devs подготовила перевод статьи о слабых ссылках в Python и управлении памятью. В материале разбирается, как работает подсчёт ссылок, почему циклические зависимости приводят к...
👍6❤2🔥2
Forwarded from AI for Devs
На прошлой неделе Habr опубликовал итоги года — и наш проект попал в ТОП-2 среди UGC-авторов (независимых, не аффилированных с компаниями) и в ТОП-8 overall!
Учитывая, что активно публиковаться мы начали только в сентябре, результат за один квартал, на мой взгляд, более чем достойный. Проект изначально запускался как эксперимент — и теперь уже можно уверенно сказать, что эксперимент удался.
В следующем году постараемся как минимум сохранить текущие темпы, а как максимум — заметно их преумножить. Если вы следите только за одним из каналов проекта, напоминаю полный список наших ресурсов:
— @ai_for_devs — флагман проекта. Неудивительно, учитывая взрывной рост прикладного ИИ именно для разработчиков
— @go_for_devs — второй по популярности, но самый активный по вовлечённости
— @python_for_devs — канал, с которого всё началось, и этим он прекрасен
— @js_for_devs — здесь всё ещё впереди. Если вы из frontend-мира — добро пожаловать, догоним остальных 🙂
Суммарно за проектом уже следит более 6.5 тысяч человек!
Поздравляю всех с наступающим Новым годом и желаю профессионального роста и сильных результатов в 2026!
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Хабр — Итоги 2025
Привет, Хабр! Ну, как настроение? Кажется, что мир начинает вращаться с какой-то практически неуловимой для человеческого внимания скоростью: ИИ, нейрослоп, мошенники, зоопарк хакеров найма, утечки,...
👍7🔥6❤3
⚡️ DuckDB разрушает мифы: 1 ТБ данных — за секунды, без Spark
Принято считать, что терабайты аналитики – это всегда Spark, кластеры и сложная инфраструктура. Но свежий бенчмарк показывает обратное: DuckDB спокойно агрегирует 1 ТБ данных на одном движке — и делает это менее чем за 30 секунд.
Запрос самый обычный: группировка по дате,
Финальный буст даёт сортировка данных при загрузке. Благодаря zonemap-индексам одна из итераций укладывается меньше чем в 10 секунд. Просто потому что данные лежат «правильно».
Полный разбор, бенчмарки и код — читайте целиком на Хабре.
Принято считать, что терабайты аналитики – это всегда Spark, кластеры и сложная инфраструктура. Но свежий бенчмарк показывает обратное: DuckDB спокойно агрегирует 1 ТБ данных на одном движке — и делает это менее чем за 30 секунд.
Запрос самый обычный: группировка по дате,
count(*) и sum(value). Никаких синтетических трюков. Локально на MacBook M2 Pro — около 1,5 минуты. В облачном MotherDuck — в среднем ~17 секунд.Финальный буст даёт сортировка данных при загрузке. Благодаря zonemap-индексам одна из итераций укладывается меньше чем в 10 секунд. Просто потому что данные лежат «правильно».
Полный разбор, бенчмарки и код — читайте целиком на Хабре.
👍6🔥2❤1
🔥 Anthropic инвестируют $1.5 млн в Python — и делают ставку на безопасность open source
Anthropic объявили о двухлетнем партнёрстве с Python Software Foundation и инвестируют $1.5 млн в развитие Python-экосистемы. Ключевой фокус — безопасность цепочки поставок и защита PyPI.
Деньги пойдут на конкретные инженерные изменения:
– разработку проактивных инструментов анализа всех пакетов, загружаемых в Python Package Index, вместо текущей в основном реактивной модели
– создание датасета известного malware для анализа поведения и capability-based детекта
– улучшения, которые потенциально можно будет перенести и на другие open source репозитории, не только Python
@python_for_devs
Anthropic объявили о двухлетнем партнёрстве с Python Software Foundation и инвестируют $1.5 млн в развитие Python-экосистемы. Ключевой фокус — безопасность цепочки поставок и защита PyPI.
Деньги пойдут на конкретные инженерные изменения:
– разработку проактивных инструментов анализа всех пакетов, загружаемых в Python Package Index, вместо текущей в основном реактивной модели
– создание датасета известного malware для анализа поведения и capability-based детекта
– улучшения, которые потенциально можно будет перенести и на другие open source репозитории, не только Python
@python_for_devs
🔥15👍5⚡3👏1