{"acronym":"realraum","aspect_ratio":"16:9","updated_at":"2026-04-04T05:45:03.069+02:00","title":"realraum","schedule_url":"","slug":"regional/realraum","event_last_released_at":"2026-03-22T00:00:00.000+01:00","link":"https://realraum.at","description":"","webgen_location":"regional/realraum","logo_url":"https://static.media.ccc.de/media/contributors/realraum/realraum-logo-red.svg","images_url":"https://static.media.ccc.de/media/contributors/realraum","recordings_url":"https://cdn.media.ccc.de/contributors/realraum","url":"https://api.media.ccc.de/public/conferences/realraum","events":[{"guid":"ed6dd153-a6dd-44cd-8718-e5e929565745","title":"Architecting Real Typst Templates","subtitle":"","slug":"realraum-3-architecting-real-typst-templates","link":"https://c3voc.de","description":"Typst templates are software --- not documents. And like all software, they collapse under their own weight.  This talk covers the lifecycle of a Typst template, from a small snippet over to a function, and finally a full package with public and private APIs, complexity layers, separation of concerns and the final, one rule lib.typ must follow. We use a case study of a template as an example, walking through the complexities of making a full package.  You'll leave with an idea of how to write a package that scales over time instead of collapsing.\r\n\r\nSlides: https://www.lukechriswalker.at/blogs/69bf1116b6efd63b5d270014\r\n\r\nhttps://creativecommons.org/licenses/by-sa/4.0/","original_language":"eng","persons":["Tiefseetauchner"],"tags":["3","2026","realraum","W2R2","realraum-eng","realraum","r3","r3talks","graz"],"view_count":313,"promoted":false,"date":"2026-03-21T16:00:00.000+01:00","release_date":"2026-03-21T00:00:00.000+01:00","updated_at":"2026-04-04T05:45:03.067+02:00","length":1994,"duration":1994,"thumb_url":"https://static.media.ccc.de/media/contributors/realraum/3-ed6dd153-a6dd-44cd-8718-e5e929565745.jpg","poster_url":"https://static.media.ccc.de/media/contributors/realraum/3-ed6dd153-a6dd-44cd-8718-e5e929565745_preview.jpg","timeline_url":"https://static.media.ccc.de/media/contributors/realraum/3-ed6dd153-a6dd-44cd-8718-e5e929565745.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/contributors/realraum/3-ed6dd153-a6dd-44cd-8718-e5e929565745.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/realraum-3-architecting-real-typst-templates","url":"https://api.media.ccc.de/public/events/ed6dd153-a6dd-44cd-8718-e5e929565745","conference_title":"realraum","conference_url":"https://api.media.ccc.de/public/conferences/realraum","related":[]},{"guid":"6b097c7a-c3cf-44da-bb53-aaa103deff9e","title":"DIY Revival of an API 2000 Tandem Mass Spectrometer","subtitle":"","slug":"realraum-56370-diy-revival-of-an-api-200","link":"https://gry.sh/posts/dgms2025/","description":"\r\n\r\nEver wondered if you could bring an old mass spectrometer back to life? Well, that’s exactly what this project was all about! With a mix of DIY repairs, scavenged parts, and a whole lot of learning, the API2000 tandem mass spectrometer got a second chance.\r\n\r\nFrom fixing a corroded interface heater to tracking down the right software (hello, Windows XP nostalgia!), every step was a challenge. But in the end, the first tests were a success – including injecting coffee to confirm the presence of caffeine (because, of course, coffee had to be involved).\r\n\r\nThe journey doesn’t stop here. Next steps? Diving into deeper mathematical concepts, experimenting with blood analysis, and pushing the API2000 to its limits.","original_language":"eng","persons":["Sally"],"tags":["56370","2025","realraum","LoTHR","realraum-eng"],"view_count":341,"promoted":false,"date":"2025-04-04T21:00:00.000+02:00","release_date":"2025-09-05T00:00:00.000+02:00","updated_at":"2026-03-23T23:15:05.963+01:00","length":7663,"duration":7663,"thumb_url":"https://static.media.ccc.de/media/contributors/realraum/56370-6b097c7a-c3cf-44da-bb53-aaa103deff9e.jpg","poster_url":"https://static.media.ccc.de/media/contributors/realraum/56370-6b097c7a-c3cf-44da-bb53-aaa103deff9e_preview.jpg","timeline_url":"https://static.media.ccc.de/media/contributors/realraum/56370-6b097c7a-c3cf-44da-bb53-aaa103deff9e.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/contributors/realraum/56370-6b097c7a-c3cf-44da-bb53-aaa103deff9e.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/realraum-56370-diy-revival-of-an-api-200","url":"https://api.media.ccc.de/public/events/6b097c7a-c3cf-44da-bb53-aaa103deff9e","conference_title":"realraum","conference_url":"https://api.media.ccc.de/public/conferences/realraum","related":[]},{"guid":"4bff7029-be6c-465c-99bb-8c2326c33ab8","title":"JIT, WASM and scary noises","subtitle":null,"slug":"realraum-2-reverse-engineering-wasm","link":"https://c3voc.de","description":"At 39C3 I did a talk about how we reverse engineered a custom DSP from a 90s digital synth, with the the goal of emulating it. To make it performant, and actually run it in real time, we had to resort to JIT compilation of the DSP bytecode. While we built the original emulator in C++, I asked myself how difficult it could be to run it on a web browser as well. Emscripten did wonders translating the original emulator core from C++ to WebAssembly, but the main blocker remained running the JIT engine, since we are technically already inside the JS JIT engine. This talk will go into detail explaining how WebAssembly works, to then build a toy JIT with it for the Brainfuck language. Then, I'll explain how we managed to use this same technology to port a C++ synth emulator, that uses JIT interally, to run at full speed inside a browser.\n\nhttps://creativecommons.org/licenses/by-sa/4.0/","original_language":"eng","persons":["giulioz"],"tags":["2","2026","realraum","TU","realraum-eng","realraum","r3","r3talks","graz"],"view_count":120,"promoted":false,"date":"2026-03-21T14:10:00.000+01:00","release_date":"2026-03-22T00:00:00.000+01:00","updated_at":"2026-04-03T17:15:05.380+02:00","length":2356,"duration":2356,"thumb_url":"https://static.media.ccc.de/media/contributors/realraum/2-4bff7029-be6c-465c-99bb-8c2326c33ab8.jpg","poster_url":"https://static.media.ccc.de/media/contributors/realraum/2-4bff7029-be6c-465c-99bb-8c2326c33ab8_preview.jpg","timeline_url":"https://static.media.ccc.de/media/contributors/realraum/2-4bff7029-be6c-465c-99bb-8c2326c33ab8.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/contributors/realraum/2-4bff7029-be6c-465c-99bb-8c2326c33ab8.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/realraum-2-reverse-engineering-wasm","url":"https://api.media.ccc.de/public/events/4bff7029-be6c-465c-99bb-8c2326c33ab8","conference_title":"realraum","conference_url":"https://api.media.ccc.de/public/conferences/realraum","related":[]},{"guid":"3dfa1cff-44d5-43c9-ac1c-9d72a0beaba7","title":"Kalman Filter und Sensor Fusion","subtitle":null,"slug":"realraum-56371-kalman-filter-und-sensor","link":"https://c3voc.de","description":"Ein kurzer Vortrag, der die Vor- und Nachteile einzelner Sensoren aufzeigt, was die Entwicklung der Sensor Fusion motivierte. Es wird ein Überblick geschaffen, wie man vom einfachen Complementary Filter zum Kalman Filter kommt und wie man diesen adaptiert um nichtlineare Zustände zu berechnen. Diese Erweiterung ist als Extended Kalman Filter bekannt, die in den meisten Anwendung der Navigation und Orientierungsbestimmungen von Flugzeugen zum Einsatz kommt.\n\nhttps://creativecommons.org/licenses/by-sa/4.0/","original_language":"deu","persons":["Christian Hartler"],"tags":["56371","2025","realraum","LoTHR","realraum-deu","realraum","r3","r3talks","graz","Day 3"],"view_count":348,"promoted":false,"date":"2025-09-25T19:15:00.000+02:00","release_date":"2025-09-26T00:00:00.000+02:00","updated_at":"2026-04-02T14:30:08.249+02:00","length":1867,"duration":1867,"thumb_url":"https://static.media.ccc.de/media/contributors/realraum/56371-3dfa1cff-44d5-43c9-ac1c-9d72a0beaba7.jpg","poster_url":"https://static.media.ccc.de/media/contributors/realraum/56371-3dfa1cff-44d5-43c9-ac1c-9d72a0beaba7_preview.jpg","timeline_url":"https://static.media.ccc.de/media/contributors/realraum/56371-3dfa1cff-44d5-43c9-ac1c-9d72a0beaba7.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/contributors/realraum/56371-3dfa1cff-44d5-43c9-ac1c-9d72a0beaba7.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/realraum-56371-kalman-filter-und-sensor","url":"https://api.media.ccc.de/public/events/3dfa1cff-44d5-43c9-ac1c-9d72a0beaba7","conference_title":"realraum","conference_url":"https://api.media.ccc.de/public/conferences/realraum","related":[]},{"guid":"2b135a57-c750-5084-9d3b-28391b586e87","title":"Variational Autoencorders: the cognitive scientist's favorite deep learning tool","subtitle":null,"slug":"realraum-variational-autoencorders-the-cognitive-scientist-s-favorite-deep-learning-tool","link":"https://cfp.realraum.at/realraum-october/talk/LHH3M9/","description":"Variational Autoencoders (VAEs) were first introduced as early concept learners in the vision domain. Since then, they have become a staple tool in generative modeling, representation learning, and unsupervised learning more broadly. Their use as analogues of human cognition is one of the first steps towards the understanding of more complex cognitive models leading up to models of human brain function and behavior. As part of a series of talks on cognitive science and deep learning at the realraum in Graz, this presentation will focus on the role of VAEs in cognitive science research.\n\nTopics:\n - Supervised vs. unsupervised learning\n - Deep Learning basics: classifiers and backpropagation\n - Autoencoders: architecture, training, embedding, and generative modeling\n - Variational Autoencoders: statistical latent space, and the reparametrization trick\n - Training VAEs: loss functions, optimization, and the KL divergence\n - Concept learning: VAEs in cognitive science\n\nhttps://creativecommons.org/licenses/by-sa/4.0/","original_language":"eng","persons":["Xiutik"],"tags":["1","2025","realraum","LoTHR","LoTHR","realraum-eng","realraum","r3","r3talks","graz","Day 1"],"view_count":212,"promoted":false,"date":"2025-10-24T19:00:00.000+02:00","release_date":"2025-10-25T00:00:00.000+02:00","updated_at":"2026-04-03T23:00:05.017+02:00","length":2516,"duration":2516,"thumb_url":"https://static.media.ccc.de/media/contributors/realraum/1-2b135a57-c750-5084-9d3b-28391b586e87.jpg","poster_url":"https://static.media.ccc.de/media/contributors/realraum/1-2b135a57-c750-5084-9d3b-28391b586e87_preview.jpg","timeline_url":"https://static.media.ccc.de/media/contributors/realraum/1-2b135a57-c750-5084-9d3b-28391b586e87.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/contributors/realraum/1-2b135a57-c750-5084-9d3b-28391b586e87.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/realraum-variational-autoencorders-the-cognitive-scientist-s-favorite-deep-learning-tool","url":"https://api.media.ccc.de/public/events/2b135a57-c750-5084-9d3b-28391b586e87","conference_title":"realraum","conference_url":"https://api.media.ccc.de/public/conferences/realraum","related":[]}]}