ElixirConf EU 2022

2022

List of videos

Keynote: Celebrating the 10 Years of Elixir | José Valim | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Celebrating the 10 Years of Elixir | José Valim - Creator of the Elixir programming language ABSTRACT Elixir has just become 10 years old and I would love to celebrate its anniversary by discussing how I would personally like to see the Elixir ecosystem evolve, as an effort to motivate the community as a whole to bring their own ideas and plans forward. • Timecodes: 00:00 - 02:53 - Introduction 02:54 - 12:53 - Why would we want Static types? 12:54 - 17:41 - To type or not to type? 17:42 - 19:14 - Rust's compiler + type system 19:15 - 22:22 - Claim: Types lead to fewer tests 22:23 - 29:27 - Claim: Code coverage catches all bugs that types do 29:28 - 33:40 - Types as restrictions 33:41 - 45:31 - Set-theoretic types 45:32 - 49:03 - Developer and learning experience types 49:04 - 52:36 - Machine learning • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Code & Homicide: What Software Devs (..) from Offender Profiling | Crux Conception & Adam Tornhill

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Code & Homicide: What Software Developers Can Learn from Offender Profiling | Crux Conception & Adam Tornhill - Adjunct Professor/Criminal Profiler & Founder and CTO of CodeScene ABSTRACT In this keynote, Homicide Detective and Offender Profiler Crux Conception teams up with Adam Tornhill to investigate novel ways of analyzing source code and organizations. Starting from the perspective of real-world crime scenes, we learn about behavioral patterns and their consequences. We then transfer those learnings to a software context to investigate the traces we developers leave behind as we evolve our code. We explore how these techniques let us prioritize refactoring based on impact, detect high-risk areas of code, as well as visualizing the organizational side of our software architecture. The techniques are pragmatic and illustrated on real-world codebases like Elixir’s Phoenix framework. Join in – your code deserves it! • Timecodes: 00:00 - 07:56 - Intro 07:58 - 09:26 - Code at Scale: Why it's a hard problem? 09:27 - 11:44 - Quantifying technical dept via static analysis 11:45 - 15:27 - What is criminal profiling? 15:28 - 18:10 - Code Health: Beyond a single metric 18:11 - 20:06 - Visualizing code health of an Elixir Codebase 20:07 - 23:25 - Examples: A gallery of code 23:26 - 26:13 - What is criminal profiling? Continue 26:14 - 34:05 - Geographical Profiling 34:06 - 38:18 - Geographical offender profiling 38:19 - 43:07 - Refactoring recommendation 43:08 - 43:53 - What is legacy code? 34:54 - 55:36 - Case studies • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Keynote: Sonic Pi: Past, Present & Future | Sam Aaron | Code BEAM America 2021

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Learning Elixir and OTP through LiveView | Cristine Guadelupe - co-host on the Brazilian podcast Elixir em Foco ABSTRACT Sonic Pi is an open-source music creation and performance tool. It was initially developed as a postdoc research project to help introduce and teach programming concepts in schools but has since grown into a powerful musical instrument used by live-coding DJs in nightclubs and music festivals. In this talk we’ll explore some of the key technical innovations that power Sonic Pi such as deterministic randomisation and its concurrency model which supports live-hotswapping of code and the precise manipulation of time. We’ll examine how functional programming techniques have both been a major influence and are a critical part of the future - from its roots in Clojure to its future on the BEAM. Expect plenty of live coding, beats, basslines and synth riffs and to leave the talk inspired to use your programming skills to become the DJ of the future. • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Elixir conference near you! See what's coming up at: https://www.elixirconf.eu/ • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw See what's coming up at: https://codesync.global

Watch
ElixirConf EU 2022 Highlights | Elixir 10 year anniversary

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Celebrating the 10 Years of Elixir together with the Elixir community. • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Building a Block Based Editor in Phoenix LiveView | Nikola Begedin | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Building a Block Based Editor in Phoenix LiveView | Nikola Begedin - Elixir enthusiast ABSTRACT The block-based, or possibly better known as Notion-style editor is currently one of the more popular approaches in building WYSWYG editors. It’s powerful, but also strictly structured, which makes it more predictable. This is an overview of what it takes to build something similar, in Phoenix LiveView. Talk objectives: Provide an overview of how a block-style editor is structured, and what the problems and solutions are when it’s built in Phoenix LiveView. Target audience: Anyone interested in Phoenix LiveView, people who would like to build a blog site in Phoenix, people with some .js experience. • Timecodes: 00:00 - 04:10 - Intro 06:13 - 05:26 - Demo 11:34 - 12:50 - Problem 1 - Content Editable + Attempts 16:19 - 17:54 - Problem 2 - Score Creep 20:48 - 23:25 - Problem 3 - Polish 23:25 - 26:50 - Problem 4 - Dev Story 28:38 - 28:44 - Problem 5 - Solved 33:42 - 33:39 - Problem 6 - Release & Usage 37:22 - 34:57 - QnA • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Everything about DNS you never dared to ask! | Ole Michaelis | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Everything about DNS you never dared to ask! | Ole Michaelis - Full Stackoverflow Developer at DNSimple ABSTRACT DNS does not need you, but you need DNS! The Domain Name System (DNS), almost 40 years old, is, still today, one of the pillars of the modern Internet. Almost everything you do from deploying and scaling your app to reading twitter touches it. Yet, it’s a black box for many of us. This talk covers the basics from authoritative name servers to resolvers, from ICANN to the IETF we will look at the broader view and zoom into the exciting details. You will also learn how to move your domain between different providers without downtime and how to utilize DNS to scale and distribute your app • Timecodes: 00:00 - 04:25 - Extensible Provisioning Protocol 04:26 - 06:06 - Top Level Domain 06:07 - 09:25 - Internet Corporation for Assigned Names & Numbers 09:26 - 15:15 - Transfer a Domain 15:16 - 20:13 - IANN DNS Root Servers • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Comparing the Actor model & CSP concurrency with Elixir & Clojure | Xiang Ji | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Comparing the Actor model & CSP concurrency with Elixir & Clojure | Xiang Ji - Senior Backend Engineer @ Remote ABSTRACT One big selling point of the BEAM VM is its from-the-ground-up implementation of the Actor model. CSP, another concurrency paradigm, has gained a lot of traction via Go, while also being embraced by Clojure. There is shared heritage between Elixir & Clojure, as well as between Actor model & CSP. However, radical differences between BEAM and JVM inevitably lead to intriguing divergences. You’ll gain a better understanding of these paradigms, and (hopefully) a bit more appreciation of what makes BEAM unique. Talk objectives: Better understanding of the Actor model Better understanding of unique features of the BEAM VM (e.g. process memory space isolation, preemptive scheduling, soft real-time, independent generational garbage collection) Better understanding of CSP, of how concurrency challenges are approached in languages such as Go and Clojure. Better understanding of the similarities and differences between Elixir and Clojure. Better understanding of the strengths and weaknesses of the BEAM VM compared with other runtimes such as the JVM. Target audience: People who could benefit from more knowledge of the BEAM VM, with which they can become better Elixir/Erlang developers. People who want to learn more about the characteristics of and differences between concurrency paradigms. People who are curious about Go’s/Clojure’s approach to concurrency. People who are curious about the contrast between Elixir and Clojure, the BEAM VM and the JVM. • Timecodes: 00:00 - 04:15 - Intro 04:16 - 10:32 - Demo 10:33 - 14:14 - Problem 1 - Content Editable + Attempts 14:15 - 23:44 - Problem 2 - Score Creep 23:45 - 28:51 - Problem 3 - Polish 28:52 - 34:20 - Problem 4 - Dev Story • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Get Your CRUD Together! | Andrew Ek | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Get Your CRUD Together! | Andrew Ek - Co-founder of Arid Software ABSTRACT Most web applications, at their heart, are CRUD (Create / Read / Update / Destroy) applications wrapped around a database with some business logic mixed in. In a Ruby on Rails application, for instance, ActiveRecord provides us with a pre-built set of functions for working with our records. In Phoenix applications, we have Ecto, but it’s much less opinionated, and developers are left to their own devices. In this talk we present some opinions on how to organize these operations using Boundaries, Repos, and Queries. Talk objectives: Discuss limitations of “default” approach (a context + relying on the base application repo + lots of Ecto) Propose an alternate approach with a dedicated Repo (abstracting Ecto), Queries, and a Boundary Show how this approach can also work to provide a consistent enough interface with external services (e.g. a REST API). Target audience: This talk will be most useful to developers who have enough experience with CRUD applications that they have run across some of the pain points I discuss. • Timecodes: 00:00 - 05:45 - Intro 05:46 - 10:02 - Motivations 10:03 - 15:22 - The Data Access Layer 15:23 - 18:50 - Patterns I Like 18:51 - 25:16 - Compasable Queries 25:17 - 40:57 - The GenericRepo • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
It's A Livebook | Adam Lancaster | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ It's A Livebook | Adam Lancaster - Elixir Core Contributor, Software Engineer at Duffel ABSTRACT Livebook is a web app for writing interactive and collaborative notebooks. It gives you superpowers. We have been using them at Duffel to explore external APIs and it’s been fantastic. I want to demo some of the features that Livebook offers and explain how it can help you speed up your workflow and win. Talk objectives: I want everyone to leave knowing more about what Livebook is and how they can use it in their workplaces. • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Observable Elixir | Bernardo Amorim | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Observable Elixir | Bernardo Amorim - Author of typed_ecto_schema & Software Engineer @ Slab ABSTRACT Either because things went wrong or because you just want to keep improving your system, you need to be able to understand it. An observable system is one that you can infer its internal state by only using its outputs. Join me while we go through my journey of making an Elixir system observable. Talk Objectives Understand the high-level view of the “Three Pillars of Observability” (Logs, Metrics and Traces) Understand why `:telemetry` is such an amazing piece of the BEAM ecosystem Understand the value of structured logging and how to implement it Know what metrics are and why they are more suited for analyzing trends and storing data for longer than logs Know how to setup PromEx as an easy way to have prometheus metrics Know what OpenTelemetry is and the current state of OpenTelemetry for the BEAM Target Audience Intermediate Elixir developers that are running Elixir in production • Timecodes: 00:00 - 05:46 - Agenda + What is Observability 05:47 - 18:12 - Event Logs 18:13 - 31:20 - Metrics 31:21 - 39:01 - Traces • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Why Is My LiveView Slow and What Can I Do About It | De Wet Blomerus | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Why Is My LiveView Slow and What Can I Do About It | De Wet Blomerus - Senior Software Engineer at SalesLoft ABSTRACT LiveView comes out the gate blazing-fast. But if you run into performance issues, the process for diagnosing and tuning it to be snappy again is a bit different than traditional web applications. Come learn how. Talk objectives: Give you the tools you need to diagnose and performance tune your LiveView. Target audience: Anyone that works on LiveView and is not an Elixir performance expert. • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Porting a Big Rails App to Elixir in Two Months | Miguel Michelson | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Porting a Big Rails App to Elixir in Two Months | Miguel Michelson - Chaskiq Platform and Dante-Editor Creator ABSTRACT As a way of learning Elixir, I’ve ported the 3-year rails development of my open-source platform. This talk will present the steps on how to do it. And what aspects to consider when doing it. Talk objectives: Present some aspects and tips when entering the elixir world when coming from rails land. I will show how nice Elixir is and how rails devs could overcome their fears to let ActiveRecord and their awesome gems go. Target audience: Those rails devs who are not sure to migrate or enter Elixir Elixir starters • Timecodes: 00:00 - 10:14 - Intro 10:15 - 15:00 - Gems/ deps 15:01 - 29:31 - How to Start 29:32 - 36:40 - API: Graphal 36:41 - 48:02 - ActiveStorage • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Introducing LiveData: LiveView for JSON endpoints | Hans Elias Josephsen | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Introducing LiveData: LiveView for JSON endpoints | Hans Elias Josephsen - Rustler Author, Lumen Core Team Member ABSTRACT LiveView has provided a new way of making interactive UIs with Phoenix. However, it also has its limits. You can only work with HTML-based user interfaces in the browser. LiveData attempts to generalize the ideas behind LiveView to work with JSON, which has a wide range of uses: * Easy integration with Javascript apps * LiveView-like development of mobile apps * Redux pattern over the network This talk will give an introduction to the tech behind LiveData, before diving into some potential applications. Talk objectives: Announce and provide an introduction to the LiveData library I have been working on for a while. Target audience: Anyone with an interest in Phoenix/LiveView, and how it can be generalized to work with JSON data. • Timecodes: 00:00 - 02:18 - Intro 02:19 - 23:02 - Diffing Engine + Demo #1 23:03 - 27:19 - Demo #2 LiveData + DSL + Native Mobile App 27:20 - 34:09 - Future Work • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
A Blueprint for Intuitive Internal Elixir Ecosystems | Ryan Young | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ A Blueprint for Intuitive Internal Elixir Ecosystems | Ryan Young - Director of Engineering at theScore • ABSTRACT Wouldn’t it be great if you could use the same familiar mix commands to create, publish, and consume libraries and documentation privately within your company as you do when working on personal projects? In this talk, I’ll demonstrate how self-hosting your own package repository, documentation, and livebook instance can create an intuitive internal elixir ecosystem your engineers will feel right at home using. Talk objectives: I hope attendees can learn that they can host their own package repository, ExDocs documentation site, and livebook service internally, and create custom mix tasks to handle all the necessary internal boilerplate. And that by stitching together these excellent tools they can improve the way engineers discover and share elixir code inside their company. Target audience: Engineers of all levels looking to improve the internal elixir tooling at their company. • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Building Elixir Apps for Global Audiences or an Audience of One | Kip Cole | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Building Elixir Applications for Global Audiences or an Audience of One | Kip Cole - Author of ex_cldr and ex_unicode Elixir libraries ABSTRACT Localising applications in Elixir for global audiences - or just an audience of one - doesn’t have to be difficult. In this session, we’ll define some design patterns and workflows using common Elixir libraries to build a simple e-commerce application showing how localisation can improve user experience and deliver better audience engagement. Talk objectives: Show that building localised applications for global audiences - or just an audience of one - can be as easy as building non-localised applications. Demonstrate these techniques and tools by building a simple e-commerce system during the session. Illustrate simple design patterns and workflows to make localisation simple and fun. Target audience: Developers looking to deliver improved user experience, who recognise that respecting users preferences (like language, formats, …) improves audience engagement and delivers better outcomes. • Timecodes: 00:00 - 04:13 - Intro 04:14 - 06:57 - What is Localisation and why Localise? 06:57 - 12:50 - Identifying the Users Locale and Preferences 12:51 - 14:02 - What does a Language Tag Tell Us? 14:03 - 23:06 - A note about Countries, Territories and Regions 23:07 - 25:46 - Introducing CLDR 25:47 - 39:15 - Localising Basic Data Types 39:16 - 43:08 - In Summary • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Exploring Elixir Project Re compilation | Anton Satin | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Exploring Elixir Project Re compilation | Anton Satin - Software Developer AT Mindvalley ABSTRACT When you make Elixir compiler happy, it rewards you with a better developer experience, faster build times, and you can end up with a cleaner design of your application. In this talk I’d like to explore how to make it happier: explore different dependency types, dependency cycles, how do they play together and what bottlenecks do they create. We can then talk about tools that Elixir gives us to identify these bottlenecks and how we can leverage them to make application design better for both the compiler and ourselves. Talk objectives: This talk aims to increase awareness about how Elixir builds our application and how the way we organize our code affects re-compilation time. To better understand what can we do to make our code more straightforward for both the compiler and ourselves. Target audience: This talk is targeted towards intermediate users of Elixir - people who are making software with Elixir as their day to day jobs and would like to deepen their knowledge • Timecodes: 00:00 - 04:14 - Intro 04:15 - 07:03 - Dependencies 07:04 - 13:25 - Cycles 13:26 - 17:02 - Double Dependencies 17:03 - 18:17 - Key Discoveries 18:18 - 27:57 - Export Dependencies 27:58 - 30:20 - QnA • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Micro Services and Events: Friends or Foes? | Roland Tritsch | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Micro Services and Events: Friends or Foes? | Roland Tritsch - Software Craftsman and Sofware Engineering Manage ABSTRACT In the last 3 years, Community has built a SaaS platform based on a very sophisticated shared-nothing micro-services architecture, that uses an event-bus for state-propagation. In this talk we will review the architecture and design choices that led us to where we are today, the lessons learned on the way and what challenges lie ahead. Right now we have 60 engineers working on the platform (30 backend (Elixir) engineers). We run ~50 services (and counting). We are processing ~1M events/day. Our uptime (thanks to Elixir/OTP) is 99.999%. Talk objectives: After the talk, the audience will have learned what questions to ask if/when you want to build a large, scalable SaaS platform that needs to deliver on a very specific set of business requirements. Target audience: Senior and Principal Sofware Engineers that need to make design decisions every day. • Timecodes: 00:00 - 06:51 - Meaningful Conversations at Scale 06:52 - 09:56 - Why Microservices? 09:57 - 13:42 - Why Event-Based and Event-Sourced? 13:43 - 18:39 - Technology & Architecture 18:40 - 33:04 - Lessons Learned 33:05 - 35:40 - Next Steps 35:41 - 44:38 - QnA • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
The joy of building your startup with Phoenix LiveView | Aswin Mohan | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ The joy of building your startup with Phoenix LiveView | Aswin Mohan - Solo Founder building his first startup in Elixir ABSTRACT Choosing the right tech stack for your startup can be hard * Rundown of current tools for building your Startup, advantages of each. * First-mile advantage vs marathon advantage of technology * Why Pheonix LiveView is a great fit for 90% of Startups * Real-world Performance of LiveView * How to write maintainable LiveView apps * Testing LiveView apps, the best thing about LiveView * How to learn to write real-world apps in LiveView. Talk objectives: Phoenix LiveView is a relatively new but mature platform. Still, developers are reluctant to choose it because of doubts about its real-world performance, user experience and how much of an advantage it provides over traditional SPA’s. Having implemented the MVP of my startup IndiePaper in different technologies ranging from SPA’s to Rails to Vanilla Pheonix Apps I have first-hand experience on the advantages and disadvantages of each platform compared to LiveView. I want to showcase LiveView as a mature platform ready for real-world use and educate developers on why they should give it a chance. I also want to give a roadmap on how to get started professional-grade Elixir and LiveView apps, ranging from code organisation to testing. Target audience: The talk will be for developers who are on the fence about using LiveView in their next project. No prior experience with Elixir or Phoenix is required. It will also be beneficial for the experienced Phoenix developer currently evaluating LiveView and want to see what sort of advantages it brings to the table and how it performs on real-world tests. • Timecodes: 00:00 - 03:38 - Intro 03:39 - 06:37 - Advantages & Disadvantages of an SPA 06:38 - 09:02 - Backend Heavy 09:03 - 11:57 - Ruby on Rails 11:58 - 15:57 - Elixir Phoenix 15:58 - 37:35 - Tests 37:36 - 45:46 - What about Testing & QnA • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
TypeCheck Effortless Runtime Type Checking | Wiebe-Marten Wijnja | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ TypeCheck Effortless Runtime Type Checking | Wiebe-Marten Wijnja - Hammock-driven Developer ABSTRACT Marten loves conceiving things that just keep working. A Computing Scientist in body and mind. Marten has 14+ years of practical web-development experience. In 2012, he started to specialise in working with decentralised, distributed and fault-tolerant systems. Marten is an enthusiastic open sourcerer, a long-time developer using the Elixir programming language, known for maintaining some Elixir libraries, playing advocate of the devil on the elixir-lang-core mailing list and as a moderator on the Elixir Forum. In his spare time, Marten loves making music (piano, marimba), running, dancing and being excited by new discoveries. Talk: TypeCheck - Effortless runtime type-checking TypeCheck is an Elixir library that takes your existing Elixir types + specs and builds runtime type-checks, clear error messages, improved documentation and automated property-based ‘spectests’ on top of them! In this talk, Marten will explain how simple it is to use TypeCheck in your projects and why and when you’d want to. Also, he will give a small peek behind the curtain of the extensive not-so-simple metaprogramming required to make all of this happen ;-). Talk objectives: Explain to people the pros (and some cons) of using runtime type-checking to improve their codebase’s code clarity, testability and resilience. • Timecodes: 00:00 - 02:31 - Intro 02:32 - 13:10 - What is Typechecking and What is a Type? 13:11 - 21:23 - The Contract of a Function 21:24 - 24:36 - How Readable are the Error Messages? 24:37 - 31:54 - Advanced Features 31:55 - 36:13 - Conclusion & QnA • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
"config.exs is Simple" and Other Lies | Łukasz Niemier | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ "config.exs is Simple" and Other Lies | Łukasz Niemier - Member of the EEF Observability WG. Author of Watermelon, mix_machine, mix_unused, and systemd libraries ABSTRACT One of the most intriguing and confusion-inducing points of Elixir development is configuration. We have compile-time configuration, runtime configuration, startup time configuration, release configuration, application environment configuration, etc. In this talk, I will try to make it a little bit clearer what is what and how and when to use given options. Talk objectives: Explain to the audience that the configuration in Elixir is a deep hole that can cause a hell of a lot of confusion and how to make sense of it. When and how the configuration is applied, why some configuration values can and some cannot be changed during the application lifetime, how the configuration is stored, and what is the configuration in the first place. • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Bringing OpenCV to the Elixir World | Cocoa Xu | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Bringing OpenCV to the Elixir World | Cocoa Xu - Author of Evision and PhD Student at The University of Glasgow ABSTRACT Evision is an Elixir library that brings OpenCV into Elixir. It uses code to generate NIFs that cover most OpenCV modules in the main OpenCV repo. In this way, it largely reduces the amount of time manually porting OpenCV to Elixir. Most importantly, it allows people to do computer vision with the most widely used library and has the potential to build their computer vision machine learning pipelines in Elixir. Talk objectives: How I approached bringing OpenCV into Elixir. An Evision demo (to show how to use it). How it can be integrated with Nx. Areas to focus on for bringing machine vision to Elixir. An early showcase using it on a robot that automatically navigates in a room. Target audience For people who are interested in doing computer vision with Elixir and seeking a way of building their own computer vision machine learning pipelines in Elixir. • Timecodes: 00:00 - 01:41 - Intro & Agenda 01:42 - 06:00 - Evision. What is it and why it is Created? 06:02 - 10:54 - Example of a NIF Library 10:55 - 22:18 - Demo Time 22:19 - 27:29 - Integration with Nx • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Automating the Automator | Tonći Galić | ElixirConf EU 2022

This video was recorded at ElixirConf EU 2022 - https://www.elixirconf.eu/ Automating the Automator | Tonći Galić - Organiser of the Amsterdam Elixir meetup ABSTRACT As software engineers we often automate other people’s tasks, but how far can we go to automate our own tasks, like refactoring? With Elixir 1.13 and the Sourceror library, it might be easier than you think. Talk objectives: Inspire others to think about developers tools and make their jobs easier. Target audience: Everyone using Elixir, looking for ways to work smarter • Follow us on social: Twitter: https://twitter.com/ElixirConfEU LinkedIn: https://www.linkedin.com/company/27159258 • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch