Аватар канала Сохранёнки программиста
TG

Сохранёнки программиста

Telegram · prog_stuff
Заметки и ссылки на будущее, чтобы изучить когда будет время. Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Другие наши проекты: https://tprg.ru/med
Подписчиков6 530
Охват поста294
Коэффициент охвата4,5%
Постов за месяц 20 последний 24 сентября 2026
Рекламных постов 0 0,0% ленты
Прирост аудитории −1,2% за 90 дней

Динамика подписчиков

с 20 июля 2026 по 28 сентября 2026 · минимум 6 530 · максимум 6 610

Кто рекламировался за полгода

МФТИ, ФИЗТЕХ · ИНН 5008006211 · ОГРН 1027739386135 · последний пост 14 июля 2026

Рекламодатель определён по маркировке рекламы в постах канала.

Публикации

Оригинал

Как устроена машина Тьюринга и где проходит граница вычислимого Интерактивная статья ведёт от устройства машины к пределам вычислений. У неё четыре части: лента, головка, программа и состояние. Пять команд позволяют печатать символ, двигать головку, менять состояние и останавливать выполнение. Примеры запускаются в тексте и прокручиваются пошагово вперёд или назад. Сначала машина бесконечно печатает нули, затем…

132 просмотров
Оригинал

Как читать Big O и находить лишнюю сложность в коде Обстоятельная интерактивная статья объясняет Big O без секундомера: нотация показывает, как растёт время работы вместе с объёмом входа. O(1), O(log n), O(n) и O(n²) разобраны на графиках и примерах JavaScript. Карта материала: 1. сумма циклом растёт линейно, а формула (n × (n + 1)) / 2 требует постоянного числа операций; 2. пузырьковая сортировка в худшем случае…

162 просмотров
Оригинал

Как реализовать get or create в PostgreSQL без гонок и раздувания таблицы Обстоятельный разбор операции: вернуть существующую строку или создать новую, не обновляя совпавшие данные, как при upsert. На таблице тегов видно, почему SELECT перед INSERT даёт идемпотентность, но ломается при двух одновременных запросах. Карта решений: 1. Перехват нарушения уникальности закрывает гонку, но неудачная вставка оставляет…

247 просмотров
Оригинал

Как устроен исполняемый файл Linux и как разобрать его вручную Обстоятельная первая часть серии об ELF, формате исполняемых и компонуемых файлов, начинается с программы на ассемблере x86-64, которая печатает hi there . После сборки NASM и компоновки файл занимает 8,68 КиБ, а gzip -9 сжимает его до 372 байт. Вместо готовых анализаторов автор читает шестнадцатеричный дамп, учитывает порядок байтов от младшего к…

255 просмотров
Оригинал

Как одну проверку Clippy ускорили в 3133 раза Казалось бы, проверить скобки в вызовах макросов Rust просто. Но Clippy делал это после раскрытия макросов, когда [], () или {} уже нельзя получить напрямую. Знак восстанавливали по фрагменту исходного кода. В обстоятельном разборе показана цена решения: для каждого выражения, инструкции и элемента программы проверка поднималась по цепочке раскрытий, дважды запрашивала…

269 просмотров
Оригинал

Как SQLite обеспечивает атомарный коммит Транзакция выглядит так, будто записалась целиком или не записалась вовсе, хотя питание может пропасть посреди записи. Разбор SQLite объясняет, как база создаёт эту гарантию с журналом отката. WAL работает иначе. Материал пригодится при создании VFS для SQLite и разборе повреждений после сбоя: проверьте гарантии накопителя, драйвера и ОС для записи и синхронизации.

271 просмотров
Оригинал

Как выбрать равновероятную выборку из потока неизвестной длины Интерактивный разбор объясняет reservoir sampling, или резервуарную выборку. Алгоритм держит k элементов. Для элемента с номером n шанс попасть в массив равен k/n ; при выборе он заменяет один из сохранённых случайным образом. Поэтому каждый элемент потока имеет равный шанс остаться в результате. Механизм показан на картах, а затем на сервисе сбора…

286 просмотров
Оригинал

Как LMAX вынесла торговую логику в один поток Разбор архитектуры LMAX показывает, почему многопоточность не всегда ускоряет критический путь. Бизнес-логика торговой платформы последовательно обрабатывала заявки в памяти. На сервере с двумя четырёхъядерными процессорами Nehalem по 3 ГГц и 32 ГБ памяти один поток достигал 6 млн заявок в секунду. Это исторический результат 2011 года, а не ориентир для любой системы.…

273 просмотров
Оригинал

Как процессор предсказывает ветвления Псевдотранскрипт доклада объясняет тему с нуля. Конвейер начинает следующую инструкцию до завершения предыдущей, но после условного перехода ещё не знает её адрес. Процессор выбирает путь заранее, а при ошибке отбрасывает начатую работу. В учебной модели ветвления составляют 20% инструкций, а промах стоит 20 тактов. Без предсказания получается 4,8 такта на инструкцию, с…

289 просмотров
Оригинал

Почему одни движки регулярных выражений зависают, а другие нет Обстоятельная статья Расса Кокса сравнивает алгоритм, применяемый Perl и рядом языков, с автоматом Томпсона, построенным из состояний и переходов. В тесте 2007 года Perl сопоставлял строку из 29 букв «a» больше 60 секунд, а реализация автомата Томпсона справилась за 20 микросекунд, в миллион раз быстрее. Её код занимал менее 400 строк на C. Автор ведёт…

289 просмотров

Похожие каналы