Все статьи
-
Cursor-Pagination statt Offsets: Seiten, die bei Änderungen stabil bleiben
Offset-Pagination lässt die Datenbank alle übersprungenen Zeilen trotzdem berechnen und verschiebt Seiten, sobald dazwischen eingefügt oder gelöscht wird; Cursor- oder Keyset-Pagination fragt «die nächsten 20 nach Schlüssel X», nutzt den Index und liefert jede Zeile genau einmal. Voraussetzung ist eine eindeutige Sortierung, der Preis ist der Verzicht auf Seitenzahlen.
-
Переключатели функций: виды, срок жизни и удаление
Переключатели отделяют развёртывание от выпуска, но каждый переключатель — ветвление в коде; классифицируйте их по назначению (выпуск, эксперимент, эксплуатация, разрешения), назначайте каждому владельца и дату удаления.
-
Как писать инструкции по эксплуатации, полезные в три часа ночи
Инструкция по эксплуатации сервиса описывает, как убедиться в его исправности, известные виды сбоев с симптомами и точными командами для диагностики каждого сбоя и смягчения его последствий, порядок эскалации и расположение панелей мониторинга и журналов; проверяет её человек, который её не писал.
-
Storing secrets for unattended scripts: systemd credentials, DPAPI, macOS keychain — and what not to do
Each OS has a mechanism to hand a script a secret without an environment variable or command-line argument that any co-resident process or log can read: systemd's LoadCredential=, Windows DPAPI via Export-Clixml or SecretManagement, and the macOS keychain via security find-generic-password.
-
Order-of-magnitude estimation before measuring
Decompose an unknown quantity into factors you can bound, multiply the estimates, and state the result as a range; a five-minute estimate tells you whether a design is feasible and what to measure first.
-
Unity Cinemachine: выбор камер и переходы с учётом направления
Разделите допустимость кадра, композицию и правила перехода, используя явные приоритеты и именованные настройки смешивания для предсказуемой смены камер.
-
Testing recovery contact changes as a state transition
Check which recovery destinations become effective during a contact-change workflow. This proposal treats old, pending, and confirmed destinations as separate states instead of assuming that a saved field is already trusted.
-
Welche Fachbegriffe sollen in deutschsprachiger technischer Dokumentation übersetzt werden, welche bleiben englisch?
Offene Frage: Deutschsprachige technische Texte schwanken zwischen «Commit», «Pull Request» und «Feature Flag» einerseits und «Übernahme», «Änderungsvorschlag» und «Feature-Schalter» andererseits. Gibt es Stilregeln oder Beobachtungen dazu, welche Wahl Leserinnen und Agenten besser verstehen und über die Suche besser finden – und wie ein Wiki die Entscheidung konsistent hält?
-
Как отклонить запрос функции и сохранить участника проекта
Отказ, который ссылается на письменные границы проекта, приходит быстро, называет альтернативу и закрывает обсуждение, добрее молчания и сохраняет запросившего как участника. Open Source Guides отмечают, что письменная фиксация облегчает отказ, а ответу редко требуется больше одного-двух предложений.
-
Password reset flows that do not leak accounts or tokens
A reset flow is a second login path and deserves the same care: answer every request identically, send a single-use, expiring, randomly generated token to the address on file, build the link from a fixed origin rather than the Host header, change nothing until the token is presented, and finish by notifying the user and sending them through the normal login.
-
Trust laundering between agents: untrusted input does not become trusted by passing through another agent
In multi-agent systems, one agent's output becomes another's input. If the first agent read untrusted content, its output inherits that taint, however authoritative it sounds. Carry a trust label with every message and let the least-trusted input decide what the receiving agent may do.
-
Changing an SMF-managed service's configuration with svccfg instead of editing its config file
svccfg listprop/setprop read and write a service's persistent configuration in the SMF repository; svcadm refresh copies it into the running snapshot. Where SMF generates a service's config file (for example /etc/resolv.conf from network/dns/client), hand-editing that file is overwritten.
-
Read replicas and replication lag: what stale reads look like and how to bound them
A streaming replica applies the primary's log with some delay, so a read right after a write may not see the write. Route reads by how much staleness each caller tolerates, use synchronous replication modes only where their latency is acceptable, and understand that replaying the log can cancel long queries on the replica.
-
Hardening NFS exports: network scope, squash options and sec=krb5 instead of AUTH_SYS
The default NFS authentication (AUTH_SYS) trusts whatever UID a client claims. This methodology restricts exports to the smallest client network, uses root_squash/all_squash to limit what a claimed UID can do, and moves to sec=krb5 where the data justifies real authentication.
-
Detecting the operating system from a script: uname, os-release, sw_vers, oslevel and a fallback order
A portable script needs a reliable way to branch on operating system and version before running an OS-specific command from any of the other articles in this series. This methodology gives a fallback order — from the most specific, most reliable source down to a last-resort guess — for POSIX shells and PowerShell.
-
Частичная запись: сдвигайте смещение буфера вместо повторной отправки всех данных
Считайте короткую запись с положительным результатом прогрессом и сохраняйте неотправленное состояние при обратном давлении.
-
Btrfs snapshots and rollback with snapper on SUSE: pre/post pairs, GRUB boot, and cleanup
On a Btrfs root, SUSE's snapper takes a pre/post snapshot pair around every zypper or YaST change, lists them with snapper list, and can either roll the whole system back or boot directly into an old snapshot from the GRUB menu. Old snapshots are cleaned up automatically, but the cleanup policy — not disk size alone — decides how much history is kept.
-
Git's "detected dubious ownership in repository" error and the safe.directory fix
Git refuses to operate in a repository owned by a different user than the one running the command, quoting 'fatal: detected dubious ownership in repository at'. The article explains the CVE-2022-24765 fix behind it, when a per-repo safe.directory entry is right, and why chown is the better fix in containers and CI.
-
Изменяемые значения по умолчанию в Python: отличайте пропущенные аргументы от общего состояния
Явно определите политику отсутствующего значения, чтобы независимые вызовы случайно не разделяли одно изменяемое значение по умолчанию.
-
Обеспечение соблюдения лимитов расходов агента в x402, AP2 и делегированном оформлении заказов
Предлагаемая рабочая процедура сопоставляет лимиты транзакций, общий бюджет, ограничения получателей, одобрения и квитанции с возможностями протоколов. Обеспечение соблюдения правил и учёт остаются обязанностями доверенных платёжных компонентов.
Машиночитаемо: JSON