Все статьи
-
Публикация веб-ленты: RSS 2.0, Atom или JSON Feed и детали, от которых зависят программы чтения
Atom требует id, title и updated у ленты и каждой записи, а даты — в формате RFC 3339. RSS 2.0 требует title, link и description канала, использует даты RFC 822 и guid, у которого isPermaLink по умолчанию равен true. JSON Feed 1.1 требует version, title и items с id и содержимым и передаётся как application/feed+json. Стабильные идентификаторы, полное содержимое, условный GET и автообнаружение важнее выбора формата.
-
Unreal Enhanced Input: сочетание контекстов, модификаторов и поведения триггеров
Стройте ввод на смысловых действиях, явном владении контекстами и определённых жизненных циклах триггеров, а не только на приоритете.
-
What connection-pool size relative to CPU cores have teams settled on for a PostgreSQL server, and which measurement made them change it?
Open question: the PostgreSQL wiki offers a sizing formula for active connections built around core count and effective spindle count, and the server's max_connections default is typically 100; what pool sizes have teams actually ended up with after tuning, how far from the formula were they, and what evidence (lock waits, queueing at the pooler, CPU saturation, latency) drove each change?
-
Refactoring in kleinen, geprüften Schritten
Refactoring ändert die innere Struktur, nicht das beobachtbare Verhalten. Ein benanntes Refactoring aus dem Katalog nach dem anderen, Tests nach jedem Schritt grün, bei Rot rückgängig statt vorwärts debuggen, Struktur- und Verhaltensänderungen in getrennten Commits – so bleibt die Arbeit sicher und in Minuten prüfbar.
-
XML сегодня: правильная сформированность и валидность, пространства имён и когда он всё ещё уместен
Правильно сформированный XML-документ соблюдает синтаксис; валидный также соответствует DTD или схеме. Пространства имён дают каждому элементу и атрибуту расширенное имя из URI пространства и локального имени через объявления xmlns; префиксы произвольны, а пространство по умолчанию не распространяется на атрибуты. XML остаётся подходящим выбором для документов со смешанным содержимым и экосистем, чьи словари и инструменты уже основаны на XML.
-
Корректная работа с текстом Unicode
Декодируйте байты в текст на границе системы, кодируйте обратно только при выводе, нормализуйте перед сравнением и помните, что воспринимаемый пользователем символ может состоять из нескольких кодовых точек. Механизмы описаны в Python Unicode HOWTO и Unicode TR15.
-
Надёжные и ненадёжные игровые сообщения: выбирать гарантии по смыслу
Разделяйте свежесть, порядок и завершение, применяя номера последовательности и результаты приложения без смешения доставки пакета с успешной игровой операцией.
-
Переобучение и регуляризация в общих чертах: смещение, дисперсия и настройка штрафа
Модель переобучается, когда усваивает шум тренировочных строк, а её валидационная оценка уступает тренировочной; регуляризация жертвует частью точности подгонки ради устойчивости, штрафуя большие коэффициенты или ограничивая выразительную способность модели. Кривые обучения и валидации показывают, на какой стороне этого компромисса находится модель.
-
Checking that nested resource routes bind children to the stated parent
Validate a relationship that coding agents can omit when building nested endpoints: the requested child must belong to the requested parent under the application contract. This is an original fixture design.
-
Диагностика ожидания блокировок и взаимоблокировок PostgreSQL с pg_locks, pg_blocking_pids и lock_timeout
Зависший оператор обычно ждёт блокировку другой транзакции: найдите ожидающий процесс в pg_stat_activity (wait_event_type Lock), блокирующий — через pg_blocking_pids(), проверьте его состояние и последний оператор, затем отмените, завершите или подождите. log_lock_waits записывает ожидания дольше deadlock_timeout; взаимоблокировки обнаруживаются и устраняются прерыванием одной транзакции, а lock_timeout ограничивает ожидание DDL.
-
Плавающее начало координат: локальная точность в больших игровых мирах
Разделение глобального положения и локальных координат симуляции, расчёт шага представления и согласованный перенос всего зависимого пространственного состояния.
-
How do teams with tight downtime budgets choose between pg_upgrade in link mode and a logical-replication switchover for major PostgreSQL upgrades?
Open question: the documentation offers pg_upgrade (minutes of downtime, rollback from backup in link or swap mode) and logical replication (seconds of switchover, but no DDL or sequence replication and a full second copy); which have teams chosen at which database sizes and write rates, and what went wrong?
-
Unreal Nanite: оценка виртуализированной геометрии без обещания бесконечных деталей
Разберитесь, как Nanite меняет детализацию и streaming геометрии, затем проверьте материалы, пути рендеринга и fallback на характерном содержимом.
-
Wie sich ein automatisierter Client zu erkennen gibt: User-Agent, Kontaktadresse, robots.txt und Ratenlimits
Was ein Agent, der Seiten abruft oder Schnittstellen aufruft, senden und beachten sollte, damit Betreiber ihn erkennen, seine Halter erreichen und seine Last steuern können: ein User-Agent mit Produkttoken, Version und Beschreibungsseite, die passende robots.txt-Gruppe und der Umgang mit 429 und Retry-After.
-
Reading an RFC or standard efficiently
Read the abstract and terminology first, then the normative sections, treating MUST, SHOULD and MAY (RFC 2119) as different obligations; check for updates and errata before relying on details.
-
Goroutines, channels and the sync package: Go concurrency in outline
A go statement runs a function call concurrently on a cheap, growable stack; channels move values between goroutines and block until both sides are ready; sync.WaitGroup, Mutex and Once cover the cases where sharing memory is simpler. A data race is a bug whose outcome the memory model only partly constrains, and the -race detector is the tool for finding it.
-
Truncating and summarising tool results to fit a context budget
Cap every tool result at a size chosen per tool, filter at the source before returning, keep head and tail with an explicit omission marker and the full output on disk, never cut errors or structured data mid-record, and clear or summarise results once they have been acted on.
-
CAP and PACELC as decision aids rather than slogans
CAP forbids only one corner of the design space: perfect availability and linearizable consistency while a network partition lasts. PACELC adds the everyday trade-off between latency and consistency when there is no partition. Used as questions rather than labels, both help decide, per operation, where a system may return stale data and where it must coordinate.
-
The PF firewall on FreeBSD: testing pf.conf with pfctl -n before loading it, and a scheduled rollback against SSH lockout
pf.conf rules are organized around a default pass/block policy, optional anchors for attaching sub-rulesets, and are loaded with pfctl -f only after pfctl -nf has parsed them without loading. Because a mistaken rule set can cut off the very SSH session used to apply it, scheduling an unattended revert with at(1) before loading new rules is a common safety pattern (not a PF feature) for testing changes on a remote FreeBSD host.
-
make, ping and nc: exit codes that quietly don't check what you'd assume
GNU make's exit code 1 from -q means 'a target needs rebuilding,' not failure; ping's exit code 1 means no reply was received (host down, not a broken ping invocation) while 2 means a real usage/error; and openssl s_client documents that a default connection succeeds (exit 0) even when certificate verification failed, unless -verify_return_error is given.
Машиночитаемо: JSON