Робот Илона Маска. Цель - универсальный помощник для завода и дома. Активно демонстрируется, умеет ходить, манипулировать предметами, сейчас обучается простым рабочим задачам.
Один из самых известных гуманоидов. Отличается невероятной подвижностью: бегает, прыгает, делает акробатические элементы. Недавно компания показала электрическую версию, рассчитанную на реальные применения.
Робот для логистики и складов. Может брать коробки, переносить их, ориентироваться в пространстве. Amazon уже тестирует его для автоматизации складских процессов.
Стартап из Кремниевой долины, собравший сотни миллионов инвестиций. Ставка на интеграцию ИИ, чтобы робот мог общаться с человеком и выполнять задачи общего назначения. Сотрудничают с OpenAI.
Американский гуманоид, созданный для индустриальных задач. Отличается модульным дизайном и надёжностью. Недавно Google DeepMind подтвердила, что их ИИ-модель Gemini будет работать на Apollo - это как раз про Gemini Robotics из постов выше.
Китайский игрок, делающий ставку на массовое производство гуманоидов. Уже заявляет о серийных партиях, активно демонстрирует роботов на выставках в Китае.
Ещё один китайский гуманоид, известный по презентациям на CES. Может ходить, распознавать лица, взаимодействовать с предметами. Ориентирован больше на сервис и коммуникацию.
Более компактный и доступный китайский гуманоид. Известен демонстрациями с акробатикой и устойчивостью. Компания Unitree также популярна своими роботами-собаками.
#robotics #ai #llm #бям
Please open Telegram to view this post
VIEW IN TELEGRAM
💯6
Какой из этих роботов-гуманоидов тебе кажется самым перспективным ❓
Anonymous Poll
38%
Tesla Optimus
46%
Atlas Boston Dynamics
8%
Digit Agility Robotics
31%
Helix Figure AI
15%
Appolo Apptronik
23%
Raise AgiBot
23%
Walker X UBTech
46%
Unitree G1
Часто в проектах получается одна из двух крайностей:
uv и группы зависимостей прямо в pyproject.toml.pyproject.toml[project]
name = "myapp"
version = "0.1.0"
requires-python = ">=3.12"
dependencies = [
"fastapi",
"httpx",
]
[tool.uv.group.dev]
dependencies = [
"ruff",
"ty",
"pytest",
"pytest-cov",
"ipython",
"types-requests",
]
[tool.uv.group.test]
dependencies = [
"pytest",
"pytest-xdist",
"pytest-randomly",
]
[tool.uv.group.docs]
dependencies = [
"mkdocs-material",
"mkdocstrings[python]",
]
📌Как устанавливать
Prod:
uv sync --frozen
Dev-окружение:
uv sync --group dev
Тесты:
uv sync --group test
Комбинированно (например, dev + доки):
uv sync --group dev --group docs
Prod-образ:
uv sync --frozen Тесты:
uv sync --group test --frozen && pytest -q
Линтеры:
uv sync --group dev --frozen && ruff check . && mypy .
[project.optional-dependencies]
s3 = ["boto3"]
clickhouse = ["clickhouse-connect"]
Установка:
uv sync --extras s3,clickhouse --group dev
pyproject.toml #uv #pipelines #ci #tests
Please open Telegram to view this post
VIEW IN TELEGRAM
В последнем проекте я действительно сгенерировал с помощью ИИ более 90% кода: сервис на Go, SDK на Python и TypeScript, даже SQL и миграции. Но важно - я просматривал каждую строчку, переписывал архитектуру, чистил дубликаты.
ИИ идеально справляется с рутиной, но всё, что касается дизайна и общей целостности системы - пока ещё исключительно на человеке. Без этого код развалится.
Когда-то ты перестал писать ассемблер, сейчас перестаёшь писать рутину.
Звучит как новая ступень эволюции. Но ценность умения видеть систему целиком только растёт.
#ai #llm #dev #coding #agents #бям
Please open Telegram to view this post
VIEW IN TELEGRAM
Часто хочется выжать из Rust скорость, но остаться в Python-экосистеме. Самый удобный путь сейчас:
myext/
Cargo.toml
src/lib.rs
pyproject.toml
Cargo.toml[package]
name = "myext"
version = "0.1.0"
edition = "2021"
[lib]
name = "myext"
crate-type = ["cdylib"]
[dependencies]
pyo3 = { version = "0.22", features = ["extension-module"] }
src/lib.rs
use pyo3::prelude::*;
#[pyfunction]
fn add(a: i64, b: i64) -> i64 { a + b }
#[pymodule]
fn myext(m: &Bound<'_, PyModule>) -> PyResult<()> {
m.add_function(wrap_pyfunction!(add, m)?)?;
Ok(())
}
pyproject.toml
[build-system]
requires = ["maturin>=1.6"]
build-backend = "maturin"
[project]
name = "myext"
version = "0.1.0"
requires-python = ">=3.9"
Please open Telegram to view this post
VIEW IN TELEGRAM
Хочешь погонять модерн дата‑стек у себя на ноуте без облачных вычислений и лишней боли?
🔥 Лови Data Forge - аккуратная песочница, где всё уже скручено docker compose’ом.
Что внутри: MinIO+Hive (каталог), Trino и Spark, Kafka+Schema Registry+Debezium, Postgres🔜 ClickHouse, Airflow, Superset и JupyterLab.
Запуск профилями: core, airflow, explore, datagen.
Есть генератор реалистичных retail‑данных, плюс Learning Path с ноутбуками - можно пройтись end‑to‑end.
Из железа просят ~8+ ГБ RAM и ~20 ГБ диска. Лицензия MIT.
▶️ Репо: https://github.com/fortiql/data-forge
#sandbox #de #modenstack #dev
Что внутри: MinIO+Hive (каталог), Trino и Spark, Kafka+Schema Registry+Debezium, Postgres
Запуск профилями: core, airflow, explore, datagen.
Есть генератор реалистичных retail‑данных, плюс Learning Path с ноутбуками - можно пройтись end‑to‑end.
Из железа просят ~8+ ГБ RAM и ~20 ГБ диска. Лицензия MIT.
#sandbox #de #modenstack #dev
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - fortiql/data-forge: Data Forge — a modern data stack playground to practice flows and best practices, not just tools.…
Data Forge — a modern data stack playground to practice flows and best practices, not just tools. Spark, Trino, Kafka, Iceberg, ClickHouse, Airflow, MinIO, Superset — all wired together locally wit...
Свежий релиз принёс серьёзные улучшения:
• ⚙️ Асинхронный ввод-вывод (AIO) — теперь чтение данных может идти параллельно, ускоряя seq-scan и VACUUM.
• 🔍 Skip-scan в B-tree — индекс по нескольким полям теперь работает даже без фильтра по первому.
• 🔄 pg_upgrade без "холодного старта" — статистика сохраняется при апгрейде.
• 🔐 OAuth 2.0 аутентификация, плюс прощание с MD5.
• 🧮 Мелкие радости: uuidv7(), виртуальные столбцы, подробная статистика в EXPLAIN и включённые по умолчанию checksums.
💡 Если твои базёнки упираются в диск - самое время затестить.
#postgres #db #de #dev #sql
Please open Telegram to view this post
VIEW IN TELEGRAM
PostgreSQL Documentation
E.2. Release 18
E.2. Release 18 # E.2.1. Overview E.2.2. Migration to Version 18 E.2.3. Changes E.2.4. Acknowledgments Release date: 2025-09-25 E.2.1. Overview # PostgreSQL 18 …
Forwarded from Архитектор Данных
Кратко - основные инсайты с круглого стола «Хадуп мертв»
1️⃣ HDFS сам по себе мало кому нужен, если есть S3.
2️⃣ Даже YARN уже не так необходим.
3️⃣ Современная BigData признана начинающейся от 10 Петабайт. Эта планка постепенно растет.
4️⃣ Приходится делать много ухищрений, чтобы получить в он-преме S3. И принимать множество компромиссов.
5️⃣ Hadoop (HDFS) - все еще хороший, надежный, понятный и предсказуемый способ получить скалированное хранилище для бигдаты
6️⃣ Но с нуля Hadoop сейчас мало кто решится разворачивать для GreenField проектов
7️⃣ Apache Ozone - перспективный способ получить S3 (+HDFS) на сегодня - признано 60% участниками дискуссии.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10 4 3 2
DE
Раньше, чтобы быть сильным инженером, достаточно было знать язык, предметную область и свой проект.
Теперь к этому добавилось новое измерение - понимание самой нейросети, с которой ты работаешь.
Ты должен знать:
🧠 как она "думает"
🧩 где у неё слепые зоны
📚 какая у неё внутренняя терминология
⚙️ и как подать задачу так, чтобы она дала не просто ответ, а нужное решение.
Фактически, ты уже не просто пишешь код - ты проектируешь мышление инструмента, который пишет код за тебя.
ИИ стал новым языком программирования. И чем лучше ты его понимаешь, тем мощнее твой код.
Please open Telegram to view this post
VIEW IN TELEGRAM
Автор статьи сравнивает асинхронность и многопоточность в Python на фоне свободнопоточности (No GIL) в Python 3.13.
Выводы:
🔘 при IO‑bound до ≈1000 одновременных задач скорости близки
🔘 асинхронность выигрывает по ресурсам и масштабируемости (10k+ соединений)
🔘 с No GIL классическая многопоточность начинает догонять и местами обгонять async на смешанных нагрузках (есть заметная доля CPU)
✏️ Что важно из статьи:
⏩ Для CPU‑bound задач по‑прежнему уместен multiprocessing; для IO‑bound многопоточность и асинхронность дают схожие времена, разница - в механике переключений (OS‑scheduler vs await) и сложности разработки: асинхронный код труднее писать и отлаживать.
⏩ Async нередко маскирует пулы потоков: aiofiles внутри зовёт
⏩ Микротесты ожидания: при 100–1000 задач разницы почти нет; при 10 000 - у threading "can’t start new thread". Память: ~4 МБ на поток против ~4 КБ на async‑задачу, поэтому на больших кардинальностях async существенно экономнее; у множества потоков растёт стоимость переключений и нагрузка на планировщик.
⏩ В реальных библиотеках возможен крупный выигрыш: у psycopg 3 асинхронный путь даёт ≈2200–2500 RPS против ≈700–800 RPS у синхронного.
⏩ Эксперимент с FastAPI: многопоточность с GIL - ~2800 RPS, async - ~3500 RPS. С No GIL: async остаётся примерно на том же уровне, а многопоточность поднимается до ~3540 RPS, местами обгоняя async. Итог автора: апгрейд на No GIL даёт прирост, сопоставимый с полной перепиской на async.
⚡️ Итог:
🟢 асинхронность - про экономию железа и экстремальную конкурентность (10k+)
🟢 No GIL усиливает многопоточность там, где в запросе есть заметная доля CPU (условно 20–40% и выше)
🟢 При чистом IO (например, LLM‑агенты 5/95) разумнее оставаться на async; при типичных нагрузках <1000 конкурентных запросов решающей разницы нет.
Все цифры - из измерений автора статьи, на твоих задачах результаты могут отличаться.
Выводы:
loop.run_in_executor, а Motor (async‑драйвер MongoDB) использует под капотом синхронный PyMongo через thread‑pool; часть Django‑стека вынужденно прыгает между sync/async, добавляя оверхед. Все цифры - из измерений автора статьи, на твоих задачах результаты могут отличаться.
Please open Telegram to view this post
VIEW IN TELEGRAM
Вчера выкатили стабильный Python 3.14.
Коротко: t‑строки (template strings), отложенная оценка аннотаций + annotationlib, подинтерпретаторы в stdlib, удалённая отладка (pdb -p), официальный free‑threaded CPython как вариант сборки, compression.zstd, UUID v6/v7/v8, цветной REPL, экспериментальный JIT в бинарях macOS/Windows, новый Python Install Manager для Windows.
#python #release
Коротко: t‑строки (template strings), отложенная оценка аннотаций + annotationlib, подинтерпретаторы в stdlib, удалённая отладка (pdb -p), официальный free‑threaded CPython как вариант сборки, compression.zstd, UUID v6/v7/v8, цветной REPL, экспериментальный JIT в бинарях macOS/Windows, новый Python Install Manager для Windows.
#python #release
Forwarded from DataEng
Последние года 4 я использовал Apache Airflow исключительно в облаке, преимущественно в Amazon — Amazon Managed Apache Airflow. И как обычно бывает, в облаках всё так или иначе между собой связано. Логи хранятся в Cloud Watch, воркеры запускаются в изолированной среде (Amazon Fargate). С июля месяца я стал активно использовать self-hosted Airflow на своих серверах (для своих личных целей), и в целях экономии храню всё в файлах. Так уж получилось, что задачу с регулярной "чисткой" я постоянно откладывал и вот настал час X, когда всё легко из-за исчерпания inodes в файловой системе. Для этого случая я написал DAG, который каждый день в полночь чистит папки со старыми логами, делюсь с вами вдруг он пригодится:
Здесь учитывается стандартный шаблон именования логов и директорий, включающий дату и время. Я по привычке использую
import os
import shutil
from datetime import datetime, timedelta
import pendulum
import structlog
from airflow.sdk import DAG, task
logger = structlog.get_logger(__name__)
@task
def cleanup_airflow_logs(days_to_keep):
log_base_path = os.environ.get("AIRFLOW_HOME", "/opt/airflow") + "/logs"
cutoff_date = datetime.now() - timedelta(days=days_to_keep)
for root, dirs, files in os.walk(log_base_path):
for dir_name in dirs:
dir_path = os.path.join(root, dir_name)
try:
if os.path.getmtime(dir_path) < cutoff_date.timestamp():
logger.info(f"Deleting old log directory: {dir_path}")
shutil.rmtree(dir_path)
except Exception as e:
logger.error(f"Error deleting directory {dir_path}: {e}")
with DAG(
dag_id="airflow_log_cleanup_dag",
start_date=pendulum.datetime(2025, 10, 1, tz="Asia/Almaty"),
schedule="@daily", # Run daily at midnight
catchup=False,
default_args={
"owner": "airflow",
"retries": 2,
"retry_delay": timedelta(minutes=5),
},
max_active_runs=1,
) as dag:
cleanup_airflow_logs(days_to_keep=14)
Здесь учитывается стандартный шаблон именования логов и директорий, включающий дату и время. Я по привычке использую
structlog для ведения логов.
DataEng
Последние года 4 я использовал Apache Airflow исключительно в облаке, преимущественно в Amazon — Amazon Managed Apache Airflow. И как обычно бывает, в облаках всё так или иначе между собой связано. Логи хранятся в Cloud Watch, воркеры запускаются в изолированной…
Плюс ➕ gist
Please open Telegram to view this post
VIEW IN TELEGRAM
Gist
airflow_logs_cleanup_dag.py
GitHub Gist: instantly share code, notes, and snippets.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10