Code BEAM V 2020

2020

List of videos

Boost your productivity with the Erlang Language Server - Roberto Aloi | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Boost your productivity with the Erlang Language Server - Roberto Aloi - Software Engineer at Klarna ABSTRACT Implementing features such as auto-complete or go-to-definition for a programming language is not trivial. Traditionally, this work had to be repeated for each development tool and it required a mix of expertise in both the targeted programming language and the programming language internally used by the development tool of choice. A brilliant intuition, the "Language Server Protocol" (LSP), changes the rules of the game. A real blessing for the Erlang community. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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 adaptive systems | Chris Keathley | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Building adaptive systems | Chris Keathley - Senior Software Engineer at Frame.io ABSTRACT Every production service has targets it needs to hit. These targets are often measured by successful requests per second or 99th percentile latency. In order for this service to be considered resilient, it should attempt to reach these targets even when confronted with overload or failures in the rest of the system. The tools that engineers have typically employed to stop cascading failure, such as circuit breakers, are a poor fit for building services that can change to an ever-changing production system. What we’d like instead is for our services to protect themselves, protect each other, and react to failures without operator intervention. In this talk, we’ll look at ways to build systems that can adapt to changes in latency, spikes in traffic, and systemic failures. In order to achieve our goals, we’ll discuss some basic queueing theory, congestion control algorithms, and how we can take advantage of these concepts in our systems. • Follow us on social: Twitter: https://www.twitter.com/CodeBEAMio 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
Adopting Erlang, Adapting Rebar - Fred Hebert, Tristan Sloughter | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Get involved in the next Code Sync conference - https://codesync.global --- ADOPTING ERLANG, ADAPTING REBAR by Fred Hebert, Tristan Sloughter ABSTRACT In this presentation we'll cover the cycle that brought us from writing Adopting Erlang from the perspective of a new team that has read one of the many books out there about Erlang. We aimed to guide them to applied practice in a development team. In writing this, we found multiple issues that had accrued with time and shifting best practices in the community. These issues became encoded into our toolset. Through maintaining Rebar3, Relx, documentation, and as participants of EEF working groups, we were part of a long feedback loop in the ecosystem. We'll go over the new changes this has led us to make to improve our tooling with very limited backwards compatibility breakage, and how they should improve your life. Slides & full abstract: https://codesync.global/speaker/fred-hebert/ --- THE SPEAKER - FRED HEBERT Erlang, Tools, and Systems (Postmates) Fred is the author of Learn You Some Erlang, Erlang in Anger, and more recently, Property-Based Testing with PropEr, Erlang, and Elixir. He co-founded and is a board member at the Erlang Ecosystem Foundation. He is a maintainer of Rebar3, and of various libraries such as recon, pobox, and so on. He is a platform developer at Postmates, with a focus on learning from incidents and poking at various things. Previously, he was Systems Architect at Genetec, a company offering security video and IoT integration systems. Even earlier, he was a principal member of technical staff on the Heroku platform, worked in real-time bidding, and provided Erlang training. More on Fred Hebert: https://codesync.global/speaker/fred-hebert/ THE SPEAKER - TRISTAN SLOUGHTER Principal engineer at Space-Time insight Tristan is a long time Erlang programmer, having picked it up for fun while in college and then professionally for various companies, Orbitz Worldwide, eCDMarket, Heroku, SpaceTime Insight, and currently as a senior software engineer at Postmates, Inc. While at Heroku, Tristan, along with Fred, started the build tool Rebar3 after seeing the struggles involved in onboarding new developers to Erlang projects. He is also a maintainer of the release tool Relx and creator of the website How I Start(https://howistart.org/) which collects articles for various languages from experienced developers on how they setup a new project and take it to completion. More on Tristan Sloughter: https://codesync.global/speaker/tristan-sloughter/ --- CODE SYNC & CODE BEAM V 2020 Code BEAM V is powered by Code Sync. Code BEAM V 2020 was sponsored by Klarna, Duffel, PepsiCo, Erlang Solutions, Mux, AppSignal, Clever Bunny, Pragmatic Bookshelf, O'Reilly, Manning Publications, Learning Stone, Groxio, Erlang Ecosystem Foundation. CODE SYNC Website: http://www.codesync.global Twitter: https://www.twitter.com/CodeBEAMio Facebook: https://www.facebook.com/CodeSyncGlobal LinkedIn: https://www.linkedin.com/company/code-sync/ Mail: info at codesync.global

Watch
BEAMJIT - the journey | Lukas Larsson | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v BEAMJIT - the journey | Lukas Larsson - Software Engineer at Erlang Solutions ABSTRACT The BEAMJIT is a research project by Ericsson and RISE (Research Institutes if Sweden) to create a just-in time compiler for Erlang/OTP. It has been progressing well since it’s start 7 years ago. This presentation will give an overview of what has been achieved, covering problems, solutions and ideas that have come up along the way. • Follow us on social: Twitter: https://www.twitter.com/CodeBEAMio 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: Unite And Conquer - Viktória Fördős, Laura M. Castro & Natalia Chechina | Code BEAM V

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-sto/ More great virtual tech conferences - https://codesync.global --- Unite And Conquer by Viktória Fördős, Laura M. Castro & Natalia Chechina | ABSTRACT Divisions are popular in our days often comparing “them” and “us”: be it research vs industry, men vs women, Erlang vs Elixir... but unity is what makes us stronger and enables us to aim for new horizons. In this talk, Natalia, Laura, and Viktória will discuss their vision on creating fault-tolerant, scalable opportunities together to achieve diverse ambitions. All BEAMers unite! --- THE SPEAKER Viktória Fördős Viktória is passionate about consistency models, highly available and scalable software. She first came in contact with Erlang in 2010 when she joined the RefactorErl project. Has been active in R&D, and of course in Erlang, ever since. She was contributing to FP7 EU projects (PharaPhrase, RELEASE, SYNCFREE), co-authored papers in the ACM SIGPLAN Erlang Workshop, in ‘Proceedings of Trends in Functional Programming’ (TFP), in ‘Lecture Notes in Computer Science’ (LNCS), in Computer Languages Systems & Structures (COMLAN), in ACM Transactions on Programming Languages and Systems, and in IEEE Transactions on Parallel and Distributed Systems. She was Member of Program Committee for the ACM Erlang Workshop between 2016 and 2018. She is Co-chair for the ACM Erlang Workshop 2019 and 2020. She joined Cisco Systems in 2019. She is an NSO core engineer, she solves (network orchestration) problems in Erlang everyday. Laura M. Castro Laura became fascinated with Erlang during her studies in Software Engineering and has been an advocate of our beloved technology ever since. Nowadays, this means she introduces the BEAM to the next generations of CS graduates, preaches it to local developer groups and FP-related events, introduces it in new projects with local companies, and exploits it as a research tool in collaboration with colleagues all around the world. Natalia Chechina Natalia is passionate about distributed systems, cooperative robotics, scalability, fault tolerance, and as a result is in love with Erlang. Her research investigates approaches and techniques to enable scaling and efficient performance on commodity hardware where components are loosely coupled, communication is significant, and any of the components may fail or disconnect at any time. --- Code BEAM V 2020 was sponsored by Duffel, PepsiCo, Klarna, WhatsApp, DNSimple, Flyiin, Erlang Solutions, Forza Football, BlockFi, App Unite, Pleroma, Simplabs, Telnyx, Clever Bunny, O'Reilly, Manning Publications Code BEAM V Website: https://codesync.global/conferences/code-beam-sto Twitter: https://twitter.com/CodeBEAMio

Watch
Safety in numbers, securing our BEAM | Christopher Price | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Safety in numbers, securing our BEAM | Christopher Price - Head of Ericsson Software Technology ABSTRACT This talk will discuss the growing utility of the BEAM and how it is being used to support a broad industry landscape. Further discussing security concepts and the things we take for granted, how implied security does not always result in security and how further conversation around tooling and dependencies in our ecosystem will only serve to increase adoption.. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
Problem led Software Design - Robert Virding, Boyd Multerer | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Get involved in the next Code Sync conference - https://codesync.global --- PROBLEM LED SOFTWARE DESIGN by Robert Virding, Boyd Multerer ABSTRACT There are many software development philosophies, but one of our favorite is Problem Led Design. Robert Virding and Boyd Multerer discuss how they use focus on problems to find solutions that really matter. Robert will share how this drove to the design of Erlang and the BEAM. Boyd will discuss how this has been his driving mode for almost 20 years across Xbox, Scenic, and his new project which he is finally willing to talk about. Slides & full abstract: https://codesync.global/speaker/robert-virding/ --- THE SPEAKER - ROBERT VIRDING Co-creator of Erlang, trainer Robert Virding is Principal Language Expert at Erlang Solutions Ltd. While at Ericsson AB, Robert was one of the original members of the Ericsson Computer Science Lab, and co-inventor of the Erlang language. He took part in the original system design and contributed much of the original libraries, as well as to the current compiler. While at the lab he also did a lot of work on the implementation of logic and functional languages and on garbage collection. He has also worked as an entrepreneur and was one of the co-founders of one of the first Erlang startups (Bluetail). Robert also worked a number of years at the Swedish Defence Materiel Administration (FMV) Modelling and Simulations Group. He co-authored the first book (Prentice-Hall) on Erlang, and is regularly invited to teach and present throughout the world. More on Robert Virding: https://codesync.global/speaker/robert-virding/ THE SPEAKER - BOYD MULTERER Creator of Scenic and lead engineering for Xbox Live, XNA Boyd's near 30-year career spans the range of software projects, from desktop publishing, to web servers, to game consoles, to low-level operating systems. For the past four years, he has been independently exploring and building a full stack for Connected Devices that heavily leverages the BEAM. Previously, Boyd spent 18 years at Microsoft running engineering for things such as Xbox Live, XNA (game developer program), and everything OS for Xbox One. This work includes large scaled-out datacenter services, VMs, and the layout of the hypervisor/kernel. His most recent release is the open-source Scenic libraries, which is a functional UI stack built on the BEAM. Its primary goal is for use in connected devices, but it is already being used for desktop apps and more. His current work takes the foundation laid with Scenic and is attempting to answer deeper questions about the future of client-side operating systems. More on Boyd Multerer: https://codesync.global/speaker/boyd-multerer/ --- CODE SYNC & CODE BEAM V 2020 Code BEAM V is powered by Code Sync. Code BEAM V 2020 was sponsored by Klarna, Duffel, PepsiCo, Erlang Solutions, Mux, AppSignal, Clever Bunny, Pragmatic Bookshelf, O'Reilly, Manning Publications, Learning Stone, Groxio, Erlang Ecosystem Foundation. CODE SYNC Website: http://www.codesync.global Twitter: https://www.twitter.com/CodeBEAMio Facebook: https://www.facebook.com/CodeSyncGlobal LinkedIn: https://www.linkedin.com/company/code-sync/ Mail: info at codesync.global

Watch
10s to 1000s engineers: scaling Erlang developer experience at WhatsApp | Anton Lavrik | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ 10s to 1000s engineers: scaling Erlang developer experience at WhatsApp - Anton Lavrik - Lead of Erlang team at Whatsapp ABSTRACT Having used Erlang at WhatsApp for 10 years, we know it works extremely well for a smaller team. But does Erlang scale to 100s and 1000s of engineers? In this talk, Anton will give an overview of what it takes to scale Erlang developer experience for rapidly growing engineering teams at a large tech company. Among other things, Anton will talk about static typing, IDE integration, interoperability, structuring a large codebase, and build system. Finally, he'll discuss the current limitations of the Erlang ecosystem, and present our plans for addressing them. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
An update from the Erlang Ecosystem Foundation working groups | Sebastian Strollo | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ An update from the Erlang Ecosystem Foundation working groups | Sebastian Strollo - Erlang Developer and Cofounder at Avassa ABSTRACT Open meeting with Erlang Ecosystem Foundation Team. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
Update: Elixir core dev team | José Valim | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Update: Elixir core dev team | José Valim - creator of the Elixir programming language ABSTRACT Open meeting with Elixir Core Team. Unmute yourself and ask the guest any question about his work you like. . • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
E2E backend testing with Ecto API | Nikola Begedin | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ E2E backend testing with Ecto API | Nikola Begedin - Full Stack Engineer at V7 Labs ABSTRACT Hound and Wallaby are great test tools. We get access to the Ecto sandbox out of the box, so the background for each test is easy to set up. However, both are quite difficult to operate any anything other than a simple frontend, which is part of the Phoenix app itself. What most people do not know is that Ecto supports Sandbox access via API endpoints, making it possible to use any test runner, such as Cypress or Testcafe, paired with any frontend of any complexity. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
Programming Languages on top of the BEAM - Manuel Rubio, Robert Virding | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-sto/ More great virtual tech conferences - https://codesync.global --- Programming Languages on top of the BEAM by Manuel Rubio, Robert Virding ABSTRACT Talk about the implementation of languages on top of BEAM which have not the same semantics as Erlang so, it is not going to be a talk about languages like LFE or Elixir but also others like Lua or PHP which are implemented in an interpreted way. The talk is going to review the issues that can occur, solutions to them and also give some examples about how in the end they can be done. --- THE SPEAKER - Manuel Rubio Manuel is a developer since he was 12 years old (26 years ago) and he started with Basic, like others, but later also with Modula-2, Pascal, C, Assembler and these before 20 years old. In his professional career, he used Perl, PHP, Python, Ruby, Java, JavaScript, and last 10 years he was more on Erlang and 4 years ago he started with Elixir and Go. He can be considered a polyglot programmer and he loves to teach and coach others. He also a fan of creating crazy projects like myproto, ephp or skirnir. THE SPEAKER - Robert Virding Robert Virding is Principal Language Expert at Erlang Solutions Ltd. While at Ericsson AB, Robert was one of the original members of the Ericsson Computer Science Lab, and co-inventor of the Erlang language. He took part in the original system design and contributed much of the original libraries, as well as to the current compiler. While at the lab he also did a lot of work on the implementation of logic and functional languages and on garbage collection. He has also worked as an entrepreneur and was one of the co-founders of one of the first Erlang startups (Bluetail). Robert also worked a number of years at the Swedish Defence Materiel Administration (FMV) Modelling and Simulations Group. He co-authored the first book (Prentice-Hall) on Erlang, and is regularly invited to teach and present throughout the world. --- Code BEAM V Website: https://codesync.global/conferences/code-beam-sto/ Twitter: https://twitter.com/CodeBEAMio

Watch
argparse: complex CLI made simple | Maxim Fedorov | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v argparse: complex CLI made simple | Maxim Fedorov - Software Engineer at WhatsApp ABSTRACT Most programing languages have a way to interact via command line arguments. So does Erlang. Tricky part is conversion between Unix shell conventions and Erlang. Some languages have libraries to do the job. Python has docopt, click, and argparse, all serving the purpose, and allowing complicated syntax. Erlang deserves to have some too. This talk introduces argparse for Erlang. • Follow us on social: Twitter: https://www.twitter.com/CodeBEAMio 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
An update from the OTP team | Kenneth Lundin | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ An update from the OTP team | Kenneth Lundin - Head of the Erlang/OTP team at Ericsson ABSTRACT Short update from the OTP Team and then you will be able to ask them any question you like about their work. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
Monkey, take the wheel - Dmytro Lytovchenko | CodeBEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Monkey, take the wheel - Dmytro Lytovchenko - Software Engineer at ABSTRACT The talk briefly explains the Daniel Kahneman's fast and slow thinkers concept, where every person can operate in easy-going and cheap mode, making mistakes and enjoying the distractions, while harder tasks require switching to slow and expensive thinker mode where the smart decisions and judgements can be made, at the cost of getting tired real quick. The talk goes in detail how it is beneficial to accept your human nature, prone to errors, and instead trust your Erlang & Elixir language, available tools, and tests more than you would trust yourself. Letting your inner monkey drive the development and allowing it to make mistakes on the way is an acceptable and winning strategy. Highlighting the importance of human in, sometimes idealized, world of the software development, while the human is prone to errors. • Follow us on social: Twitter: https://www.twitter.com/CodeBEAMio 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
Nova a web framework for Erlang - Daniel Widgren, Niclas Axelsson | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-sto/ To learn more about the framework go to Nova homepage: https://novaframework.org More great virtual tech conferences - https://codesync.global --- Nova a web framework for Erlang Daniel Widgren, Niclas Axelsson ABSTRACT Nova is a framework that started a long time ago but now is gathered as a package. With influences from Chicago Boss and Phoenix, we wanted an Erlang framework that was easy to use. --- THE SPEAKER - Daniel Widgren Daniel has been working with Erlang for 10 years in different areas. THE SPEAKER - Niclas Axelsson It all started after Niclas was introduced to Erlang at the university in 2009. Since then he has been using Erlang for both backend and frontend. --- Code BEAM V 2020 was sponsored by Duffel, PepsiCo, Klarna, WhatsApp, DNSimple, Flyiin, Erlang Solutions, Forza Football, BlockFi, App Unite, Pleroma, Simplabs, Telnyx, Clever Bunny, O'Reilly, Manning Publications Code BEAM V Website: https://codesync.global/conferences/c... Twitter: https://twitter.com/CodeBEAMio

Watch
Elixir meets Erlang in Blockchain development - Ulf Wiger, Aleksandar Filipov | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Get involved in the next Code Sync conference - https://codesync.global --- ELIXIR MEETS ERLANG IN BLOCKCHAIN DEVELOPMENT by Ulf Wiger ABSTRACT The Aeternity blockchain was developed in Erlang, by something of an All-Star team, and made a mark as one of the most productive development teams in the business. Unfortunately, Core development outpaced SDK and tool development by a fairly wide margin, and the core team found itself lacking direct user feedback. One approach to address this was to bring onboard a talented Elixir developer, Aleksandar Filipov, as a one-man prototyping team and virtual user to the State Channels team. In this talk, we will describe the reasons for augmenting an Erlang project with Elixir, and present some of the results. Slides & full abstract: https://codesync.global/speaker/ulf-wiger/ --- THE SPEAKER - ULF WIGER Ulf Wiger has been using Erlang since 1992, bought the first-ever commercial license in 1993 and has been a full-time Erlang dev since 1996. While at Ericsson, he became something of an Erlang ambassador, speaking about the AXD 301 ATM Switch/Media Gateway and about how Erlang works in large industrial projects. After leaving Ericsson, Ulf joined Erlang Solutions as CTO. He then entered the Connected Device market first via the startup Feuerlabs, then as a freelance contractor to Jaguar Land Rover, and Lead Developer of GENIVI’s Remote Vehicle Interaction component. Ulf joined the Aeternity Core Team in 2017 and is now busy exploring and developing blockchain technology. In the Open Source arena, Ulf is perhaps best known for components like Gproc, Jobs, and Exometer. In his spare time, Ulf doubles as an opera singer and dabbles in politics. More on Ulf Wiger: https://codesync.global/speaker/ulf-wiger/ THE SPEAKER - ALEKSANDAR FILIPOV Embedded programmer gone functional Aleksandar has been all over, going from real time embedded OS:e where he worked with hardware and matching OpenGL ES drivers all the way to automotive electrical systems and also a few years with end user apps including android apps for banking. Today he’s a big fan of functional programming, and is a driver for the eternity’s “channel services” which is a reference framework showcasing aeternity’s unique state channels. He's also an fp evangelist in the automotive space where he maintains Signalbroker. linkedin: https://www.linkedin.com/in/aleksandar-filipov-a806303/ https://github.com/volvo-cars/signalbroker-server/ https://github.com/aeternity/ae-channel-service/ More on Aleksandar Filipov: https://codesync.global/speaker/aleksandar-filipov/ --- CODE SYNC & CODE BEAM V 2020 Code BEAM V is powered by Code Sync. Code BEAM V 2020 was sponsored by Klarna, Duffel, PepsiCo, Erlang Solutions, Mux, AppSignal, Clever Bunny, Pragmatic Bookshelf, O'Reilly, Manning Publications, Learning Stone, Groxio, Erlang Ecosystem Foundation. CODE SYNC Website: http://www.codesync.global Twitter: https://www.twitter.com/CodeBEAMio Facebook: https://www.facebook.com/CodeSyncGlobal LinkedIn: https://www.linkedin.com/company/code-sync/ Mail: info at codesync.global

Watch
Real-time Object Detection with Phoenix and Python | Alvise Susmel | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Real-time Object Detection with Phoenix and Python | Alvise Susmel - CTO at Knowsis ABSTRACT YOLO (You Only Look Once) is a state-of-the-art, real-time object detection system. In this talk Alvise shares how we can bring its functionalities in a Phoenix app, taking advantage of Python's fantastic set of Machine Learning libraries. Alvise will start by building an Elixir wrapper around a Python library, so he can detect objects on single images. Then we make it real-time on a Phoenix app, detecting objects from a webcam feed. • Follow us on social: Twitter: https://www.twitter.com/CodeBEAMio 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
Live Coding Pong in Scenic | Ju Liu | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Live Coding Pong in Scenic - Ju Liu - Software Engineer at NoRedInk ABSTRACT Is there a more iconic example of a videogame than Pong? I don't think so! In this talk, we will see how we can use Elixir and Scenic to build a copy of the immortal 1972 Atari classic. Retro gaming enthusiasts will love this talk for the fun trivia, while Elixir enthusiasts will love it for the live coding madness! At the end of the talk, you should know how to setup your own game using Scenic, while having learned a couple of tricks that are almost fifty years old, yet tremendously effective. • Follow us on social: Twitter: https://www.twitter.com/CodeBEAMio 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
Decade of writing and selling Erlang based Flussonic | Maksim Lapshin | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Decade of writing and selling Erlang based Flussonic | Maksim Lapshin - MD and CTO at Flussonic ABSTRACT More than 10 years ago, Maksim selected Erlang to be a base of his commercial video streaming server software Flussonic. Maksim is happy with his decision, but will he make another choice in 2020? Maksim will share how he supports, maintains quality and hires people for developing new tasks. • Follow us on social: Twitter: https://www.twitter.com/CodeBEAMio 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
Rebuilding a complex web-app with Elixir and Phoenix LiveView | Mikkel Högh | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Rebuilding a complex web-app with Elixir and Phoenix LiveView | Mikkel Högh - Software Engineer ABSTRACT Mikkel Høgh and team, rebuilt a seven-year-old DNS control panel app, originally built with Drupal, Node.js and Ember.js into a much simpler and easier to maintain Phoenix-web app. LiveViews replacing complex JavaScript workflows and Elixir/OTP replacing server side tasks. Mikkel Høgh will show how migrating reduced complexity, increased maintainability and DX. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
An introduction to the new socket API | Raimo Niskanen | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ An introduction to the new socket API | Raimo Niskanen - Software Engineer ABSTRACT There is an experimental new socket API since OTP 22 that is thinner, lighter, and faster than the old gen_{tcp,udp,sctp} over inet_drv. It is implemented with NIFs on the Unix networking functions, which potentially gives the programmer access to _all_ of the socket functionality in the OS networking stack. This talk gives an overview of the API, some details on the implementation, informs on what is done and missing, and how the new sockets is intended to fit in the rest of Erlang/OTP. • See & download slides: https://codesync.global/uploads/media/activity_slides/0001/03/1b6a342cbc6428202bbb96479ffc4 27730b0862d.pdf • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
How a startup survived the hype years of NoSQL | Alexandre Rodrigues | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ How a startup survived the hype years of NoSQL | Alexandre Rodrigues - Software Engineer @ Cisco ABSTRACT In 2012, the NoSQL hype was strong, a digital mailbox service called Kivra is launched and the choice of database was Riak and the language was Erlang. Today, Kivra is the most used digital mailbox in Sweden. But what happened in the meantime? How did the prototype become a reliable system capable of handling changes in terms of time, functionality and load? Join Alexandre on a journey where we learn the challenges and the key design decisions that are part of Kivra's success throughout the years! • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
From the Idea to a MVP in Less than 3 Months | Benoit Chesneau | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ From the Idea to a MVP in Less than 3 Months | Benoit Chesneau - owner @ Enki Multimedia ABSTRACT What does it mean to develop and deploy products or services written in Erlang on a daily basis? How can you build a product using multiple linked processes or services on one or more machine that will fit your business? How can you provide an MVP or a pilot in less than 3 months? In this talk, Benoit will describe some useful pattern and code/libraries written over Erlang OTP that will help you to achieve it. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
rebar3 format: A new code formatter for Erlang | Brujo Benavides | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v rebar3 format: A new code formatter for Erlang | Brujo Benavides - Software Engineer at NextRoll ABSTRACT In recent years, many language ecosystems have developed automatic code formatters to reduce the mental overhead of code readers and therefore to share code more easily. The Erlang community was lacking a tool like this, so we created a rebar3 plugin just to automatically format code. • Follow us on social: Twitter: https://www.twitter.com/CodeBEAMio 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
Four patterns to save your codebase and your sanity | Marcelo Lebre | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Four patterns to save your codebase and your sanity | Marcelo Lebre - CTO and co-founder at Remote ABSTRACT Scaling a codebase requires a balance of both vertical and horizontal approaches. Independently if you choose a domain driven design, hexagonal or even a simple MVC you can either add more files or keep increasing the ones you have. McCabe's cyclomatic complexity is that functions and methods that have the highest complexity tend to also contain the most defects. In this talk, Marcelo will show you how using Handlers, Services, Finders and Values you'll be able to scale your codebase linearly in complexy and beautifully in sanity. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
Applied Telemetry Lessons from the Field | Bryan Naegele | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Applied Telemetry Lessons from the Field | Bryan Naegele - Member of the Erlang Ecosystem Foundation ABSTRACT As the telemetry ecosystem grows and adds tracing support to its list of observability concerns, it's important for users and library maintainers to get a grasp on what it all means to them. Bryan will cover the Five Ws and how to improve the runtime observability story for everyone in the Erlang/Elixir ecosyste • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
Adventures in High Performance Logging | Ryan Resella | Code BEAM V

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-sto/ Adventures in High Performance Logging | Ryan Resella - Senior Software Engineer at Change.org ABSTRACT What do you do when you need to write to a log in your Elixir app? Use Logger, of course! But what happens when you reach its limits? This talk uses a real-world example to explore what happens when your system scales past the tools that come with the BEAM. We'll build our way from Logger, to disk_log, to a custom GenStage pipeline, all the while striving for the highest performance solution. OBJECTIVES Educate the audience about one of the core internal Elixir tools: Logger Provide a case study of what happens when you rapidly outgrow the tooling in the BEAM Introduce some new libraries that provide an abstraction over high throughput logging TARGET AUDIENCE From beginners through to experienced Alchemists, the talk builds up from simple example so no-one should get lost. • Follow us on social: Website: https://codesync.global/conferences/code-beam-sto Twitter: https://twitter.com/CodeBEAMio • 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
How the BEAM boots and what can be done about it | Peer Stritzinger | Code BEAM V

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-sto/ How the BEAM boots and what can be done about it | Peer Stritzinger - Founder and Director of Peer Stritzinger GmbH ABSTRACT The Erlang VM does a lot of work loading and transforming many little BEAM files before it is ready to go. When starting Elixir even more beam files have to be loaded. Doing this work over and over again leads to unfavourable startup time. Most clearly this shows on embedded systems with weak CPUs, inefficient files systems and storage and no way to cache the filesystem when switched on. But this extra work also shows up everywhere the Erlang VM is started again and again, e.g. during development and in CI/CD systems. In this talk, we explore what exactly is done by the BEAM loader and how we can move this work to release build time so it doesn't have to be done again and again on startup. Transforming all the little BEAM files into normal object files a static or dynamic linker can use and relocate gives us several benefits at the same time: Ready to run in place beam code - reduced startup time.Faster cloud spin uptime with standard Erlang VMs Single executable releases - wouldn't it be nice to deploy just a single-file executable that contains the Erlang VM and the complete relates BEAM files? Deploy complete Erlang releases on System on Chip Micro-Controllers by running everything directly in firmware flash In this talk, you will get a clear explanation of how all this works and demos of the implementation. • Follow us on social: Website: https://codesync.global/conferences/code-beam-sto Twitter: https://twitter.com/CodeBEAMio • 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
Don t write NIFs (at least not in C) | Sonny Scroggin | Code BEAM V

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-sto/ Don t write NIFs (at least not in C) | Sonny Scroggin - Staff Software Engineer AT Royal.io ABSTRACT Most experienced Erlangers will caution against writing NIFs, and for good reason! NIFs are notoriously dangerous. Not only do we have to worry about crashing the BEAM, but we run the risk of degrading the scheduler if we're not careful. But what if writing NIFs were safe? In this talk, Sonny will discuss Rustler, a library which makes it incredibly simple to write safe NIFs in Rust. THIS TALK IN THREE WORDS Native Safety Performance OBJECTIVES This talk aims to inspire people to learn Rust and how to leverage it within their current BEAM applications. • Follow us on social: Website: https://codesync.global/conferences/code-beam-sto/ Twitter: https://twitter.com/CodeBEAMio • 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 war story from failures to success | Timmo Verlaan | Code BEAM V

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-sto/ A war story from failures to success | Timmo Verlaan ABSTRACT Developing a communication platform seems to be the perfect fit for the BEAM. At least, that is what we thought when we set out to replace the existing Astrisk-based platform. Picking the proper tools is a good start, but when you develop in isolation for 2-3 years you might not learn about the BEAM characteristics under load. After 6 months in production, the first warning signs started to show. Join our war story and learn what to avoid and how to change failures into success. THIS TALK IN THREE WORDS Failures Learnings War story OBJECTIVES Share learnings with a wider audience. Create openness and trust in sharing failures. • Follow us on social: Website: https://codesync.global/conferences/code-beam-sto/ Twitter: https://twitter.com/CodeBEAMio • 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
Gleam: Lean BEAM typing machine | Louis Pilfold | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Gleam: Lean BEAM typing machine | Louis Pilfold - Software Engineer at Erlang Solutions ABSTRACT With their impressive concurrency features and robust approach to handling failure, it is a joy to build scalable and reliable systems with BEAM languages such as Erlang and Elixir! However, all is not perfect: as codebases get larger and less familiar it becomes more difficult to make changes, with mistakes creating bugs that test out runtime resilience and make pagers ring in the middle of the night. In this talk, Louis introduces Gleam, a new language that takes inspiration from strongly typed languages such as Haskell, Rust and Elm to help BEAM programmers tackle these problems. He'll take a look at what Gleam offers, how it's made, and how it complements and interoperates with other BEAM languages. Lastly, Louis will take a peek at what's planned for Gleam and how people can get involved with the language and the community. • See & download: slides:codesync.global/uploads/media/activity_slides/0001/02/6cf18d1424e30dae5cac646a211167b43cfd1305.pdf • Follow us on social: Twitter: https://www.twitter.com/CodeBEAMio 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
Cotonic: browser coroutines with an universal MQTT message bus | Marc Worrell | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Cotonic: browser coroutines with an universal MQTT message bus | Marc Worrell - ABSTRACT Cotonic is infrastructure for the browser. It manages webworkers, provides an universal MQTT message bus, and access to the DOM. Cotonic is the new companion of Zotonic, the Erlang web framework and content management system. In this talk we will see how MQTT is used as an universal communication bus. Providing webworkers access to server side Erlang code, and Erlang direct access to models in the browser. Covered will be MQTT bridges, topic mapping, access control, and message encryption. • Follow us on social: Website: http://www.codesync.global Twitter: https://www.twitter.com/CodeBEAMio Facebook: https://www.facebook.com/CodeSyncGlobal LinkedIn: https://www.linkedin.com/company/code-sync/ • 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
Unicode, Charsets, Strings, and Binaries | Marc Sugiyama | Code BEAM V

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-sto/ Unicode, Charsets, Strings, and Binaries | Marc Sugiyama - Software Engineer @ Datometry ABSTRACT Writing global software means our programs need to speak global human languages, but writing programs that work correctly with non-Western European languages is at best a confusing affair. UTF8, latin1, Unicode? What do these terms mean and how are they related to one another? And what does Erlang do? This talk demystifies the terminology around character encoding, explains how to retrofit your Erlang program for Unicode using Datometry HyperQ as a case study, and gives some best practices to help you break the one-byte/one-character assumption. THIS TALK IN THREE WORDS Character sets Character encoding Clarity OBJECTIVES Demystify terminology around character sets and character set encoding. Provide best practices to avoid common pitfalls. • Follow us on social: Website: https://codesync.global/conferences/code-beam-sto/ Twitter: https://twitter.com/CodeBEAMio • 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
Deploying Elixir on Docker | Vasu Adari & Harsh Balyan | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Deploying Elixir on Docker | Vasu Adari & Harsh Balyan - Product Engineer at Scripbox & Senior software engineer @ Scripbox ABSTRACT TALK LEVEL: INTERMEDIATE Deploying Elixir application has always had its complexities. But with the 'releases' support introduced in Elixir v1.9, it has become seamless. Since everybody likes containerising their apps, we'll also try to containerise our releases and deploy on to our most loved cloud service(AWS). THIS TALK IN THREE WORDS Deploy Elixir (on) Docker OBJECTIVES How to Dockerise an Elixir application Using Docker multi-stage builds to reduce the final image size How to create Elixir releases using `Distillery` How to create Elixir releases using `mix release` introduced in v1.9 How to deploy with zero-downtime on vanilla AWS EC2 instances • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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 See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOwThis video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Safety in numbers, securing our BEAM | Christopher Price - Head of Ericsson Software Technology ABSTRACT This talk will discuss the growing utility of the BEAM and how it is being used to support a broad industry landscape. Further discussing security concepts and the things we take for granted, how implied security does not always result in security and how further conversation around tooling and dependencies in our ecosystem will only serve to increase adoption.. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
Flamegraph and heatmap profiling | Edmond Begumisa & Roshan Giri | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Flamegraph and heatmap profiling | Edmond Begumisa & Roshan Giri ABSTRACT TALK LEVEL: INTERMEDIATE / ADVANCED Profiling Erlang systems is tricky due to their concurrent nature - many things going on at the same time. We introduce a new open-source low-overhead profiler which samples callstacks and graphically categorises them by process status, reductions, memory and message queue length over time making it easy to identify code where time and memory is being spent. We illustrate how we used this tool to identify both sequential and concurrency bottlenecks in our Erlang Healthcare HL7 message processing system. THIS TALK IN THREE WORDS Profiler Heatmaps Flamegraphs OBJECTIVES Show how to effectively use sub-second heatmaps and process status flamegraphs to isolate performance issues during both development and production. Illustrate how focusing on locating and eliminating concurrency bottlenecks tends to reap bigger rewards than optimising sequential code. Impart why it's critical to profile Erlang systems at different levels of load. TARGET AUDIENCE This talk is suitable for intermediate and advanced Erlang developers who are responsible for identifying performance issues and locating their causes. • Slides: https://drive.google.com/file/d/1Ou8YwtTsOttmEJQcQhYoTYsqBct03X2T/view?usp=sharing • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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 See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOwThis video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/

Watch
Mnesia as a complete production database system | Chaitanya Chalasani | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Mnesia as a complete production database system | Chaitanya Chalasani - Senior Cloud Application Architect at Access Europe GmbH TALK LEVEL: INTERMEDIATE / ADVANCED Mnesia is often underplayed as an in-memory cache and is seldom used alone in production. The first part of the talk is to present a few case studies of using only Mnesia as the production database engine for large throughput services. The second part of the talk is to present an open-sourced framework for Mnesia (Tivan) which is a collection of utilities and behaviours that enriches its role as a prime database engine. THIS TALK IN THREE WORDS The Understated Mnesia OBJECTIVES The prime objective of the talk is to look beyond general perception of Mnesia as an in-memory cache database to an apt contender as a complete robust database system through case studies and presenting an open-source framework of utils and behaviours to enrich its features and functionality. TARGET AUDIENCE Programmers with a certain exposure in using Erlang/OTP and Mnesia. Architects who are aware of Erlang/OTP, Mnesia and its capabilities. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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 See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOwThis video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/

Watch
Graceful shutdown in Elixir - try not to drop the ball | Pawel Szafran | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Graceful shutdown in Elixir - try not to drop the ball | Pawel Szafran ABSTRACT TALK LEVEL: BEGINNER / INTERMEDIATE In this talk, we'll go over the concept of graceful shutdown, how important it is when you want to ship often or auto-scale, and how to implement it in Elixir. We'll start with a simple demo app, deploy it on Kubernetes, and then step-by-step implement graceful shutdown for HTTP traffic, asynchronous tasks and buffers, demonstrating on every step how it improves the success-rate of the system. THIS TALK IN THREE WORDS graceful-shutdown Supervision Signals OBJECTIVES Explain the importance of graceful shutdown, show how to implement it in Elixir and demonstrate how it improves the success-rate of the system. •Slides https://drive.google.com/file/d/1if857DY_tuG4CUyARS8zP0ft6S2pUl0-/view?usp=sharing • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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 See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOwThis video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/

Watch
Consensus Protocols in OTP | Dániel Szoboszlay | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ Consensus Protocols in OTP | Daniel Szoboszlay - Lead Software Engineer at Klarna ABSTRACT Klarna runs its business on Mnesia from day one. 16 years later we're still together... but we’re heading towards a break up. How did we get here? What’s the way forward? Over the years problems hit us for sure, but as we’re about to part we also found good in Mnesia we'd taken for granted and never appreciated before. Are you just launching on Mnesia? Come and learn how not to corner yourself by the time you grow to a Unicorn. Already stretching limits? See how we made Postgres a viable replacement. OBJECTIVE Mnesia has some superpowers, but you won’t realise they exist until you try to live without them. Become aware of them, and you will be able to make conscious choices on whether to fully utilize them or to keep your options open. AUDIENCE Developers using Mnesia - or even Postgres, if they’re interested in our journey towards performant serializable transactions on this database. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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 Beginner's Guide to TLA+ Exploring State Machines & Proving Correctness | Jeff Weiss | Code BEAM V

This video was recorded at Code BEAM V 2020 - codesync.global/conferences/code-beam-sto/ A Beginner's Guide to TLA+ Exploring State Machines & Proving Correctness | Jeff Weiss - Senior Software Engineer at Enbala Power Networks ABSTRACT TALK LEVEL: BEGINNER / INTERMEDIATE / ADVANCED This talk introduces TLA+ by taking a small package from hex, examining its properties, modeling its behaviour as a state machine, creating TLA+ correctness and liveness specifications for it, and then using the TLA+ model checker to prove correctness. No prior exposure to formal methods like TLA+ or PlusCalc are necessary. A passing familiarity with state machines is recommended, but not required. OBJECTIVES Introduce TLA+ and its value Illustrate conversion of a state machine to a TLA+ specification Building and checking correctness and liveness models of that TLA+ specification TARGET AUDIENCE Developers interested in adding more rigour to their problem solving and more quickly surfacing design errors. • Follow us on social: Twitter: https://twitter.com/CodeBEAMio 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
Nerves of steel | Jon Carstens | Code BEAM V 2020

This video was recorded at Code BEAM V 2020 - https://codesync.global/conferences/code-beam-v Nerves of steel | Jon Carstens - Software Engineer ABSTRACT Nerves is an up-and-coming framework combining Elixir & Linux for powerful embedded development. Feature packed, backed by the BEAM, and simple to get working on a device. But what about when it doesn’t work? When your flawless code has made your device inert? What if it's unreachable by a human? Guess it’s a brick now… Or We leverage the awesome power of Nerves+BEAM to make ultra-resilient embedded devices! In this talk, we dive into some useful practices for ensuring your Nerves device stays up. OBJECTIVES Discuss some best-practices for using Nerves+Beam on embedded devices to make them more resilient and fault-tolerant. Practices that will help ensure your device is always up and reachable, even if some bad firmware gets applied, which will greatly reduce hardware troubleshooting burdens. This will be especially useful for those looking to use Nerves devices in production/industrial applications. TARGET AUDIENCE Hardware enthusiasts, hobbyists, or individuals looking to use Nerves in a more industrial application. • Follow us on social: Twitter: https://www.twitter.com/CodeBEAMio 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