
Konferenzprogramm
Erleben Sie eine Online-Konferenz mit Expertinnen und Experten, die allesamt bekannte Kenner ihrer Materie sind. Bei den Virtual Deep Dives stehen praktische Anwendbarkeit und direkte Umsetzung im Vordergrund. Von den Machern der OOP-Konferenz für Softwarearchitekt:innen, Softwareentwickler:innen und IT-Projektleitende – in der gewohnten Qualität.
- Montag
17.06. - Dienstag
18.06. - Mittwoch
19.06.
Working from home (WFH) or telework is something that until COVID-19 has been known only as a voluntary and often exceptional practice in the workplace, while remoters were often looked at with skepticism. However, the forced working-from-home experiences have appeared to be better than expected. Coupled with the investments enabling remote working from home during the pandemic, this caused many knowledge workers to rethink the return to the offices, and to favour continuing working from home…
Fast jedes Softwaresystem wird mit guten Vorsätzen, aber unter schwierigen Bedingungen entwickelt. Die typischen Schwierigkeiten, die im Leben eines Softwaresystems auftreten, sind:
- Deadlines, die uns zwingen, Hacks zu programmieren,
- unterschiedliche Qualifikationen im Entwicklungsteam, die zu Code in verschiedener Qualität führen, und
- auch alter Code, der unordentlich und zu einem großen Knäul verwoben daherkommt.
All dieser schlechte Code wird die Entwicklungskosten in der Zukunft in die…
Machine learning is a massive topic, but it is possible to cover some interesting and useful aspects in a short workshop. For example, inspired by the biological process of evolution in nature, evolutionary algorithms have been widely used for optimization problems, i.e. searching for the ‘best’ solution(s) to a problem from a space of possibilities. This workshop is aimed at programmers who wish to better understand a variety of evolutionary algorithms. Examples will be given in both Python and…
Aus Basis der Erfahrung in Praxisprojekten in Sprachen wie C, C# und Java werden spektakuläre Fehler im Bereich Code-Qualität diskutiert. Diese werden u.a. in bekannten Open-Source-Projekten sowie anhand Untersuchungen der Qualitätsprobleme bekannter kommerzieller Softwareprojekte demonstriert. Es wird besprochen, wie diese in vorhandenen Systemen gefunden und in zukünftig zu entwickelnder Software vermieden werden. Eine zentrale Rolle spielen dabei praktische Übungen mit…
Der Ansatz des Domain Driven Design (DDD) hat sich über die letzten 20 Jahre als Mittel der Wahl etabliert, um die enorme Komplexität der Fachdomänen zu bewältigen. Dennoch lassen viele DDD-Einführungen den Leser mit der Frage zurück, was die abstrakten Konzepte in der Praxis konkret bedeuten. Wir wollen uns auf spielerische Art ein besseres Verständnis dieser Konzepte erarbeiten. Das Format ist an ein Krimi-Dinner angelehnt, und wir beschäftigen uns mit einem Beispiel aus der Praxis, um zu…
In 2023, Generative AI took the world by storm. We saw an impact already on jobs being replaced or reduced because of the use of AI, with many more predicted in the future by world leaders at Davos. An Accenture report says "scaling AI value with agile AI" is a key priority for many organizations. Every global customer we work with has Generative AI on their roadmap for this year and next.
For those writing software or managing software delivery, we see an opportunity to augment our jobs and do…
If we want to make sustainable design decisions for our architecture that are embraced by everyone, the most effective way is to do this collaboratively. Everyone can feel a part of the decision and can potentially give the input they have. The group is aligned and knows what is to be expected onward. On paper, this sounds great, but in reality, we know it is hard to do because we need to deal with all sorts of group dynamics. Dynamics like cultural differences, conflicts of opinions, cognitive…
Spätestens seit Ende 2022 sind generative KI-Systeme wie ChatGPT und Midjourney in aller Munde, und sie werden dabei nicht selten auch als Game-Changer für die digitale Barrierefreiheit postuliert. Doch wo stehen wir eigentlich gerade wirklich, was können diese Systeme bereits jetzt für uns tun, und was bringt uns die Zukunft? Es ist höchste Zeit für einen unverfälschten "Reality Check" und einen authentischen Blick in den Alltag von Menschen mit Behinderung.
Es wird immer wieder behauptet, die…
Virtual Threads versprechen, Performance und Skalierbarkeit von Java-Applikationen massiv zu steigern, ohne das Programmiermodell gegenüber dem der herkömmlichen Threads zu verändern. Bestehender Code muss daher im Idealfall kaum angepasst werden. Aber wie so oft steckt der Teufel im Detail.
Technologischer Hintergrund:
Virtual Threads beziehen ihren Skalierbarkeitsvorteil aus der Fähigkeit, bei blockierenden Aufrufen den Betriebssystem-Thread freizugeben. Auf diese Weise können unzählige Client…
Als Eric Evans das "Blue Book" schrieb, hätte er weder Cloud Computing noch IaC und Managed Services vorhersehen können. Viele seiner taktischen Patterns scheinen daher in der Cloud zunächst fehl am Platz. Sogar Microservices sind in der Zeit von Serverless und GenAI keine Selbstverständlichkeit mehr.
Wie viel DDD ist heute noch relevant? Gelten die gleichen Heuristiken noch? Eine Geschichte über das Finden von Grenzen, und ein Hands-on-Vergleich von guten und schlechten Praktiken, mit…
As architects we think and communicate a lot. One could argue that most of what we do is communicate. A fundamental part of effective thinking, modelling, and communicating is getting abstraction at the right level. An abstraction that is supported by programming and spoken languages.
In this deep dive we explore:
- What is language. The language is not only about vocabulary, grammar, and syntax. It is also about a world view. How does language shape our view?
- What is a model? Why is it needed? …
Weitere Informationen zu dieser Keynote folgen in Kürze.
Seit etlichen Jahren ist es möglich, nebenläufig (mit mehreren Threads) zu programmieren. Bei den konzeptionellen Details von Nebenläufigkeit gibt es bei Programmierern und Systemarchitekten allerdings nach wie vor erhebliche Lücken.
Wer kennt "Out-of-order Updates" und "Spurious Wakeups"? Was unterscheidet Prozess-Scheduling von Thread-Scheduling?
Am Beispiel von C++ gibt dieser Deep Dive gibt einen Überblick über die wichtigsten konzeptionellen Aspekte von Multi-Threading und Concurrency, die…
Heuristics are pragmatic actions or attitudes we take as we design. We’ve all learned well-known architecture and design patterns (those are heuristics, too). We implicitly enrich and adapt any new design technique or practice to fit our design situation. Through experience we absorb countless (unnamed) personal heuristics.
The deep dive consists of a mix of discussion, heuristics hunting and writing practices. Attendees will learn about the relationship between patterns and heuristics, three…
You don’t need to be a full-time technical coach to make a difference and make your development team stronger. This deep-dive session will help you to learn about common coaching activities like learning hours and ensemble working. These are not vacuous “icebreaker”-style fun and games, the focus is on real hard technical skills, especially around TDD, refactoring, handling legacy code and better OO design. Real technical coaching is about leading team activities that strengthen your…
Digital is physical. The Cloud is on the ground and it is growing at a phenomenal rate, consuming vast quantities of materials, electricity and water. In 2022, for example data center global electricity consumption was estimated to be 460 terawatt-hours (TWh). In just four years, in 2026, it is estimated to reach more than 1,000 TWh. This demand is roughly equivalent to the electricity consumption of Japan. As developers and architects, find out how you can help reduce the severe and growing…
Jeder kennt Software-Projekte, die krachend gescheitert sind. Vielfach, weil wichtige Qualitätseigenschaften, wie Robustheit oder Performanz, nicht erreicht wurden. Das muss nicht sein. Mit Architektur-Reviews lassen sich fundamentale Probleme frühzeitig erkennen.
Die wohl bekannteste Methode ist "Architecture Tradeoff Analysis Method" (ATAM), die seit über 20 Jahren viele Projekte vor Desaster geschützt hat. ATAM ist eine umfassende Analyse, was aber für kleine oder mittlere Projekte wegen des…
The architectural advice process is a powerful tool to unlock the design potential of everyone in your software teams. This deep-dive session will introduce it, explaining why it is ideally suited to today’s approaches to software delivery before giving you hands on experience of how it works.
In this deep dive you'll learn how architectural decisions work, and how collectives are best placed to make the best architectural decisions possible, maximizing their autonomy and ability to flow.
You’ll…
Refactoring is a word on every developer's lips, but not always at their fingertips. There is more to refactoring than IDE shortcuts and code tidying. Refactoring is a tool for understanding and improving code by changing it and for revealing and implementing design choices. It is about uncovering possibilities, such as the paradigm that best fits the problem and new ways of thinking about solutions.
Many developers understand refactoring at a more superficial level and often do little more than…
Weitere Informationen zu dieser Keynote folgen in Kürze.
Nach dem Gesetz von Conway stehen Software-Architektur und Organisation in einem engen Zusammenhang. Architekt:innen nutzen die Organisation immer häufiger als Möglichkeit, um Software-Architekturen zu gestalten.
Doch der Umgang mit Menschen unterscheidet sich grundlegend von der Technik: Hier pure Logik, dort soziale Wesen, die oft überraschend reagieren. Sich darauf einzustellen fällt vielen schwer. Dieses Deep Dive basiert auf den Erfahrungen mit diesen Herausforderungen und Fallstricken.…
Die Cloud-Migration ist oftmals eine notwendige Evolution und stellt Unternehmen vor essenzielle Entscheidungen: Optimierung bestehender Systeme, Neuentwicklung von Cloud-Native Architekturen und strukturelle Anpassungen im Unternehmen selbst. In diesem praxisorientierten Deep Dive werden die zentralen Eckpfeiler der Cloud-Migration beleuchtet: Organisation, Infrastruktur und Architektur.
Die Organisationsebene berührt kulturelle und strukturelle Anpassungen eines Unternehmens an die…
Introducing the Mikado Method
- Why the Mikado Method (intro)
- Learn the rules (lecture)
- Apply the method for a small task (hands on)
- What's different/same (discussion)
Mikado Moves
- Advanced Mikado Method Patterns (lecture)
- Solve a medium sized technical problem (hands on)
- How to "Improve your architecture, while adding code" (discussion)
Moving forward
- Throwing away the rules (lecture)
- Making the Mikado Method a part of your Software Culture (hands on)
- Stewardship – a different take on…