Am 17.03.2023 fand die BOB, unsere alljährliche Entwickler:innenkonferenz, zum mittlerweile neunten Mal statt. Nach zwei reinen Onlineveranstaltungen fanden wir uns diesmal wieder vor Ort in den Räumen von Lohmann und Birkner Healthcare Services in Berlin zusammen.

Die Konferenz begann mit der Keynote „Re-thinking Modules for the Web“ von Yulia Startsev, die eindrucksvoll erläuterte, wie die Standardisierung der Modularisierung von Javascript bei Mozilla vorangetrieben wird und welche sozialen Prozesse zur Konsensbildung im Rahmen dieser Standardisierung genutzt werden.

Direkt im Anschluss an die Keynote begannen die ersten beiden Tutorials: Pierre Allix und İlke Zilci erklärten in „Building highly available systems with Elixir: an introduction“, wie man hochzuverlässige Systeme in Elixier baut, und Henning Schwentner gab in „Domain Storytelling“ eine Einführung in die gleichnamige Kommunikationstechnik.

Der Talks-Track #1 begann mit „Web Assembly for the Rest of us“, einer Erläuterung zu den Entwicklungen im Bereich Managed Memory in Browsern und was das für die Zukunft von WebAssembly bedeutet, von Andy Wingo. Auf Talks-Track #2 ging es mit „Digitalisierung unter pandemischen Bedingungen“ von Bianca Kastl los, die einene Einblick gab, was bei einem großen Digitalisierungsprojekt in einem Gesundheitsamth besser lief als erwartet und wo (auch unerwartet) Verbesserungsbedarf besteht.

Weiter ging es mit „What a computer game taught me about software architecture“, einem Vortrag über Teams, Projekte, Monolithen, Microservices und Wartungskosten, von Franz Thoma, und parallel plädierte Markus Hettich mit „Softwareentwicklung ist kein Hexenwerk“ dafür, dass manche Probleme in der Softwareentwicklung sich mit bodenständigen Werkzeugen besser lösen lassen als mit komplexen. Gleichzeitig begannen mit „Extending a Language - Writing Powerful Macros in Scheme von Marc Nieper-Wißkirchen und „Functional Development with Kotlin“ von Torsten Fink die zweiten Workshoprunden des Tages.

Im letzten Block vor dem Mittagessen sprach Marijn Haverbeke über „State Transitions in Complex Systems“ und stellte den Editor CodeMirror vor, während im Nebenraum Raoul Schlotterbek einen Einblick in „Funktionales Deep Learning in Haskell“ gab und zeigte, dass man keine Graphen braucht, um neuronale Netze zu trainieren.

Nach der Mittagspause, wunderbar gecatered mit Fingerfood von John Catering GmbH, ging es weiter mit dem Vortrag „Getting recursive definitions off their bottoms“, in dem Joachim Breitner erklärt, wie Haskell rekursive Gleichungssysteme lösen kann. Auf Track B präsentierte Josefine in „Web Accessibility DeepDive“ einen Überblick über Richtlinien und Werkzeuge, deren Anwendung helfen kann, das Internet mit kleinen Tricks für mehr Menschen zugänglich machen.

Danach sprach Heinrich Apfelmus in „Delta encodings help separate business logic from database operations“ darüber, wie man Änderungen an Datenobjekten von den entsprechenden Änderungen an Datenbankobjekten trennt. Parallel schaltete sich Pierre-Étienne Meunier mit „Version control in the age of distributed computing“, einem Vortrag über das verteilte Versionskontrollsystem Pijul, remote aus Frankreich dazu.

Parallel zu diesen vier Vorträgen liefen die Workshops „Sechseckige Webseiten? Hexagonale Frontend-Architektur!“ von Marco Emrich und Sophia Cook sowie „An Introduction to Doing Software Proofs in Agda“ von Sandy Maguire. Hier nochmals einen besonderen Dank an Sandy, der sich wegen großen Andrangs bereiterklärte, den Workshop im letzten Block noch ein zweites Mal abzuhalten.

Im letzten Block des Tages gab es außerdem die Workshops „Einführung in das Haskell-Web-Framework IHP“ von Bianca Lutz und „OpenTelemetry Workshop“ von Osher Vaknin, eine hands-on Einführung in OpenTelemetry mit vielen kleinen angeleiteten Aufgaben zum Finden von Fehler im System durch Monitoring. In den Vortragsräumen referierte derweil Julian Kirsten Arni mit „Cloud, done the nix way“ darüber, wie man reproduzierbare DevOps mit Nix implementiert. Andres Löh erklärte in „Structuring effectful programs“, wie man Effekte mit Domänenlogik verbindet.

Lars Hupel sprach in „When testing just doesn‘t cut it“ über formale Methoden in der Softwareentwicklung, und quchen gab einen Einblick in „Functional programming for CNC machines“, wie man einen selbstgebauten Plotter mit funktionalen Programmen ansteuert.

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. Die Stimmung war gut, viele freuten sich, wieder von Angesicht zu Angesicht mit den anderen Teilnehmer:innen sprechen zu können. Aufgrund der anhaltenden Pandemielage kam ein ausführliches Hygienekonzept zu Tragen, dass von den allermeisten Teilnehmer:innen gut angenommen und auch vereinzelt ausdrücklich positiv kommentiert wurde. Insbesondere die FFP2-Masken mit BOB-Logo kamen gut an. In den Kaffeepausen sorgte Lohmann und Birkner für Heiß- und Kaltgetränke sowie für Kleinigkeiten gegen den Hunger zwischendurch. Das Wetter war leider eher kühl, aber trocken, sodass auch die Sitz- und Verweilmöglichkeiten im Innenhof und auf dem Vorplatz nicht nur von den Raucher:innen gern genutzt wurden, um sich auszutauschen und zwischen den Vorträgen die Beine zu vertreten.

An dieser Stelle auch noch einmal herzlichen Dank an unsere Sponsor:innen WellTyped und TNG Technology Consulting, 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 2024 wieder begrüßen zu dürfen.