Перейти к содержимому
Технологии IT обновлён 25.10.2021

Библиотека программиста

Библиотека программиста — канал с полезными материалами для всех, кто интересуется программированием. Присоединяйтесь!

Публикации канала

👀 В Django нужно отдельно проверять права вошедшего пользователя Декоратор login_required пропускает любого авторизованного пользователя. Если приложение обслуживает несколько отделов или клиентов, доступ к их данным требует отдельной проверки. GitLab разделил внутреннее Django-приложение между двумя командами. Общими оставили вход, управление пользователями и базовые компоненты. Доступ к разделам привязали к группам и проверяют на уровне представлений Django и API. Такой сценарий легко пропустить, когда внутренний сервис постепенно получает новых пользователей. Ссылку на чужой раздел можно узнать и открыть напрямую. Найдите обработчики с login_required и проверьте, какие данные они отдают. Добавьте тест: пользователь одной группы открывает страницу другой и получает отказ. Ту же проверку проведите для API. 🐸 Библиотека программиста

Открыть в Telegram

📊 Стратегические ЦОД в России предложили размещать под землёй Минцифры подготовило рекомендации по защите дата-центров от БПЛА. Участники рынка прогнозируют рост цен на услуги примерно на 10% без учёта инфляции. Как устроены новые категории ЦОД и что пришлось восстанавливать Yandex Cloud 🐸 Библиотека программиста

Открыть в Telegram

👀 У Warp утекли журналы работы ИИ-агентов Атаковали стороннего поставщика инфраструктуры. По предварительной оценке главы Warp, инцидент мог затронуть около 1% пользователей. Компания расследует утечку логов и телеметрии. Какие данные собирает среда разработки и что известно об утечке 🐸 Библиотека программиста

Открыть в Telegram

🖥 GitHub CLI позволяет добавлять скриншоты и видео к PR из терминала Исправили интерфейс, записали короткое видео — добавьте его к пулреквесту одной командой: gh pr create --attach ./after.mp4 В GitHub CLI 2.99.0 флаг --attach появился для создания и редактирования PR и issues, а также для комментариев. Для нескольких файлов повторите флаг. Ревьюер сразу увидит, как воспроизводился баг и что изменилось после исправления. Особенно удобно для анимаций, ошибок вёрстки и новых пользовательских сценариев. Обновите gh и приложите к следующему PR скриншоты «до» и «после». Загрузка работает на GitHub.com и GitHub Enterprise Cloud. 🐸 Библиотека программиста

Открыть в Telegram

⚡ Только до 31 октября: покупайте один курс Proglib Academy и получайте второй в подарок! Что можно освоить? ⏬ ИИ для разработчиков — применение ИИ на разных этапах разработки: от работы с кодом до тестирования, ревью и организации рабочего процесса. ⏬ Разработка ИИ-агентов — создание собственных агентов с памятью, интеграциями и доступом к внешним инструментам. Научитесь не просто работать с нейросетями, а создавать решения, которые помогают автоматизировать реальные задачи 📍 Можно выбрать эту пару или сочетать любые другие курсы из каталога — под свои интересы и цели. 🎁 Один курс оплачиваете, второй получаете бесплатно. Акция длится до 31 октября. ✨ Прокачать скиллы по акции

Открыть в Telegram

📊 OpenAI планирует покупать чипы Google — по данным СМИ Компания уже ищет инженера для оптимизации моделей под TPU: базовая зарплата — $380–500 тыс. в год. Условия предполагаемой закупки пока не раскрыты. Зачем OpenAI нужны TPU и как Google выводит свои ускорители за пределы собственного облака 🐸 Библиотека программиста

Открыть в Telegram

🖥 Google добавила в виртуальные миры звук и говорящих персонажей В Genie 4 можно менять погоду, добавлять объекты и управлять сценой текстовыми командами прямо во время симуляции. Пока модель доступна приглашённым тестировщикам. Что умеет Genie 4 и как Google планирует открыть к ней доступ 🐸 Библиотека программиста

Открыть в Telegram

🖥 RTX 4090 почти удвоила скорость отдельных вычислений после разблокировки Модели в Immich на RTX 3060 прибавили 20–32%, а одна квантованная модель на RTX 4090 осталась практически на прежнем уровне. В статье — прикладные тесты и условия, при которых удалось получить прирост. Собрали результаты тестов RTX 30 и RTX 40 и объяснили разницу 🐸 Библиотека программиста

Открыть в Telegram

🖥 GitHub ускорил страницы после перехода с CSS-in-JS на CSS Modules Стили расходуют процессорное время при рендеринге страницы на сервере и запуске компонентов в браузере. GitHub перенёс стили в CSS Modules, чтобы собирать их заранее в CSS-файлы. После переноса компонентов дизайн-системы Primer время серверного рендеринга сократилось на 55%, а инициализации компонентов — на 25%. Команда обновляла компоненты постепенно: переключала старые и новые стили флагом, сравнивала скриншоты и расширяла аудиторию. Если React-приложение долго запускается, посмотрите в профиле, сколько времени занимает работа со стилями. Начните с одного тяжёлого компонента: перенесите его стили, сравните внешний вид и замерьте время загрузки. 🐸 Библиотека программиста

Открыть в Telegram

👀 Разработчик Telegram предложил увольнять тех, кто пишет код без ИИ По словам Майка, нейросети создают уже 99,9% клиентского кода мессенджера. Новый движок на Rust опубликован, но по умолчанию в клиентах для iOS и macOS пока работает прежний. Разобрали изменения в клиенте и исследования скорости разработки с ИИ 🐸 Библиотека программиста

Открыть в Telegram

👀 GitHub разделяет очередь записи в репозиторий по веткам и тегам Записи в разные ветки не обязательно должны ждать друг друга. В GitHub меняют механизм согласования записи: вместо одной очереди на репозиторий операции упорядочиваются по отдельным ссылкам Git — например, веткам и тегам. Во внутренних тестах параллельная запись в разные ссылки дала в 3–4 раза большую пропускную способность; перестройка инфраструктуры идёт поэтапно. Это полезный пример для разработчиков многопользовательских систем. Иногда производительность ограничивает слишком крупная область блокировки: независимые действия вынуждены стоять в одной очереди. Посмотрите, что именно защищают ваши блокировки: весь проект, одного клиента или отдельный объект. Если операции независимы, проверьте возможность сузить область согласования. Изменения, затрагивающие несколько объектов сразу, всё равно потребуют общей координации. 🐸 Библиотека программиста

Открыть в Telegram

📊 Cloudflare сдерживает рост затрат на серверы за счёт изменений в обработке данных По данным инженеров Cloudflare, в мае их система доставляла около двух миллиардов событий в секунду. Чтобы рост трафика не требовал такого же роста оборудования, команда несколько лет меняла схему данных, сжатие и репликацию. В 2026 году к этому добавились распределённая выборка событий и агрегация внутри конвейера. Разбор полезен командам, у которых дорожают логи и аналитика. Затраты определяются не только числом событий, но и тем, сколько лишних данных система переносит, хранит и обрабатывает. Выберите один самый дорогой поток и посчитайте объём на каждом этапе. Проверьте, какие поля нужны получателям и где можно раньше агрегировать данные. Сокращать детализацию стоит только после проверки требований к расследованию ошибок и точности отчётов. 🐸 Библиотека программиста

Открыть в Telegram

🖥 Результат теста ИИ-агента не показывает, насколько удобно с ним работать JetBrains изучила 4782 диалога разработчиков с агентом в IDE. Исправления ошибок и новые функции составили меньше половины сообщений: люди также просили объяснять код, планировать изменения и проверять результат. Между тем в SWE-Bench Pro почти все задания — функции и исправления, сформулированные одним сообщением. Это важно командам, которые выбирают помощника по таблице результатов. Успех на отдельной задаче не проверяет, как агент удерживает требования после уточнений и переключается между объяснением, правкой и ревью. При этом выборка JetBrains описывает конкретную аудиторию, а не всех разработчиков. Добавьте к сравнению несколько своих рабочих диалогов: попросите объяснить участок проекта, внесите уточнение и проверьте итог. Оценивайте не только готовый код, но и время, которое вы потратили на исправление недопониманий. 🐸 Библиотека программиста

Открыть в Telegram

👀 Маршрутизатор Neki пропускает ненужное декодирование ответов PostgreSQL Промежуточный сервис часто превращает все входящие данные в объекты, хотя использует лишь малую часть. Команда Neki оставляет ответы PostgreSQL в протокольном виде, пока значения действительно не понадобятся. Например, для сортировки можно прочитать ключевой столбец, не декодируя остальные. Это полезно авторам прокси, шлюзов и сервисов обработки данных. На больших потоках создание временных объектов и преобразование форматов могут стоить дороже полезной работы. Найдите в профиле приложения участки разбора и сериализации. Проверьте, какие данные действительно нужно понимать вашему сервису, а какие можно передать дальше без преобразования. Сначала измерьте один горячий участок: усложнять весь код ради гипотетической экономии не стоит. 🐸 Библиотека программиста

Открыть в Telegram

📌 Один курс — хорошее вложение в себя. Два по той же цене — ещё лучше. В Proglib Academy действует акция: покупаешь один курс, а второй получаешь в подарок. Например, можно совместить два направления по работе с ИИ: 💥 ИИ для разработчиков — применение нейросетей в повседневной разработке: работа с кодом, тестирование и ревью. 💥 Разработка ИИ-агентов — архитектура агентов и создание собственных AI-решений. 📍 Разница в цене — почти 50 тысяч рублей. Можно освоить больше, не выходя за рамки запланированного бюджета. А если тебе интереснее Python, алгоритмы, backend или DevOps — выбирай другую пару курсов из каталога. Акция действует до 31 октября включительно ⏳ ⏮️ Пора прокачать свой стек

Открыть в Telegram

🖥 Закрытый ключ сертификата оказался числом 4. Исследователь восстановил восемь ключей менее чем за секунду, а Python и Node.js приняли поддельный сертификат в локальном тесте. Теперь eMudhra уходит с рынка TLS. Как ошибка оставалась незамеченной 17 месяцев и почему блокировки в браузере недостаточно. 🐸 Библиотека программиста

Открыть в Telegram

📊 DigitalOcean восстанавливает подготовленную MicroVM быстрее 200 мс Вместо повторной загрузки системы DigitalOcean восстанавливает виртуальную машину из сохранённого состояния. Нужные страницы памяти и блоки диска подгружаются по мере обращения. В собственных тестах компании подготовленная MicroVM начинала обслуживать трафик менее чем за 200 мс по медиане — при готовом шаблоне, свободном хосте и прогретых кешах. Такой подход интересен разработчикам песочниц, сред запуска кода и фоновых исполнителей. Он позволяет не повторять дорогую инициализацию перед каждой задачей. Разделите в своих замерах загрузку системы, запуск приложения и подготовку данных. Если основное время уходит на повторяемую инициализацию, изучите снимки состояния. Учтите: они не откатывают внешнюю базу, сетевые соединения и уже выполненные API-вызовы. 🐸 Библиотека программиста

Открыть в Telegram

🖥 Heroku позволяет менять настройки фронтенда без пересборки приложения Поменяли адрес API — снова собираете весь фронтенд? Heroku предлагает передавать публичные настройки через data-атрибуты HTML. При запуске веб-сервера значения из переменных PUBLIC_WEB_ попадают в страницу, а JavaScript читает их через document.head.dataset. Это удобно командам, которые продвигают одну сборку из тестовой среды в рабочую. Меняется окружение, а проверенный JavaScript-пакет остаётся тем же. Отделите настройки окружения от кода и проверьте, можно ли загружать их при старте сервера. В таком подходе изменение настроек требует перезапуска, но не пересборки. Пароли и токены туда класть нельзя: всё в HTML доступно посетителю. 🐸 Библиотека программиста

Открыть в Telegram

📊 $25 млрд за обман пользователей. Meta* собирается оспорить штраф суда Нью-Мексико — он в пять раз больше суммы, которую компания согласилась заплатить FTC в 2019 году. Что установили присяжные и при чём здесь Cambridge Analytica — рассказываем в статье. *Meta признана экстремистской организацией в России. 🐸 Библиотека программиста

Открыть в Telegram

👀 GitHub сократил получение истории звёзд с 2500 запросов до 24 Чтобы построить график популярности репозитория, раньше приходилось загружать страницы со списками пользователей. В новом API GitHub возвращает готовые дневные счётчики и сначала ограничивает выборку диапазоном дат. Для истории react/react это около 24 запросов вместо 2511. Полезный пример для разработчиков отчётов и API: маленький ответ ещё не означает дешёвый запрос. База может перечитать огромную таблицу ради нескольких чисел. Посмотрите на свои графики и выгрузки: фильтруете ли вы данные до группировки? Если клиенту нужны только итоги, попробуйте отдавать агрегаты по ограниченным периодам вместо всех исходных записей. 🐸 Библиотека программиста

Открыть в Telegram

Комментарии

0

Комментарии пишут вошедшие — так видно, кто автор.

Войти

Комментариев пока нет

Будьте первым, кто расскажет о канале другим.

Пожаловаться на канал

Расскажите, что не так: модератор проверит канал и примет решение. Подпись не нужна, но почту можно оставить — тогда ответим.

Причина Что не так (необязательно) Почта для ответа (необязательно)
Открыть в Telegram