ElixirConf EU 2024

2024

List of videos

PHP and Elixir?! - a Lightning Talk by Wojtek Mach | ElixirConf EU 2024

✨This lightning talk was recorded at ElixirConf EU 2024. If you're curious about our upcoming event, check https://codebeameurope.com where Wojtek is giving a keynote talk ✨ An Elixir developer. Ex Ruby developer. Ex PHP developer. Check what you can't do with Phoenix without php 👀 Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Lightning Talk: Update from the EEF - Alistair Woodman | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Highlights of ElixirConf EU 2024

✨Thank you for joining us this year ✨ Save the date for the next edition: 📆 15-16 May 2025 📍 Kraków (Poland) & Online Join the waiting list for access to the Very Early Bird pricing: https://elixirconf.eu

Watch
Keynote: Gang of None? Design Patterns in Elixir - José Valim | ElixirConf EU 2024

✨This keynote talk was recorded at ElixirConf EU 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ In this talk, José Valim explores the classical Gang of Four (Design Patterns) book and answer the question if they are applicable to Elixir programs or not. He also talks about objects, how we can understand and deconstruct them from Elixir’s perspective, and how such deconstruction impacts the design of large systems. Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Keynote: Ship it! A Roadmap for putting Nx into Production | Christopher Grainger ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ From better documentation to traditional machine learning to generative AI, the Nx ecosystem is changing where Elixir stands as a programming language. But for folks who aren’t working in machine learning, it may not be immediately obvious what it’s all for. And for those who are using other ML ecosystems, it may not be immediately obvious how Elixir’s ecosystem stacks up. This talk aims to help on both of those fronts. The Nx ecosystem (Livebook, Nx, Bumblebee, Axon, Explorer, Scholar) is production-ready. At Amplified, we’re using all of these tools to build B2B SaaS. In this talk, I’ll give a deep-dive introduction to the ecosystem, showing what you use the various libraries for and how to leverage them to solve real-world problems. Using examples from production systems, we’ll cover the pragmatic nitty-gritty as well as the immense opportunities that these tools open up, from the practicalities of deployment, observability, and performance to the possibilities of new features and operational efficiency. Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Keynote: Rethinking Serverless with FLAME - Chris McCord | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU 2024. If you're curious about our next event, check https://elixirconf.eu ✨ Imagine if you could auto scale by wrapping any existing app code in a function and have that block of code run in a temporary copy of the app. No extra complexity. No FaaS nonsense. Enter the FLAME pattern. Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Elixir at transport.data.gouv.fr (maps, proxies, and more) - Thibaut Barrère | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Abstract: I’ve been working on transport.data.gouv.fr for more than 3 years. The idea behind this talk is to show how versatile Elixir & the BEAM are, and how they helped us implement a wide array of interesting features more easily, at a lower ops cost too. We have a lot of stuff going on: maps with 650k points shown, real-time maps showing vehicles with 80+ sources (channels/presence), “business reverse caching proxy” to reduce the load of 3rd party servers, XML query generators with LiveView, on-demand tooling (again using LiveView), data analysis scripts with LiveBook, etc etc. We also have a strong maintenance process in place, and I want to share how good the maintenance story is. Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Queens, Reindeers, Sudoku and more with BEAM - Boris Okner | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Abstract: Constraint programming is a paradigm for solving combinatorial problems. CP solvers such as Google’s OR-Tools, IBM’s CPLEX, Gecode, and many others are adopted by the industry for decision-making on a huge range of problems, such as planning, scheduling, and optimization of business processes… Every major programming language has constraint programming tools, so why not have it in Elixir? In the book by Peter Van Roy and Seif Haridi, the authors suggest that the constraint programming paradigm can be efficiently implemented using a “maximally concurrent” model, which makes BEAM a great candidate for the implementation of CP solvers. The project that I’m going to talk about is Fixpoint. LiveBook demonstrates the current capabilities of the Fixpoint solver. Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Lightning Talk: Elixir v1.17 and Types - José Valim | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ A quick summary of new Elixir features and the type system.

Watch
Lightning Talk: SeqEx - Building a MIDI Sequencer with Elixir - Dino | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Let’s explore how we can leverage GenServer and LiveView, together with the midiex library in order to create a MIDI sequencer and control a MIDI-enabled synthesizer to make some sound 🎵 Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Lightning Talk: Jetenv in 5 Minutes - Dan Janowski | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Zero code runtime configuration: easy, fast, portable, typed, containers or not Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Ash: The Story of a Function by Zach Daniel | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Imperative code imposes artificial constraints. Once you see this in action, you can’t unsee it. This is one of the fundamental ideas behind Ash Framework. In this talk, we explore how a function evolves over time, and the kinds of issues that you face as you add behavior to your applications. In Phoenix, this most commonly presents as writing “contexts”, which contain the functions required for building your application and business logic. Ultimately, Phoenix contexts do not have opinions on how you structure your application, instead delegating responsibility for designing and organizing your application to the developer. This is where Ash comes in. Ash provides the structures for building, organizing and evolving your application over time to avoid the common pitfalls faced by developers every day. In this way, Ash acts as the missing domain layer for your Phoenix application (or any application). We’ll go over these structures and how they address the issues inherent in composing applications out of imperative code. Finally, we’ll end with an update on the status of the project, what’s new and what’s coming. We’ve got lots in store, and can’t wait for everyone to see it!

Watch
Kafka Migration at Scale - Bikram Chatterjee | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ In this talk, we’ll explore how the diverse and dynamic capabilities of the Elixir ecosystem effectively supported the migration of thousands of Kafka topics and clients from self-hosting to cloud at Helvetia on a large corporate scale. Over this year-long migration, we encountered various technical roadblocks due to the volume and complexity involved. However, we successfully overcame these challenges with Elixir to ensure a non-disruptive transition experience for our hundreds of applications processing billions of messages per day. We adopted several useful Elixir language features and patterns to build the required tooling to support this process: • Improving performance with concurrent design • Multiple data transformation and validation scripts • Directed dependency graphs • Excel reporting framework • Macros • Templating with EEx

Watch
The Elixir Security Roadmap by Michael Lubas | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Can a hacker exploit your Elixir application and cause a data breach? This is an important question for every organization using Elixir in production today. This talk will cover: The context of how Elixir fits into the overall cyber security strategy of an organization. How attackers approach Elixir applications, and the most important defenses that need to be in place. How to prioritize security work. The amount of material in cyber security can feel overwhelming. This talk will provide a detailed, prioritized list of how to allocate engineering time. Elixir is an excellent choice for writing secure applications. Learn how to take advantage of the solid foundation it provides to create secure systems.

Watch
Glific: Our Journey in adopting and working with Elixir - A. Negi, M. Shamoon | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ In our session, we'll share about our journey at Project Tech4Dev in building Glific using Elixir. Glific is an open-source, WhatsApp-based, two-way communication platform for non-profit organizations. It helps these organizations increase their reach and impact on the communities they serve. . Glific has split tech architecture, with the backend running on Elixir using Phoenix framework and the frontend on React. It is a multi-tenant application that simplifies maintenance and reduces costs. Glific development started during the pandemic when physical interaction with end-users was restricted and an alternate communication medium was needed. We chose Whatsapp due to it’s popularity in the Global South countries. Today, Glific is used by over 100 non-profits in India, with more than 100 concurrent instances running. We'll share more on how non-profit organizations are using Glific to have high-quality, relevant, and timely communication with their communities at a minimal cost. Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Let's write a Toy Language from Scratch in Elixir - Lucas Sifoni | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Without libraries, we’ll see how we can leverage Elixir specificities to easily tokenize, parse, print and interpret a toy language with a few recognizable features (variables, primitive types, closures). Adding OTP and Phoenix LiveView to the mix, it evolves towards a quirky stateful computation system with basic graphical editing of programs.

Watch
The Bookshelf: Engage Your Users with LiveView and Tailwind CSS by Meks McClure | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Abstract: When you create a new Phoenix project, it comes with a lot of tools that we get for free. One of those is Tailwind CSS. Someone is not so subtly suggesting that this is a great CSS framework to use specifically with Phoenix. But, what is Tailwind CSS? Why does it lend itself so well to working with Phoenix? How can you get started and make the most of the framework? Together we will tackle all of these questions by building a simple application that includes a table using only what we get for free. Then we will uncover how well Tailwind is suited for LiveView by incorporating some best practices around componentization. We will bring our application to the next level to improve the user experience using more advanced Tailwind properties including arbitrary values, custom variables, and plugins. Through this exercise you will develop a solid understanding about Tailwind and how to use it effectively with LiveView to create captivating user interfaces. Let's keep in touch! Follow us on: 💥BlueSky: https://bsky.app/profile/elixirconfeu.bsky.social 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync 💥 Twitter: https://twitter.com/ElixirConfEU

Watch
Building a Multiplayer Browser Game with LiveView - Gonçalo Tomás | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Abstract: Join us in building out a multiplayer browser game using Phoenix LiveView, where we’ll bring back a game genre that was played by millions of people in the 2000s! In this talk we’ll discover the interesting challenges of building and scaling a real-time strategy game and learn how we can breathe new life into a classic game by leveraging AI agents. We’ll also cover other components required to fully deploy the game, look into admin menus and consider techniques to discover cheaters. Reflecting on our implementation, we get a glimpse at the server backend of massively successful mobile games like Clash of Clans and Battle for the Galaxy. Let's keep in touch! Follow us on: 💥 BlueSky: https://bsky.app/profile/elixirconfeu.bsky.social 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync 💥 Twitter: https://twitter.com/ElixirConfEU

Watch
End to end Computer Vision in Elixir: Making it work in Production - Walid Salah| ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ The task was to replace a proprietary video recording platform with an elixir based solution that had to perform in some very harsh physical environment with unreliable power and bandwidth. Evercam chose to implement a Membrane based solution deployed using Nerves and leveraging Livebook and the emerging elixir machine learning & computer vision ecosystem. What we found was that it was relatively easy to put something together very quickly, but to actually make it work in production meant solving a lot of edge case problems. The resulting project, Ex_NVR has been made open source and is intended to be a kickstart for successful computer vision projects deployed on the edge

Watch
Exploring the Performance Characteristics of Nx - Benjamin Philip | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ The Nx project brings Elixir to the domain of AI & ML. It makes a very large promise: to leverage the BEAM in ML workflows, enabling us to run ML models concurrently, distributed over multiple nodes, as well as partitioned across several GPUs. Closer inspection reveals that Nx is walking a tightrope: its computations are powered by NIFs, whose scheduling is a tricky business, and GPUs, which support a very small number of parallel processes. This raises the question: how is Nx providing the high throughput that it boasts of? Nx answers this question with ""Servings"" and ""Batches"", ways to batch requests together to reduce and distribute the calls to the NIF and GPU. But how exactly does that work? What trade-offs are we making by batching requests? In this talk we will examine Nx's Servings, how it addresses the problem of scheduling, the trade-offs and the performance characteristics of its approach, as well as what are the other constraints when running an ML service.

Watch
Building the Future: Gen-AI Programming Synthesis with Elixir - Christopher Miller | ElixirConf EU

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Discover how Sector E(LLM) explored the landscape of programming synthesis in just 48 hours during SpawnFest. Our journey into integrating Gen-AI with Elixir and Phoenix LiveView culminated in an innovative application capable of generating and displaying compiled Elm apps live. From the initial brainstorm to navigating the intense 48-hour hackathon, I’ll share our journey of planning, building, and the breakthroughs we experienced. This talk will offer insights into our innovative approach to programming, the challenges we overcame, and the lessons learned in melding different technologies into a cohesive application. We will explore concepts including Basecamp’s Shape Up methodology, the potentials of Generative AI, the art of Prompt Engineering, and the application of CRC (Construct, Reduce, Convert) in Elixir. You’ll gain insights into practical, innovative approaches to software development.

Watch
ExStan: Elixir-Stan for Probabilistic Modeling - Shubham Gupta | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Dive into the fundamentals of probabilistic programming and Bayesian inference in this introductory session. The session will emphasize how Stan, a renowned tool for sophisticated statistical modeling, is seamlessly integrated with Elixir via the ExStan package. This integration is not just theoretical; participants will witness its practical application through a focused case study on predicting the 2022 Football World Cup outcomes. This real-world example will illuminate ExStan's capabilities in model fitting, rigorous testing, and thorough evaluation. Attendees will depart with a comprehensive understanding of ExStan's current functionalities, a preview of its promising future developments, and a curated list of resources for further exploration. This session is an opportunity to grasp the essentials of probabilistic programming and understand how it can be applied to solve complex problems in various domains using ExStan.

Watch
More Practical Applications of Credo by Matthew Whitworth | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ The base rules of Credo cover most areas, but how can we take lessons and ideas from other linters and code quality processes from elsewhere and apply them to Elixir to fill those gaps? This talk is primarily an overview and analysis of the current state of Elixir’s linting versus other languages (functional and non-functional), and typical issues seen in a production codebase but not yet caught by linters, finishing with some suggestions (recommendations?) to the community to where code quality processes (including Credo) could go next Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Visualising Pathogen Spread with LiveView - Kyle Oba | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Operation Outbreak is a game designed for students, simulating the spread of a virus using mobile Bluetooth. In simulation, students become “infected”, display symptoms, infect others, acquire protection, and may recover. With Phoenix we allow students to collaborate during the simulation, and collect and visualize simulated viral outbreak data. Students analyze the data from their viral outbreaks, learning how viruses spread, and how their actions play a part in the spread or containment of pathogens. In this talk you’ll learn about the role LiveView played in the iterative design process required to build highly customized tools for understanding complex data. LiveView’s abstractions over messaging enable rapid prototyping of new, previously inaccessible, ideas. I’ll share our project in support of Operation Outbreak and the Sabeti Lab, including how I introduced Elixir to the design team at Fathom Information Design and improved performance to support larger simulations. Let's keep in touch! Follow us on: 💥 Twitter: https://twitter.com/ElixirConfEU 💥 Facebook: https://www.facebook.com/CodeSyncGlobal 💥 LinkedIn: https://www.linkedin.com/company/code-sync 💥 Mastodon: https://genserver.social/codesync

Watch
Server-less Making Sense - Markus Kuhnt & Alexey Nikitin | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Server-less has become mainstream, and all relevant cloud platforms offer corresponding runtime environments. Elixir or Erlang can only be used in a roundabout way or lose their charm because they require their own platform. Starfish.team provides a payment processing platform called Hellgate. Our service can be complemented with extension points to map customer-specific use cases. We have provided server-less / function as a service as an ideal starting point for these extensions. In this talk, we present an approach for executing customised extensions on the same runtime as our core system. This requires elementary security mechanisms, which we achieve by analysing the code of the functions. In contrast to conventional white listing approaches, we can execute much more specific code (in the sense of a DSL) and prevent malicious calls.

Watch
Migrating to Elixir made easy with Ash by Barnabas Jovanovics | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Our journey into Elixir started last year. We chose Ash as an integral part of our stack. The talk will showcase the features of Ash we used to create our Graphql Backend, as well as the escape hatches we used to get all we needed done. It should also highlight what we learned about Ash along the way and the more advanced features like writing your own extensions to centralize common functionality.

Watch
The Magic of Internal Shrinking for Property Based Testing - Dennis Palmer | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Shrinking is the real magic of property-based testing — producing a small, human-readable test case whenever a larger random case causes a test to fail. However, it can be hard to do correctly. Traditional approaches to shrinking require the shrinking logic to know specific details about the data type being simplified. When generated values are passed through a mapping function or combined in certain ways, it can break a shrinker written with the generated data type in mind. Internal shrinking is based on the idea that shrinking inputs produces simplified outputs. When the underlying source of randomness is reduced it causes the generators to produce simplified test cases automatically. The final reduced test case is constructed as if the generator had been lucky and produced a small, readable test case by chance. We will explore the Decorum library, an Elixir property-based testing library with shrinking that just works.

Watch
A Comparative Dive into Elixir's Oban and Broadway - Jakub Hajto | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Delve into the mechanics of Oban's persistent job processing, exploring how it excels in managing long-running, stateful tasks. Contrast this with Broadway's approach, designed to seamlessly handle job streams from external sources, emphasizing parallelism and scalability. Through a technical lens, we'll explore use cases, performance considerations, and deployment strategies for both libraries. By the end of the session, you'll possess a nuanced understanding of when to leverage Oban's robust persistence and when to tap into Broadway's prowess in handling external job queues.

Watch
Lambda - An Open Source Backend for Videogames built in Elixir - Manuel Camejo & Tomás Arjovsky

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ "LambdaClass is building a scalable, fault-tolerant open source game backend using Elixir and Rust. With over a decade of experience building backend systems, we set out to compete in the gaming market. We hoped there would be a cost-efficient and reliable backend solution available to build upon, but after a quick glance at the market, we knew we had to build our own. Although we still have ways to go, we have a working solution that we’re already building games upon. And to help others on the same journey, we decided to not only open-source the backend but all of the game code and game assets, from 3D models to music. The particular challenge we had to solve was building a solution where a centralized server, which holds the source of truth for the game state, exchanges messages with a large amount of clients, and updates its state in real time. We’ll go through our many iterations, explain our decision-making process and show how our game improved as its backend matured."

Watch
Debugging Memory Issues in Elixir: Navigating the BEAM Memory Model - A. Frolov | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Elixir operates on the BEAM Virtual Machine, which boasts a distinctive memory model designed to alleviate common memory-related pitfalls. However, when memory issues arise within an application, debugging becomes complex without a deep comprehension of the BEAM memory model. Rather than delving into intricate BEAM memory management implementations, the focus is on the pragmatic side of memory issue resolution. We'll explore scenarios where BEAM makes full copies of data versus optimizing it, uncovering the unexpected effects that can ensue. A foundational understanding of application memory management principles (e.g., allocation, deallocation, and garbage collection) is recommended to derive the utmost benefit from this session. If you lack direct experience working with application memory or solving memory issues, fear not; real-life examples will elucidate the main concepts, and I will guide you through the tools employed to identify and debug such challenges.

Watch
LiveView: Start-ups' New Secret Weapon by Daniel Caixinha | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ What is it that makes some start-ups fail and others flourish? There are multiple variables when answering this question, but a key ingredient is always speed – of delivering, of adapting and of finding product-market fit. Elixir has been focused on productivity from the start, from great tooling to comprehensive documentation. Currently with LiveView, this can now be extended to the full-stack, truly allowing the merge of front and back-end developer teams. Sona is a ~2 year-old start-up that uses LiveView from its dawn. After joining, I got to see my first BIG LiveView application. While daunting at first, the whole LiveView programming model, tooling, and full-stack ownership allowed me to be productive from the outset. In this talk we'll see how LiveView enables us to build complex features with great UX, and in a shorter amount of time than traditional choices. Lastly, we'll explore some tips on how a new-joiner can navigate a large LiveView project.

Watch
Harmonizing Information: Using Elixir for Data Sonification - Carlos Rodrigues | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Explore the symphony of possibilities as we delve into the realm of data sonification using Elixir. This talk will guide you through the process of transforming raw data into an audio experience, using the insightful statistics from Lisbon's open data. Uncover the art and science behind turning data into sound and discover how this approach can offer new insights and perspectives in data analysis.

Watch
Retrofitting a Car and Running it with Elixir - Marc Lainez & Thibault Poncelet | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Extending a cars' lifespan is not an easy feat. We need to ask ourselves what makes people enjoy a car today and what technology it should include. This talk shares the current state of our journey in retrofitting a car and building a new and open vehicle control system (OVCS), redesigning the engine controller and infotainment systems with off the shelve components running with Elixir. We will explain how we reverse-engineered the proprietary CAN bus messages from the car, how we created our own raspberry pi CAN bus hats and how we used nerves to create firmware for the new electric engine controller and infotainment systems.

Watch
Nearest Neighbors, Distant Words: Unleashing the Power of ANN in LLMs | Milad Rastian & Mikk Rätsep

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ You've mastered the ""Hello World"" of Large Language Models (LLMs) and are eager to expand your skills to build a real application. However, you quickly realize that basic knowledge is not enough. This journey involves numerous steps, including selecting the right model, data gathering, fine-tuning, retrieval methods and embeddings that enhance the performance and quality of your application. In this talk, we will focus on a retrieval method called approximate nearest neighbors (ANN): what they are, how to use them, and how to integrate them with other LLMs like OpenAI and LLaMA2. The goal is to improve the quality of responses while minimizing costs and overcome the techincal limitation that LLM have. This presentation will be conducted in a Livebook notebook.

Watch
Building API Clients with Req - Wojtek Mach | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Req is a batteries-included HTTP client for Elixir. One of the most common use case for an HTTP client is integrating 3rd party APIs and this talk will show how Req fits in that role. We will go from a proof-of-concept to a production-ready client with a focus on extensibility, performance, resilience, and observability. We will also discuss Req features for testing.

Watch
Ectoing around: Speeding up Queries with Ecto and Postgres - Filipe Fróes | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ A deep-dive into some of the Postgres internals and features focusing on speeding up queries. Using Ecto for practical examples and other visualizations, the aim is to provide a clear understanding of how to analyze, identify issues and finally optimize your queries. We'll also dabble into the details of how indexes lookups, lateral joins and other features of Postgres work to help fixate the knowledge.

Watch
LiveView Native by Brian Cardarella | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ LiveView Native extends the successful LiveView design pattern to every device with a screen. Learn how to build your first LiveView Native application and learn about how LVN built applications can be built in 40% less time. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod exercitation.

Watch
Data Labelling is Good for You - Maciej Gryka | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ In the age of AI, data is crucial. In this talk, I will try to convince you that creating your own data labeling pipeline is a critical part of using AI in your business and that Elixir is a great tool for it. While it's unlikely you will produce a dataset of the size used by tech giants, I will argue that small data specific to your use-case is extremely valuable and that the process of labeling is valuable in itself. I will walk through how we did this internally, what challenges we faced, how we solved them and what we learned in the process.

Watch
Let’s Go on an Adventure! - Nicholas Scheurich | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ Join me as we bravely set forth to learn how our everyday web development toolset can power a collaborative, multi-modal video game. This session will be a journey of discovery as we explore using Elixir, OTP, and Phoenix to power an adventure game in which multiple players work together to create an exciting interactive experience. After a brief overview of our game design goals, we’ll see how common Elixir libraries and paradigms elegantly solve a number of game development challenges—and reveal interesting new opportunities! We’ll cover leveraging LiveView to power clever small-screen interfaces, see how integrating Phoenix Channels with an off-the-shelf game engine can bring a world to life with ease, and more—with plenty of practical examples and demos along the way. You’ll walk away excited to embark upon your own Elixir game development adventure!

Watch
Testing OTP - Aaron Cruz | ElixirConf EU 2024

✨This talk was recorded at ElixirConf EU in April 2024. If you're curious about our upcoming event, check https://elixirconf.eu ✨ For the last two years, I've been working with one of the larger energy companies in Germany. As more renewable energy becomes available and the energy topology grows, it becomes harder to track in the enormous energy network where there might be too much or too little energy flowing. We are building an Elixir system to find these problem spots and stop them before they happen. We've been able to work inside a monorepo for years because OTP features have made it incredibly simple to model our complex infrastructure in Supervision Trees and Processes. Testing has been, hands down, the most complex part of using Processes and OTP in Elixir. Whether it's a polling server, an in-memory repo, or trying to do mocks the right way, there are many gotchas and head-scratchers along the way. If you've ever tried to test anything Process-related and scratched your head thinking ""WAT?"", you will find your answers in this talk.

Watch