Ideen & Einblicke

AI-First-Entwicklung, Coding-Leitplanken und die Architektur der Entsorgbarkeit erkunden.

LLMs können Metamorphic Relations vorschlagen. Sie können sie nur nicht garantieren.

Große Sprachmodelle sind brauchbare Brainstorming-Partner für die Entdeckung von Test Oracles, halluzinieren aber Eigenschaften und übersehen Domänen-Einschränkungen. So verwendest du sie, ohne falsche Tests auszuliefern.

Du musst eine Funktion testen, bei der die korrekte Ausgabe im Voraus unmöglich zu kennen ist. Ein Routenoptimierer. Ein Sentiment-Classifier. Eine…

Die meisten Metamorphic Relations sind nutzlos. So findest du die Guten.

Nicht alle Metamorphic Relations finden Bugs. Schwache Relations erwecken falsche Sicherheit, während starke echte Fehler aufdecken. So unterscheidest du sie und baust einen Satz an Relations, der wirklich funktioniert.

Du hast zwölf metamorphische Relations für deine Preisberechnungsengine geschrieben. Jeder Test besteht. Du fühlst dich gut abgedeckt. Dann meldet ein Kunde,…

Session Types funktionieren. Die meisten Sprachen wollten sie einfach nicht implementieren.

Session Types kodieren communication protocols im Typsystem und verwandeln runtime protocol errors in Compile-Time-Fehler. Hier ist, warum sie dreißig Jahre in Forschungspapieren verbrachten, bevor Produktivcode sie nutzen konnte.

Session Types wurden 1993 erfunden. Dreißig Jahre später validieren die meisten vernetzten Services den protocol state immer noch mit handgeschriebenen…

LLMs können Ihre Static-Analysis-Warnings ordnen. Sie können nur nicht erklären, warum.

Large Language Models können beim Triage von False Positives in der statischen Analyse helfen, aber sie verstehen Programmsemantik nicht so wie Abstract Interpretation. So kombinieren Sie beides.

Ihr Static Analyzer hat gerade 847 Warnings an einem Freitagnachmittag ausgegeben. Sie wissen statistisch, dass irgendwo zwischen 5% und 15% davon echte Bugs…