Am 15.03.2023 feierte die BOB, unsere alljährliche Entwickler:innenkonferenz, ihre elfte Ausgabe. Diesmal im Scandic-Hotel Potsdamer Platz, Berlin, eine Location, die einige schon von der SommerBOB 2019 kannten. Bereits am Vorabend hatten sich die ersten zu einem lockeren Austausch bei Pizza und Bier getroffen – vielen Dank an dieser Stelle an NewStore GmbH für die Einladung und die Organisation!

Die Keynote „Who’s Afraid of the Turnstile? (And why we weren’t for WebAssembly)“ von Andreas Rossberg erläutert anhand der Einbindung in WebAssembly, wie formale Semantik auch in der Programmierung funktionieren kann – selbst auf Industriesprachenniveau.

Direkt im Anschluss an die Keynote begannen die ersten beiden Tutorials:

Frank Dedden „Runtime Verification with the Copilot Language, A Hands-on Introduction“ erläuterte, wie Copilot verwendet werden kann, um mögliche Fehler in hochsensiblen Systemen wie etwa in der Luft- und Raumfahrt zu erkennen. Im Nebenraum gaben Marco Emrich und Leandro Doctors mit „From Vision to Code: (Functional) Domain Modeling in Practice“ eine Einführung in kollaboratives Arbeiten an Code mit funktionalem Domainmodelling.

Leicht versetzt nach einer Kaffeepause startete auch der erste Vortragsblock: Dehla Sokenou berichtete in „Cypress überall - Ein einziges Automatisierungswerkzeug für alle Teststufen?!“ über die Möglichkeiten und Grenzen von Cypress als Testwerkzeug, und Sabine Schmaltz sprach in „End-to-end Type-Safety with Your Own API Spec DSL“ über die Herausforderungen und Möglichkeiten bei der Erstellung und Verwendung eigener domänenspezifischer Sprachen für HTTP-API-Spezifikationen.

Nach einer weiteren, längeren Kaffeepause (diesmal auch für die Tutorial-Teilnehmer:innen) wurde der Raumfahrtsfaden weitergeführt: Oskar Schirmer und Felix Winkelmann teilten „Kontrollsoftware für eine Jupitermission der ESA: Ein Erfahrungsbericht“. Ganz etwas anderes bot zeitgleich Manuel Chakravarty mit „Functional Programming in Swift“.

In der zweiten Runde Workshop/Tutorial boten David Schäfer und Roland Schlenker mit „Computation Expressions in F#“ einen Einblick in die Vielseitigkeit der F#-nativen Computation Expressions, während Andres Löh mit „Staging Programs in Haskell“ eine Einführung gab, warum und wie man in Haskell Programme stagen sollte (oder auch nicht stagen sollte).

Vor der Mittagspause liefen die beiden Vorträge „Kommunikationsmuster für Services: Effizient und zuverlässig“, in dem Roger Butenuth den Namen Programm sein ließ, und „Erlang, OCaml, same thing 🤷“ von Leandro Ostera erläuterte, an welcher Stelle OCaml und Erlang zusammen- bzw. auseinanderlaufen und was das für type safety bedeutet.

In der Mittagspause konnten alle das großzügige Mittagsbuffet des Scandic-Hotels genießen, und nach dieser Pause ging es frisch gestärkt weiter: Irmhild Rogalla hielt den gemeinsam mit der leider verhinderten Jolanta Paliszewska konzipierten Vortrag „Konsequente Barrierefreiheit durch Partizipation im Prozess“, in dem sie konkrete Vorschläge und Hinweise für die Erstellung barrierefreier Software gab. Arnaud Bailly sprach in „Model-Based Testing with QuickCheck“ über die Prinzipien und Praxis des Model-Based Testing.

Die beiden Tutorials nach der Mittagspause waren „Lean for the Functional Programmer“ von Joachim Breitner und David Thrane Christiansen und „SwiftUI: Declarative GUIs for Mobile and Desktop Applications“ von Manuel Chakravarty.

Die zweite Runde Vorträge in diesem Abschnitt bestritten Kollege Marco Schneider, der mit „Hyper Hyper! Javascript fatigue und die Hypermedia Renaissance (?)“ darüber sprach, wie mit HTMX endlich wieder die Möglichkeit besteht, wirklich deklarativen Frontendcode zu schreiben, und Martin Janiczek, der in „Property-testing all* the things in SerenityOS“ davon berichtete, wie er property-based testing auf das Open-Source-Betriebssystem SerenityOS angewendet hat.

Nach einer weiteren Kaffeepause, diesmal mit kleinen belegten Broten und Kuchen, war in Vortragsraum 1 Simon Härer an der Reihe, der mit „Referenziell transparente Business-Prozesse in funktional“ vorstellte, wie sich Geschäftsprozesse in wiederverwendbare, deklarative Beschreibungsbausteine zerlegen und zu großen Prozessen zusammensetzen lassen. Zeitgleich führte Markus Harrer in Vortragsraum 2 über „Software Analytics with Data Science on Software Data“ in die Welt der datenbasierten Softwareanalyse ein.

Die letzten beiden Tutorien des Tages „The K Framework: A tool kit for language semantics and verification“ von Jost Berthold und Georgy Lukyanov sowie „Workshops magisch machen mit Liberating Structures“ von Martin Günther waren trotz später Stunde gut besucht; ebenso die beiden Talks zum Abschluss: Lutz Hühnken sprach in „The Unreasonable Effectiveness of Events“ während Philipp Kant mit „Zero-Knowledge-Proofs for Privacy and Trust“ eine Einführung in die Welt der zero-knowledge succinct non-interactive arguments of knowledge – kurz und knacking auch zkSNARKS genannt – gab.

Nach einem kurzen Schlusswort durch unseren Oberchef Michael Sperber ging es für einen großen Teil der Runde weiter in den Gasthof Lindenbräu, wo der Abend im Almhüttenstil inklusive gelegentlicher (künstlicher) Gewitter seinen Ausklang fand.

Hinter den Kulissen lief einiges dank der DHL etwas holprig an, trotzdem gelang die Organisation – auch Dank des enorm engagierten Team des Scandic – zur allgemeinen Zufriedenheit.

Die Talks waren gut besucht und die Tutorials ebenfalls gut gefüllt; der „first come first serve“-Listenansatz wurde im Großen und Ganzen positiv angenommen.

An dieser Stelle auch noch einmal herzlichen Dank an unsere Sponsor:innen WellTyped, Mina Foundation und Tarides, deren freundliche Unterstützung es wieder möglich machte, finanziell schwächer gestellten Teilnehmer:innen stark reduzierte oder ganz kostenlose Tickets anzubieten.

Wir freuen uns schon auf die nächste BOB und hoffen, viele Teilnehmer:innen und Sprecher:innen 2025 wieder begrüßen zu dürfen. Nächstes Jahr gibt es dann auch eine Garderobe …