Andreas Zeller's Avatar

Andreas Zeller

@andreaszeller.bsky.social

Software researcher at https://cispa.de, working on #Fandango, #S3, #FuzzingBook, #DebuggingBook. Testing, debugging, analyzing, and protecting software for a better world. Find me at https://andreas-zeller.info/

1,402 Followers  |  145 Following  |  105 Posts  |  Joined: 22.09.2023
Posts Following

Posts by Andreas Zeller (@andreaszeller.bsky.social)

Post image

On my way to Savannah, Georgia to an IFIP WG 4.3 meeting, where Iโ€™ll present our work on Parameterized Compiler Testing (a joint work with my fantastic co-workers Addison Crump and Alexi Turcotte)

01.03.2026 09:45 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Video thumbnail

#Fandango 1.1 is now available! With this release, #Fandango becomes a full-fledged _protocol fuzzer_, happily exploring states and messages of protocols such as FTP or DNS. Thanks to Josรฉ. Valentin, Alexander, and Marius for their hard work!
Find Fandango at fandango-fuzzer.github.io

26.02.2026 15:14 โ€” ๐Ÿ‘ 6    ๐Ÿ” 1    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
Andreas Zeller and PhD students

Andreas Zeller and PhD students

About time: A multi-celebration for becoming a member of Academia Europaea, my SIGSOFT Influential Educator Award, my 60th birthday, becoming an IEEE Fellow, _and_ getting the 2026 IEEE Harlan D. Mills Award. With cake and fizzy drinks!

16.02.2026 08:03 โ€” ๐Ÿ‘ 13    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Reviewer-Author Collusion Rings and How to Fight Them In 2012, I attended a physical meeting of the program committee responsible for selecting the best scientific papers for the ESEC/FSE 2013 conference in Saint Petersburg, Russia. This meeting was part...

Starting this year, I will only review for conferences that get rid of a "bidding" phase, as allowing reviewers to bid on papers they want to review opens too many opportunities for manipulation and collusion. For details, see andreas-zeller.info/2025/12/07/R... #nobidding

10.02.2026 08:37 โ€” ๐Ÿ‘ 9    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
Post image

I am happy to report that I have been named the recipient of the

2026 Harlan D. Mills award

"For sustained contributions to software debugging, program analysis, mining software repositories, and automated test generation." This is a big award โ€“ย thanks to all!
www.computer.org/volunteering...

05.02.2026 15:36 โ€” ๐Ÿ‘ 22    ๐Ÿ” 1    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
Fault localization aims to identify code regions responsible for failures. Traditional techniques primarily correlate statement
execution with failures; however, program behavior involves diverse execution features, including variable values, branch
conditions, and definition-use pairs, which can provide richer diagnostic insights.
This paper comprehensively investigates execution features for fault understanding, addressing two complementary goals.
First, we conduct an empirical study of 310 bugs across 20 projects, analyzing 17 execution features and assessing their
correlation with failure outcomes. Our findings suggest that fault localization benefits from a broader range of execution
features: (1) Scalar pairs exhibit the strongest correlation with failures; (2) Beyond line executions, def-use pairs and functions
executed are key indicators for fault localization; and (3) Combining multiple features enhances effectiveness compared to
relying on individual features.
Second, building on these insights, we introduce a debugging approach that learns relevant features from labeled test
outcomes. The approach extracts fine-grained execution features and trains a decision tree to differentiate passing and failing
runs. The trained model generates fault diagnoses that explain the underlying causes of failures.
Our evaluation demonstrates that the generated diagnoses achieve high predictive accuracy. These interpretable diagnoses
empower developers to debug software efficiently by providing deeper insights into failures.

Fault localization aims to identify code regions responsible for failures. Traditional techniques primarily correlate statement execution with failures; however, program behavior involves diverse execution features, including variable values, branch conditions, and definition-use pairs, which can provide richer diagnostic insights. This paper comprehensively investigates execution features for fault understanding, addressing two complementary goals. First, we conduct an empirical study of 310 bugs across 20 projects, analyzing 17 execution features and assessing their correlation with failure outcomes. Our findings suggest that fault localization benefits from a broader range of execution features: (1) Scalar pairs exhibit the strongest correlation with failures; (2) Beyond line executions, def-use pairs and functions executed are key indicators for fault localization; and (3) Combining multiple features enhances effectiveness compared to relying on individual features. Second, building on these insights, we introduce a debugging approach that learns relevant features from labeled test outcomes. The approach extracts fine-grained execution features and trains a decision tree to differentiate passing and failing runs. The trained model generates fault diagnoses that explain the underlying causes of failures. Our evaluation demonstrates that the generated diagnoses achieve high predictive accuracy. These interpretable diagnoses empower developers to debug software efficiently by providing deeper insights into failures.

How do execution features relate to failures? In this new ACM TOSEM paper, Marius Smytzek, Martin Eberlein, Lars Grunske, and I analyze which execution features beyond code coverage correlate best with failures and lead to accurate explanations of failure causes: dl.acm.org/doi/10.1145/...

03.02.2026 10:10 โ€” ๐Ÿ‘ 7    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 1

Four hours later, I _think_ I have fixed things again - reinstalled Python and all its packages, rebuilt Spotlight and Mail indexes, cleared macOS caches, subscribed to Creator Studio, and now back to these lost mailsโ€ฆ Today I hate you, Apple.

30.01.2026 14:34 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

* Mail has lost all my emails sent since Monday
* Mail search is broken too
* Search in reminders cannot find anything
* New Keynote is full of ads!?
* Invoke Python-3.13, get 3.14 instead - venvs are messed up
* LaTeX "minted" crashes (likely b/c Python)

So glad I'm an expert in debugging /sarcasm

30.01.2026 10:23 โ€” ๐Ÿ‘ 4    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
Inferring Input Grammars from Code with Symbolic Parsing | ACM Transactions on Software Engineering and Methodology Generating effective test inputs for a software system requires that these inputs be valid, as they will otherwise be rejected without reaching actual functionality. In the absence of a specification ...

Fuzzing software becomes much more effective if you can generate _valid_ inputs. We have now built the first approach to _statically_ extract complete and precise input grammars from parser code, producing syntactically valid and diverse inputs by construction. Enjoy! dl.acm.org/doi/10.1145/...

28.01.2026 16:05 โ€” ๐Ÿ‘ 12    ๐Ÿ” 4    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Post image

After a visit to Max Planck Institute for Security and Privacy (MPI-SP) in Bochum, seeing my awesome colleagues @thorstenholz.bsky.social, @mboehme.bsky.social, Mathias Payer, and many more, now on my way to Paris to celebrate ten years of @softwareheritage.org with the great Roberto Di Cosmo

27.01.2026 17:52 โ€” ๐Ÿ‘ 5    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Correction: It's 2,000+ *en*-dashes ("--"), but actually 5,800 *em*-dashes ("---")

08.01.2026 12:27 โ€” ๐Ÿ‘ 5    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
$ cd ~/Papers/
$ grep -e '[ ~]-- ' */*.tex | wc -l
    2258
$

$ cd ~/Papers/ $ grep -e '[ ~]-- ' */*.tex | wc -l 2258 $

A researcher used more than 2,000 em-dashes in his papers, revealing AI-based manipulation in 400+ papers since 1985. Professor Zeller claims he "typed" these dashes into the paper by using "two hyphens" and a "typesetting" system.

08.01.2026 08:34 โ€” ๐Ÿ‘ 19    ๐Ÿ” 1    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Fun fact: This is my tenth test of time award :-) We will give a keynote at the FSE 2026 conference. @acm.org @sigsoft.bsky.social

06.01.2026 15:56 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
When do changes induce fixes? | ACM SIGSOFT Software Engineering Notes As a software system evolves, programmers make changes that sometimes cause problems. We analyze CVS archives for fix-inducing changes---changes that lead to problems, indicated by fixes. We show how ...

Happy New Year! I am thrilled to report that Jacek ลšliwerski, Tom Zimmermann, and I won the ACM SIGSOFT 2026 Impact Award ๐Ÿ† for "When do changes induce fixes?" (MSR 2005). The paper introduced the popular SZZ algorithm for linking change histories and bug databases: dl.acm.org/doi/10.1145/...

06.01.2026 15:56 โ€” ๐Ÿ‘ 16    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Problem: Reviewers did not read the paper.
Solution: Write a detailed rebuttal and point to all the places in the paper that answer their questions.
New problem: Reviewers did not read the rebuttal.

22.12.2025 13:15 โ€” ๐Ÿ‘ 16    ๐Ÿ” 1    ๐Ÿ’ฌ 4    ๐Ÿ“Œ 1
IPN Colloquium 15 12 2025 Andreas Zeller
YouTube video by IPN (ICT Research Platform Nederland) IPN Colloquium 15 12 2025 Andreas Zeller

The talk is now online:

* Video: www.youtube.com/watch?v=tBO_...
* Slides: andreas-zeller.info/assets/Shoul...

Enjoy! -- Andreas

19.12.2025 11:10 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
IPN Colloquium 15 12 2025 Andreas Zeller
YouTube video by IPN (ICT Research Platform Nederland) IPN Colloquium 15 12 2025 Andreas Zeller

In an IPN vision talk last Monday, I sketched how future AI "super-coders" would learn from their own experiments with software to far surpass current LLM-based AI coders.

The talk is now online. Enjoy!

* Recording: www.youtube.com/watch?v=tBO_...
* Slides: andreas-zeller.info/assets/Shoul...

19.12.2025 08:24 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
IPN Colloquium 6: Should AI Coders Experiment More? โ€“ ICT Research Platform Netherlands

Today at 16:00 CET, I'll give a vision talk "Should AI Coders Experiment More?", paving the way to AI โ€œsuper codersโ€ that may become way more competent than the most experienced programmers - and also way more competent than any LLM-based coders. Details here: ict-research.nl/2025/11/ipn-...

15.12.2025 09:25 โ€” ๐Ÿ‘ 3    ๐Ÿ” 0    ๐Ÿ’ฌ 2    ๐Ÿ“Œ 0
Reviewer-Author Collusion Rings and How to Fight Them In 2012, I attended a physical meeting of the program committee responsible for selecting the best scientific papers for the ESEC/FSE 2013 conference in Saint Petersburg, Russia. This meeting was part...

Time to get serious again. New blog post "Reviewer-Author Collusion Rings and How to Fight Them": andreas-zeller.info/2025/12/07/R...

08.12.2025 16:31 โ€” ๐Ÿ‘ 11    ๐Ÿ” 4    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Oops - Of course, Helmut Kohl was chancellor until *1998*, not 1988. Apologies!

07.12.2025 19:43 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
A description of the items shown in the LaTeX Korrektor background:

* Diomidis Spinellisโ€จ, Author ofโ€จ โ€œAdvice for writing LaTeX documentsโ€
* LaTeX 2ฮต โ€จCheat Sheet
* Helmut Kohlโ€จ, German Chancellorโ€จ 1982โ€“1988
* A fictitiousโ€จ event poster "Lack Leder LaTeX, Hamburg"
* A fictitiousโ€จ LaTeX โ€จpropaganda โ€จposter

A description of the items shown in the LaTeX Korrektor background: * Diomidis Spinellisโ€จ, Author ofโ€จ โ€œAdvice for writing LaTeX documentsโ€ * LaTeX 2ฮต โ€จCheat Sheet * Helmut Kohlโ€จ, German Chancellorโ€จ 1982โ€“1988 * A fictitiousโ€จ event poster "Lack Leder LaTeX, Hamburg" * A fictitiousโ€จ LaTeX โ€จpropaganda โ€จposter

Bonus material for The LaTeX Korrektor! Some of you asked: "What are these photos and posters in the background?" Here they come, enlarged and with some details. Enjoy! #LaTeX #LaTeXKorrektor

In case you missed it, watch all six episodes of the LaTeX Korrektor here: www.youtube.com/watch?v=EhsM...

07.12.2025 12:23 โ€” ๐Ÿ‘ 6    ๐Ÿ” 2    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
The LaTeX Korrektor 6/6 - Ten Commandments
YouTube video by Andreas Zeller The LaTeX Korrektor 6/6 - Ten Commandments

Series finale! The LaTeX Korrektor 6/6 - Ten Commandments www.youtube.com/shorts/HAodi... #LaTeX #LaTeXKorrektor

Read the LaTeX advice by Diomidis Spinellis (@coolsweng.bsky.social): github.com/dspinellis/l...

All six episodes of the LaTeX Korrektor: www.youtube.com/watch?v=EhsM...

06.12.2025 08:15 โ€” ๐Ÿ‘ 5    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
The LaTeX Korrektor 5/6 - Citations
YouTube video by Andreas Zeller The LaTeX Korrektor 5/6 - Citations

Why, oh why does your bibliography have all titles in lowercase? WHY? The LaTeX Korrektor 5/6 - Citations: www.youtube.com/shorts/0nk72... #LaTeX #LaTeXKorrektor

Missed previous episodes? This playlist has them all: www.youtube.com/watch?v=EhsM...

05.12.2025 08:08 โ€” ๐Ÿ‘ 5    ๐Ÿ” 3    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Ah, so it was you who rejected my paper!? ๐Ÿค”

04.12.2025 14:03 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Thanks! Did you notice the black&white photo in the background?

04.12.2025 13:59 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
The LaTeX Korrektor 4/6 - Math Mode
YouTube video by Andreas Zeller The LaTeX Korrektor 4/6 - Math Mode

Can one reject papers because of bad typography? The LaTeX Korrektor 4/6 - Math Mode: www.youtube.com/shorts/mc8ro... #LaTeX #LaTeXKorrektor

Missed previous episodes? This playlist has them all: www.youtube.com/watch?v=EhsM...

04.12.2025 08:09 โ€” ๐Ÿ‘ 11    ๐Ÿ” 1    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 2
Language-Based Software Testing
with Josรฉ Antonio Zamudio Amaya, Marius Smytzek, Valentin Huber, Addison Crump, Alexi Turcotte, and many others

Random test input generators (fuzzers) have become the prime detectors of vulnerabilities in software. While generic fuzzers easily adapt to arbitrary programs under test, they offer very little possibilities to control or shape the generated inputs. In this talk, I present FANDANGO, a novel language-based fuzzer that combines grammars with predicates over input elements to produce inputs that satisfy all the given predicates. Examples of what such predicates can express include

input format constraints (โ€œThe length field should be equal to the length of the payloadโ€)
code features (โ€œAny variable used must be declared beforehandโ€)
statistical distributions (โ€œAcross all inputs, the voltage field must follow a Gaussian distribution, but never exceed 20 mVโ€)
data collections (โ€œThe credit-card-number field should come from the Python faker libraryโ€)
and more โ€“ actually, any property that can be expressed in a Python expression.

In our experiments, FANDANGO efficiently solved complex file formats and satisfied demanding predicates, up to full-fledged programming languages as test inputs for compilers. This opens the door towards personalized fuzzing, where testers can make use of their own knowledge and LLM knowledge to very effectively fuzz systems. Includes live demos!

Fandango is available at https://fandango-fuzzer.github.io/

Andreas Zeller is faculty at the CISPA Helmholtz Center for Information Security and professor for Software Engineering at Saarland University. His research on automated debugging, mining software archives, specification mining, and security testing has won several awards for its impact in academia and industry. Zeller is an ACM Fellow, holds an ACM SIGSOFT Outstanding Research Award, and has won two ERC Advanced Grants, Europeโ€™s highest funding for individual researchers.

Language-Based Software Testing with Josรฉ Antonio Zamudio Amaya, Marius Smytzek, Valentin Huber, Addison Crump, Alexi Turcotte, and many others Random test input generators (fuzzers) have become the prime detectors of vulnerabilities in software. While generic fuzzers easily adapt to arbitrary programs under test, they offer very little possibilities to control or shape the generated inputs. In this talk, I present FANDANGO, a novel language-based fuzzer that combines grammars with predicates over input elements to produce inputs that satisfy all the given predicates. Examples of what such predicates can express include input format constraints (โ€œThe length field should be equal to the length of the payloadโ€) code features (โ€œAny variable used must be declared beforehandโ€) statistical distributions (โ€œAcross all inputs, the voltage field must follow a Gaussian distribution, but never exceed 20 mVโ€) data collections (โ€œThe credit-card-number field should come from the Python faker libraryโ€) and more โ€“ actually, any property that can be expressed in a Python expression. In our experiments, FANDANGO efficiently solved complex file formats and satisfied demanding predicates, up to full-fledged programming languages as test inputs for compilers. This opens the door towards personalized fuzzing, where testers can make use of their own knowledge and LLM knowledge to very effectively fuzz systems. Includes live demos! Fandango is available at https://fandango-fuzzer.github.io/ Andreas Zeller is faculty at the CISPA Helmholtz Center for Information Security and professor for Software Engineering at Saarland University. His research on automated debugging, mining software archives, specification mining, and security testing has won several awards for its impact in academia and industry. Zeller is an ACM Fellow, holds an ACM SIGSOFT Outstanding Research Award, and has won two ERC Advanced Grants, Europeโ€™s highest funding for individual researchers.

This Friday at 11:00 am, I will be giving a talk on "Language-Based Software Testing" at Imperial College in London, covering our latest and greatest in testing systems with highly complex inputs and interactions. Details here: srg.doc.ic.ac.uk/seminars/25-...

03.12.2025 10:52 โ€” ๐Ÿ‘ 4    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
The LaTeX Korrektor 3/6 - Vertical Space
YouTube video by Andreas Zeller The LaTeX Korrektor 3/6 - Vertical Space

The LaTeX Korrektor 3/6 - Vertical Space: www.youtube.com/shorts/n9iLf... #LaTeX #LaTeXKorrektor

03.12.2025 08:26 โ€” ๐Ÿ‘ 5    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
The LaTeX Korrektor 2/6 - Dashes
YouTube video by Andreas Zeller The LaTeX Korrektor 2/6 - Dashes

The LaTeX Korrektor 2/6 - Dashes: www.youtube.com/shorts/oDDbg...

02.12.2025 08:04 โ€” ๐Ÿ‘ 9    ๐Ÿ” 1    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
The LaTeX Korrektor 1/6 - Quotes
YouTube video by Andreas Zeller The LaTeX Korrektor 1/6 - Quotes

For your enjoyment: "The LaTeX Korrektor" www.youtube.com/shorts/EhsMd... #LaTeX #LaTeXKorrektor

01.12.2025 08:07 โ€” ๐Ÿ‘ 10    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0