Все статьи
-
WeKnora CVE-2026-30856: проверка маршрутизации вызовов инструментов после исправления подмены
Коллизия имён инструментов в WeKnora позволяла подменить доверенный инструмент MCP реализацией с другого сервера. Обновите затронутые системы и убедитесь, что одобрение вызова, идентификатор в реестре и отправка запроса указывают на один и тот же сервер.
-
Recovering lost commits and branches with the reflog
The reflog records every movement of HEAD and of each branch in the local repository, so a bad reset, rebase, amend or branch deletion can be undone by finding the earlier position and putting a new branch on it; entries expire after 90 days (30 for unreachable ones) by default, and uncommitted changes were never in it.
-
Алиасинг append в Go: проверяйте пути со свободной ёмкостью и перевыделением памяти
Явно задавайте владение срезом, когда добавление к представлению может изменить хранилище, наблюдаемое из другого места.
-
Date and time formats in APIs: ISO 8601 and RFC 3339
Exchange timestamps as RFC 3339 strings with an explicit offset, dates as YYYY-MM-DD, durations as ISO 8601 durations or plain seconds; never as locale-dependent text or as ambiguous numbers.
-
Прозрачность с взвешенным смешиванием: стабильный порядок и явное приближение
Разберитесь, почему сортировка объектов решает не все случаи прозрачности, реализуйте взвешенное накопление и revealage и проверьте отличие от упорядоченной композиции.
-
Locale and date pitfalls in coreutils: LC_ALL, character ranges and GNU versus BSD date
The locale silently changes sort order, what [a-z] matches, decimal separators and the default date format; scripts should set LC_ALL=C (or C.UTF-8) and TZ explicitly, request explicit date formats, and avoid GNU-only date -d or BSD-only date -v unless the platform is known.
-
Хеш-таблицы на практике: коллизии, коэффициент заполнения и хеширование с seed
Хеш-таблица в среднем быстра лишь при равномерном распределении ключей по корзинам. Её реальное поведение определяют коллизии, коэффициент заполнения, запускающий перехеширование, и отдельное начальное значение хеширования для каждого процесса как защита от hash flooding. Не сохраняйте хеш-значения и не полагайтесь на порядок обхода.
-
Дистилляция знаний: перенос полезных предсказаний от учителя к ученику
Обучайте ученика по меткам и распределению вероятностей учителя, явно задавая температуру, веса потерь и независимую оценку. Польза сжатия зависит от качества учителя, ёмкости ученика и поведения при развёртывании.
-
Administering Windows Server Core: sconfig, what's missing, and managing it remotely
Server Core trades the desktop shell and local GUI consoles for a smaller code base and attack surface; sconfig covers first-run configuration from the console, and Windows Admin Center or RSAT-equipped machines supply the graphical management that Server Core itself does not.
-
Google API pagination and quota errors: pageToken, 403 rateLimitExceeded and 429
Google Workspace APIs such as Calendar and Drive page through a pageToken/nextPageToken pair with maxResults (Calendar) or pageSize (Drive), and Drive signals overload two ways: HTTP 403 with reason rateLimitExceeded or userRateLimitExceeded, or HTTP 429 with reason rateLimitExceeded — all documented as cases for retrying with exponential backoff, unlike other 403 reasons.
-
Kommentare schreiben, die der Code nicht sagen kann: Gründe, Randbedingungen, Fallen
Ein Kommentar lohnt sich, wenn er etwas sagt, das im Code nicht steht: den Grund für eine überraschende Entscheidung, die äussere Randbedingung, die Falle für die nächste Person. Was der Code sagt, wiederholt er nicht; PEP 8 hält fest, dass Kommentare, die dem Code widersprechen, schlimmer sind als keine. Bevor man kommentiert, prüft man, ob ein besserer Name oder ein Test den Kommentar überflüssig macht.
-
Невидимый и переставленный текст: двунаправленные управляющие символы, теги и похожие знаки в коде и промптах
Unicode позволяет включать в текст символы, невидимые рецензенту или меняющие порядок отображения. Двунаправленные управляющие символы могут заставить читать код иначе, чем он компилируется; символы-теги скрывают инструкции, которые модель всё равно получает, а похожие знаки имитируют идентификаторы. Для обнаружения нужно проверять кодовые точки, а не отображение.
-
Gute Commit-Nachrichten: das Warum festhalten
Eine Betreffzeile von rund 50 Zeichen im Imperativ, eine Leerzeile, dann ein Text, der Motivation, Alternativen und Folgen erklärt, statt den Diff nachzuerzählen.
-
Recovery readiness before a hardening change: console access, a backup, a scheduled automatic rollback, and a change log
A methodology for making any hardening change reversible before it is applied: confirm out-of-band access, back up what is about to change, arm a scheduled rollback that fires if nothing confirms success, and log the change — so a network or authentication mistake self-heals instead of requiring a site visit.
-
Which test naming and file organisation conventions help a reader locate the failing behaviour fastest?
Open question: frameworks only fix discovery (test_*.py, TestXxx); naming by method, by behaviour or by sentence, and grouping by source file, feature or scenario are conventions. Has anyone measured which of them shortens the path from a failure or a change request to the right test, for people or for agents?
-
Privilege elevation compared: sudo, doas, UAC, runas and AIX RBAC — and how to detect it
sudo, doas, Windows UAC and macOS's admin group all answer the same question — is this session allowed to act as an administrator — with different mechanisms and different ways for a script to check the answer before attempting a privileged action.
-
Reading a PostgreSQL query plan with EXPLAIN ANALYZE
EXPLAIN shows the planner's chosen tree with estimated costs; EXPLAIN ANALYZE runs the query and adds actual times and row counts. Compare estimated with actual rows, find the node with the largest actual time, and check for sequential scans on large tables and misestimated joins.
-
Invalidating test evidence when a later edit changes what was checked
Keep a coding agent from carrying a passing result forward after edits have changed the code, configuration, fixtures, or dependencies that result actually covered.
-
API-Fehlermeldungen nach RFC 9457 (Problem Details)
RFC 9457 definiert mit `application/problem+json` ein einheitliches Format für Fehlerantworten von HTTP-APIs: `type` als URI der Fehlerklasse, `title`, `status`, `detail` und `instance`, erweiterbar um eigene Felder. Clients – auch Agenten – können damit auf die Fehlerklasse verzweigen, statt Prosa zu deuten.
-
Cursor pagination versus offsets
Offset pagination is simple but drifts when rows are inserted or deleted and gets slower with depth; cursor pagination returns a token that encodes the position and stays stable and cheap.
Машиночитаемо: JSON