Типичный программист
Всё самое интересное по программированию Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site VK: vk.com/tproger Регистрация в перечне РКН: https://tprg.ru/mJwo
نمایش بیشتر📈 تحلیل کانال تلگرام Типичный программист
کانال Типичный программист (@tproger) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 78 076 مشترک است و جایگاه 1 608 را در دسته فناوری و برنامهها و رتبه 7 335 را در منطقه روسيا دارد.
📊 شاخصهای مخاطب و پویایی
از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 78 076 مشترک جذب کرده است.
بر اساس آخرین دادهها در تاریخ 06 اکتبر, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر -520 و در ۲۴ ساعت گذشته برابر -11 بوده و همچنان دسترسی گستردهای حفظ شده است.
- وضعیت تأیید: تأیید شده (به صورت رسمی توسط تلگرام)
- نرخ تعامل (ER): میانگین تعامل مخاطب 9.96% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 5.88% واکنش نسبت به کل مشترکان کسب میکند.
- دسترسی پستها: هر پست به طور میانگین 7 774 بازدید دریافت میکند. در اولین روز معمولاً 4 593 بازدید جمعآوری میشود.
- واکنشها و تعامل: مخاطبان بهطور فعال حمایت میکنند؛ میانگین واکنش به هر پست 38 است.
- علایق موضوعی: محتوا بر موضوعات کلیدی مانند sql, архитектура, api, docker, github تمرکز دارد.
📝 توضیح و سیاست محتوایی
نویسنده این فضا را محل بیان دیدگاههای شخصی توصیف میکند:
“Всё самое интересное по программированию
Разместить рекламу: @tproger_sales_bot
Правила общения: https://tprg.ru/rules
Другие каналы: @tproger_channels
Сайт: https://tprg.ru/site
VK: vk.com/tproger
Регистрация в перечне РКН: https://tprg.ru/mJw...”
به لطف بهروزرسانیهای پرتکرار (آخرین داده در تاریخ 07 اکتبر, 2026)، کانال همواره بهروز و دارای دسترسی بالاست. تحلیلها نشان میدهد مخاطبان بهطور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامهها تبدیل کردهاند.
در حال بارگیری داده...
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 06 اکتبر | +11 | |||
| 05 اکتبر | +9 | |||
| 04 اکتبر | +7 | |||
| 03 اکتبر | +5 | |||
| 02 اکتبر | +8 | |||
| 01 اکتبر | +5 |
| 2 | Как Canva разгрузила MySQL с помощью S3
При запуске сотни шлюзов Canva загружали из MySQL более миллиона записей об отозванных сессиях. Деплой превращался в одновременный набег на базу, а добавление реплик лишь временно смягчало проблему.
В разборе новой схемы загрузки кеша инженеры делят данные на 30-минутные сегменты в S3. Каждая запись занимает 16 байт, а сортировка позволяет искать её прямо в скачанном массиве, без преобразования в Java-объекты.
Несколько фоновых процессов дописывают сегменты через условные PUT-запросы: S3 принимает запись, только если объект не изменился после чтения. Выбор лидера уменьшает число конфликтов, но не гарантирует корректность: прежний лидер может приостановиться и вернуться после смены. В итоге кеш занял на 87,5% меньше памяти, а MySQL оставили две реплики для резервирования. | 3 847 |
| 3 | OpenAI показала GPT-6.1 Sol и новые инструменты на DevDay
Новая модель стоит $2 за миллион входных токенов и $10 за миллион выходных — в пять раз меньше, чем GPT-6 Astra. Это сравнение с Astra: у GPT-6 Sol те же ставки, а кэшированный ввод в GPT-6.1 Sol подешевел с $0,20 до $0,10. По тестам самой OpenAI, новая Sol приближается к Astra в программировании и работе с компьютером; независимого подтверждения результатов пока нет.
Для разработчиков на DevDay представили облачные окружения Codex, голосовые команды в Codex CLI и управление компьютером в Agents API. MCP Events позволяет плагинам запускать действия по событиям внешних сервисов. GPT-6.1 Sol уже доступна в API, ChatGPT Work и Codex на тарифах Plus, Pro, Business, Enterprise и Edu, а в обычном чате её пока нет.
В обзоре DevDay собраны результаты бенчмарков, условия доступа, Pro 500 с Ultrafast и другие анонсы. | 1 |
| 4 | Дрон научили ориентироваться механическими усами
В темноте, дыму и пыли камеры и лидар могут подвести. Исследователи Делфтского технического университета оснастили дрон легче 100 г двумя усами, чтобы он находил путь на ощупь.
Каждый ус соединили с тремя миниатюрными датчиками давления. По изменению их показаний дрон оценивает положение поверхности, обходит препятствия, движется вдоль неё и может составлять карту.
Винты создают поток воздуха, поэтому бортовая программа отделяет турбулентность от касания. Ей хватает 34 КБ памяти, а точность остаётся миллиметровой. Такой сенсор может пригодиться маленьким поисково-спасательным дронам для обследования завалов без риска для людей и животных. | 5 524 |
| 5 | Как быстрые хеш-функции ломаются на специально подобранных данных
Обычный бенчмарк показывает скорость на удобных данных. Атакующий подбирает другие: разные ключи получают одинаковый хеш и попадают в одну ячейку таблицы. Вместо быстрых операций начинается перебор множества значений, вплоть до отказа в обслуживании.
Автор с помощью Claude Fable разобрал популярные функции из набора тестов SMHasher. У большинства нашлись входы с устойчивостью к коллизиям минимум на 20 бит хуже ожидаемой. Для CityHash64, FarmHash64 и MurmurHash3 удалось построить сколько угодно входов, которые сталкиваются при любом секретном ключе.
Интерактивное сравнение скорости и гарантий отделяет доказанные оценки от найденных контрпримеров. Практический вывод: если сервис принимает чужие данные, одной пропускной способности хеша недостаточно. Нужны доказанные гарантии, а ещё лучше проверенные в Lean. | 5 428 |
| 6 | Почему max_connections не ускоряет PostgreSQL
Пять тысяч разрешённых соединений выглядят как запас мощности, но пропускную способность PostgreSQL определяют ядра и хранилище. max_connections решает другое: сколько серверных процессов база допустит до отказа и сколько общей памяти заранее выделит под их структуры.
На PostgreSQL 18.6 рост лимита со 100 до 5000 увеличил общую память со 150 до 389 МБ. При этом 17-е активное соединение на машине с 16 ядрами уже добавляет переключения контекста и очередь. А 400 активных запросов с тремя хеш-объединениями каждый могут одновременно запросить 1200 порций work_mem.
Поэтому лимит стоит считать как бюджет, а приложения подключать через PgBouncer в режиме пула транзакций. Для большинства производственных систем расчёт с учётом репликации, мониторинга и ручных подключений даёт 100–300 соединений. | 5 346 |
| 7 | Kubernetes 1.37 перевёл rootless kubelet в beta
В релизе Kubernetes 1.37 kubelet разрешили запускать на хосте без прав root, внутри пространства пользователей Linux. Флаг KubeletInUserNamespace включён по умолчанию.
У kubelet становится меньше прав на хосте. Разработчики рассчитывают, что это сократит ущерб при побеге контейнера из изоляции.
Режим пока находится в beta: возможность уже доступна по умолчанию, но ещё не объявлена стабильной. Для эксперимента стоит отдельно проверить работу kubelet без root на своих узлах и не принимать beta за готовность к любой инфраструктуре. | 5 567 |
| 8 | Исследователи заставили современную электронику выдавать данные по радио
Метод InjectEave превращает случайные внутренние антенны устройства в канал утечки. На устройство направляют радиосигнал подходящей частоты. Нелинейные компоненты смешивают его с рабочими сигналами схемы, после чего наружу уходит излучение с данными. Без такого воздействия заметной утечки в опытах не обнаружили.
В экспериментах исследователи восстановили звук из проводных и беспроводных наушников и определили состояние умной лампы и вентилятора. Сигнал проходил даже сквозь стены на небольшой дистанции, а усилитель увеличил дальность до 30 метров.
В демонстрации с интернет-телефоном они перехватили речь, клонировали голос и внедрили новую фразу в звонок в реальном времени. Для атаки нужно активно облучать цель и принимать ответное излучение: результаты пока относятся к исследовательской установке. | 5 563 |
| 9 | 18 тысяч тестов нашли то, что пропустили 185 обычных
При переносе robfig/cron с Go на Rust код компилировался, а все 185 модульных тестов проходили. Затем одинаковые расписания прогнали через обе реализации и сравнили результаты в 18 тысячах точек. Так вскрылась разница при переводе часов: несуществующее 02:30 Go переносил на 03:30, а библиотека chrono-tz сообщала, что такого локального времени нет.
В Rust пропущенный час стали сдвигать вперёд, после чего сравнительные тесты не нашли ни одного расхождения. Код проверки и история переноса показывают полезный подход: совместимость порта стоит доказывать одинаковым поведением на сложных входных данных, а не успешной сборкой. | 5 416 |
| 10 | Переход на ветку в присланном проекте запустил бы вредоносный Git-hook
Разработчику Фрэнку Уайлсу написали под видом заказчиков приложения и предложили обсудить проект. Перед созвоном его попросили изучить спецификацию в папке на Dropbox и подписать соглашение о неразглашении (NDA), уточнив, что сам документ лежит в отдельной ветке репозитория.
Ловушка строилась на передаче каталога .git внутри обычной папки. Стандартная команда git clone не копирует клиентские хуки с удалённого сервера из соображений безопасности, но в присланной директории уже лежал исполняемый файл .git/hooks/post-checkout. При вызове git checkout этот скрипт обращался к Vercel, скачивал бинарник под текущую операционную систему, делал его исполняемым, запускал и удалял себя.
Фрэнк вовремя проверил каталог хуков, поэтому на его ноутбуке скрипт не сработал. В блоге разработчик описал инцидент и предположил, что злоумышленники планировали получить доступ к аккаунтам и клиентским проектам. Открытие чужих репозиториев напрямую несёт личный риск: даже без сборки и запуска проекта привычные команды Git могут исполнить сторонний бинарник.
@tproger | 5 732 |
| 11 | Как поручить ИИ миграцию сайта и не потерять 400 страниц
Сайт с сотнями маршрутов, формами, редиректами и старым кодом автор перенёс на Astro за две недели. Он запускал не больше двух агентов параллельно, чтобы проверять результат до размножения ошибок.
Требование сохранить возможности превратили в контракт: какие адреса, метаданные, изображения и формы должны работать. Рискованный перенос контента сначала проверили на прототипе. Затем конвертер переводил известные конструкции в MDX по правилам, а на незнакомых останавливался.
В разборе миграции полезен сам метод: дробить работу на задачи с критериями приёмки и оставлять продуктовые решения человеку. | 5 468 |
| 12 | Как HLS запускает видео до полной загрузки
В HLS ролик разбит на независимые сегменты, обычно по 2–10 секунд. Плеер запрашивает их по HTTP и может начать воспроизведение, получив первые части и не дожидаясь всего файла.
В разборе Devyansh о механике HLS показано, как файл m3u8 задаёт последовательность сегментов, а главный плейлист перечисляет варианты качества. Во время просмотра плеер оценивает пропускную способность сети, состояние буфера и стабильность воспроизведения, затем переключается между вариантами.
Разбор пригодится, когда нужно понять поведение веб-плеера: время старта зависит от доставки первых сегментов, а качество может меняться уже по ходу просмотра. Для зрителя это разные стороны опыта: когда начинается воспроизведение и как меняется изображение после старта. | 5 531 |
| 13 | Открываете видео. В одном варианте оно начинается сразу, а изображение постепенно становится чётче. В другом — нужно подождать три секунды, зато картинка будет чёткой с первого кадра.
Как вам удобнее? | 5 285 |
| 14 | Как поймать утечку целевой переменной до того, как поверить R² 0,998
Модель получила пять колонок из публичного набора CDC и почти идеально предсказала шестую: коэффициент R² достиг 0,998. Результат выглядел как успех, пока не выяснилось, что CDC вычислял целевую колонку из тех самых пяти. Модель не нашла закономерность в реальном мире, а восстановила готовую формулу.
Так работает утечка целевой переменной: признаки уже содержат ответ. Автор описал происхождение колонок в YAML-манифесте, где для каждой вычисляемой величины указаны исходные данные. Затем написал Python-линтер, который обходит этот граф зависимостей и отклоняет признаки на пути к целевой колонке или от неё.
В практическом разборе утечки есть воспроизводимый эксперимент на данных CDC, код проверки, обработка битых входных файлов и запуск линтера при каждом пуше через GitHub Actions. | 5 631 |
| 15 | Два ядра загружены на 100%, а программа тормозит: где искать причину
Профилировщик показывает простой инкремент, оба ядра заняты, алгоритм не изменился. Но в эксперименте перестановка двух целых чисел в структуре сократила время работы с 4284 до 841 мс.
Причина была в размещении данных. При промахе кэша ядро ждёт чтения из памяти сотни тактов. При промахе TLB, кэша соответствий виртуальных и физических адресов, процессор дополнительно обходит таблицы страниц. А при ложном совместном использовании два ядра меняют разные переменные в одной 64-байтной строке кэша и постоянно отбирают её друг у друга.
Обычный профиль этих ожиданий не разделяет. В разборе трёх причин тормозов есть команды perf stat для счётчиков промахов и perf c2c для поиска строки кэша, за которую спорят ядра. Это полезное направление диагностики, когда добавление потоков не ускоряет сервис. | 5 944 |
| 16 | Как компании снижают расходы на ИИ с помощью открытых моделей
Uber потратила годовой ИИ-бюджет за первые три месяца. Затем команда снизила цену запроса на 34%, сессии на 52% и удержала расходы на уровне марта, хотя использование росло. Для части задач модели с открытыми весами оказались в 2–20 раз дешевле передовых закрытых.
Экономия держится не на одной замене. Uber еженедельно сравнивает модели на реальных задачах, небольшую работу отдаёт дешёвым субагентам и сжимает контекст после 400 тысяч токенов. Pinterest дообучает открытые модели на своих данных: транзакция обходится менее чем в 8% цены сопоставимой закрытой модели.
Разбор практик компаний даёт критерий маршрутизации: дорогую модель оставлять для сложного кода, а резюме и небольшие задачи передавать дешёвой после проверки качества на своих примерах. | 5 825 |
| 17 | Если ваш прод живёт в Kubernetes, эта подборка пригодится. Гайды, малоизвестные Open Source-инструменты, апгрейд до 1.37 и стратегии деплоя, которые не роняют сервисы.
Deckhouse Conf 2026: зачем инженерам самописный SDN и виртуалки в Kubernetes
Kubernetes на практике: гайды и малоизвестные Open Source-инструменты
Как обновиться на Kubernetes 1.37 и не уронить прод
Стратегии деплоя, которые не роняют прод | 6 118 |
| 18 | Как собрать личный видеосервис на Plex и смотреть медиатеку с разных устройств
Домашний компьютер может хранить фильмы и сериалы, а Plex раздаёт их на ноутбуки, смартфоны, планшеты, консоли и другие устройства. Получается личная медиатека без зависимости от каталога стримингового сервиса, хотя файлы придётся собирать и упорядочивать самостоятельно.
В разборе домашней настройки Plex David Nield описывает свой опыт: установил серверное приложение на Windows, указал папки с видео и дождался сканирования библиотеки. После этого фильмы стали доступны через клиентские приложения на разных экранах.
Plex запоминает место остановки, поэтому просмотр можно продолжить на другом устройстве. Ещё владелец медиатеки может настроить, как долго фильм остаётся в разделе Continue Watching. Доступ к одному видео на разных экранах особенно удобен, когда вместе с ним сохраняется и контекст просмотра. | 6 256 |
| 19 | Если вы начинаете смотреть видео на одном устройстве, а продолжаете на другом (например, со смартфона переходите на компьютер или телевизор), что для вас в этом переходе важнее всего? | 5 824 |
| 20 | Как собрать аналог Quick Look для Windows на Rust и Tauri
PeekIt переносит в Windows 10 и 11 быстрый просмотр файла по Space: без открытия тяжёлого редактора. Установщик занимает около 3,4 МБ, а фоновый процесс, по замерам автора, потребляет 10–15 МБ памяти.
Обработчик Windows перехватывает Space, но не мешает вводу в текстовых полях. Перед чтением PeekIt проверяет атрибуты OneDrive: файлы только из облака не скачивает, а показывает их размер и метаданные.
Код обработчика Space и устройство приложения пригодятся для собственных фоновых утилит на Rust и Tauri. | 5 906 |
