with-agents

AI made me doubt everything about programming by Felienne Hermans - DDD Europe 2026

Domain-Driven Design Europe

Computer science professor, secondary-school teacher, and Hedy creator Felienne Hermans argues that programming culture prizes technical difficulty over accessibility and social purpose. She uses that argument to question how the field frames AI progress and why developers treat LLM adoption as inevitable rather than as a choice.

This is an argumentative keynote, not an empirical evaluation of coding agents or LLMs. Hermans builds her case from personal experience, historical examples, and selected scholarship. Her broad claims about programmers, AI research, and machine understanding are provocations rather than systematically demonstrated conclusions.

Difficulty is not the same as value

  • Accessibility work exposed a conflict in what the field rewards: Hermans describes how spreadsheet research was dismissed as “not real programming,” then recounts adding localized keywords and Arabic numerals to Hedy. She argues that making programming easier can be socially valuable even when technical communities discount work that sounds easy ([00:01:51]-[00:12:52]).
  • Feminist epistemology gave her a way to question how technical knowledge is selected: Drawing on a paper about glacier research, she argues that researchers can favor difficult, heroic work over accessible work with greater human relevance. She applies that lens to the status attached to complex languages and techniques ([00:13:44]-[00:18:49]).
  • Technical vocabulary can legitimize ordinary human work: Hermans uses requirements engineering and domain-driven design to argue that software communities often turn asking people about their needs into specialized systems before treating the activity as valuable. This is her interpretation of the culture, not a claim that those disciplines add no useful method ([00:18:49]-[00:20:48]).

Programming is shaped by social choices

  • Who enters the field affects what the field builds: Citing research that associates concern for social change with a lower likelihood of studying computer science, Hermans argues that education and professional culture select for people who enjoy complexity and marginalize other motivations. The talk does not provide the study details needed to assess the size or causes of that association ([00:20:48]-[00:23:40]).
  • Computing history challenges claims of technical neutrality: She invokes John von Neumann’s work on nuclear weapons and IBM’s business with Nazi Germany to argue that present-day AI uses cannot be separated from institutional goals and incentives. These examples support a moral warning, not a direct causal history of current LLM systems ([00:23:40]-[00:28:29]).
  • Benchmarks inherit assumptions from tractable research problems: Using Nathan Ensmenger’s description of chess as AI’s “Drosophila,” Hermans argues that binary evaluation and benchmark culture moved from chess into less objectively judged domains such as language and art. The analogy raises an evidence question rather than evaluating any current benchmark itself ([00:28:29]-[00:32:24]).

AI capability does not settle how it should be used

  • A solved technical problem can still be excluded from human practice: Chess engines have exceeded human players for decades, yet social and professional chess bars their use during play. Hermans presents that norm as evidence that software teams and communities can choose where not to use AI even when it is capable ([00:32:24]-[00:35:23], [00:44:23]-[00:46:17]).
  • Code generation is narrower than intellectual ownership: Through Peter Naur’s account of programming as theory building, she distinguishes producing code from being able to explain, defend, and revise a coherent understanding of the system. She argues that current LLMs do not sustain that understanding; the talk illustrates this claim but does not test models or agent systems ([00:35:23]-[00:36:31]).
  • Faster production does not determine whether the result is worthwhile: Hermans asks whether improved software output matters when developers do not believe the systems they build improve the world. She reframes programming as understanding a problem deeply and making something for people, rather than treating code production as the primary end ([00:36:31]-[00:43:18]).
  • Adoption is a responsibility, not an inevitability: The closing argument is that programmers collectively shape technical norms. Hermans asks them to reject passive claims that LLM use will happen regardless and to decide which forms of programming and automation benefit people ([00:43:18]-[00:47:11]).

Watch the full talk on YouTube(opens in a new tab).