Am 26.02.2021 fand die BOB Konferenz 2021 statt, diesmal unter Pandemiebedingungen – das hieß für uns: online.
Die BOB 2021 als virtuelle Veranstaltung
Ca. 200 Personen von vier Kontinenten waren angemeldet, und
tatsächlich waren die allermeisten auch zu irgendeinem Zeitpunkt
dabei. Wir hatten uns dazu entschlossen, die Plattform
gather.town zu nutzen, da der persönliche
Austausch und die Kleingruppengespräche in den Pausen immer zentrale
Punkte bei der BOB waren und auch bleiben sollten. Die virtuelle
Veranstaltung zog die Schwierigkeit der Zeitverschiebung mit sich:
Unsere Vortragenden saßen in sechs verschiedenen Ländern mit vier
verschiedenen Zeitzonen, die Besucher:innen verteilten sich noch deutlich
weiter. Eine Teilnehmerin war von Anfang bis Ende dabei, obwohl die
Veranstaltung um 2:00 morgens ihrer Ortszeit begann.
Unser Ziel war, die gesamte Veranstaltung innerhalb der Plattform
abzuhalten, was auch gelang: jede:r Konferenzteilnehmer:in wurde auf
der Karte durch einen kleinen, individualisierbaren Avatar
dargestellt; das Prinzip von gather.town ist, dass man nur die Videos
und Stimmen derjenigen Teilnehmer:innen eingeblendet bekommt, die sich
innerhalb eines bestimmten Umkreises auf der gleichen Karte
befinden. Dadurch, dass alle Avatare mit Namen versehen waren,
entstanden auch Situationen, in denen man sah, dass sich Bekannte
unterhielten und sich einfach „dazustellen“ konnte.
Wir hatten uns für eine dem Live-Event nachempfundene Aufteilung in
zwei Vortrags- und zwei Tutorialräume, einem Foyer mit Sitzecken
verschiedener Größen und (neu und nur virtuell) einer Dachterrasse mit
„Bar“ entschieden, und so fanden sich – ganz wie im echten Leben –
Grüppchen von Leuten zusammen, die sich unterhielten und austauschten.
Die Entscheidung, alle Aspekte der Konferenz – Vorträge, Tutorien, Q&A
und Pausengespräche – auf der gleichen Plattform abzuhalten,
verringerte Reibungsverluste und sorgte dafür, dass tatsächlich in
allen Pausen und teils sogar während der Vorträge Teilnehmer:innen in
Grüppchen zusammenstanden und sich unterhielten. Ob man die plötzliche
Notwendigkeit, wieder mit Konferenzbekanntschaften Smalltalk betreiben
zu müssen, begrüßt oder nicht: es sorgte für eine live-ähnliche
Atmosphäre.
Die Veranstaltung begann mit der Keynote „How I Design Programs“ von
Jeremy Gibbons. Ein Teilnehmer
witzelte direkt im Anschluss „darüber denke ich noch die nächsten
Wochen nach, ich kann jetzt eigentlich gehen“. Er ist dann aber doch
auch bis zum Schluss geblieben.
Die weiteren Vorträge waren:
-
Theorems for Free Lars Hupel
erklärte Parametrizität und was wir eigentlich meinen, wenn wir
sagen, dass wir mit Typen argumentieren.
-
Nach 20 Jahren Agilität – wird Achtsam das neue
Agil? Markus Wittwer brachte
Teilnehmer:innen die Achtsamkeit näher und beleuchtete, was
Achtsamkeit mit IT zu tun hat.
-
A gentle introduction to Stream
Processing Nicolas Fränkel
beleuchtete die Unterschiede zwischen dem altbewährten
Batch-Processing-Modell und dem neueren Stream-Processing-Modell
anhand von konkreten Anwendungsbeispielen.
-
darcs, because git won
raichoo ketchum berichtete über darcs, eine Alternative zu Git, das
flexibleren Umgang mit Patches erlaubt und nichtlineare Entwicklung
unterstützt.
-
Lessons Learned: Architekturdokumentation mit
arc42 Johannes Dienst sprach
über seine Erfahrung mit arc43-Softwaredokumentation und ging darauf
ein, welche Rolle das Tooling spielt.
-
Logic Programming and
Databases pukkamustard
hielt einen Vortrag über Datalog, eine Query-Sprache aus der
Logikprogrammierung und mächtigere Alternative zu SQL.
-
SIMD in higher level programming
languages Matthias Wahl stellte
fest, dass unsere Prozessoren bis zu 8x effektiver sein könnten, und
gibt konkrete Beispiele dafür, wie man dazu beitragen kann.
-
Higher-Kinded Data Types By
Example Chris Penner gab eine
Einführung in „Higher-Kinded Data Types“, einem neuartigen Ansatz,
Datentypen zu parametrisieren, der flexibler ist als bisher und
Wiederverwendung ermöglicht.
-
Pipes, Arrows, and the
Universe Albert Schimpf
stellte das universelle Daten-, Komponent- und Kompositions-Framework
Scraper vor.
-
Servant vs. Mu: A Type-Level
Battle Alejandro Serrano Mena
verglich die beiden Haskell-Bibliotheken Mu und Servant miteinander.
-
Guarding your IO Boundaries
Franz Thoma berichtete, was TypeScript in der neusten Iteration von
Haskell gelernt hat und wie man diese Erkenntnisse nutzen kann, um
die Grenzen unserer Programme zu schützen.
-
React Performance
Christoph Schmalhofer sprach über React-Performance und die
Möglichkeiten, die man hat, um diese zu verbessern.
-
A Firewall for Your Radical
Network Stefanie Schirmer
sprach über funktionale Programmierung als Sicherheitspraxis
und erklärte anhand von QubeOS, wie virtuelle Maschinen dabei helfen
können, sichere Netzwerke zu schaffen.
-
STG backend for idris2 Andor
Pénzes erläuterte die Vorzüge von idris2 und zeigt, wie ein Backend
für idris2 implementiert werden kann.
Tutorials:
Die Vorträge waren gut besucht und in den Pausen fanden sich immer
wieder Kleingruppen aus alten und neuen Bekannten zusammen, die sich
untereinander austauschten.
Auch wenn wir uns darauf freuen, nächstes Jahr hoffentlich wieder in
Berlin vor Ort sein zu können: Wir würden so eine BOB auch noch einmal
ausrichten.