Elixir Wizards cover image

Elixir Wizards

Latest episodes

undefined
Apr 2, 2020 • 51min

Season Three Wrap and Remote Work Tips

In this episode, we take a look into the current contexts and home lives many of us find ourselves in today, offering top tips for working remotely from home during these challenging times. The lockdowns have caused many of us to reflect. To reflect on our lives, our work, what we’re grateful for, and in this case, our epic last season of Elixir Wizards! Here, we take you through the highlights, the lowlights, our biggest lessons, our juiciest debates, and what you can expect for Season 4 – in sickness and in health. Stay safe, listen, and enjoy! Key Points from This Episode: The importance of demarcating your workspace, especially when the kids are home! Always put your pants on: Why sticking to your morning schedule helps productivity. Ways to eliminate the potential for distraction when working from home. How working from home is enabling programmers to see one another’s human side. Taking a break from conferences, cognition, and learning how to birth a baby Oestrich. Third dimensions and entering the tangential learning plane with Brooklyn Zelenka. The Surprise Toddcast: Why the improvised episode was a hit. What it was like interviewing entrepreneurial couple, Bruce & Maggie Tate. Remember the time the father and son roasted each other on the podcast mic? Why your podcast audience wants to know your guests on a more personal level. A recap of the numbers from Season 1-3 and the 40,000+ Elixir Wizards downloads. A sneak peek into the new Elixir Wizards theme for the upcoming Season 4. Lib versus Web and other essential tips for the lazy Phoenix users out there. Why we need a whole season on application architecture and one-letter module names. The debate sparked by the disagreement between Chris Keathley and Brooklyn Zelenka. Hackers, painters, Paul Graham, and the argument made in favor of dynamic typing. Find out more about Sophie and Meryl’s epic takeover of Elixir Wizards! Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Eric Oestrich — https://twitter.com/ericoestrich?lang=en Justus Eapen — https://twitter.com/justuseapen Brooklyn Zelenka on Witchcraft — https://podcast.smartlogic.io/season-two-zelenka Brooklyn Zelenka — https://twitter.com/expede?lang=en Bruce and Maggie Tate from Groxio on Training — https://podcast.smartlogic.io/s3e8-groxio Saša Jurić — https://twitter.com/sasajuric Bonus Toddcast & Lonestar Preview — https://podcast.smartlogic.io/s3e14-bonus-toddcast-and-lonestar-preview The Lonestar Lunchisode — https://podcast.smartlogic.io/s3-lonestar-lunchisode-2020 Dave Thomas — https://www.davethomas.net/talks_index.html Bonus Episode: Outlaws and The Wizards — https://podcast.smartlogic.io/s3-bonus-outlaws-and-wizards Chris Keathley — https://twitter.com/ChrisKeathley Paul Graham — http://www.paulgraham.com/ Sean Lewis from Divvy on Performance, Hiring and Training — https://podcast.smartlogic.io/s3e12-divvy Devin C. Estes — https://twitter.com/devoncestes?lang=en Muzak — https://www.kickstarter.com/projects/devonestes/muzak-a-mutation-testing-library-for-elixir-and-erlangSpecial Guest: Todd Resudek.
undefined
Mar 26, 2020 • 54min

Sophie and Meryl Takeover: Sean Callan and Steven Nunez on Elixir Education

Welcome to another extra special episode of Elixir Wizards! We have guest hosts today, Meryl Dakin of Frame.io and Sophie DeBenedetto of Github, and they welcome Steven Nunez, Staff Engineer at the Flatiron School, and Sean Callan, creator of Elixir School, to the show. Where some would see the fact that Elixir doesn’t have a ton of readily available answers out there as a restriction to mastering the language, our guests argue that this is the best educational environment. Writing about challenges and teaching others how you overcame them are some of the best ways to learn. We also discuss concurrency and other contrasts with prominent languages. Our guests weigh in on dealing with students and how far enthusiasm and openness can go in helping inspire other minds. Steven stresses the need for greater resources, especially at a beginner level, as this will lower the barrier to entry for new programmers and ultimately benefit the entire Elixir community. Key Points From This Episode: An introduction to Sean and Steven, their work and experience with Elixir. Work and professional horoscopes for the panel of today's podcast! The accidental path that led Sean to Elixir and the translations that affirmed his work. The use of writing and blogging in your own education; teaching is learning twice! Steven's early attraction to Elixir and the obsession and evangelism that followed. Concurrency visibility and differences between Elixir and other languages. Different tracks for learning; coming into Elixir as a beginner or as someone with experience. The evolution of thought around education and things that have changed at Elixir School. Learning that includes reasons why; you don't know what you don't know! Knowing your students and keeping them excited to maintain a passion for learning. Growing confidence and the benefits of great resources for the spread of increasing skills. Scratching your own itch; write the educational information that you cannot find yourself. Our guest's Elixir wish lists; more learning opportunities, widespread adoption and beginner-friendly content. Requests about Elixir from our guests, a few plugs and how to connect with them! Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Sophie DeBenedetto — https://twitter.com/sm_debenedetto Meryl Dakin — https://twitter.com/meryldakin Steven Nunez — https://twitter.com/_stevennunez Sean Callan — https://twitter.com/doomspork System 76 — https://system76.com/ Flatiron — https://flatironschool.com/ Elixir School — https://elixirschool.com GitHub — https://github.com/ Erlang — https://www.erlang.org/ Phoenix — https://www.phoenixframework.org/ Kubernetes — https://kubernetes.io/ The Developer's Guide to Content Creation — https://www.developersguidetocontent.com/ Stephanie Morillo — https://www.stephaniemorillo.co/ Elixir and The Beam: How Concurrency Really Works https://www.thegreatcodeadventure.com/elixir-and-the-beam-how-concurrency-really-works/Special Guests: Sean Callan and Steven Nunez.
undefined
Mar 19, 2020 • 51min

Saša Jurić on Training

Saša Jurić is a household name in the Elixir and Erlang space and we are so glad to finally welcome him on to the show today! Author of Elixir in Action, Saša is here to discuss training and his thoughts on getting a team up to speed with regards to testing and beyond. We hear from our guest about his discovery of Elixir, his uncharacteristic early adoption of the language, and why he chose it. From there, Saša talks a bit about his book, the opportunity that arose for him to write it after Manning approached him and how he views its place among other prominent pieces of literature on the subject. We discuss early steps in the process of learning Elixir for new programmers and old, and Saša weighs in on when it might be a good idea to put in the effort. We also get to hear about very big things, where Saša works and the central work and services of the agency. The last part of our conversation is spent on more technical aspects of Saša's work, his approach to coding in general and then approaches to testing and the training side of this. Join us today for this great conversation! Key Points From This Episode: Saša's discovery of Elixir and his first experiences of the language. A lucky opportunity to write a book that presented itself to Saša! The complementary nature of Elixir in Action; reading it in conjunction with other books. Ideas on how to introduce the concepts of Elixir to new programmers and the unfamiliar. The effort needed in order to understand and adopt the new paradigm of Elixir. Saša's work at very big things and the services that the agency offers. The most useful idioms that Saša uses and the modes of operation at that agency. Saša's use of Dialyzer for debugging despite its imperfections. The exploratory nature of good coding and finding solutions as you go. Helper libraries and comparing functions from Saša's own one! Training for unit, feature and integration testing; Saša's approach for his team. Differentiating between the different types of testing and the importance of naming. Clarifying Saša's philosophy on testing and his understanding of the term 'unit'. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Saša Jurić on Twitter — https://twitter.com/sasajuric The Erlangerist — https://www.theerlangelist.com/ Elixir in Action — https://www.manning.com/books/elixir-in-action-second-edition?query=sa%C5%A1a - use special code podexwizards20 for 40% off your purchase at Manning Publications! Michael Stevens — https://www.linkedin.com/in/michaelstephens2 Manning — https://www.manning.com/ Programming Elixir — https://pragprog.com/book/elixir16/programming-elixir-1-6 Learn Functional Programming with Elixir — https://pragprog.com/book/cdc-elixir/learn-functional-programming-with-elixir very big things — https://verybigthings.com/ Dialyzer — https://hexdocs.pm/dialyzex/Mix.Tasks.Dialyzer.html Hackers & Painters — http://shop.oreilly.com/product/9780596006624.do Paul Graham — http://www.paulgraham.com/ Justin Searls Blog - https://blog.testdouble.com/ Marie Kondo — https://konmari.com/Special Guest: Saša Jurić.
undefined
Mar 13, 2020 • 47min

Bonus Episode: Outlaws and Wizards

Elixir Outlaws invited us to join them for a special crossover episode, recorded live at Lonestar Elixir 2020. Join us for a conversation around fun and learning in development, highlights from day one of the conference, remembering Joe Armstrong, and more. Guests / Hosts Justus Eapen @justuseapen Anna Neyzberg @ANeyzb Amos King @adkron Bruce Tate @redrapids Susumu Yamazaki @zacky1972 Melvin Cedeno @TheCraftedGem Tim Mecklem @tim_mecklem Elixir Outlaws https://elixiroutlaws.com/ Lonestar Elixir https://lonestarelixir.com/Special Guests: Amos King, Anna Neyzberg, Bruce Tate, Chris Keathley, Melvin Cedeno, Susumu Yamazaki, and Tim Mecklem.
undefined
Mar 12, 2020 • 49min

Devon Estes from Sketch on Benchee, Performance and Training

Our guest today, Devon Estes, approached us about the possible opportunity for Elixir to optimize and build out the pandas data analysis and manipulation tool, sharing why he thinks it would be a valuable addition to the Elixir open source ecosystem. But Devon joins us to contribute to our ongoing discussion about performance and training in the Elixir world, sharing about his current work on the beta for Sketch Cloud, his previous Erlang consultancy role at one of the largest banks in Europe, and the massive responsibility he carried while working on the bottom line application. He continues to advise listeners on the considerations for optimizing Erlang performance and solving database-specific problems, and the memory constraints he comes up against in the Sketch Cloud application. Devon talks about Benchee, a benchmarking library created by his friend, and how the two of them have continued to develop this tool, including its performance testing capabilities and how they deconstructed the benchmarking steps to build out the library. He also talks more broadly about the importance of considering the data when distinguishing between facts and opinions in conversations about performance. Key Points From This Episode: What Devon believes would be a valuable addition to the Elixir open source ecosystem. Why optimizing and building out the pandas tool will be worth a company’s time and effort. Devon’s experience with pandas and Python, and recognizing the opportunity for Elixir. Working on the beta for Sketch’s Cloud that will allow real-time collaboration. Devon’s consultancy role at Klarna, one of the largest banks in Europe. The responsibility involved in working on the bottom-of-the-stack application at Klarna. Considerations for optimizing Erlang performance and why you should look at the tail. Solving the database performance problems – running queries and searches – at Klarna. The unique memory constraints of Sketch Cloud and the problem with receiving large files. More about Benchee, a benchmarking library, and all its performance testing capabilities. Deciding whether a function is responsible for other things when benchmarking. The time Devon spends on optimizing performance and the first two steps in the process. The profiling process of determining which function is slow and writing a benchmark for it. Distinguish between a fact and an opinion by considering the data (or lack thereof). Keeping in mind that truth is time-bound, and it also applies to benchmarking. Deconstructing the steps in the process of further developing Benchee. How Devon became a maintainer of the Elixir track for Exercism, and what the role involves. Links Mentioned in Today’s Episode: Devon Estes — http://www.devonestes.com Devon Estes on Twitter — https://twitter.com/devoncestes?lang=en Devon Estes on GitHub — https://github.com/devonestes pandas — https://pandas.pydata.org Python — https://www.python.org Sketch — https://www.sketch.com Klarna — https://www.klarna.com/international/ Erlang — https://www.erlang.org PostgreSQL — https://www.postgresql.org Ruby — https://www.ruby-lang.org/en/ Adopting Elixir — https://www.amazon.com/Adopting-Elixir-Production-Ben-Marx/dp/1680502522 Exercism — https://exercism.io JavaScript — https://www.javascript.com Benchee — https://github.com/bencheeorg SmartLogic — https://smartlogic.io/ Elixir — https://elixir-lang.org Elixir Wizards Podcast — https://podcast.smartlogic.io Update: What's Inside a Reduction? http://www.devonestes.com/inside-a-reductionSpecial Guest: Devon Estes.
undefined
Mar 5, 2020 • 54min

Second Annual Lonestar Lunchisode

Welcome back to the show for this special edition Lunchisode, coming to you live from the Lonestar Elixir 2020 Conference! We have a revolving door of speakers at this informal roundtable and a few friends and associates stop by to introduce themselves, share their thoughts on the conference so far and subjects that they care about. We follow up on some of the ideas raised in the Lonestar preview episode as well as hear about new and interesting ways that Elixir is being used at a variety of companies, including SalesLoft, ActiveProspect, SmartRent and more! We also consider the place of Elixir education and go deeper on the topic of finding fun and meaning in our programming pursuits and beyond. Join us for this special edition and stay tuned for the next installment soon. Key Points From This Episode: Thoughts on the conference so far — the talks and venue. SalesLoft's Elixir adoption and how the decision was made by those in power. Bruce Williams' current work at GitHub and his project on Absinthe. Elixir usage in Mexico and the prominent organizations and companies that use it. Some information on the Observability Working Group and what they are currently busy with. Differences between tracing and logging; tracing is essentially distributed logging. What it means for the programmer when they bump up against a challenge! The amount of effort that should go into developing entry points for new Elixir developers. Education in the Elixir space and the success of the bootcamp model. Considering the ongoing utility of unit tests and changing up training strategies. The work done by SmartRent in real estate and how Elixir fits into their tech stack. Links Mentioned in Today’s Episode: Lonestar Elixir — https://lonestarelixir.com/ Bruce Tate — https://twitter.com/redrapids Steve Bussey — https://twitter.com/YOOOODAAAA Bruce Williams — https://twitter.com/wbruce Ricardo Echavarria — https://twitter.com/r_icarus Brain Naegele — https://twitter.com/bside_bryan Frank Kumro — https://twitter.com/frigidcode Zach Thomas — https://twitter.com/ZachDCThom Dave Thomas — https://twitter.com/pragdave Jon Carstens — https://twitter.com/JonCarstens Todd Resudek — https://twitter.com/sprsmpl SmartLogic — https://smartlogic.io/ SalesLoft — https://salesloft.com/ Absinthe — https://github.com/absinthe-graphql/absinthe Sophie DeBenedetto — http://sophiedebenedetto.nyc/ RestFest — https://www.restfest.org/ Observability Working Group — https://erlef.org/wg/observability GigCity Elixir Conference — https://www.gigcityelixir.com/ ActiveProspect — https://activeprospect.com/ The Pragmatic Programmer — https://pragprog.com/book/tpp20/the-pragmatic-programmer-20th-anniversary-edition SmartRent — https://smartrent.com/ Blinker — https://www.blinker.com/Special Guests: Brain Naegele, Bruce Tate, Bruce Williams, Dave Thomas, Frank Kumro, Jon Carstens, Ricardo Echavarria, Steve Bussey, Todd Resudek, and Zach Thomas.
undefined
Feb 27, 2020 • 1h 11min

Bonus Toddcast & Lonestar Preview

This week we're delighted to share a special format bonus episode! We are joined by guest co-host Todd Resudek as well as a number of guests who each share a little bit about what they're working on and in many cases their upcoming presentations at Lonestar Elixir. Special episode guests: Angel Jose, Senior Platform Engineer at Cars.com Dave Lucia, VP of Engineering at SimpleBet Greg Mefford, Senior Back-End Engineer at Bleacher Report Melvin Cedeno, Elixir Developer at SplitGyms Zach Thomas, API Developer at Blinker Most of our guests weigh in about their upcoming presentations at the event and we also get to chat about a few near and dear topics with our rotating cast. We hear about where they are working, their experiences with Elixir and their thoughts on education and company culture. It's an unusual episode but one we are so glad to have had the chance to make! We also find time to touch on our focus for the next season of the podcast, which is very exciting for all of us over here at the show. Remember to stay plugged in for more on Lonestar Elixir and attend if you can! Key Points From This Episode: Some thoughts on LiveView and its adoption by new developers. Angel's work at Cars and how they are using Elixir and LiveView to rewrite everything. Chatbots and the immediate benefits of using Elixir to rewrite them. The elevator pitch on SimpleBet and the tech stack, skillset and ecosystem of the company. Why Dave and his team have moved away from Rust! A quick tease of what to expect for Season 4 of the podcast: Architecture of Applications! How Bleacher Report is using Elixir to build the 'third space' for sports fans. Team building and expansion at Bleacher Report and the stages of scaling. A sneak preview of Greg's upcoming talk at Lonestar! How Greg got started with Nerves and why it has a special place in his heart. The theme of Melvin's talk at Lonestar; untraditional routes and emotions in tech. Considering the usefulness of boot camps, the value of ISAs and CS programs. Zach's background in Elixir and his current work at Blinker with the language. Experiences at Turing and in liberal arts during college. Zach's Lonestar talk elevator pitch: 'Getting the Frog out of the Well'. The allegory of the cave, 'what is water' and how this differs from Zach's idea. Why don't we like statically typed things as much as we should? Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Lonestar Elixir 2020 — https://lonestarelixir.com/ Todd Resudek — https://medium.com/@toddresudek Todd Resudek on Twitter — https://twitter.com/sprsmpl Angel Jose — https://github.com/ajose01 Dave Lucia — https://github.com/davydog187 Greg Mefford — https://github.com/GregMefford/blinkchain Melvin Cedeno — https://gist.github.com/normanrs/eeb5cc91cb10eeb7d3e43168396efb27 Zack Thomas — https://github.com/zeam-vm/pelemay Sophie DeBenedetto — http://sophiedebenedetto.nyc/ LiveView — https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html ElixirConf — https://elixirconf.com/events Cars — https://www.cars.com/ SimpleBet — https://www.simplebet.io/ Full Stack Developer Horse Drawing Meme — https://knowyourmeme.com/photos/1624070-unfinished-horse-drawing Conway's Law — https://www.thoughtworks.com/insights/blog/applying-conways-law-improve-your-software-development ElixirConf 2019 - Lighting Talk - Are There Benefits Of Crying In Tech — https://www.youtube.com/watch?v=oW5Plkroyxk TRON — https://www.rottentomatoes.com/m/tron Smart Mirror Blog Post — https://medium.com/@toddresudek/building-a-smart-mirror-with-phoenix-liveview-18193ee6438f Bleacher Report — https://bleacherreport.com/ Team Topologies — https://teamtopologies.com/ Nerves — https://nerves-project.org/ Turing — https://turing.io/ CIRR — https://cirr.org/ David Heinemeier Hansson — https://dhh.dk/ Blinker — https://www.blinker.com/ David Foster Wallace — http://www.davidfosterwallacebooks.com/ Gödel, Escher, Bach — https://www.goodreads.com/book/show/24113.G_del_Escher_BachSpecial Guests: Angel Jose, Dave Lucia, Greg Mefford, Melvin Cedeno, Todd Resudek, and Zach Thomas.
undefined
Feb 20, 2020 • 26min

Alex Garibay and Mike Binns from DockYard on Hiring and Training

Today on the show, we’re joined by Mike Binns and Alex Garibay of DockYard. In this episode, Mike and Alex share their journeys of how they came to work at DockYard and give us a view into DockYard’s hiring and training processes, systems, and philosophies. Here they share what they enjoy most about working at DockYard and their emphasis on being supported in your continual growth as an employee and human being. Key Points from This Episode: Find out how Mike and Alex both got their jobs at DockYard in 2016. Working for a fully remote company: Mike and Alex share their experiences. The amount of languages used at DockYard and what the day-to-day looks like. React VS Ember: Find out DockYard’s opinion on the debate between the two. How to know whether you should be using JavaScript or Live View on your projects. The importance of inclusion and empowerment in the onboarding process at DockYard. How to support and train new employees in “soft” skills, such as communication. Personal strategies Mike and Alex use to help “soften the blow” of feedback and criticism. Discover what DockYard does to support the learning growth of their employees. Learn more about DockYard Friday and the exciting projects that have emerged from it. Helpful resources for learning Elixir and how to remain a curious learner as a developer. Find out the top skills that make a great engineering manager at DockYard today. Links Mentioned in Today’s Episode: Mike Binns on Twitter — https://twitter.com/1stAvenger Mike Binns on LinkedIn — https://www.linkedin.com/in/mikebinns Alex Garibay — https://alexgaribay.com/ Alex Garibay on Twitter — https://twitter.com/_AlexGaribay Alex Garibay on LinkedIn — https://www.linkedin.com/in/alexandergaribay/ DockYard — https://DockYard.com/ SmartLogic — https://smartlogic.io/ RailsConf — https://railsconf.com/ Chris McCord — http://chrismccord.com/ Ember — https://emberjs.com/ Live View — https://support.google.com/maps/thread/11554255?hl=en Elixir in Action — https://www.amazon.com/Elixir-Action-Sa%C5%A1a-Juri-cacute/dp/1617295027 Elixir Conf 2014 Keynote by Dave Thomas — https://www.youtube.com/watch?v=5hDVftaPQwY Sarah Drasner — https://sarahdrasnerdesign.com/ Lonestar Elixir — https://lonestarelixir.com/ Programming Phoenix — https://www.amazon.com/Programming-Phoenix-Productive-Reliable-Fast/dp/1680501453 Jason Goldberger — https://twitter.com/jsonlouis_Special Guests: Alex Garibay and Mike Binns.
undefined
Feb 13, 2020 • 35min

Sean Lewis from Divvy on Performance, Hiring and Training

Today on Elixir Wizards we are delighted to be joined by Sean Lewis, a senior backend architect at Divvy. One of the many impressive facts about Sean is that he is entirely self-taught, from dabbling in Python and coding to eventually writing a bunch of Ruby tests and working his way up in the product development sphere. In his free time, he likes to play around with electronics and work on other tech-related projects such as developing custom smart home devices. In this episode, Sean discusses his recent Meetup talk on the implementation of Broadway and explains Divvy’s tech stack choices that include React, Elixir, and Python. He dives into the topic of hiring for Elixir, outlining the challenges and providing strategies and resources to equip new developers in the area of functional programming. For Sean, the most important aspect of onboarding is teaching newcomers to ask the right questions since this is the foundation of the problem-solving process. He shares about Divvy’s approach to recruitment, his role as mentor, how they go about retaining and continuously growing their developers, the importance of being teachable, and then Sean concludes by giving listeners practical advice for ensuring data fidelity. Key Points From This Episode: Sean’s self-taught journey and role as senior backend architect at Divvy. The smart home projects he has recently worked on, including a smart garage. An overview of Broadway and Sean’s Meetup talk regarding implementation. The straightforward tech stack at Divvy: React, Elixir, and Python. The difficulty of hiring for Elixir and finding fintech companies that use Elixir. Strategies and resources for training new engineers on Elixir and functional programming. Why fintech works well with functional programming in the context of authorization. Training state-minimization as a primary concern. Onboarding: a process of teaching developers to ask the right questions. Divvy’s approach to finding and recruiting new employees. Thoughts on why so many Utahn companies use Elixir and the city’s exponential growth. How Sean was recruited by Divvy, his progression to architect, and his role as a mentor. Critical practices for onboarding developers, including assimilating them into the culture. How Devvy continues to grow and retain its engineers. The importance of challenging yourself, constantly learning, and staying teachable. Implementing high-quality checkpoints and other advice for ensuring data fidelity. Links Mentioned in Today’s Episode: Sean Lewis on LinkedIn — https://www.linkedin.com/in/sean-lewis-40375077/ Sean Lewis on Twitter — https://twitter.com/fricsean?lang=en Sean Lewis on GitHub — https://github.com/SophisticaSean Divvy — https://getdivvy.com Ruby — https://www.ruby-lang.org/en/ Broadway — https://hexdocs.pm/broadway/amazon-sqs.html Utah Elixir Meetup — https://www.meetup.com/utah-elixir React — https://reactjs.org Elixir — https://elixir-lang.org Susumu Yamazaki on Twitter — https://twitter.com/zacky1972 Domain Modeling Made Functional — https://www.amazon.com/Domain-Modeling-Made-Functional-Domain-Driven-ebook/dp/B07B44BPFB Slack — https://slack.com/ MongoDB — https://www.mongodb.com PostgreSQL — https://www.postgresql.org Elixir Wizards Podcast — https://podcast.smartlogic.io SmartLogic — https://smartlogic.io/ Special Guest: Sean Lewis.
undefined
Feb 6, 2020 • 52min

Paul Schoenfelder and Hans Elias Josephsen on Lumen and Performance

In line with our current working-with-Elixir theme, today we’re talking about performance with Paul Schoenfelder and Hans Elias Josephsen from DockYard. The two have been working on Lumen, and in this episode, they discuss how this project is incorporated with WebAssembly, a binary instruction format that ultimately allows Elixir to be run in the browser and preserve the semantics of the language. Paul and Hans talk about the specific aspects of Lumen they are working on; the data flow and process of writing Elixir; and the compiler, interpreter and run-time functions involved. Joining in this conversation, you will also hear how they approached starting developing Lumen as a brand new compiler, researching, the aspects Paul wanted to tackle first, and when users can expect Lumen to be released. We also talk about the performance concerns they encountered along the way, the many reasons why Rust was their programming language of choice, and their thoughts on generic associated types in Rust. Key Points From This Episode: • How Paul and Hans got introduced to Elixir and working for DockYard. • An overview of what Lumen is and how it relates to WebAssembly. • WebAssembly code to run Elixir in the browser and preserve the semantics of the language. • The different aspects of the Lumen project that Paul and Hans are involved in. • The data flow and process when writing Elixir and how the compiler function features. • Taking advantage of optimizations that can be performed on the code that is generated. • An explanation of the interpreter and run-time parts of the project. • How they approached the major task of starting with a brand new compiler. • The process of researching and why Paul wanted to get a frontend in place first. • The production readiness of Lumen and when they expect to release it. • Performance concerns they encountered during development. • The relevance of code size for the WebAssembly backend to be usable. • Why Rust was the best choice for building the compiler. • Using Elixir to generate a standard binary that can run on any machine. • A description of generic associated types in Rust and why they are controversial. Links Mentioned in Today’s Episode: Paul Schoenfelder on LinkedIn — https://www.linkedin.com/in/gotbones/ Paul Schoenfelder on Twitter — https://twitter.com/gotbones?lang=en Hans Elias Josephsen on Twitter — https://twitter.com/hansihe DockYard — https://dockyard.com Elixir — https://elixir-lang.org WebAssembly — https://webassembly.org Rust — https://www.rust-lang.org JavaScript — https://www.javascript.com C++ — http://www.cplusplus.com SmartLogic — https://smartlogic.io/ Special Guests: Hans Elias Josephsen and Paul Schoenfelder.

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode