<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Chaos Computer Club - BOB Konferenz 2024 (low quality mp4)</title>
    <link>https://media.ccc.de/c/bobkonf2024</link>
    <description> This feed contains all events from bobkonf2024 as mp4</description>
    <copyright>see video outro</copyright>
    <lastBuildDate>Tue, 23 Jun 2026 19:38:32 -0000</lastBuildDate>
    <image>
      <url>https://static.media.ccc.de/media/events/bobkonf/2024/logo.png</url>
      <title>Chaos Computer Club - BOB Konferenz 2024 (low quality mp4)</title>
      <link>https://media.ccc.de/c/bobkonf2024</link>
    </image>
    <item>
      <title>The Unreasonable Effectiveness of Events (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-the-unreasonale-effectiveness-of-events-huehnken</link>
      <description>For many, event-driven communication is often considered just an implementation detail. However, event-driven architecture has implications that reach far beyond the realm of asynchronous messaging. In this presentation, we will delve into many of these implications in detail. From delivery guarantees to promise theory, from designing event payloads to functional programming, from error handling to strategic domain-driven design - we will embark on a journey from seemingly minor details to the big picture.
	
about this event: https://bobkonf.de/2024/huehnken.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-8-eng-The_Unreasonable_Effectiveness_of_Events_sd.mp4"
        length="66341840093184"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 17:10:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-8-eng-The_Unreasonable_Effectiveness_of_Events_sd.mp4?1720982212</guid>
      <dc:identifier>1f38d787-9829-4d89-9c7b-6cc96658ecce</dc:identifier>
      <dc:date>2024-03-15T17:10:00+01:00</dc:date>
      <itunes:author>Lutz Hühnken</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 8, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>For many, event-driven communication is often considered just an implementation detail. However, event-driven architecture has implications that reach far beyond the realm of asynchronous messaging. In this presentation, we will delve into many of these implications in detail. From delivery guarantees to promise theory, from designing event payloads to functional programming, from error handling to strategic domain-driven design - we will embark on a journey from seemingly minor details to the big picture.
	
about this event: https://bobkonf.de/2024/huehnken.html
</itunes:summary>
      <itunes:duration>00:45:04</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/8-1f38d787-9829-4d89-9c7b-6cc96658ecce.jpg"/>
    </item>
    <item>
      <title>Zero-Knowledge-Proofs for Privacy and Trust (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-zero-knowledge-proofs-for-privacy-and-trust-kant</link>
      <description>Zero-knowledge proofs are cryptographic techniques that allow a prover
to convince a verifier that certain statements hold, without providing
any additional information. They are becoming increasingly popular in
the blockchain space, as they provide solutions to overcome inherent
weaknesses of blockchains: as they assume a complete lack of trust
between participants, every calculation has to be replicated by
multiple parties, which leads to poor efficiency. Also, blockchains
provide a shared public ledger, which by default is lacking any
privacy.

In this presentation, we will discuss zero-knowledge succinct
non-interactive arguments of knowledge (zkSNARKS). Using the mina
blockchain and smart contract system as an example, we will show how
they can be used to efficiently create trust in an untrusted
environment. We will also look at how they allow creating applications
with a programmable degree of privacy.

While zero knowledge techniques are a perfect match for blockchains,
and they are rapidly gaining traction in that industry, their
usefulness goes beyond that. The goal of this presentation is to
introduce the audience to the concept of zero knowledge proofs, and
provide a basic understanding and intuition of how they work, and
under which circumstances they can be useful.
	
about this event: https://bobkonf.de/2024/kant.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-15-eng-Zero-Knowledge-Proofs_for_Privacy_and_Trust_sd.mp4"
        length="62522349584384"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 17:10:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-15-eng-Zero-Knowledge-Proofs_for_Privacy_and_Trust_sd.mp4?1720981743</guid>
      <dc:identifier>5fb44183-40d6-44de-872e-72b8d8f0f7c8</dc:identifier>
      <dc:date>2024-03-15T17:10:00+01:00</dc:date>
      <itunes:author>Philipp Kant</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 15, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>Zero-knowledge proofs are cryptographic techniques that allow a prover
to convince a verifier that certain statements hold, without providing
any additional information. They are becoming increasingly popular in
the blockchain space, as they provide solutions to overcome inherent
weaknesses of blockchains: as they assume a complete lack of trust
between participants, every calculation has to be replicated by
multiple parties, which leads to poor efficiency. Also, blockchains
provide a shared public ledger, which by default is lacking any
privacy.

In this presentation, we will discuss zero-knowledge succinct
non-interactive arguments of knowledge (zkSNARKS). Using the mina
blockchain and smart contract system as an example, we will show how
they can be used to efficiently create trust in an untrusted
environment. We will also look at how they allow creating applications
with a programmable degree of privacy.

While zero knowledge techniques are a perfect match for blockchains,
and they are rapidly gaining traction in that industry, their
usefulness goes beyond that. The goal of this presentation is to
introduce the audience to the concept of zero knowledge proofs, and
provide a basic understanding and intuition of how they work, and
under which circumstances they can be useful.
	
about this event: https://bobkonf.de/2024/kant.html
</itunes:summary>
      <itunes:duration>00:45:31</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/15-5fb44183-40d6-44de-872e-72b8d8f0f7c8.jpg"/>
    </item>
    <item>
      <title>Software Analytics with Data Science on Software Data (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-software-analytics-with-data-science-on-software-data-harrer</link>
      <description>Data Science has demonstrated its value in extracting insights from business data, raising the question: Why not apply these principles to our software systems’ data? In this talk, I’ll introduce you to the world of Software Analytics. We’ll explore how to extract valuable insights from software data by using tools and techniques from data science to get rid of big, systemic problems in our software systems.

You’ll learn how to leverage scientific thinking, manage the analysis process, and apply literate statistical programming to analyze software systems in an understandable way. Or to put it in the words of software developers: We automate the analysis of large software systems using open-source tools like Jupyter Notebook, Python, pandas, jQAssistant, and Neo4j. I’ll also demonstrate through live-coding how we can gain new insights from data sources like Git repositories, performance measurements, or source code.

Join me in this session to acquire your starter kit for uncovering deeply hidden issues and change the way of improving systems with data-driven software analysis!	
about this event: https://bobkonf.de/2024/harrer.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-14-eng-Software_Analytics_with_Data_Science_on_Software_Data_sd.mp4"
        length="62585713983488"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 16:20:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-14-eng-Software_Analytics_with_Data_Science_on_Software_Data_sd.mp4?1720980416</guid>
      <dc:identifier>e577fdf6-d83f-42fd-8b5b-a7046b053fd4</dc:identifier>
      <dc:date>2024-03-15T16:20:00+01:00</dc:date>
      <itunes:author>Markus Harrer</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 14, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>Data Science has demonstrated its value in extracting insights from business data, raising the question: Why not apply these principles to our software systems’ data? In this talk, I’ll introduce you to the world of Software Analytics. We’ll explore how to extract valuable insights from software data by using tools and techniques from data science to get rid of big, systemic problems in our software systems.

You’ll learn how to leverage scientific thinking, manage the analysis process, and apply literate statistical programming to analyze software systems in an understandable way. Or to put it in the words of software developers: We automate the analysis of large software systems using open-source tools like Jupyter Notebook, Python, pandas, jQAssistant, and Neo4j. I’ll also demonstrate through live-coding how we can gain new insights from data sources like Git repositories, performance measurements, or source code.

Join me in this session to acquire your starter kit for uncovering deeply hidden issues and change the way of improving systems with data-driven software analysis!	
about this event: https://bobkonf.de/2024/harrer.html
</itunes:summary>
      <itunes:duration>00:39:49</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/14-e577fdf6-d83f-42fd-8b5b-a7046b053fd4.jpg"/>
    </item>
    <item>
      <title>Referenziell transparente Business-Prozesse in funktional (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-referenziell-transparente-business-prozesse-in-funktional-haerer</link>
      <description>Die explizite Modellierung von Business-Prozessen und deren Visualisierung ist ab einer bestimmten Größe und Anzahl von Prozessen unabdingbar. Ob zur Diskussion über Fachlichkeiten, zur Formulierung neuer Prozess-Modelle oder Wartung und Weiterentwicklung alter Prozess-Modelle - Prozess-Modelle als Diskussionsgrundlage erweisen sich als riesige Hilfe. Wäre es dazu nicht toll, wenn die Prozess-Modelle, einschließlich komplexer Bedingungen von Statusübergängen, referenziell transparent wären, das heißt auf vergleichbaren Daten beruhen, die sich einfach serialisieren und visualisieren lassen?

In diesem Talk zeigen wir nicht nur, wie wir unter Zuhilfenahme verschiedener Techniken aus der funktionalen Programmierung derartige Prozess-Modelle formulieren und ausführen, sondern auch, wie wir wiederverwendbare Prozessbausteine definieren, um über Prozess-Modelle zu abstrahieren. Die Modellierung stellt sich dabei so flexibel heraus, dass sie als Grundlage für verschiedene Prozess-Standards, wie BPMN &amp; co verwendet werden kann.

Durch die Kombination mit einem Event-basierten System entsteht so mit geringem Aufwand eine mächtige und leicht erweiterbare Prozess-Engine für unterschiedlichste prozessbasierte Anwendungen.
	
about this event: https://bobkonf.de/2024/haerer.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-7-deu-Referenziell_transparente_Business-Prozesse_in_funktional_sd.mp4"
        length="64385034747904"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 16:20:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-7-deu-Referenziell_transparente_Business-Prozesse_in_funktional_sd.mp4?1720979378</guid>
      <dc:identifier>aafa184c-1120-480c-b14f-bd5dfa8a6027</dc:identifier>
      <dc:date>2024-03-15T16:20:00+01:00</dc:date>
      <itunes:author>Simon Härer</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 7, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>Die explizite Modellierung von Business-Prozessen und deren Visualisierung ist ab einer bestimmten Größe und Anzahl von Prozessen unabdingbar. Ob zur Diskussion über Fachlichkeiten, zur Formulierung neuer Prozess-Modelle oder Wartung und Weiterentwicklung alter Prozess-Modelle - Prozess-Modelle als Diskussionsgrundlage erweisen sich als riesige Hilfe. Wäre es dazu nicht toll, wenn die Prozess-Modelle, einschließlich komplexer Bedingungen von Statusübergängen, referenziell transparent wären, das heißt auf vergleichbaren Daten beruhen, die sich einfach serialisieren und visualisieren lassen?

In diesem Talk zeigen wir nicht nur, wie wir unter Zuhilfenahme verschiedener Techniken aus der funktionalen Programmierung derartige Prozess-Modelle formulieren und ausführen, sondern auch, wie wir wiederverwendbare Prozessbausteine definieren, um über Prozess-Modelle zu abstrahieren. Die Modellierung stellt sich dabei so flexibel heraus, dass sie als Grundlage für verschiedene Prozess-Standards, wie BPMN &amp; co verwendet werden kann.

Durch die Kombination mit einem Event-basierten System entsteht so mit geringem Aufwand eine mächtige und leicht erweiterbare Prozess-Engine für unterschiedlichste prozessbasierte Anwendungen.
	
about this event: https://bobkonf.de/2024/haerer.html
</itunes:summary>
      <itunes:duration>00:44:28</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/7-aafa184c-1120-480c-b14f-bd5dfa8a6027.jpg"/>
    </item>
    <item>
      <title>Property-testing all* the things in SerenityOS (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-property-testing-all-the-things-in-serenityos-janiczek</link>
      <description>
	 *: not all the things.

I’m a big proponent of property-based testing (as in, QuickCheck or Hypothesis), be it in Elm, Haskell, Scala or JavaScript - it’s great at finding tricky edge cases, refining your understanding of your system and giving you confidence it works for more cases than just your happy path unit tests.

Imagine my horror when I saw that SerenityOS, my favorite “watch and admire it from distance” open source project didn’t have any support for property-based testing! There were three options: don’t test at all, test with unit tests, or fuzz the binary as a black box.

I set out to write a property-based testing framework for SerenityOS, complete with automatic shrinking and all, and to use it to write property tests for apps and libraries all across SerenityOS.

In this talk I want to share that journey, the surprising complications and how I overcame them, the tests I’ve written and categories they fall into, and the bugs I’ve found.
	
about this event: https://bobkonf.de/2024/janiczek.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-13-eng-Property-testing_all_the_things_in_SerenityOS_sd.mp4"
        length="60775062306816"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 15:05:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-13-eng-Property-testing_all_the_things_in_SerenityOS_sd.mp4?1720979043</guid>
      <dc:identifier>bbece69b-eb18-40bc-88ca-34eecc46910b</dc:identifier>
      <dc:date>2024-03-15T15:05:00+01:00</dc:date>
      <itunes:author>Martin Janiczek</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 13, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>
	 *: not all the things.

I’m a big proponent of property-based testing (as in, QuickCheck or Hypothesis), be it in Elm, Haskell, Scala or JavaScript - it’s great at finding tricky edge cases, refining your understanding of your system and giving you confidence it works for more cases than just your happy path unit tests.

Imagine my horror when I saw that SerenityOS, my favorite “watch and admire it from distance” open source project didn’t have any support for property-based testing! There were three options: don’t test at all, test with unit tests, or fuzz the binary as a black box.

I set out to write a property-based testing framework for SerenityOS, complete with automatic shrinking and all, and to use it to write property tests for apps and libraries all across SerenityOS.

In this talk I want to share that journey, the surprising complications and how I overcame them, the tests I’ve written and categories they fall into, and the bugs I’ve found.
	
about this event: https://bobkonf.de/2024/janiczek.html
</itunes:summary>
      <itunes:duration>00:44:17</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/13-bbece69b-eb18-40bc-88ca-34eecc46910b.jpg"/>
    </item>
    <item>
      <title>Hyper Hyper! Javascript fatigue und die Hypermedia Renaissance (?) (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-javascript-fatigue-und-die-hypermedia-renaissance-schneider</link>
      <description>Hypermedia erlebt in den letzten Jahren eine Renaissance. Das
Elixir-Webframework Phoenix
bietet mit
Live-Views
einen Hypermedia-Mechanismus an, um reiche Webfrontends ohne
JavaScript zu schreiben. Ähnlich das
Turbo-Paket für Ruby on Rails.

Dazu gesellt sich seit einiger Zeit HTMX. Das ist
eine sprach- und frameworkunabhängige Javascript-Bibliothek die HTML
als Hypertext endlich vervollständigen soll. Wer sich schon immer
darüber geärgert hat, dass nur Anchor-Tags und Formulare einen Request
abschicken dürfen, warum diese überhaupt nur GET bzw. POST
unterstützen und warum immer gleich die ganze Seite ersetzt werden
muss, ist hier genau richtig.

Anders als mit React und Konsorten bekommen wir
mit HTMX endlich wieder die Möglichkeit, wirklich deklarativen
Frontendcode zu schreiben und den Zustand dort zu lassen, wo er
ohnehin hingehört: auf dem Server. Dass die Frontend Buildzeiten auf
Null sinken ist natürlich ein netter Bonus.

Wer also keine Lust mehr hat, für jede Single Page Application
grundlegende Browserfunktionalität nachzubauen (looking at you,
Navigation und History) oder Performancehacks für große Selects zu
basteln, kann sich hier anschauen, wie das deklarative Hypermedia Web
in Zukunft (wieder) aussehen könnte.
	
about this event: https://bobkonf.de/2024/schneider.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-6-deu-Hyper_Hyper_Javascript_fatigue_und_die_Hypermedia_Renaissance_sd.mp4"
        length="65116431187968"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 15:05:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-6-deu-Hyper_Hyper_Javascript_fatigue_und_die_Hypermedia_Renaissance_sd.mp4?1720977802</guid>
      <dc:identifier>b048d207-3245-4392-bc66-ecfad74fc70e</dc:identifier>
      <dc:date>2024-03-15T15:05:00+01:00</dc:date>
      <itunes:author>Marco Schneider</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 6, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>Hypermedia erlebt in den letzten Jahren eine Renaissance. Das
Elixir-Webframework Phoenix
bietet mit
Live-Views
einen Hypermedia-Mechanismus an, um reiche Webfrontends ohne
JavaScript zu schreiben. Ähnlich das
Turbo-Paket für Ruby on Rails.

Dazu gesellt sich seit einiger Zeit HTMX. Das ist
eine sprach- und frameworkunabhängige Javascript-Bibliothek die HTML
als Hypertext endlich vervollständigen soll. Wer sich schon immer
darüber geärgert hat, dass nur Anchor-Tags und Formulare einen Request
abschicken dürfen, warum diese überhaupt nur GET bzw. POST
unterstützen und warum immer gleich die ganze Seite ersetzt werden
muss, ist hier genau richtig.

Anders als mit React und Konsorten bekommen wir
mit HTMX endlich wieder die Möglichkeit, wirklich deklarativen
Frontendcode zu schreiben und den Zustand dort zu lassen, wo er
ohnehin hingehört: auf dem Server. Dass die Frontend Buildzeiten auf
Null sinken ist natürlich ein netter Bonus.

Wer also keine Lust mehr hat, für jede Single Page Application
grundlegende Browserfunktionalität nachzubauen (looking at you,
Navigation und History) oder Performancehacks für große Selects zu
basteln, kann sich hier anschauen, wie das deklarative Hypermedia Web
in Zukunft (wieder) aussehen könnte.
	
about this event: https://bobkonf.de/2024/schneider.html
</itunes:summary>
      <itunes:duration>00:43:25</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/6-b048d207-3245-4392-bc66-ecfad74fc70e.jpg"/>
    </item>
    <item>
      <title>Model-Based Testing with QuickCheck (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-model-based-testing-with-quickcheck-bailly</link>
      <description>QuickCheck is well-known as a framework for Property-Based Testing whereby one writes tests as properties some code should respect and use generators and shrinkers to prove or find counterexamples to those properties. Building on those principles, quickcheck-dynamic is a new tool to define State-Machine like models of software, generate and run sequence of actions, and express properties of the system in terms of high-level Dynamic Logic expressions.

This session is both an introduction to, and an experience report on, the use of quickcheck-dynamic and more generally to the principles and practices of Model-Based Testing. Through a few examples drawn from real-life use of the library, I hope to convince the audience of the relevance of these tools for the development of complex, stateful software.	
about this event: https://bobkonf.de/2024/bailly.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-12-eng-Model-Based_Testing_with_QuickCheck_sd.mp4"
        length="64823686594560"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 14:15:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-12-eng-Model-Based_Testing_with_QuickCheck_sd.mp4?1720973943</guid>
      <dc:identifier>371aa3f8-ba1b-4e2c-a4ca-ab79772d996e</dc:identifier>
      <dc:date>2024-03-15T14:15:00+01:00</dc:date>
      <itunes:author>Arnaud Bailly</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 12, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>QuickCheck is well-known as a framework for Property-Based Testing whereby one writes tests as properties some code should respect and use generators and shrinkers to prove or find counterexamples to those properties. Building on those principles, quickcheck-dynamic is a new tool to define State-Machine like models of software, generate and run sequence of actions, and express properties of the system in terms of high-level Dynamic Logic expressions.

This session is both an introduction to, and an experience report on, the use of quickcheck-dynamic and more generally to the principles and practices of Model-Based Testing. Through a few examples drawn from real-life use of the library, I hope to convince the audience of the relevance of these tools for the development of complex, stateful software.	
about this event: https://bobkonf.de/2024/bailly.html
</itunes:summary>
      <itunes:duration>00:44:14</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/12-371aa3f8-ba1b-4e2c-a4ca-ab79772d996e.jpg"/>
    </item>
    <item>
      <title>Konsequente Barrierefreiheit durch Partizipation im Prozess (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-konsequente-barrierefreiheit-durch-partizipation-im-prozess-paliszewska-rogalla</link>
      <description>Ausgangsthesen:

(1) Barrierearme oder barrierefreie Software und/oder IT-Systeme
(=Produkte) können nur das Ergebnis entsprechend gestalteter
Entwicklungsprozesse sein, Barrierfreiheit nachträglich zu
implementieren ist kaum möglich und sehr teuer.

(2) Die Anforderungen aus der BITV 2.0 bzw. WACG 2.x reichen für die
barrierefreie Gestaltung von Software und/oder IT-Systemen nicht aus.
Sie müssen durch weitere Anforderungen und durch die systematische
Einbeziehung von Menschen mit (unterschiedlichen) Behinderungen
erweitert werden.

Lösungsansätze:

(3) Einen Rahmen zur Prozessgestaltung liefert die neue Norm ISO/IEC
30071-1.

(4) Aus unserer Sicht ist vor allem Partizipation im Prozess
erforderlich, also: Menschen mit Behinderungen werden von Anfang an,
schon bei Anforderungserhebung einbezogen und in verschiedenen Rollen
in alle Entwicklungsphasen, wie Design, Implementierung sowie Tests.

Erfahrungen:

(5) Als Mitglieder eines Teams von Menschen mit unterschiedlichen
Behinderungen berichten wir, was unsere Erfahrungen sind und was aus
unserer Sicht die wichtigsten technischen wie nicht-technischen
Anforderungen sind. Die Basis bildet die Schärfung des Bewusstseins
für die tatsächlichen Bedürfnisse und Herausforderungen von Menschen
mit Behinderungen, bei Entwickler*innen wie in der Gesellschaft
insgesamt.	
about this event: https://bobkonf.de/2024/paliszewska-rogalla.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-5-deu-Konsequente_Barrierefreiheit_durch_Partizipation_im_Prozess_sd.mp4"
        length="63201068711936"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 14:15:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-5-deu-Konsequente_Barrierefreiheit_durch_Partizipation_im_Prozess_sd.mp4?1720975443</guid>
      <dc:identifier>ca76dbd7-0433-4a45-bbaa-1fc2712b1455</dc:identifier>
      <dc:date>2024-03-15T14:15:00+01:00</dc:date>
      <itunes:author>Irmhild Rogalla, Jolanta Paliszewska</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 5, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>Ausgangsthesen:

(1) Barrierearme oder barrierefreie Software und/oder IT-Systeme
(=Produkte) können nur das Ergebnis entsprechend gestalteter
Entwicklungsprozesse sein, Barrierfreiheit nachträglich zu
implementieren ist kaum möglich und sehr teuer.

(2) Die Anforderungen aus der BITV 2.0 bzw. WACG 2.x reichen für die
barrierefreie Gestaltung von Software und/oder IT-Systemen nicht aus.
Sie müssen durch weitere Anforderungen und durch die systematische
Einbeziehung von Menschen mit (unterschiedlichen) Behinderungen
erweitert werden.

Lösungsansätze:

(3) Einen Rahmen zur Prozessgestaltung liefert die neue Norm ISO/IEC
30071-1.

(4) Aus unserer Sicht ist vor allem Partizipation im Prozess
erforderlich, also: Menschen mit Behinderungen werden von Anfang an,
schon bei Anforderungserhebung einbezogen und in verschiedenen Rollen
in alle Entwicklungsphasen, wie Design, Implementierung sowie Tests.

Erfahrungen:

(5) Als Mitglieder eines Teams von Menschen mit unterschiedlichen
Behinderungen berichten wir, was unsere Erfahrungen sind und was aus
unserer Sicht die wichtigsten technischen wie nicht-technischen
Anforderungen sind. Die Basis bildet die Schärfung des Bewusstseins
für die tatsächlichen Bedürfnisse und Herausforderungen von Menschen
mit Behinderungen, bei Entwickler*innen wie in der Gesellschaft
insgesamt.	
about this event: https://bobkonf.de/2024/paliszewska-rogalla.html
</itunes:summary>
      <itunes:duration>00:42:58</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/5-ca76dbd7-0433-4a45-bbaa-1fc2712b1455.jpg"/>
    </item>
    <item>
      <title>Erlang, OCaml, same thing 🤷 (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-erlang-ocaml-same-thing-ostera</link>
      <description>Ever wondered what type-safe, massively concurrent functional
programming could look like? Join me on a journey from Erlang to OCaml
and back again.

We’ll learn about Caramel 🍬 –
an experiment in bringing type-safety for the Erlang VM. Caramel was
born out of the question: why is Erlang hard to type? – and as it
turns out, it is not! If you restrict it enough. So much so that what
you end up with is…OCaml?

On the flip side, the new algebraic effects and multicore capabilities
of OCaml 5 open the possibility of new execution models. How far could
we take them? Could we inject Erlang’s famed concurrency model into
OCaml?

Riot 🌪️ is an actor-model runtime
for OCaml 5 that brings multi-core scheduling and lightweight
processes, communicating via message passing.

Key Takeaways

_ Learn more about how type safety and supervision trees make for the
ultimate reliability stack
- Understand the convergence of Erlang and OCaml
- Get started writing Type-safe actor systems in OCaml with Riot
	


	
about this event: https://bobkonf.de/2024/ostera.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-11-eng-Erlang_OCaml_same_thing_sd.mp4"
        length="71026167775232"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 12:35:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-11-eng-Erlang_OCaml_same_thing_sd.mp4?1720972376</guid>
      <dc:identifier>171bd1d8-fbf1-4d78-ac81-a953a5a7a271</dc:identifier>
      <dc:date>2024-03-15T12:35:00+01:00</dc:date>
      <itunes:author>Leandro Ostera</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 11, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>Ever wondered what type-safe, massively concurrent functional
programming could look like? Join me on a journey from Erlang to OCaml
and back again.

We’ll learn about Caramel 🍬 –
an experiment in bringing type-safety for the Erlang VM. Caramel was
born out of the question: why is Erlang hard to type? – and as it
turns out, it is not! If you restrict it enough. So much so that what
you end up with is…OCaml?

On the flip side, the new algebraic effects and multicore capabilities
of OCaml 5 open the possibility of new execution models. How far could
we take them? Could we inject Erlang’s famed concurrency model into
OCaml?

Riot 🌪️ is an actor-model runtime
for OCaml 5 that brings multi-core scheduling and lightweight
processes, communicating via message passing.

Key Takeaways

_ Learn more about how type safety and supervision trees make for the
ultimate reliability stack
- Understand the convergence of Erlang and OCaml
- Get started writing Type-safe actor systems in OCaml with Riot
	


	
about this event: https://bobkonf.de/2024/ostera.html
</itunes:summary>
      <itunes:duration>00:46:21</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/11-171bd1d8-fbf1-4d78-ac81-a953a5a7a271.jpg"/>
    </item>
    <item>
      <title>Kommunikationsmuster für Services: Effizient und zuverlässig (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-kommunikationsmuster-fuer-services-butenuth</link>
      <description>Kennt jemand eine IT-Landschaft mit nur einer Anwendung? Ich nicht, selbst die größten Monolithen lösen selten alles alleine. In den meisten Unternehmen existieren normalerweise mehrere Anwendungen, die auf ihre Bereiche spezialisiert sind. Die Spezialisierung wird aber vermutlich selten so weit gehen, dass die verwendeten Daten vollständig disjunkt sind. In den meisten Fällen liegt ein bunter Mix vor: Rein lokale Daten einer Anwendung, redundant gespeicherte Daten und Aufgaben, die von einer zur nächsten Anwendung weitergereicht werden.

Wie gehen wir mit diesem Zoo am besten um, ohne in einer Wildnis zu landen, in der Daten und Aufträge verloren gehen, Daten inkonsistent sind oder Aufträge mehrfach ausgeführt werden? Manche sehen in API-Management und REST die Lösung für alle Probleme, andere schwören auf Event-driven-Architecture mit zentralem Event-Broker. Ich werde (einfache) Kommunikationsmuster für die häufigsten Probleme in derartig verteilten Systemen vorstellen, immer mit den Zielen einfach, zuverlässig und effizient. Und dem Wissen, dass es ohne Kompromisse nicht geht.
	
about this event: https://bobkonf.de/2024/butenuth.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-4-deu-Kommunikationsmuster_fuer_Services_Effizient_und_zuverlaessig_sd.mp4"
        length="59364770578432"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 12:35:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-4-deu-Kommunikationsmuster_fuer_Services_Effizient_und_zuverlaessig_sd.mp4?1720970844</guid>
      <dc:identifier>b9c15eec-2a9e-4584-87da-3cf80d69af18</dc:identifier>
      <dc:date>2024-03-15T12:35:00+01:00</dc:date>
      <itunes:author>Roger Buthenuth</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 4, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>Kennt jemand eine IT-Landschaft mit nur einer Anwendung? Ich nicht, selbst die größten Monolithen lösen selten alles alleine. In den meisten Unternehmen existieren normalerweise mehrere Anwendungen, die auf ihre Bereiche spezialisiert sind. Die Spezialisierung wird aber vermutlich selten so weit gehen, dass die verwendeten Daten vollständig disjunkt sind. In den meisten Fällen liegt ein bunter Mix vor: Rein lokale Daten einer Anwendung, redundant gespeicherte Daten und Aufgaben, die von einer zur nächsten Anwendung weitergereicht werden.

Wie gehen wir mit diesem Zoo am besten um, ohne in einer Wildnis zu landen, in der Daten und Aufträge verloren gehen, Daten inkonsistent sind oder Aufträge mehrfach ausgeführt werden? Manche sehen in API-Management und REST die Lösung für alle Probleme, andere schwören auf Event-driven-Architecture mit zentralem Event-Broker. Ich werde (einfache) Kommunikationsmuster für die häufigsten Probleme in derartig verteilten Systemen vorstellen, immer mit den Zielen einfach, zuverlässig und effizient. Und dem Wissen, dass es ohne Kompromisse nicht geht.
	
about this event: https://bobkonf.de/2024/butenuth.html
</itunes:summary>
      <itunes:duration>00:43:26</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/4-b9c15eec-2a9e-4584-87da-3cf80d69af18.jpg"/>
    </item>
    <item>
      <title>Functional Programming in Swift (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-functional-programming-in-swift-chakravarty</link>
      <description>When people talk about functional programming in modern multi-paradigm languages, they usually mention Rust, Scala, or Kotlin. You rarely hear Swift being mentioned. This is odd, as one might argue that, of these languages, Swift places the strongest emphasis on functional programming.

In this talk, I will explain the core functional programming features of Swift, including its expressive type system, value types, and mutability control. Furthermore, I will discuss how Swift’s language design is influenced by the desire to create a language that addresses the whole spectrum from low-level systems programming up to high-level applications with sophisticated graphical user interfaces. Beyond the core language itself, functional programming also permeates Swift’s rich ecosystem of libraries. To support this point, I will outline some FP-inspired core libraries, covering concepts from functional data structures over functional reactive programming to declarative user interfaces.

Finally, I will briefly summarise practical considerations for using Swift in your own projects. This includes the cross-platform toolchain, the package manager, and interoperability with other languages.
	
about this event: https://bobkonf.de/2024/chakravarty.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-10-eng-Functional_Programming_in_Swift_sd.mp4"
        length="65210526203904"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 11:45:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-10-eng-Functional_Programming_in_Swift_sd.mp4?1720966983</guid>
      <dc:identifier>a064fb6e-5975-46bb-94df-5ab0f98dd325</dc:identifier>
      <dc:date>2024-03-15T11:45:00+01:00</dc:date>
      <itunes:author>Manuel Chakravarty</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 10, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>When people talk about functional programming in modern multi-paradigm languages, they usually mention Rust, Scala, or Kotlin. You rarely hear Swift being mentioned. This is odd, as one might argue that, of these languages, Swift places the strongest emphasis on functional programming.

In this talk, I will explain the core functional programming features of Swift, including its expressive type system, value types, and mutability control. Furthermore, I will discuss how Swift’s language design is influenced by the desire to create a language that addresses the whole spectrum from low-level systems programming up to high-level applications with sophisticated graphical user interfaces. Beyond the core language itself, functional programming also permeates Swift’s rich ecosystem of libraries. To support this point, I will outline some FP-inspired core libraries, covering concepts from functional data structures over functional reactive programming to declarative user interfaces.

Finally, I will briefly summarise practical considerations for using Swift in your own projects. This includes the cross-platform toolchain, the package manager, and interoperability with other languages.
	
about this event: https://bobkonf.de/2024/chakravarty.html
</itunes:summary>
      <itunes:duration>00:44:46</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/10-a064fb6e-5975-46bb-94df-5ab0f98dd325.jpg"/>
    </item>
    <item>
      <title>Kontrollsoftware für eine Jupitermission der ESA: Ein Erfahrungsbericht (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-kontrollsoftware-fuer-eine-jupitermission-schirmer-winkelmann</link>
      <description>Die Implementierung der Steuersoftware für das Messinstrument SWI auf der ESA Jupiter-Raumsonde JUICE dauerte acht Jahre und fand unter in vieler Hinsicht ungünstigen Bedingungen statt.

Höchste Priorität bei der Entwicklung hatten maximale Laufzeitstabilität und Einhaltung der Liefertermine. Um diese Ziele zu erreichen mussten verschiedene in der Industrie übliche und von der ESA vorgeschlagene Methoden durch effizientere Herangehensweisen ersetzt werden.

Die aufgetretenen Probleme und die entsprechenden Lösungen werden im Einzelnen besprochen.
about this event: https://bobkonf.de/2024/schirmer-winkelmann.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-3-deu-Kontrollsoftware_fuer_eine_Jupitermission_der_ESA_Ein_Erfahrungsbericht_sd.mp4"
        length="64261490475008"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 11:45:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-3-deu-Kontrollsoftware_fuer_eine_Jupitermission_der_ESA_Ein_Erfahrungsbericht_sd.mp4?1720968716</guid>
      <dc:identifier>e323823f-fad9-4820-a09a-2b84df5e4ee5</dc:identifier>
      <dc:date>2024-03-15T11:45:00+01:00</dc:date>
      <itunes:author>Oskar Schirmer, Felix Winkelmann</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 3, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>Die Implementierung der Steuersoftware für das Messinstrument SWI auf der ESA Jupiter-Raumsonde JUICE dauerte acht Jahre und fand unter in vieler Hinsicht ungünstigen Bedingungen statt.

Höchste Priorität bei der Entwicklung hatten maximale Laufzeitstabilität und Einhaltung der Liefertermine. Um diese Ziele zu erreichen mussten verschiedene in der Industrie übliche und von der ESA vorgeschlagene Methoden durch effizientere Herangehensweisen ersetzt werden.

Die aufgetretenen Probleme und die entsprechenden Lösungen werden im Einzelnen besprochen.
about this event: https://bobkonf.de/2024/schirmer-winkelmann.html
</itunes:summary>
      <itunes:duration>00:44:32</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/3-e323823f-fad9-4820-a09a-2b84df5e4ee5.jpg"/>
    </item>
    <item>
      <title>Cypress überall - Ein einziges Automatisierungswerkzeug für alle Teststufen?! (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-cypress-ueberall-sokenou</link>
      <description> Das Open-Source-Werkzeug Cypress ist ursprünglich als Alternative zu Selenium im Bereich der End-2-End-Tests in der Webentwicklung gestartet. Inzwischen füllt es mit Component Testing auch die Lücke zwischen Unit- und End-2-End-Tests in der Webentwicklung, die bisher nur ungenügend besetzt war, also bei den Komponenten- und Integrationstests.

Lässt man Cypress Component Tests in sein Projekt, dann automatisiert man damit schnell nicht nur Komponententests, sondern auch Unit-Tests. Sie bieten sich damit als Ersatz für typische Unit-Test-Werkzeuge für Webanwendungen wie Jest oder Karma an. Cypress etabliert sich damit als Automatisierungswerkzeug für alle Teststufen, von den Unit- bis hin zu den End-2-End-Test. Kann Cypress wie ein Schweizer Taschenmesser wirklich den kleinen Zoo der bisher verwendeten Werkzeuge ablösen? Wir haben es ausprobiert und berichten über Erfahrungen positiver Art, aber auch über die Grenzen, an die wir gestoßen sind. Unter anderem zeigen wir anhand von Beispiele, wie Cypress als TDD-Werkzeug eingesetzt werden kann, wie einfach bestehende Tests migriert werden können, und haben evaluiert, was unter welchen Bedingungen schneller und stabiler ist, die Unit-Tests in Jest oder die in Cypress.	


	
about this event: https://bobkonf.de/2024/sokenou.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-2-deu-Cypress_ueberall_-_Ein_einziges_Automatisierungswerkzeug_fuer_alle_Teststufen_sd.mp4"
        length="77658208600064"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 10:15:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-2-deu-Cypress_ueberall_-_Ein_einziges_Automatisierungswerkzeug_fuer_alle_Teststufen_sd.mp4?1720964576</guid>
      <dc:identifier>6dc26c7d-412f-4fc2-9482-424a1be382f0</dc:identifier>
      <dc:date>2024-03-15T10:15:00+01:00</dc:date>
      <itunes:author>Dehla Sokenou</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 2, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary> Das Open-Source-Werkzeug Cypress ist ursprünglich als Alternative zu Selenium im Bereich der End-2-End-Tests in der Webentwicklung gestartet. Inzwischen füllt es mit Component Testing auch die Lücke zwischen Unit- und End-2-End-Tests in der Webentwicklung, die bisher nur ungenügend besetzt war, also bei den Komponenten- und Integrationstests.

Lässt man Cypress Component Tests in sein Projekt, dann automatisiert man damit schnell nicht nur Komponententests, sondern auch Unit-Tests. Sie bieten sich damit als Ersatz für typische Unit-Test-Werkzeuge für Webanwendungen wie Jest oder Karma an. Cypress etabliert sich damit als Automatisierungswerkzeug für alle Teststufen, von den Unit- bis hin zu den End-2-End-Test. Kann Cypress wie ein Schweizer Taschenmesser wirklich den kleinen Zoo der bisher verwendeten Werkzeuge ablösen? Wir haben es ausprobiert und berichten über Erfahrungen positiver Art, aber auch über die Grenzen, an die wir gestoßen sind. Unter anderem zeigen wir anhand von Beispiele, wie Cypress als TDD-Werkzeug eingesetzt werden kann, wie einfach bestehende Tests migriert werden können, und haben evaluiert, was unter welchen Bedingungen schneller und stabiler ist, die Unit-Tests in Jest oder die in Cypress.	


	
about this event: https://bobkonf.de/2024/sokenou.html
</itunes:summary>
      <itunes:duration>00:45:39</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/2-6dc26c7d-412f-4fc2-9482-424a1be382f0.jpg"/>
    </item>
    <item>
      <title>End-to-end Type-Safety with Your Own API Spec DSL (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-end-to-end-type-safety-with-your-own-api-spec-dsl-schmaltz</link>
      <description>
This talk offers a deep dive into the creation of a custom Domain-Specific Language (DSL) for HTTP API specifications, focusing on achieving end-to-end type safety targeting TypeScript client applications with Go/Rust/OCaml backends. I’ll share my experiences and choices in developing this DSL in OCaml, highlighting its design principles and challenges encountered.

Key discussion points include the necessity of type safety across software layers, DSL design strategies, and the detailed process of building and integrating the DSL. I’ll cover some practical challenges and solutions in DSL development, considering aspects like type inference, schema validation, and automatic code generation for the backend routes and the client-side bindings.
	
about this event: https://bobkonf.de/2024/schmaltz.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-9-eng-End-to-end_Type-Safety_with_Your_Own_API_Spec_DSL_sd.mp4"
        length="64157553524736"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 10:15:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-9-eng-End-to-end_Type-Safety_with_Your_Own_API_Spec_DSL_sd.mp4?1720966066</guid>
      <dc:identifier>7e82bd82-afba-4765-8a1d-9c222d0f6763</dc:identifier>
      <dc:date>2024-03-15T10:15:00+01:00</dc:date>
      <itunes:author>Sabine Schmaltz</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 9, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>
This talk offers a deep dive into the creation of a custom Domain-Specific Language (DSL) for HTTP API specifications, focusing on achieving end-to-end type safety targeting TypeScript client applications with Go/Rust/OCaml backends. I’ll share my experiences and choices in developing this DSL in OCaml, highlighting its design principles and challenges encountered.

Key discussion points include the necessity of type safety across software layers, DSL design strategies, and the detailed process of building and integrating the DSL. I’ll cover some practical challenges and solutions in DSL development, considering aspects like type inference, schema validation, and automatic code generation for the backend routes and the client-side bindings.
	
about this event: https://bobkonf.de/2024/schmaltz.html
</itunes:summary>
      <itunes:duration>00:44:24</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/9-7e82bd82-afba-4765-8a1d-9c222d0f6763.jpg"/>
    </item>
    <item>
      <title>Keynote: Who&#39;s Afraid of the Turnstile? (bobkonf2024)</title>
      <link>https://media.ccc.de/v/bob11-2024-whos-afraid-of-the-turnstile-rossberg</link>
      <description>Programmers are well familiar with BNF as a concise and precise formal
notation for defining programming language syntax. Nobody would
consider describing syntax in prose. But more than 60 years after the
introduction of syntax formalisms, it’s still accepted practice that
programming language semantics, which is the far more delicate part
of a language definition, is specified by a combination of cumbersome
prose, hidden assumptions, and wishful thinking.

In this talk, I show how we closed this gap in the specification of
WebAssembly, hopefully demonstrating that there is little reason to be
afraid of formal semantics. In the end, it’s merely syntax! The
techniques that the academic community has developed over the past 4
decades work well and scale to a full-blown industrial language. I
also give a peek at a novel tool chain this approach enables us to
build, which can generate much of the written WebAssembly
specification and corresponding proofs and tests, achieving new levels
of trust in the correctness of the specification.


	
about this event: https://bobkonf.de/2024/rossberg.html
</description>
      <enclosure url="https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-1-eng-Keynote_Whos_Afraid_of_the_Turnstile_sd.mp4"
        length="76400015966208"
        type="video/mp4"/>
      <pubDate>Fri, 15 Mar 2024 09:00:00 +0100</pubDate>
      <guid isPermaLink="true">https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-1-eng-Keynote_Whos_Afraid_of_the_Turnstile_sd.mp4?1720964156</guid>
      <dc:identifier>1daf62a1-cf78-44e5-ae38-847c2c6035db</dc:identifier>
      <dc:date>2024-03-15T09:00:00+01:00</dc:date>
      <itunes:author>Andreas Rossberg</itunes:author>
      <itunes:explicit>No</itunes:explicit>
      <itunes:keywords>bob2024, 1, 2024, Talk, BOB, BOBKonferenz</itunes:keywords>
      <itunes:summary>Programmers are well familiar with BNF as a concise and precise formal
notation for defining programming language syntax. Nobody would
consider describing syntax in prose. But more than 60 years after the
introduction of syntax formalisms, it’s still accepted practice that
programming language semantics, which is the far more delicate part
of a language definition, is specified by a combination of cumbersome
prose, hidden assumptions, and wishful thinking.

In this talk, I show how we closed this gap in the specification of
WebAssembly, hopefully demonstrating that there is little reason to be
afraid of formal semantics. In the end, it’s merely syntax! The
techniques that the academic community has developed over the past 4
decades work well and scale to a full-blown industrial language. I
also give a peek at a novel tool chain this approach enables us to
build, which can generate much of the written WebAssembly
specification and corresponding proofs and tests, achieving new levels
of trust in the correctness of the specification.


	
about this event: https://bobkonf.de/2024/rossberg.html
</itunes:summary>
      <itunes:duration>00:54:42</itunes:duration>
      <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/1-1daf62a1-cf78-44e5-ae38-847c2c6035db.jpg"/>
    </item>
    <generator>media.ccc.de / RSS 0.3.3</generator>
    <itunes:category text="Technology"/>
    <itunes:image href="https://static.media.ccc.de/media/events/bobkonf/2024/logo.png"/>
    <itunes:owner>
      <itunes:name>CCC media team</itunes:name>
      <itunes:email>media@c3voc.de</itunes:email>
    </itunes:owner>
    <itunes:author>CCC media team</itunes:author>
    <itunes:explicit>No</itunes:explicit>
    <itunes:keywords>CCC Congress Hacking Security Netzpolitik</itunes:keywords>
    <itunes:subtitle>A wide variety of video material distributed by the CCC. All content is taken from cdn.media.ccc.de and media.ccc.de</itunes:subtitle>
    <itunes:summary>A wide variety of video material distributed by the Chaos Computer Club. This feed contains all events from bobkonf2024 as mp4</itunes:summary>
  </channel>
</rss>