52807
по всем вопросам @haarrp @itchannels_telegram - 🔥 best it channels @ai_machinelearning_big_data -ML @ArtificialIntelligencedl -AI @datascienceiot - ml 📚 @pythonlbooks -📚books
🔟 однострочных функций, полезных для продвинутых Python-разработчиков:
1. Разворачиваем вложенных списков любой глубины
flatten = lambda lst: [x for sub in lst for x in (flatten(sub) if isinstance(sub, list) else [sub])]
memoize = lambda f: (lambda *args, _cache={}, **kwargs: _cache.setdefault((args, tuple(kwargs.items())), f(*args, **kwargs)))
chunked = lambda lst, n: [lst[i:i+n] for i in range(0, len(lst), n)]
uniq = lambda seq: list(dict.fromkeys(seq))
deep_get = lambda d, *keys: __import__('functools').reduce(lambda a, k: a.get(k) if isinstance(a, dict) else None, keys, d)
pretty_json = lambda obj: __import__('json').dumps(obj, ensure_ascii=False, indent=2)
tail = lambda f, n=10: list(__import__('collections').deque(open(f), maxlen=n))
sh = lambda cmd: __import__('subprocess').run(cmd, shell=True, check=True, capture_output=True).stdout.decode().strip()
path_join = lambda *p: __import__('os').path.join(*p)
group_by = lambda seq, key: {k: [d for d in seq if d.get(key) == k] for k in set(d.get(key) for d in seq)}
🚦 premier — удобный инструмент для ограничения частоты вызовов в Python
Что это такое: premier — это библиотека для контроля скорости вызовов функций в Python. Она помогает ограничить нагрузку на API, базу данных или любой другой ресурс, чтобы не получить отказ или блокировку.
📌 Возможности:
• Поддержка популярных алгоритмов: token bucket, fixed window, leaky bucket
• Работает как с обычными, так и с асинхронными функциями
• Поддерживает Redis и другие хранилища для распределённого ограничения
• Гибкая настройка: лимиты, ключи, длительность окна, своя логика
• Простое применение через декораторы
🧪 Пример:
from premier import throttler, ThrottleAlgo, RedisHandler
@throttler.fixed_window(quota=3, duration=5)
def request(url: str):
# максимум 3 вызова каждые 5 секунд
...
@throttler.token_bucket(quota=5, duration=60)
async def async_request(...):
# асинхронный токен-бакет
...
🛠️ Copier — удобный инструмент для создания и обновления проектов из шаблонов. Эта Python-утилита умеет работать как с локальными путями, так и с Git-репозиториями, подставляя переменные в файлы любого формата. Главная фишка Copier — это аккуратная работа с существующими файлами: он не перезаписывает их без явного указания.
Инструмент будет полезен тем, кто часто создаёт однотипные проекты или хочет автоматизировать их обновление. Шаблоны поддерживают сложную логику через Jinja2, а настройки задаются в простом YAML-формате. Для начала работы достаточно установить Copier через pipx или pip. Проект развивается при поддержке сообщества и доступен под лицензией MIT.
🤖 GitHub
@pythonl
📦 InvenTree — умная система учета для мастерских и инженерных проектов. Этот open-source инструмент — достойная замена Excel, которая поможет вам перестать страдать от перегруженных корпоративных систем.
Инструмент предлагает продуманный баланс между простотой и функциональностью: отслеживание деталей, управление несколькими складами, работа с партиями и серийными номерами — всё в одном месте.
📌 Особенности проекта:
— Гибкая интеграция через REST API и Python-модули
— Мобильные приложения для iOS/Android со сканированием штрих-кодов
— Плагинная система для кастомизации под конкретные нужды
— Простой деплой — от Docker до однострочной установки на Linux
🤖 GitHub
@pythonl
🌟 alphaXiv —выпустили расширение для хрома
alphaXiv упрощает работу с научными статьями (arXiv, bioRxiv, PDF):
● чат с ИИ прямо в документе: выделение текста открывает диалог
● ссылки на другие статье через “@” для быстрого вызова статей
● позволяет генерировать блог одним кликом: иллюстрации к статьям, ключевые идеи, перевод
● закладки и автоматические BibTeX-цитаты для хранения и ссылок
https://chromewebstore.google.com/detail/alphaxiv-understand-resea/liihfcjialakefgidmaadhajjikbjjab
@pythonl
🎨 MonsterUI — стильный UI для FastHTML на Python (от Answer.AI)
MonsterUI — это высокоуровневый слой поверх FastHTML, который позволяет быстро создавать красивые веб-интерфейсы на чистом Python без писанины HTML/CSS.
⚙️ Проблема
FastHTML и так упрощает фронтенд, но стильность UI требует громоздких классов или CSS-фреймворков (Tailwind, Bootstrap).
MonsterUI решает это, предоставляя готовые компоненты и умные настройки по умолчанию.
✨ Главные возможности
• Полюбившиеся Tailwind/FrankenUI/DaisyUI скрылки под капотом
• Удобные базовые компоненты: Button, Card, LabelInput и др.
• Семантический текст и стили (H1, P, Blockquote, etc.), оформленные по умолчанию
• Умные layout-хелперы: DivVStacked, Grid, DivFullySpaced и другие
• «Высокоуровневые» компоненты: навбар, модалка, таблицы — готовые шаблоны
• Автоматический рендер Markdown и подсветка кода
• Темы с выбором цветовой схемы, поддержкой light/dark режимов
🚀 Пример компонента
def TeamCard(name, role, location="Remote"):
icons = ("mail", "linkedin", "github")
return Card(
DivLAligned(
DiceBearAvatar(name, h=24, w=24),
Div(H3(name), P(role))),
footer=DivFullySpaced(
DivHStacked(UkIcon("map-pin", height=16), P(location)),
DivHStacked(*(UkIconLink(icon, height=16) for icon in icons))))
pip install MonsterUI
from fasthtml.common import *
from monsterui.all import *
app, rt = fast_app(hdrs=Theme.blue.headers())
@rt
def index():
return Card(H1("Hello MonsterUI"), P("Приложение готово!"))
serve()
🖥 Как написать худший возможный Python-код
Иногда проще показать, как не надо, чем объяснять, как надо.
Вот список «правил», которые помогут вам гарантированно испортить любой Python-проект.
1. 🔒 Используйте непонятные имена переменных
Называйте переменные x, y, a, thing. Абстракция — залог путаницы.
def f(x, y, z=None):
a = x * 2
b = y + a if z else y - a
c = [i for i in range(a) if i % 2]
return sum(c) + b
result = [x if x > 0 else (y if y < 0 else z) for x in data if x or y and not z]
eval("d['" + key + "']")
value = "42"
value = int(value)
value = [value] * value
counter = 0
def increment():
global counter
counter += 1
if user.role == "xyz" and user.level > 42:
access_granted()
def foo():print("start")
if True:
print("yes")
else:
print("no")
def complex_logic(x):
return (lambda y: (lambda z: z**2)(y + 1))(x)
class HandlerFactory:
def get_handler(self):
class Handler:
def handle(self, x): return x
return Handler()
def legacy_feature():
print("This feature is deprecated")
return
# нигде не вызывается
def a(x): return x+1
# Просто запускай и смотри глазами
process_user(data)
🛠️ CRUDAdmin — генератор админок на Python за минутыcrudadmin — это фреймворк на Python для моментальной генерации интерфейсов на основе SQLAlchemy-моделей.
🔹 Поддержка Flask и FastAPI
🔹 Автоматическая генерация CRUD-интерфейсов
🔹 Простая настройка и кастомизация форм
🔹 Поддержка авторизации и управления доступом
🔹 Пагинация, поиск, фильтры — всё из коробки
📦 Установка:
pip install crudadmin
📊 Deptry — детектор проблем с зависимостями в Python. Этот инструмент сканирует проект на расхождения между импортами в коде и задекларированными зависимостями. Он работает с Poetry, pip и PDM, находя три типа проблем: неиспользуемые пакеты, отсутствующие зависимости и модули, ошибочно помеченные как dev-зависимости.
Инструмент анализирует не только requirements.txt, но и динамические импорты черезависимостями что снижает количество ложных срабатываний. Для настройки можно использовать как CLI-аргументы, так и секцию [tool.deptry] в� Deptry — детекто
🤖 GitHub
@pythonl
🎯 Практическое руководство: Signals — реактивное управление состоянием в Python
Недавно вышло отличное руководство «The Missing Manual for Signals: State Management for Python Developers», где автор показывает, как внедрять реактивную модель на Python с помощью библиотеки
Почему Signals полезны
Стандартный подход—императивный—скрывает зависимости между переменными, что ведёт к ошибкам:
class OrderService:
def add_order(self, order):
self.orders.append(order)
self.total += order.amount
self.avg = self.total / len(self.orders)
self.notify_if_needed()
self.track_analytics()
from reaktiv import Signal, Computed, Effect
orders = Signal([])
total = Computed(lambda: sum(o.amount for o in orders()))
avg = Computed(lambda: total() / len(orders()) if orders() else 0)
Effect(lambda: notify(avg()) if avg() > 100 else None)
orders.update(lambda os: os + [new_order])
🖥 Совет по Python:
from pathlib import Path
# Создаем объект Path для заданного пути к файлу
path = Path("C:/Users/test.md")
# Получаем имя файла вместе с расширением
print(path.name) # 'test.md'
# Получаем только имя файла без расширения
print(path.stem) # 'test'
# Получаем расширение файла (с точкой)
print(path.suffix) # '.md'
# Получаем родительскую директорию (папку)
print(path.parent) # 'C:/Users'
🐍 PyLeak — найди утечку памяти в своём Python-коде
PyLeak — простой и мощный инструмент для отладки утечек памяти в Python-приложениях.
🔍 Возможности:
• Показывает объекты, которые не удаляет сборщик мусора
• Строит граф зависимостей между объектами
• Выявляет циклические ссылки и "висящие" объекты
• Поддерживает визуализацию через Graphviz
📦 Установка:pip install pyleak
🧰 Идеален для отладки сервисов, где память утекает незаметно.
🔗 GitHub
@pythonl
💻 Copilot Agent Mode — новый этап в развитии AI-помощников для разработчиков
Теперь доступен всем в июньском обновлении Visual Studio!
🧠 Что умеет:
• Сам строит план разработки
• Выполняет задачи пошагово
• Адаптируется по ходу процесса
• Циклично доводит работу до завершения
Это уже не просто автодополнение — это полноценный агент, способный решать проектные задачи от начала до конца.
📖 Подробнее: https://msft.it/6018SQDuo
#VisualStudio #Copilot #AIdev #AItools #GitHubCopilot
#Copilot
@pythonl
🚀 TurboDRF — ускоритель Django REST Framework без боли
TurboDRF — лёгкий способ ускорить ваш Django API без перехода на FastAPI или переписывания логики.
🔥 Что даёт TurboDRF:
• ⚡ Быстрый рендер сериализаторов
• 🧠 Автоматический prefetch_related и select_related
• 🧊 Кэширование сериализованных ответов
• 🧩 Совместим с обычными DRF-сериализаторами
📦 Установка:pip install turbodrf
🛠️ Пример:
from turbodrf.mixins import TurboModelSerializer
class MySerializer(TurboModelSerializer):
class Meta:
model = MyModel
fields = "__all__"
🖥 py-pglite — PostgreSQL без установки, тестируй как с SQLite!
py-pglite — обёртка PGlite для Python, позволяющая запускать настоящую базу PostgreSQL прямо при тестах. Без Docker, без настройки — просто импортируй и работай.
📌 Почему это круто:
- 🧪 Ноль конфигурации: никакого Postgres и Docker, только Python
- ⚡ Молниеносный старт: 2–3 с против 30–60 с на традиционные подходы :contentReference[oaicite:2]{index=2}
- 🔐 Изолированные базы: новая база для каждого теста — чисто и безопасно
- 🏗️ Реальный Postgres: работает с JSONB, массивами, оконными функциями
- 🔌 Совместимость: SQLAlchemy, Django, psycopg, asyncpg — любая связка :contentReference[oaicite:3]{index=3}
💡 Примеры установки:
pip install py-pglite
pip install py-pglite[sqlalchemy] # SQLAlchemy/SQLModel
pip install py-pglite[django] # Django + pytest-django
pip install py-pglite[asyncpg] # Асинхронный клиент
pip install py-pglite[all] # Всё сразу
python
def test_sqlalchemy_just_works(pglite_session):
user = User(name="Alice")
pglite_session.add(user)
pglite_session.commit()
assert user.id is not None
🎯 Хочешь следить за загрузкой своей GPU прямо из Python?
Вот простой скрипт, который показывает текущую загрузку видеокарты NVIDIA (через `nvidia-smi`). Подходит для мониторинга в ML-задачах, инференсе и просто для интереса.
📦 Зависимости: установленный nvidia-smi и Python 3.6+
🧠 Код:
import subprocess
def get_gpu_utilization():
try:
result = subprocess.check_output(
['nvidia-smi', '--query-gpu=utilization.gpu,memory.used,memory.total',
'--format=csv,nounits,noheader'],
encoding='utf-8'
)
lines = result.strip().split('\n')
for idx, line in enumerate(lines):
gpu_util, mem_used, mem_total = map(str.strip, line.split(','))
print(f"🖥 GPU {idx}: {gpu_util}% load | {mem_used} MiB / {mem_total} MiB")
except FileNotFoundError:
print("❌ nvidia-smi not found. Make sure NVIDIA drivers are installed.")
except Exception as e:
print(f"⚠️ Error: {e}")
get_gpu_utilization()
GPU 0: 23% load | 412 MiB / 8192 MiB
🖥 5 необычных Python‑проекта для продвинутых разработчиков — которые можно собрать за выходные
Хочешь не просто пописать код, а взорвать мозг? Вот 5 уникальных идей, которые объединяют ИИ, терминальные интерфейсы, сетевое взаимодействие и системное программирование. Каждый проект можно собрать за 1–2 дня, если знаешь, с какой стороны подойти.
🧠 1. Self-Healing CLI‑агент (автоматический отладчик ошибок)
🔹 Идея: Напиши CLI-инструмент, который анализирует ошибки в Python‑скриптах и предлагает (или вносит) правки к коду автоматически с помощью LLM.
🔧 Как реализовать:
• Используй subprocess для запуска целевого скрипта и перехвата stderr
• Извлеки traceback → отправь в OpenAI / LM Studio через API
• Получи фикс → распарси результат и применяй его к AST с помощью RedBaron или ast
• Верифицируй: перезапусти код и проверь, исчезла ли ошибка
• Добавь флаг --auto-fix и интерактивный режим
🧩 Применение: автопомощник в CI/CD, дебагер в редакторах, обучающий инструмент
📡 2. P2P-блокнот с mesh-синхронизацией
🔹 Идея: Заметки, которые синхронизируются без облака — через локальную сеть или Bluetooth, используя ZeroConf.
🔧 Как реализовать:
• zeroconf для автоматического обнаружения других устройств
• sqlite как локальное хранилище + watchdog для отслеживания изменений
• pynacl для шифрования трафика
• Используй TCP/UDP сокеты для передачи изменений
• Можно добавить визуальный CLI с urwid или textual
🧩 Применение: приватные P2P‑заметки, оффлайн-заметки в экспедициях, лайтовый knowledge base
🧬 3. AI‑отладчик чужого репозитория
🔹 Идея: Инструмент, который загружает чужой репозиторий, строит граф зависимостей и автоматически находит баги, недочёты, недокументированный код — и объясняет их.
🔧 Как реализовать:
• gitpython для клонирования проекта
• networkx или pydeps для визуализации модульной структуры
• mypy, flake8, pylint и bandit для анализа
• Сводка отправляется в LLM (например, OpenAI API) для пояснений: "вот потенциально уязвимый участок, вот почему"
• Визуализируй через rich, graphviz, или в браузере через streamlit
🧩 Применение: ревью чужого кода, onboarding новых участников в open-source
🎮 4. CLI-игра с live‑физикой прямо в терминале
🔹 Идея: Реализуй рогалик или простую 2D-игру с настоящей физикой (гравитацией, столкновениями) в терминале.
🔧 Как реализовать:
• curses или blessed для отрисовки
• pymunk или box2d для физики (адаптируй под 2D-сцену)
• Все объекты — текстовые символы
• События обрабатываются через asyncio, и всё должно работать в real‑time
• Можно добавить оружие, отскоки, ловушки и интерактивные зоны
🧩 Применение: визуальное развлечение, обучение физике, красивое демо для хакатона
🕵️ 5. AI-инспектор Linux-системы
🔹 Идея: Создай скрипт, который в реальном времени следит за файлами, сетями, процессами, и при странной активности — показывает, почему это может быть подозрительно (с пояснением от ИИ).
🔧 Как реализовать:
• Используй psutil, inotify, socket, netifaces
• Собирай метрики: кто пишет в /tmp, кто открывает нестандартные порты, кто занимает слишком много CPU
• Фильтруй необычные события → формируй контекст → передавай в LLM
• ИИ объясняет: "этот процесс пытается слушать порт 4444 в фоне — это может быть реверс‑шелл"
• CLI-интерфейс через rich или textual
🧩 Применение: оффлайн-альтернатива Falcon / CrowdStrike, полезный тул
💡 Всё это можно собрать за 1–2 дня, если уже умеешь работать с Python-инструментами, API и системными вызовами. И каждый проект можно расширять в полноценный open-source продукт.
@pythonl
#python #weekendprojects #ai #cli #sysadmin #funprojects #hackathon #opensource
🎭 Playwright MCP: AI-доступ к браузеру через Model Context Protocol
Playwright MCP — это сервер Model Context Protocol поверх Microsoft Playwright, который позволяет LLM управлять полноценным браузером через структурированные данные, а не по скриншотам.
• Доступ к accessibility tree
– MCP-клиенты получают иерархию элементов страницы (кнопки, поля, ссылки) вместо изображений, что делает навигацию быстрой и детерминированной :contentReference[oaicite:0]{index=0}
• Множественные подключения
– Поддержка нескольких клиентов к одной сессии: одновременное тестирование, отладка и мониторинг без лишних запусках браузера :contentReference[oaicite:1]{index=1}
• AI-автогенерация тестов
– В режиме Agent Mode Playwright MCP может самостоятельно исследовать приложение и писать готовые тесты на основе его поведения :contentReference[oaicite:2]{index=2}
• Высокая производительность
– Обходится без тяжёлых компьютерного зрения и OCR, экономит ресурсы и снижает флакущие ошибки сравнения скриншотов
• Простая настройка
– Установка через npm/yarn и запуск:
npm install playwright
npx playwright launch --server
const { chromium } = require('playwright');
const browser = await chromium.connectOverCDP('ws://localhost:PORT');
🖥 Как написать ещё более ужасный Python-код: часть 2
Первая часть - Как написать худший возможный Python-код здесь.
Если тебе показалось, что хуже уже некуда — ты просто не включал всё сразу.
Вот продолжение правил, которые гарантируют страдания будущих читателей твоего кода.
14. Используй side‑effects везде
Изменяй список внутри функции, возвращай None, пусть никто не знает, что произошло.
def corrupt(data):
for i in range(len(data)):
data[i] = None
def handle_user_request(request):
log_request(request)
try:
response = requests.post(...)
save_to_db(json.loads(response.text)["data"])
except:
retry_later(request)
def outer():
def middle():
def inner():
print("deep")
inner()
middle()
from somewhere.unknown import *
import random
def calculate_discount():
return random.choice([0, 5, 10, 50])
user = {
"name": "Alice",
"age": "27",
"is_active": "true",
"joined": "2023-12-01"
}
try:
do_critical_operation()
except:
pass
print("entering loop")
print("value of x:", x)
print("loop end")
DEBUG_MODE = True
RETRY_COUNT = 3
import time
async def fetch_data():
time.sleep(3)
return "data"
def main():
# 600 строк бизнес-логики
pass
🐍 Python-задача: что выведет этот код с вложенными генераторами?
gen = (x for x in range(3))
def wrap(g):
return (x * 2 for x in g)
gen2 = wrap(gen)
print(list(gen))
print(list(gen2))
[0, 1, 2], [0, 2, 4] [0, 1, 2], [] [], [0, 2, 4] [0, 1, 2], Ошибкаitertools.tee для разветвления итератора.
Что отличает настоящих профессионалов в аналитике данных?
Настоящие профессионалы в аналитике данных выделяются не просто техническими навыками, а глубоким пониманием бизнес-контекста. Они видят, как сухие цифры превращаются в стратегические решения, влияющие на прибыль компании и ее развитие.
Многие зацикливаются на изучении инструментов, упуская из виду главное — для чего эти инструменты нужны. Можно идеально владеть Python и SQL, но так и не научиться решать реальные бизнес-задачи.
Где учат аналитике, которая нужна бизнесу? В магистратуре НИУ ВШЭ и Karpov Courses «Аналитика больших данных». Посмотрите бесплатный вводный курс и узнайте, как строится программа и что даст вам диплом..
Спикеры курса — эксперты с реальным опытом: Анатолий Карпов (ex-VK, самый популярный эксперт в сфере аналитике, по данным NEWHR), Нерсес Багиян (Head of DS в Raiffeisen CIB) и другие.
Реклама. ООО "КАРПОВ КУРСЫ". ИНН 7811764627. erid: 2W5zFJaLkFa
✔️ OpenAI выложили в открытый доступ Customer Service Agent Demo
Теперь у всех есть пример, как сделать продакшн-агентов с маршрутизацией, безопасностью и интерфейсом — от запроса до ответа.
Что это такое:
• Многоагентная система для поддержки клиентов (например: бронирование мест, отмена рейса, статус рейса, FAQ)
• Демка написана на Python + Next.js
• Использует OpenAI Agents SDK
• Встроены guardrails: защита от неуместных запросов и попыток обхода правил
• UI: внутри готовый интерфейс чат-бота
Как работает:
1. Пользователь пишет запрос
2. Система выбирает подходящего агента (например, `SeatBooking`)
3. Агент отвечает или передаёт диалог другому
4. Есть fallback на человека, если нужно
Как запустить:
# Backend
cd python-backend
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
uvicorn api:app --reload --port 8000
# Frontend
cd ui
npm install
npm run dev
http://localhost:3000
📈 TradingAgents — мультиагентная LLM-платформа для алгоритмической торговли
🎉 TradingAgents официально открыт! После большого интереса со стороны сообщества разработчики решили выложить весь фреймворк в open-source.
🔧 Что такое TradingAgents:
• Это мультиагентная система, имитирующая работу реальной трейдинговой фирмы
• Каждый агент выполняет свою роль — от анализа данных до принятия решений
• Все агенты основаны на LLM-моделях и взаимодействуют между собой
👥 Роли агентов:
• Fundamentals Analyst — анализ финансовых показателей компаний
• Sentiment Analyst — оценка настроений по соцсетям и новостям
• News Analyst — отслеживание глобальных событий и их влияния на рынок
• Technical Analyst — прогноз на основе графиков, индикаторов (MACD, RSI и др.)
⚠️ Важно: проект предназначен для исследовательских целей и не является финансовой рекомендацией. Результаты могут зависеть от модели, данных и параметров генерации.
📦 Возможности:
• CLI и GUI-интерфейс
• Быстрый запуск и кастомизация
• Структура, готовая к масштабированию
🔗 Репозиторий: https://github.com/AI4Finance-Foundation/TradingAgents
#AItrading #LLM #MultiAgent #TradingAgents #fintech #opensource
Выбираете магистратуру? Обратите внимание на бесплатные партнёрские программы Яндекса в топовых вузах России!
🔹 «Аппаратная разработка умных устройств» — межуниверситетская магистратура в НИУ ВШЭ и МФТИ. Вы будете решать реальные задачи, с которыми работают инженеры сервиса «Алиса и Умные устройства Яндекса».
🔹 «Искусственный интеллект в робототехнике» — программа в Сколтехе, основанная на опыте Яндекс Маркета. Вас ждёт работа с кейсами, где ИИ меняет процесс логистики и автоматизации.
Программы разрабатывались при участии экспертов Яндекса — действующих практиков в ML и Data Science, а также опытных преподавателей, — поэтому обучение построено на самых актуальных знаниях и реальных задачах.
🚀 Если хотите не просто получить диплом, а вырасти в сильного специалиста, переходите на сайт и выбирайте программу!
🤖 MiniMax Agent — новый универсальный ИИ-агент для сложных задач
Команда MiniMax представила MiniMax Agent — интеллектуального агента, способного решать многошаговые, долгосрочные и комплексные задачи.
Что умеет MiniMax Agent:
- Поддерживает комплексное и многошаговое планирование на уровне
- Разбиение задач на подзадачи и их исполнение
- МОщные инструменты генерации кода
- Мультимодальность
- Интеграция с MCP
🔗 https://agent.minimax.io
@ai_machinelearning_big_data
#AI #IntelligentAgent #MiniMax #MultiStepPlanning #Automation #ToolUse #MCP #LLM
Российский рынок СУБД демонстрирует рост — 41,7 млрд ₽ в 2025 году, +16% в год. Главные драйверы: импортозамещение и ИИ.
О приоритетах и текущей стратегии развития платформы данных Yandex Cloud рассказал Леонид Савченков:
— В центре внимания надёжность и масштабируемость — особенно для Postgres;
— Активное развитие опенсорса: вклад в Cloudberry (ASF), собственный pg-sharding, а YTsaurus может быть особенно полезен Python-разработчикам благодаря поддержке ML;
— YTsaurus и YDB теперь доступны для on-premise-развёртывания - решения можно запускать у себя;
— Обноваления платформы данных: в DataLens появился редактор графиков на JS, галерея дашбордов и сертификация аналитиков; улучшены механизмы шардирования, а также инструменты масштабирования и отказоустойчивости.
🔍 Отказоустойчивость, открытость и собственные разработки — ключ к суверенной инфраструктуре хранения и обработки данных.
Полное интервью
Уверены в своих навыках кодинга?
Тогда заглядывайте в канал Selectel. Всю неделю в канале будут выходить полезные материалы для разработчиков:
● Подробная инструкция, как сделать приложение на базе веб-технологий;
● Технические задачи для настоящих Python-энтузиастов;
● Идеи для pet-проектов: от генерации сложных паролей до нейросети для создания изображений;
● И даже выгодные продуктовые предложения, которые помогут воплотить идеи на инфраструктуре Selectel.
Подписывайтесь на канал и прокачивайте знания в сфере разработки ➡️
Реклама, АО «Селектел», ИНН: 7810962785, ERID: 2VtzqwdjwRx
🖥 Вышел Git 2.50
Вот основные обновления:
1. Новый уровень работы с cruft packs
- Git хранит неиспользуемые (невидимые) объекты в специальных “cruft packs”.
- Раньше управлять ими было сложно: чтобы добавить или объединить объекты, нужно было всё перепаковывать, что занимало много времени и места.
- Теперь появился флаг --combine-cruft-below-size: можно легко объединять мелкие cruft packs в один, постепенно “чистить” репозиторий.
- Исправлена важная ошибка: раньше такие объекты могли случайно удаляться раньше времени — теперь это под контролем.
2. Быстрее для больших репозиториев — многослойные битмапы
- В больших проектах Git создаёт специальные “карты” (bitmaps), чтобы быстро понимать, какие объекты нужны для определённых коммитов.
- Новая версия поддерживает “инкрементальные” битмапы для multi-pack index — можно добавлять новые данные быстро, не пересоздавая всю структуру.
3. Новый движок слияния ORT
- Старый движок recursive полностью удалён: теперь слияния (`merge`) обрабатывает только быстрый и надёжный ORT.
- Это упростит разработку, повысит скорость merge и уменьшит количество ошибок.
4. Улучшения в утилитах и команде cat-file
- Теперь можно фильтровать объекты по типу, например, быстро получить только “деревья” (tree) с помощью --filter='object:type=tree'.
- Команда для удаления reflog стала интуитивной: вместо сложных параметров просто пишем git reflog delete <branch>.
5. Больше контроля над сетевыми соединениями
- Добавлены настройки для TCP Keepalive, теперь можно гибко управлять поведением Git в нестабильных сетях.
6. Меньше Perl — проще тестировать и собирать
- Git ещё больше избавился от зависимостей на Perl: тесты и документация теперь проще и стабильнее, особенно на системах без Perl.
7. Работа с разреженными (sparse) репозиториями стала удобнее
- Команды вроде git add -p теперь не требуют полной загрузки содержимого — удобно при работе с огромными проектами.
8. Косметические улучшения
- При ребейзе (rebase -i) названия коммитов теперь оформляются как комментарии — так ясно, что это просто для ориентира.
9. Быстрее клонируем через bundle-uri
- Git стал лучше справляться с ускоренным клонированием через *.bundle: теперь клиент правильно учитывает все ссылки, ускоряя загрузку репозитория.
Git 2.50 — это не просто исправление багов, а реальное ускорение и упрощение работы для всех, кто ведёт большие проекты, часто сливает ветки и заботится о “чистоте” репозитория. Новые команды делают жизнь проще, а старые баги — ушли в прошлое.
➡️ Почитать про все обновления
@pythonl
🚀 Pipedream — платформа для создания интеграций и автоматизаций между сервисами. Этот инструмент позволяет соединять более 1000 приложений через готовые компоненты или собственный код на Node.js, Python, Go и Bash.
Главное преимущество проекта — это гибкость: можно быстро настроить триггеры и цепочки действий без сложной инфраструктуры. Для кастомных сценариев доступно выполнение произвольного кода с подключением любых npm/pip-пакетов. Интеграции развертываются в облаке Pipedream, что избавляет от необходимости настраивать серверы.
🤖 GitHub
@pythonl
⚡️ MicroVMS — новая платформа для запуска кода от AI-агентов с максимальной безопасностью и скоростью.
В отличие от Docker и других тяжелых решений, MicroVMS использует легковесные песочницы для быстрой изоляции, мгновенного старта и простого управления.
● Поддержка разных сред: Python, Node.js и другие
● Идеально для AI-агентов — разработка и запуск без лишних сложностей
● Удобная система управления проектами — настройка песочниц в пару кликов
Если вы хотите запускать код AI-агентов быстро, безопасно и удобно — обратите внимание на MicroVMS.pip install microsandbox
🔗 Github
@pythonl