Jan-Jelle Kester
Software Architect, Trainer & Head of Research Software & Architecture @ Info Support
Software Architect, Trainer & Head of Research Software & Architecture @ Info Support
Nijmegen, The Netherlands
Actions
Even as a little kid I always wanted to know how stuff worked. I like to look under the hood of technology to gain new insights, like the concepts behind programming languages and compilers. As a fan of understandable, conceptually well-structured code, I am always looking for patterns to enhance the robustness of software, to reduce the chance and impact of errors in the future, and to create and maintain software more effectively.
Als klein kind wilde ik al van allerlei dingen weten hoe ze werken – en die interesse is altijd gebleven. Ik kijk naar hoe technologie onder de motorkap werkt, wat vaak nieuwe inzichten oplevert. Zoals de concepten achter programmeertalen en compilers. Als fan van begrijpelijke, goed gestructureerde code zoek ik altijd naar patronen om software robuuster te maken, om de kans op en impact van fouten in de toekomst te verkleinen, en om software effectiever te maken en onderhouden.
Area of Expertise
Topics
Higher in the stack: the gap between natural language and code en nl
Imagine: how great would it be if we don't have to care about code? Where a generated system is a black box that we only test for observable behaviour. Not having to review the generated code, no hassle debugging either, but guaranteed working software!
LLMs are not the only, but the newest solution claiming to realize this utopia. However, LLMs differ in key aspects from earlier significant developments that changed the way in which we make computers do what we want. In this session we take a problem-focused approach, learn from historic computer science successes and failures (such as compilers, model-driven engineering, DSLs and CNLs, and even low-code solutions) in order to take a different perspective.
A good understanding of the problem we are trying to solve enables us to take a different perspective, and allows us to see a slightly different future for software engineering. With, or without, LLMs.
Inspirational session focusing on addressing the problem LLMs 'solve' for us, accounting for the drawbacks we encounter currently. Promotes critical thinking by understanding a problem and evaluating potential solutions. Presents a potential future where software engineering and LLMs can empower each other when we apply the right solution in the right place.
Time: 30 - 50 minutes.
Hoger in de stack: het gat tussen natuurlijke taal en uitvoerbare code en nl
Stel je voor: hoe mooi zou het zijn als we ons geen zorgen meer hoeven te maken over programmacode? Dat een gegenereerd systeem een black box is die we alleen op observeerbaar gedrag testen. Geen code reviews meer, geen moeite met debuggen in onleesbare code, maar wel gegarandeerd goed werkende software!
LLMs zijn niet de enige, maar wel de nieuwste oplossing die claimt tot deze utopie te komen. Maar dat ervaren we niet zo. We moeten nog steeds achter alle (gegenereerde) syntax staan, zowel voor simpele boilerplate als complexe features. Best vervelend, de machinecode die een complier genereert hoeven we immers niet te controleren. En het reviewen van gegenereerde code is niet het leukste werk, en blijft foutgevoelig.
In deze sessie onderzoeken we de uitdagingen met deze utopie. We leren van oude(re) technieken met dezelfde belofte door te kijken naar waarom die wel of niet succesvol zijn. Zoals compilers, model-driven engineering, functioneel programmeren, DSLs en CNLs. We kijken vooruit naar hoe die technieken nu juist door de ontwikkelingen in AI (weer) relevant worden om de uitdagingen van AI op te lossen. En hoe een combinatie van oud en nieuw ons dichter bij de utopie kan brengen dan een van de technieken op zichzelf.
Is daarmee het vraagstuk morgen opgelost? Nee. Maar je kan wel met een andere blik naar je code kijken. Door opties te kennen om te versnellen zonder concessies op kwaliteit, ook door je AI een handje te helpen. En na te denken over hoe programmeertalen, libraries en frameworks in de toekomst eruit kunnen zien om te optimaal bruikbaar te zijn voor AI.
How Mutation Testing Got Practical en
Automated testing is part of (almost) every piece of software. But how can you be sure that these automated tests sufficiently assess the functionality of your system? Do you know which parts of your application are adequately tested, and where the 'blind spots' may be? In this talk we will explore the concepts behind mutation testing, talk about the pitfalls that have been overcome in the last 40+ years and show how (and why) today is the time to start applying mutation testing in your projects.
This talk uses practical examples and insights from (the development of) Stryker-Mutator.
Topics:
- Why we need to understand our tests (and why code coverage is not sufficient)
- What mutation testing is (with practical examples)
- How mutation testing got to practical applicability (from infeasible at inception to good framework availability to start using it in your projects now)
- State-of-the-art improvements to make mutation testing even more awesome
Material based on guest lectures on this topic at universities.
Time: 30 - 50 minutes.
ISKS 2026 - Built to last Sessionize Event
FOSDEM '24
How Mutation Testing Got Practical - https://archive.fosdem.org/2024/schedule/event/fosdem-2024-2486-how-mutation-testing-got-practical/
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top