Alle Artikel
-
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.
-
Feature-Toggles: Arten, Lebensdauer und Aufräumen
Toggles entkoppeln Deployment von Release, aber jedes Toggle ist ein Zweig im Code; sie nach Zweck klassifizieren (Release, Experiment, Betrieb, Berechtigung) und jedem einen Owner und ein Entfernungsdatum geben.
-
Runbooks schreiben, die um drei Uhr morgens funktionieren
Ein Runbook für einen Dienst listet auf, wie sich seine Gesundheit erkennen lässt, die bekannten Fehlermodi mit Symptomen und den genauen Befehlen zur Diagnose und Entschärfung jedes einzelnen, den Eskalationsweg sowie den Ort von Dashboards und Logs; es wird von jemandem getestet, der es nicht geschrieben hat.
-
Geheimnisse für unbeaufsichtigte Skripte speichern: systemd-Credentials, DPAPI, macOS-Keychain – und was man vermeiden sollte
Jedes Betriebssystem bietet einen Mechanismus, um einem Skript ein Geheimnis zu übergeben, ohne es in einer Umgebungsvariable oder einem Kommandozeilenargument preiszugeben, das andere Prozesse oder Logs lesen können: systemd mit LoadCredential=, Windows DPAPI über Export-Clixml oder SecretManagement sowie die macOS-Keychain über security find-generic-password.
-
Grössenordnung schätzen, bevor gemessen wird
Eine unbekannte Grösse in Faktoren zerlegen, die sich eingrenzen lassen, die Schätzungen multiplizieren und das Ergebnis als Bereich angeben; eine Fünf-Minuten-Schätzung zeigt, ob ein Entwurf machbar ist und was zuerst gemessen werden sollte.
-
Unity Cinemachine: Kameraauswahl und richtungsabhängige Blends gezielt gestalten
Eignung einer Einstellung, Bildkomposition und Übergangsregeln sind getrennte Entscheidungen. Mit expliziten Prioritäten und benannten Custom Blends lassen sich Kamerawechsel vorhersagbar steuern.
-
Änderungen der Wiederherstellungskontakte als Zustandsübergang testen
Prüfen, welche Wiederherstellungsziele während eines Kontaktänderungs-Ablaufs wirksam werden. Dieser Vorschlag behandelt alte, ausstehende und bestätigte Ziele als getrennte Zustände, statt anzunehmen, dass ein gespeichertes Feld bereits vertrauenswürdig ist.
-
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?
-
Eine Feature-Anfrage ablehnen, ohne den Beitragenden zu verlieren
Eine Ablehnung, die sich auf einen schriftlich festgehaltenen Projektumfang beruft, zeitnah erfolgt, eine Alternative nennt und den Thread schliesst, ist freundlicher als Schweigen und behält die anfragende Person als Beitragende. Die Open Source Guides halten fest, dass Schriftlichkeit das Nein-Sagen erleichtert und dass eine Antwort selten mehr als ein oder zwei Sätze braucht.
-
Passwort-Reset-Abläufe, die keine Konten oder Tokens preisgeben
Ein Reset-Ablauf ist ein zweiter Anmeldeweg und verdient dieselbe Sorgfalt: Jede Anfrage identisch beantworten, ein einmal verwendbares, ablaufendes, zufällig erzeugtes Token an die hinterlegte Adresse senden, den Link aus einem festen Origin statt aus dem Host-Header aufbauen, nichts am Konto ändern, bevor das Token vorgelegt wird, und am Ende die Nutzerin oder den Nutzer benachrichtigen und über die normale Anmeldung führen.
-
Vertrauenswäsche zwischen Agenten: nicht vertrauenswürdige Eingaben werden nicht dadurch vertrauenswürdig, dass sie einen anderen Agenten durchlaufen
In Multi-Agenten-Systemen wird die Ausgabe eines Agenten zur Eingabe eines anderen. Hat der erste Agent nicht vertrauenswürdige Inhalte gelesen, erbt seine Ausgabe diese Kontamination, wie autoritativ sie auch klingt. Jeder Nachricht ein Vertrauenskennzeichen mitgeben und die am wenigsten vertrauenswürdige Eingabe bestimmen lassen, was der empfangende Agent tun darf.
-
SMF-verwaltete Dienstkonfiguration mit svccfg ändern, statt die Konfigurationsdatei zu bearbeiten
Mit svccfg listprop/setprop lässt sich die persistente Konfiguration eines Dienstes im SMF-Repository lesen und schreiben; svcadm refresh übernimmt sie in den laufenden Snapshot. Wo SMF die Konfigurationsdatei eines Dienstes erzeugt (etwa /etc/resolv.conf aus network/dns/client), wird eine manuelle Änderung der Datei überschrieben.
-
Read-Replikas und Replikationsverzögerung: Wie veraltete Lesezugriffe aussehen und wie man sie begrenzt
Eine Streaming-Replika wendet das Log des Primärservers mit einer gewissen Verzögerung an, sodass ein Lesezugriff unmittelbar nach einem Schreibzugriff diesen möglicherweise nicht sieht. Lesezugriffe danach leiten, wie viel Veraltung der jeweilige Aufrufer toleriert, synchrone Replikationsmodi nur dort einsetzen, wo ihre Latenz akzeptabel ist, und verstehen, dass das Nachspielen des Logs lange Abfragen auf der Replika abbrechen kann.
-
NFS-Exports absichern: Netzwerkbeschränkung, Squash-Optionen und sec=krb5 statt AUTH_SYS
Die standardmässige NFS-Authentifizierung (AUTH_SYS) vertraut jeder UID, die ein Client angibt. Diese Methodik beschränkt Exports auf das kleinstmögliche Client-Netzwerk, begrenzt mit root_squash/all_squash, was eine behauptete UID darf, und wechselt zu sec=krb5, wo die Daten echte Authentifizierung rechtfertigen.
-
Betriebssystem aus einem Skript erkennen: uname, os-release, sw_vers, oslevel und eine Fallback-Reihenfolge
Ein portables Skript braucht eine verlässliche Methode, um nach Betriebssystem und Version zu verzweigen, bevor es einen OS-spezifischen Befehl aus den anderen Artikeln dieser Reihe ausführt. Diese Methodik beschreibt für POSIX-Shells und PowerShell eine Fallback-Reihenfolge von der spezifischsten, zuverlässigsten Quelle bis zur Notlösung per Schätzung.
-
Teilschreibvorgänge: den Pufferoffset vorrücken, statt die gesamte Nutzlast erneut zu senden
Ein positives kurzes Schreibergebnis als Fortschritt behandeln und den noch nicht gesendeten Zustand über Backpressure hinweg erhalten.
-
Btrfs-Snapshots und Rollback mit snapper unter SUSE: Pre/Post-Paare, Start über GRUB und Bereinigung
Auf einem Btrfs-Root legt snapper von SUSE bei jeder Änderung durch zypper oder YaST ein Pre/Post-Snapshot-Paar an und zeigt es mit snapper list an. Das ganze System lässt sich zurückrollen oder direkt aus dem GRUB-Menü in einen älteren Snapshot booten. Alte Snapshots werden automatisch bereinigt, wobei die Bereinigungsrichtlinie und nicht allein die Festplattengrösse bestimmt, wie viel Verlauf erhalten bleibt.
-
Gits Fehlermeldung „detected dubious ownership in repository“ und die Lösung mit safe.directory
Git verweigert die Arbeit in einem Repository, das einem anderen Benutzer gehört als dem, der den Befehl ausführt, und meldet 'fatal: detected dubious ownership in repository at'. Der Artikel erklärt die Korrektur für CVE-2022-24765 dahinter, wann ein repositoryspezifischer safe.directory-Eintrag richtig ist und warum chown in Containern und CI die bessere Lösung ist.
-
Veränderliche Standardwerte in Python: weggelassene Argumente von gemeinsam genutztem Zustand unterscheiden
Eine explizite Strategie für fehlende Werte verwenden, damit unabhängige Aufrufe nicht versehentlich einen gemeinsamen veränderlichen Standardwert teilen.
-
Ausgabenlimits für Agenten mit x402, AP2 und delegiertem Checkout durchsetzen
Ein vorgeschlagenes Betriebsverfahren, das Transaktionslimits, Gesamtbudgets, Empfängerbeschränkungen, Genehmigungen und Belege den Möglichkeiten der Protokolle zuordnet. Durchsetzung und Buchführung bleiben Aufgaben vertrauenswürdiger Zahlungskomponenten.
Maschinenlesbar: JSON