This media is not supported in your browser
VIEW IN TELEGRAM
🚨 SQL Никогда НЕ ДЕЛАЙ ТАК #sql
НИКОГДА НЕ ЛОМАЙ ИНДЕКСЫ ФУНКЦИЯМИ: не оборачивай индексируемые поля в функции внутри WHERE.
Как только ты пишешь LOWER(), CAST(), COALESCE() или любые вычисления по колонке — индекс перестаёт работать, и запрос падает в полное сканирование таблицы.
Это одна из самых тихих причин, почему запросы внезапно превращаются в тормоза.
Вместо этого приводи значения заранее или используй функциональные индексы.
https://www.youtube.com/shorts/AyiAslOeJFA
НИКОГДА НЕ ЛОМАЙ ИНДЕКСЫ ФУНКЦИЯМИ: не оборачивай индексируемые поля в функции внутри WHERE.
Как только ты пишешь LOWER(), CAST(), COALESCE() или любые вычисления по колонке — индекс перестаёт работать, и запрос падает в полное сканирование таблицы.
Это одна из самых тихих причин, почему запросы внезапно превращаются в тормоза.
Вместо этого приводи значения заранее или используй функциональные индексы.
Плохо: индекс по email НЕ используется
SELECT *
FROM users
WHERE LOWER(email) = 'user@example.com';
-- Хорошо: нормализуем значение заранее
SELECT *
FROM users
WHERE email = 'user@example.com';
-- Или создаём функциональный индекс (PostgreSQL)
CREATE INDEX idx_users_email_lower ON users (LOWER(email));
https://www.youtube.com/shorts/AyiAslOeJFA
❤2
Forwarded from Machinelearning
This media is not supported in your browser
VIEW IN TELEGRAM
Nano Banana очень хороша для генерации схем и слайдов, а как насчёт сделать из них видео. 🎬
Google Vids вместе с Gemini позволяет автоматически превратить презентацию Google Slides в полноценный видеоролик: со сценарием, озвучкой и музыкой.
Вы просто загружаете презентацию, выбираете стиль - и система сама собирает видео из ваших слайдов.
https://workspace.google.com/blog/product-announcements/october-workspace-drop-ai-storytelling-research-and-data-protections
@ai_machinelearning_big_data
#Gemini #google #llm
Google Vids вместе с Gemini позволяет автоматически превратить презентацию Google Slides в полноценный видеоролик: со сценарием, озвучкой и музыкой.
Вы просто загружаете презентацию, выбираете стиль - и система сама собирает видео из ваших слайдов.
https://workspace.google.com/blog/product-announcements/october-workspace-drop-ai-storytelling-research-and-data-protections
@ai_machinelearning_big_data
#Gemini #google #llm
❤3
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 КАК Docker РАБОТАЕТ ПОД КАПОТОМ
Большинство думает, что Docker - это «виртуалка, но легче». На самом деле Docker почти не виртуализирует ничего: он использует механизмы ядра Linux - namespaces, cgroups и overlay-файловые системы — чтобы создать иллюзию отдельной машины.
Контейнер - это просто обычный процесс, но ядро заставляет его видеть *свой собственный мир*: свою сеть, свои процессы, свою файловую систему, свои лимиты.
Docker лишь склеивает эти механизмы в удобный инструмент и автоматизирует запуск изолированных процессов.
Большинство думает, что Docker - это «виртуалка, но легче». На самом деле Docker почти не виртуализирует ничего: он использует механизмы ядра Linux - namespaces, cgroups и overlay-файловые системы — чтобы создать иллюзию отдельной машины.
Контейнер - это просто обычный процесс, но ядро заставляет его видеть *свой собственный мир*: свою сеть, свои процессы, свою файловую систему, свои лимиты.
Docker лишь склеивает эти механизмы в удобный инструмент и автоматизирует запуск изолированных процессов.
# Посмотреть namespaces текущего процесса
lsns
# Создать процесс в новом IPC, PID и UTS namespace
unshare --ipc --pid --uts bash
# Проверить ограничение CPU cgroups
cat /sys/fs/cgroup/cpu.max
# Посмотреть mount-слои overlayfs контейнера
find /var/lib/docker/overlay2 -maxdepth 2 -type d
👍8❤3
Олег Шелест - профессионал по информационной безопасности, раскрывает скрытые механики Linux, с помощью наглядных картинок и коротких, максимально понятных разборов у себя в тг канале.
- Без воды.
- Без лишней теории.
Только практические приёмы, которые реально используют профи.
Если хочешь уверенно владеть Bash - здесь ты получишь всё, что нужно: t.me/bashmastter
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
🧩 Хитрый DevOps совет: «Всегда фиксируй версии не только в Dockerfile, но и в ENTRYPOINT-скриптах»
Большинство фиксирует версии в Dockerfile:
а потом случайно ломают прод, используя в entrypoint что-то вроде:
Это приводит к ситуации, когда:
staging и prod внезапно начинают отличаться,
контейнеры становятся «недетерминированными»,
одна и та же сборка ведёт себя по-разному в разные дни,
CI/CD перестаёт быть повторяемым.
✔️ Правило, которое нужно запомнить
Если хочешь предсказуемые окружения — фиксируй версии везде, где идёт установка:
в Dockerfile, в entrypoint, в билд-скриптах, в helm-chart, в init-containers.
✔️ Лучший вариант:
все зависимости устанавливаются только на этапе build
все версии – через lock-файлы
Таким образом ты превращаешь свой environment в чистый, детерминированный, воспроизводимый артефакт.
Большинство фиксирует версии в Dockerfile:
FROM python:3.12
RUN pip install fastapi==0.115.0
а потом случайно ломают прод, используя в entrypoint что-то вроде:
pip install -U some-lib
или
apt-get update && apt-get install -y curl
Это приводит к ситуации, когда:
staging и prod внезапно начинают отличаться,
контейнеры становятся «недетерминированными»,
одна и та же сборка ведёт себя по-разному в разные дни,
CI/CD перестаёт быть повторяемым.
✔️ Правило, которое нужно запомнить
Если хочешь предсказуемые окружения — фиксируй версии везде, где идёт установка:
в Dockerfile, в entrypoint, в билд-скриптах, в helm-chart, в init-containers.
✔️ Лучший вариант:
никаких apt-get update в рантайме
никаких pip install -U внутри контейнера
все зависимости устанавливаются только на этапе build
все версии – через lock-файлы
Таким образом ты превращаешь свой environment в чистый, детерминированный, воспроизводимый артефакт.
❤3🔥2👍1🥰1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥КАК УСТАНОВИТЬ PYTHON: Самый простой способ
Самый быстрый и эффективный способ поставить Python без лишних настроек это использовать пакетный менеджер системы. Он сам подтянет зависимости, поставит актуальную версию и настроит доступ к python и pip. Это надёжнее чем скачивать вручную и проще чем возиться с окружениями. Подходит и новичкам и разработчикам.
# Windows через winget
winget install Python.Python
# macOS через Homebrew
brew install python
# Ubuntu и Debian
sudo apt install python3 python3-pip
# Проверка установленной версии
python3 --version
pip3 --version
Самый быстрый и эффективный способ поставить Python без лишних настроек это использовать пакетный менеджер системы. Он сам подтянет зависимости, поставит актуальную версию и настроит доступ к python и pip. Это надёжнее чем скачивать вручную и проще чем возиться с окружениями. Подходит и новичкам и разработчикам.
# Windows через winget
winget install Python.Python
# macOS через Homebrew
brew install python
# Ubuntu и Debian
sudo apt install python3 python3-pip
# Проверка установленной версии
python3 --version
pip3 --version
🤨6👍5😁1
🌟 Stelliberty: Кроссплатформенный клиент Clash на Flutter и Rust
Stelliberty предлагает современный интерфейс с уникальным дизайном MD3M. Приложение поддерживает управление подписками и мониторинг трафика, обеспечивая высокую производительность благодаря Rust. Поддержка нескольких языков и интеграция с Windows делают его удобным для пользователей.
🚀Основные моменты:
- 🎨 Уникальный дизайн на основе Material Design 3
- 🦀 Высокопроизводительный бэкенд на Rust
- 🌐 Многоязычная поддержка
- 🔧 Полное управление подписками
- 📊 Реальное время мониторинга трафика
📌 GitHub: https://github.com/Kindness-Kismet/Stelliberty
#rust
Stelliberty предлагает современный интерфейс с уникальным дизайном MD3M. Приложение поддерживает управление подписками и мониторинг трафика, обеспечивая высокую производительность благодаря Rust. Поддержка нескольких языков и интеграция с Windows делают его удобным для пользователей.
🚀Основные моменты:
- 🎨 Уникальный дизайн на основе Material Design 3
- 🦀 Высокопроизводительный бэкенд на Rust
- 🌐 Многоязычная поддержка
- 🔧 Полное управление подписками
- 📊 Реальное время мониторинга трафика
📌 GitHub: https://github.com/Kindness-Kismet/Stelliberty
#rust
GitHub
GitHub - Kindness-Kismet/Stelliberty: A modern client built with Flutter and Rust, powered by Mihomo
A modern client built with Flutter and Rust, powered by Mihomo - Kindness-Kismet/Stelliberty
❤2
🐘 Postgres использует архитектуру «отдельный процесс на каждое подключение», поэтому в большинстве случаев вам нужен connection pooler.
Пул соединений вставляется между приложением и базой: он держит набор постоянных подключений и динамически назначает их входящим запросам. Самый распространённый инструмент - PgBouncer, у которого есть три режима работы.
1) Session pooling - каждое приложение-подключение закрепляется за одним pooled-соединением.
2) Transaction pooling - каждую транзакцию привязывают к pooled-соединению и освобождают сразу после завершения.
3) Statement pooling - каждое выражение получает соединение, но нет поддержки многозапросных транзакций, что сильно ограничивает кейсы.
Режим 1 плохо решает проблемы высокой конкуренции Postgres, поэтому обычно не подходит при большом числе подключений. Режим 3 слишком ограничивающий, так как многозапросные транзакции нужны многим приложениям. В итоге режим 2 даёт лучший баланс возможностей и контроля над соединениями.
Именно transaction pooling, тот режим, который PlanetScale применяет для всех своих PgBouncer-инстансов.
Пул соединений вставляется между приложением и базой: он держит набор постоянных подключений и динамически назначает их входящим запросам. Самый распространённый инструмент - PgBouncer, у которого есть три режима работы.
1) Session pooling - каждое приложение-подключение закрепляется за одним pooled-соединением.
2) Transaction pooling - каждую транзакцию привязывают к pooled-соединению и освобождают сразу после завершения.
3) Statement pooling - каждое выражение получает соединение, но нет поддержки многозапросных транзакций, что сильно ограничивает кейсы.
Режим 1 плохо решает проблемы высокой конкуренции Postgres, поэтому обычно не подходит при большом числе подключений. Режим 3 слишком ограничивающий, так как многозапросные транзакции нужны многим приложениям. В итоге режим 2 даёт лучший баланс возможностей и контроля над соединениями.
Именно transaction pooling, тот режим, который PlanetScale применяет для всех своих PgBouncer-инстансов.
❤5👍2
Forwarded from Devops / Bash / Linux
Linux совет дня💡
Нужно быстро найти исполняемые файлы в каталоге?
Используй
Пример:
В отличие от проверки прав через
Bash советы
Нужно быстро найти исполняемые файлы в каталоге?
Используй
find с флагом -executable — он покажет только те файлы, которые действительно можно запускать.Пример:
find . -type f -executable
В отличие от проверки прав через
-perm, этот вариант учитывает реальные разрешения и ACL, поэтому результат точнее — вывод включает только те файлы, которые доступны для выполнения текущим пользователем.Bash советы
❤5👍3
🔥 На stepik вышел курс, который учит Создавать настоящие AI-сервисы, а не просто запускать скрипты?
Этот практический курс по Python и FastAPI покажет, как собрать полноценное приложение с ИИ, базой данных, автогенерацией контента и Telegram-ботом.
Ты пройдёшь путь от первого HTTP-запроса до рабочего сервиса, который сам генерирует текст через ИИ, сохраняет данные, отправляет результаты по расписанию и отвечает пользователям.
Никакой теории ради теории - только практические шаги, из которых рождается реальный продукт.
🎁 48 часов действует скидка в 40% процентов
👉 Начать учиться на Stepik
Этот практический курс по Python и FastAPI покажет, как собрать полноценное приложение с ИИ, базой данных, автогенерацией контента и Telegram-ботом.
Ты пройдёшь путь от первого HTTP-запроса до рабочего сервиса, который сам генерирует текст через ИИ, сохраняет данные, отправляет результаты по расписанию и отвечает пользователям.
Никакой теории ради теории - только практические шаги, из которых рождается реальный продукт.
🎁 48 часов действует скидка в 40% процентов
👉 Начать учиться на Stepik
❤2👍1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🎙️ Qwen3-TTS-Flash мощно прокачали — теперь это самый обширный генератор речи с поддержкой десятков разных голосов, языков и диалектов.
• Больше 49 уникальных голосов — они охватывают разные возрасты, национальности и пол персонажей. Подходит для любых сценариев.
• Знает 10 языков (включая русский!), местные акценты и аутентичные диалекты — даже сычуаньский.
• Реализм синтеза речи вышел на новый уровень — теперь нейронка на ходу адаптирует ритм, темп и интонации, мимикрируя под произношение человека.
Пробуем — тут.
• Больше 49 уникальных голосов — они охватывают разные возрасты, национальности и пол персонажей. Подходит для любых сценариев.
• Знает 10 языков (включая русский!), местные акценты и аутентичные диалекты — даже сычуаньский.
• Реализм синтеза речи вышел на новый уровень — теперь нейронка на ходу адаптирует ритм, темп и интонации, мимикрируя под произношение человека.
Пробуем — тут.
❤2🔥2
⚡️ Полезные инструменты в Linux, которые стоит знать
Небольшой список утилит, которые помогают быстро понять, что происходит с системой и где именно проблема.
pidstat
Мониторит использование ресурсов конкретными процессами или группами процессов.
Показывает загрузку CPU, память, I/O, переключения задач и потоки. Очень удобно для анализа performance-проблем.
netstat
Отображает статистику сетевых протоколов ICMP, IP, TCP и UDP.
Полезен для диагностики сетевых соединений, портов и состояний сокетов.
lsof
Показывает все открытые файлы в системе.
Незаменим, когда нужно понять:
- какой процесс держит файл
- почему нельзя размонтировать диск
- кто слушает порт
iostat
Даёт информацию о загрузке CPU и дисковой подсистемы.
Отлично подходит для выявления I/O bottleneck и проблем с дисками.
vmstat
Показывает общую картину работы системы:
CPU, память, block I/O, процессы, paging и interrupts.
Хороший инструмент для быстрого health-check сервера.
Если умеешь читать вывод этих команд - диагностика Linux становится в разы быстрее.
Небольшой список утилит, которые помогают быстро понять, что происходит с системой и где именно проблема.
pidstat
Мониторит использование ресурсов конкретными процессами или группами процессов.
Показывает загрузку CPU, память, I/O, переключения задач и потоки. Очень удобно для анализа performance-проблем.
netstat
Отображает статистику сетевых протоколов ICMP, IP, TCP и UDP.
Полезен для диагностики сетевых соединений, портов и состояний сокетов.
lsof
Показывает все открытые файлы в системе.
Незаменим, когда нужно понять:
- какой процесс держит файл
- почему нельзя размонтировать диск
- кто слушает порт
iostat
Даёт информацию о загрузке CPU и дисковой подсистемы.
Отлично подходит для выявления I/O bottleneck и проблем с дисками.
vmstat
Показывает общую картину работы системы:
CPU, память, block I/O, процессы, paging и interrupts.
Хороший инструмент для быстрого health-check сервера.
Если умеешь читать вывод этих команд - диагностика Linux становится в разы быстрее.
❤5🔥5👍3
Forwarded from Machinelearning
Андрей опубликовал разбор своего нового пет-проекта. Он создал систему, которая анализирует архивные треды Hacker News и с помощью LLM проверяет, сбылись ли предсказания пользователей спустя 10 лет.
Проект использует так называемые «послезнание» (hindsight), чтобы сравнивать старые комментарии с реальностью, выявлять визионеров и находить самые громкие ошибки.
Технически решение представляет собой пайплайн, который собирает данные через API Algolia и обрабатывает их с помощью структурированного промпта.
Тестовый прогон на 930 обсуждениях (месячный архив статей Hacker News) занял около часа и обошелся всего в 58 долларов.
На выходе система генерирует статический сайт с «Залом славы» аналитиков и рейтингом точность прогнозов.
Исходный
@ai_machinelearning_big_data
#AI #ML #LLM #Tutorial #Karpaty
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍2
В этом руководстве мы рассмотрим ключевые аспекты работы с SQL на практике. Начнём с сравнения популярных СУБД, затем перейдём к продвинутым приёмам аналитического SQL, оптимизации запросов, администрированию баз данных, и закончится всё интеграцией SQL с Python (SQLAlchemy, pandas и т.д.).
Для каждого раздела приведены примеры на реальных сценариях (интернет-магазин, CRM, аналитика продаж), код и полезные советы.
👉 Читать гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
1) Разработка стала платформо-ориентированной
Компании всё чаще строят внутренние платформы для разработчиков:
- developer platform
- internal tooling
- self-service инфраструктура
Цель - сократить путь от идеи до продакшена и убрать лишние согласования. Kubernetes сам по себе больше не цель, а лишь инструмент.
2) Kubernetes - уже стандарт, а не преимущество
K8s окончательно перешёл в разряд базовой инфраструктуры:
- стандарт для средних и крупных команд
- основа CI/CD, безопасности и observability
- фундамент platform engineering
Фокус сместился с «как развернуть кластер» на «как сделать его незаметным для разработчика».
3) DevOps трансформировался в Platform Engineering
Классический DevOps как универсальная роль постепенно исчезает.
На его место приходят:
- platform teams
- golden paths
- стандартизированные шаблоны сервисов
Главная цель — developer experience, а не бесконечная поддержка инфраструктуры.
4) Облако больше не про дешевизну
Сегодня облако — это:
- скорость запуска продуктов
- масштабирование без боли
- managed-сервисы вместо самописных решений
Экономия вынесена в отдельную дисциплину — FinOps, а не считается встроенным преимуществом облака.
5) Наблюдаемость важнее логов
Логи перестали быть основным инструментом понимания системы.
На первый план выходят:
- метрики
- трассировки
- SLO и error budgets
Системы проектируются так, чтобы их можно было понимать в реальном времени, а не разбирать постфактум.
6) Инструментов стало слишком много
Одна из ключевых проблем индустрии:
- перегруженные CI/CD пайплайны
- десятки инструментов без владельцев
- высокая когнитивная нагрузка на команды
Выигрывают те, кто упрощает стек, а не добавляет новые инструменты.
Вывод
Современная разработка — это уже не гонка фреймворков и технологий.
Это про:
- удобство и скорость работы разработчика
- стандарты и повторяемость
- управляемую сложность
- устойчивое развитие команд без выгорания
Коротко:
инфраструктура стала продуктом, а разработчик — её пользователем.
https://stateof.themodernsoftware.dev/
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍3💩1