March 2025: Achitectural decisions and AI seen through the glasses of evolution
Details
🚨Important: Register before March 20th! The venue is different this time, we are hosting at Proeflokaal Wouters
📆Date & time:
Venue opens: 16:30
First talk: 17:00
Food & drinks: provided in between sessions
📍Location: Proeflokaal Wouters, Sophialaan 5, 8911 AE Leeuwarden
🇬🇧Talks:
Making significant software architecture decisions by Bert Jan Schrijver
Software architecture represents the significant design decisions that shape a system, where significant is measured by the cost of change. At its core, architectural decision-making is about balancing trade-offs to align technical solutions with broader requirements.
But how do you approach a trade-off analysis? How do you choose between different solutions, frameworks, tools, languages, or cloud providers? Which factors should guide your decisions beyond just technical fit? And how do you make sure you’re not overlooking non-technical aspects like team expertise, long-term supportability, and hiring feasibility?
In this session, I’ll share a structured approach to making informed, high-impact architecture decisions. We’ll break down technical, organizational, financial and other trade-offs and explore how to evaluate and balance competing concerns. You’ll walk away with practical strategies to make better architectural decisions in real-world projects.
Four Billion Years of Vibe Coding - Evolution, Architecture and the Influence of AI by Martijn van Iersel
What happens when a large and complex code base undergoes constant change - shaped by interns, juniors and vibe coders - without a clear goal or a full understanding of the system? Perhaps we should ask evolution, because that is exactly how life on Earth evolved.
As a former biologist, I will explore the similarities between software and DNA. Evolution has produced systems that are successful, maintainable, and fit for purpose. But how can a mindless process create a modular system? What does “fitness” even mean in a software context? I will contrast two approaches to software development: intelligent design and evolution. Perhaps our legacy software is lacking in the intelligent design department, and architecture is just a way to steer evolution. What if we can make our systems more evolvable?
Let’s take examples from the best vibe coder on earth: life itself. Taking examples from biology. I will explain fitness functions, and how we can define them to manage that big legacy code-base. I will also draw the link to LLMs and AI-assisted coding. In many ways, AI and evolution are equally mindless. So in the age of vibe coding, it is even more important to guide the evolution of your software.
About the speakers:
Bert Jan Schrijver
Bert Jan is CTO at OpenValue and focuses on Java, software architecture, Continuous Delivery and DevOps. Bert Jan is a Java Champion, JavaOne Rock Star speaker, Duke's Choice Award winner and leads NLJUG, the Dutch Java User Group. He loves to share his experience by speaking at conferences, writing for the Dutch Java magazine and helping out Devoxx4Kids with teaching kids how to code. Bert Jan is easily reachable on BlueSky via @bjschrijver.dev.
Martijn van Iersel
Martijn van Iersel takes an interest in computing, games, and education, and is always looking for ways to combine the three: using games for programmer education. Martijn started his career in research, and obtained a PhD in Bioinformatics at Maastricht University. Nowadays, he works as technical product owner at TOPdesk. In his spare time, Martijn hosts game jams, and develops an educational game for biology classrooms.
