
Elixir Wizards is an interview-format podcast, focused on engineers who use the Elixir programming language. Initially launched in early 2019, each season focuses on a specific topic or topics, with each interview focusing on the guest's experience and opinions on the topic. Elixir Wizards is hosted by Eric Oestrich and Sundi Myint of SmartLogic, a dev shop that’s been building custom software since 2005 and running Elixir applications in production since 2015. Learn more about how SmartLogic uses Phoenix and Elixir. (https://smartlogic.io/phoenix-and-elixir?utm_source=podcast)
Similar Podcasts

Elixir Outlaws
Elixir Outlaws is an informal discussion about interesting things happening in Elixir. Our goal is to capture the spirit of a conference hallway discussion in a podcast.

Flutter 101 Podcast
Weekly podcast focusing on software development with Flutter and Dart. Hosted by Vince Varga.

Remote Ruby
Three Rubyists having conversations and interviewing others about Ruby and web development.
Sigu Magwa on the Elixir Community in Kenya
We are always excited to have conversations about the growth of the Elixir community, and today we go truly global, welcoming Sigu Magwa to the podcast, who hails from Kenya! Sigu is currently traveling in the US and he fills us in on some of the highs and lows of his trip and why he is so excited to get home to his friends and family. From there, we get into some interesting information about Elixir Kenya and the growth of the meetup over the last couple of years. Sigu shares some insight into IoT in his country and what the general tech space is like right now over there, before opening up about his journey into programming and how he found his way into working with Elixir. We also get to talk about his company, Podii, and their first few years working with clients. Apart from all the tech talk, Sigu is kind enough to shed some light on Kenya's matatu buses, and what makes them so unique, a subject that was particularly captivating to our panel! Listeners can also expect to hear about the recent ElixirConf Africa, Sigu's thoughts on hiring young talent, and what he hopes to see in the next decade within the community. So to catch it all, be sure to listen in with us on Elixir Wizards! Key Points From This Episode: Sigu's trip to the US and the sights he has been seeing in different cities. Some information from Sigu about the Elixir Kenya meetup and the community there. Sigu's experiences with IoT technology in Kenya and its adoption. The elevator pitch for Sigu's company, Podii, and its roots in training. Podii's current operation and company size and some of the projects they have worked on thus far. The coding language trends in Kenya; Sigu weighs in on what he has noticed. Sigu's history in the programming space and how he made his way into the world of tech. How 'matatu' buses operate in Kenya; TVs, celebrity portraits, strobe lights, and high speeds! The ElixirConf Africa that was hosted this year and Sigu's experience of being involved. Sigu's hopes for the Elixir community for the next ten years! Approaches for identifying talented young Elixir developers. How and where to connect with Sigu online and final remarks from our guest. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Sigu Magwa on LinkedIn — https://www.linkedin.com/in/sigu/?originalSubdomain=ke Sigu Magwa on Twitter — https://twitter.com/s_igu Podii — https://podiihq.com/ Nerves — https://www.nerves-project.org/platform.html ElixirConf Africa — https://elixirconf.africa/ QuadBlockQuiz — http://quadblockquiz.org:4000/ Matatu Bus — https://www.theguardian.com/world/gallery/2018/apr/27/a-minibus-ride-like-no-other-nairobis-matatu-culture-in-pictures Hire Junior Engineers — https://smartlogic.io/blog/hire-junior-engineers/ Teach Yourself Computer Science — https://teachyourselfcs.com/ Structure and Interpretation of Computer Programs — https://www.amazon.com/Structure-Interpretation-Computer-Programs-Engineering/dp/0262510871 Elixir Wizards Discord — https://discord.com/invite/JGcqSaYf2a Special Guest: Sigu Magwa.
Casting Spells with Brooklin Myers
Brooklin Myers is on a quest to change the perception that Elixir is difficult to get into and we are so grateful to have him as a guest on the show today. Aside from being a passionate programmer, Brooklin spends a lot of his time trying to encourage new members in the Elixir community through his Twitter account and podcast called Elixir Newbies. In this episode, we talk to Brooklin about his relationship with Elixir and its broader community, why he loves the space so much and, and why he wants to help it grow. We cover his journey into programming and how he got involved with Elixir specifically. He talks about the features of the language that he loves most and how learning Surface has allowed him to use Elixir in the same way he used to use React. Our conversation also ventures onto the subject of Dungeons and Dragons, another passion of Brooklin’s, and he tells us how learning programming is the closest he has come to fulfilling his dream of being a wizard! Key Points From This Episode: Region-specific spelling and our peeves about words we easily misspell. Brooklin’s background in React and how Surface has helped him use Elixir in a similar way. Structure and testing: Why Brooklin loves Elixir and how it compares to JavaScript. How Brooklin got into programming and left his job selling computers. What led Brooklin to discover Elixir and how he realized its true potential. The aspect of problem-solving and continuous growth Brooklin loves about programming. Brooklin’s desire to help others learn and why he started the Elixir Newbie podcast. How to get over perfectionism: the value of remembering it is okay to fail. Sundi and Brooklin’s approach to taking notes and turning them into posts or tweets. How Brooklin handles his writing, podcasting, and other work by time-blocking. Brooklin’s love of Dungeons and Dragons and the improvisation of being the DM. Why Brooklin loves fantasy and how programming is the closest thing to real-world magic. The impacts of Elixir on Brooklin and how supportive the community has been to him. Whether Brooklin feels that learning Elixir has changed the way he codes. Aspects of Elixir that can improve regarding ease of access to the community. Final shoutouts from Brooklin and where to connect with him online. Links Mentioned in Today’s Episode: Brooklin Myers on Twitter — https://twitter.com/brooklinjmyers Elixir Newbie — https://www.elixirnewbie.com/ Elixir Newbie Podcast — https://podtail.com/en/podcast/elixir-newbie/ Lost Mines of Phandelver – https://www.dicebreaker.com/games/dungeons-and-dragons-5e/deal/lost-mines-of-phandelver-adventure-free Kealy Doyle — https://www.linkedin.com/in/kealy-doyle/ Jono Stiansen — https://twitter.com/JonoCodes Matthew Baker — https://www.linkedin.com/in/mcbii/ Anton’s Pasta Bar — https://antonspastabar.com/ Keith Eats Everything — https://www.youtube.com/playlist?list=PL9qQXSjI-WOppp4B9x5bgsBS3993KAX2e Surface — https://hexdocs.pm/surface/Surface.html SmartLogic — https://smartlogic.io/ Special Guest: Brooklin Myers.
Speedcubing and Building Livebook with Jonatan Kłosko
It is important to us that the Elixir community keeps thriving, and one of the best ways to ensure this is by lowering the barrier to entry as much as possible. Livebook is helping to achieve this aim, and today we are lucky enough to be joined by its developer, Jonatan Kłosko. Jonatan is a young prodigy because while he is still at college, he is working closely with José Valim at Dashbit, and he can solve a Rubik’s cube in under five seconds! After hearing about his college thesis on evolutionary algorithms using Numerical Elixir, we jump into the story of how he met José and started building Livebook. He explains that Livebook is a web application for writing interactive and collaborative code notebooks for Elixir and we hear about the many features he is building into it. From there, Jonatan describes what he loves about Elixir, and we discuss how learning functional programming changes the way we code. Tuning in, you’ll also hear about a bunch of features that make Elixir so great, how its downsides are mostly solved by its extensibility, and some of Jonatan’s other hobbies that help him keep balance in his life. Be sure to sip on some Elixir with us today! Key Points From This Episode: Jonatan speaks about “speedcubing”: his hobby of quickly solving Rubik’s cubes. How Jonatan got into programming and where he is at in his CS degree. Discussing Jonatan’s Bachelor’s thesis project on evolutionary algorithms in Elixir. How evolutionary algorithms are a style of solving optimization problems biologically. Building the project using the Erlang distribution and the Numerical Elixir library. How Jonatan started working on the Livebook project with Dashbit. Thoughts on how Jonatan broke into the Elixir community and how others can do the same. Livebook: a code notebook application with collaborative and sequential evaluation features. The IEx session abilities of Livebook and how impressed Sundi was when she discovered them. The different use cases for Livebook and the direction Jonatan wants to take the app in. Jonatan’s process of learning Elixir at college and the application he built for a project. The pair programming features of Livebook and how to use them. How well-positioned Jonatan is to learn Elixir and what he loves about the language. The functional programming style and how it affects how people write code after learning it. Downsides of Elixir around immutability and typing and Jonatan’s feelings toward this. How Elixir is making an impact on the programming community through being user-friendly. Jonatan talks about his other hobbies and how he finds balance in his life. Hopes for the future of Elixir, resources for learning, and how to get involved in the community. How amazing the pipe operator is and the huge advantage it gives Elixir over JavaScript. Final plugs from Jonatan and how best to reach out to him online. Links Mentioned in Today’s Episode: Jonatan Kłosko — https://jonatanklosko.com/ Jonatan Kłosko on GitHub — https://github.com/jonatanklosko Speedcubing — https://www.rubiks.com/en-us/speed-cubing Erlang Ecosystem Foundation Slack — https://erlef.org/slack-invite/erlef Numerical Elixir — https://github.com/elixir-nx LiveView — https://hexdocs.pm/phoenixliveview/Phoenix.LiveView.html Phoenix LiveView — https://github.com/phoenixframework/phoenixliveview Dashbit — https://dashbit.co/ Haskell — https://www.haskell.org/ React — https://reactjs.org/ Elixir — https://elixir-lang.org/ José Valim — https://twitter.com/josevalim Livebook — https://dashbit.co/blog/announcing-livebook SmartLogic — https://smartlogic.io/ Special Guest: Jonatan Kłosko.
Protocols in Elixir with Yiming Chen
Today on the show we are grateful to get the chance to speak with Yiming Chen from Tubi, where we hear all about how he likes to use Elixir and the contributions he has made to the community. We begin as always with Yiming's journey into programming and how he got into Elixir through his early interest in Ruby. From there, we talk about the magic of Protocols, hearing about an awesome project Yiming built using them and how this lead him to build a testing framework called Promox. In this section, we also get into how Protocols enable polymorphic logic, why they are useful for defining shared interfaces explicitly, and the differences between Promox and Mox. Our conversation today covers some general advantages of writing code in Elixir, and we explore how it has influenced Yiming’s style of programming, its efficiency thanks to concurrency, and its usefulness for building maintainable applications. Wrapping up, we hear Yiming’s thoughts about the nascent Elixir community in China and all the future possibilities for this magical language. Key Points From This Episode: How Yiming got into programming by building websites using WYSIWYG tools as a child. Yiming’s experiences using Ruby and how that led him to learn Elixir. People Yiming knows that are using Elixir for personal projects and some highlights of these. Yiming’s project where he used Protocols to transfer files from one cloud provider to another. How Yiming’s Protocol project led him to create a testing framework called Promox. Protocols versus behaviors and how Promox differs from Mox. A basic description of how Protocols enable polymorphic logic in Elixir. Why Protocols are so useful for defining shared interfaces explicitly. The thing that makes Protocols in Elixir specifically attractive. Sundi’s talk on Mox and her thoughts on the pros and cons of using it. How Yiming got into using Mox through Ruby and his thoughts on it. The advantages of using Elixir over Ruby relating to concurrency and testing. Networking and software developer jobs after remote work. How Yiming’s ElixirConf talk went and the positive feedback he received. Yiming’s feelings about Test Driven Development and how closely he follows it. Learning Lisp in college and Yiming’s earlier experiences with functional programming. How small the Elixir scene in China is and thoughts about how it should grow. The benefits of Elixir for building maintainable applications and more. How Elixir has changed the way the Yiming programs. A model for building websites in Elixir with HTTP requests as functions. Final plugs from Yiming about the need for developers at Tubi! Links Mentioned in Today’s Episode: Yiming Chen on Twitter — https://twitter.com/dsdshcym?lang=en tubi.tv — https://tubitv.com/ Quinn Wilton — https://twitter.com/wilton_quinn Promox — https://giters.com/dsdshcym/promox Sundi Myint: Stunt Doubles | Testing with Mox, Elixir Conf 2021 — https://youtu.be/qMScnpGhu4E Yiming Chen - Promox: Roles, Protocols, and Mocks — https://youtu.be/Df81LbdRd0A ‘Mocks and explicit contracts’ — https://dashbit.co/blog/mocks-and-explicit-contracts Programming Phoenix — https://www.amazon.com/Programming-Phoenix-Productive-Reliable-Fast/dp/1680501453 Why Elixir Matters A Genealogy of Functional Programming - OsaGaius — https://youtu.be/X2u0bBqhRKE SmartLogic — https://smartlogic.io/ Special Guest: Yiming Chen.
Learning and Teaching Functional Programming with Adolfo Neto
Today we are joined by programmer, professor, educator, and podcaster, Adolfo Neto! We have a fascinating conversation that continues our exploration of the theme of the impact of Elixir, hearing from Adolfo about his early attraction to computers and computer science, the decision to study the subject, and how this led to a life in education and academia. We also talk about growing up in Brazil and how geography influenced his career trajectory, before getting into some of the main outlets that Adolfo uses to share information on functional programming. He also comments on what he loves about Elixir, why learning it can improve any programmer's skills, and much more. One of Adolfo's main goals with his podcasts and YouTube channel is the diversification of the computer science field, and to bring the subject to a wider audience that may not always consider it an option to pursue. Towards the end of our chat, our guest shares some thoughts on useful resources to check out, and his desire to help the Elixir community to continue to grow! Key Points From This Episode: Opening remarks and rants from Adolfo regarding Livebook! Adolfo's route into teaching and how he became a university professor. Information on Adolfo's Ph.D. program which he completed at the University of São Paulo. The initial impetus to study computer science; what drew Adolfo to the field. Adolfo's YouTube channels and the subjects he covers for his audience. The course that Adolfo offers on Elixir to students all over the world! How Adolfo found and learned about functional programming. Adolfo's thoughts on the benefits of different functional programming languages. The main goals that Adolfo has for his functional programming classes. Adolfo's own forays into podcasting, and what drew him to the medium! Experiences in the South; Adolfo's early days studying the US. Recommended resources for learning Elixir; the books and sites that Adolfo uses. Adolfo's hopes for Elixir to keep growing and why he prefers functional programming. How to connect with Adolfo online and make use of some of his amazing content! Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Adolfo Neto on Twitter — https://twitter.com/adolfont Adolfo Neto on YouTube — https://www.youtube.com/c/AdolfoNeto Livebook — https://livebook.dev/#install Fly.io — https://fly.io/ BASIC — https://en.wikipedia.org/wiki/BASIC ML (programming language) — https://en.wikipedia.org/wiki/ML(programminglanguage) Emílias on Twitter — https://twitter.com/emilias_utfpr Elixir em Foco on Twitter — https://twitter.com/elixiremfoco Seven Languages in Seven Weeks — https://www.amazon.com/Seven-Languages-Weeks-Programming-Programmers/dp/193435659X Clojure — https://clojure.org/ Laurie Williams — https://collaboration.csc.ncsu.edu/laurie/ Saša Jurić — https://www.theerlangelist.com/ Brujo Benavides on LinkedIn — https://www.linkedin.com/in/elbrujohalcon?originalSubdomain=es Elixir School — https://elixirschool.com/en/ Exercism Elixir Track — https://exercism.org/tracks/elixir Exercism Erlang Track — https://exercism.org/tracks/erlang Special Guest: Adolfo Neto.
The Benefits of Consistently Growing Your Toolset with Florian Kraft
As we continue this season of the podcast, focusing on the impact of Elixir, we are joined by Florian Kraft, all the way from Berlin, Germany! Florian works as a software engineer at Contentful, and has a number of exciting open-source projects that he is currently involved with. In our fun conversation with Florian, we get to hear about the events that led up to him becoming interested in computers and working with software, and why he maintains a light-hearted attitude when talking about his expertise. We also get to hear from our guest about his thoughts on a few other languages, and why learning new languages is a great way to constantly improve your work in the languages you already know! Florian talks about what drew him to Elixir and the community and also shares some of his reflections from this year's virtual Elixir Wizards conference. Towards the end of our chat, Florian tells us about his work with AdoptOSS and Mimicry, which you can currently find on GitHub, both of which we are quite excited about! So to hear it all from Florian and our usual suspects, be sure to listen in! Key Points From This Episode: Florian's interesting route into the world of software engineering. How Florian views his experiences and skills as a software engineer. Florian's thoughts on Haskell and some of the best resources for learning about it. The languages that Florian uses in his work at Contentful. Experiences entering into the Elixir community and the colleague who introduced him to the language! Life in Germany and Berlin; thoughts on the seasons, and the general culture. Florian's experiences at this year's Elixir Wizards conference; warming to virtual events. Staying active in the Elixir community and Florian's honest confessions about the time he puts in. Features that Florian misses and wishes for when working in Elixir. Immutability and pattern matching: Florian's favorite parts of Elixir! Some of the open-source Elixir projects that Florian is currently working on. The video games that Florian has most enjoyed recently and some of his all-time favorites! Where to find and connect with Florian and his exciting projects! Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Florian Kraft — github.com/FlorianK Contentful — https://www.contentful.com/ Exercism — https://exercism.org/ Adoptoposs — https://adoptoposs.org Adoptoposs Github — https://github.com/adoptoposs/adoptoposs Mimicry — https://github.com/mimicry-tech/mimicry Learn You a Haskell for Great Good — https://www.amazon.com/Learn-You-Haskell-Great-Good/dp/1593272839 Haskell — https://www.haskell.org/ Prolog — https://www.cpp.edu/~jrfisher/www/prologtutorial/ptframer.html Learn You Some Erlang for Great Good — https://www.amazon.com/Learn-Some-Erlang-Great-Good/dp/1593274351 Elixir in Action, Second Edition — https://www.manning.com/books/elixir-in-action-second-edition Gleam — https://gleam.run/ Autobutler — https://autobutler.co.uk Squid Game — https://www.rottentomatoes.com/tv/squidgame Oktoberfest — https://www.imdb.com/title/tt10244612/ Toucan — https://www.toucan.events/ The Binding of Isaac — https://store.steampowered.com/app/113200/TheBindingofIsaac/ Zelda — https://www.zelda.com/ Doom — https://bethesda.net/en/game/doom Defragmenting C Drive — http://hultbergs.org/defrag/ Special Guest: Florian Kraft.
Re-Platforming One of the Original Dot Coms in Elixir with Angel Jose
Today’s guest is Angel Jose, a Software Engineer Manager at Cars.com with a passion for product and the customer experience. Angel played a key role in completely re-platforming Cars.com via Elixir, Phoenix, and other open source tooling, and his former adventures in the blockchain space include working with ETH, EOS, and general distributed tooling. In today’s episode, we discuss Cars.com's decision to migrate to an entirely Elixir-based system, rebuilding the data model from scratch, redesigning all of the user interfaces, and what that meant for the team that Angel was tasked with leading, as well as how the Elixir system functions at such incredible scale, with Cars.com receiving more than a million visitors daily! We touch on Angel’s approach to onboarding new engineers, how Elixir impacts this process, and the broader impact Elixir has on the community as a whole, as well as what he hopes to see from the community in the future, so make sure not to miss this awesome conversation about adopting Elixir with Angel Jose! Key Points From This Episode: Hot takes, rants, and obsessions: Angel’s best and worst taco experiences. Why Angel won’t be at ElixirConf 2021 and the story of how he began programming in Elixir. The process of finding a job in software engineering after completing an online bootcamp. Angel’s experience of navigating the freedom that comes with being an engineer. Find out how Angel got involved in re-platforming Cars.com, one of the original dot coms. Get a glimpse into the make up of the engineering team at Cars.com. How the pandemic impacted not only Angel’s deadlines but the car industry as a whole. The ETL pipeline of different data points that makes up Cars.com and Auto.com. Angel shares his opinion of LiveView and what he has learned about using it at scale. Advice for those adopting new technology: make sure there are enough resources out there. Where Angel believes his team would be without Elixir and what they are looking forward to. Some of the tangible benefits Cars.com has seen from flipping the switch to Elixir. How Angel approaches onboarding new engineers by providing them with resources and integrating learning into their day-to-day. The importance of celebrating small wins and fostering feelings of accomplishment. Angel on how Elixir impacts onboarding and new engineers; more simplicity, less magic. How Elixir has impacted the programming community and what Angel hopes to see in future. Taco happy hour, conference food, making the most of each meal, remote work, and more! What Angel has learned from working remotely, particularly from a social perspective. Angel shares his dream car after working at Cars.com and moving to Colorado. Links Mentioned in Today’s Episode: Angel Jose on LinkedIn — https://www.linkedin.com/in/ajose01/ Angel Jose on Twitter — https://twitter.com/ajose01 Cars.com — https://www.cars.com/ Cars.com Careers — https://www.cars.com/careers/ Elixir Conf — https://2021.elixirconf.com/ Elixir Slack — https://elixir-slackin.herokuapp.com/ General Assembly — https://generalassemb.ly/ SmartLogic — https://smartlogic.io/ Special Guest: Angel Jose.
The Impact of Elixir Launchisode
As we kick off our new, seventh season of the Elixir Wizards podcast, we wanted to introduce our theme of the impact of Elixir by having a simple chat between our panel and foregoing our usual guest format. As fans of podcasts ourselves, we always like to get to know some of the personalities behind the voices, so we decided to take this opportunity to do just that, with Alex, Sundi, and Eric! So to hear a little about what to expect in the coming weeks of the show, what the teams have been up to recently, both professionally and beyond, and to just enjoy a quick hangout with some friendly voices, make sure you tune into this launchisode! Key Points From This Episode: What our team has been up to recently: new projects, the apprentice program, and more. Reflections on this iteration of the apprentice program and differences from 2018. The recent ElixirConf and how our panel was involved in the event. Inside information that is shared at conferences and learning about the world! Avoiding the pressure to always do more while engaging in the community. Noting the impact that Elixir has had on each of us, and how we write code respectively. Proactive learning and career growth; looking forward to the new season exploring these subjects! Staying focused on what's important, getting rest, and pursuing passions. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Aino — https://github.com/oestrich/aino Aino Read Me — https://ainoweb.dev/readme.html King Tooth — https://www.instagram.com/kingtoothpug/ SmartLogic Apprenticeship Program — https://smartlogic.io/about/community/apprentice/ SmartLogic Welcomes Two New Developer Apprentices to the Team! — https://smartlogic.io/blog/2021apprentices/ Elixir Conf — https://2021.elixirconf.com/ Culttt — https://www.culttt.com/ Shrek — https://www.rottentomatoes.com/m/shrek Kangaroo Jack — https://www.rottentomatoes.com/m/kangaroojack Korn — https://www.kornofficial.com/ Flutter — https://flutter.dev/docs/resources/books Lonestar Elixir — https://lonestarelixir.com/
Wrapping up BEAM Magic with Amos King
We have reached the final episode of our season, and as we wrap up our exploration of BEAM magic, we are joined by Amos King, whose tweet was the inspiration behind this season's focus! We've had such a great time this season and hope that our listeners have enjoyed it as much as we have, and gained something in the process. Our conversation with Amos jumps around from exploring his experiences during the last year and a half, to the journey he has been on with his company, Binary Noggin, life as a CEO, and much more! We delve into some thoughts from our guest about the relationship between magic and understanding and also talk a little about this year's upcoming ElixirConf, where Amos will be speaking. Amos also shares how learning a new language can help the coding you do in languages you already know, and tells an interesting story about how he turned a long commute into a superpower! So stay tuned for Season 7, coming to you soon, and thank you for sticking with us this long! Key Points From This Episode: Looking forward to this year's ElixirConf and the hope that it will proceed. Amos' return to the office after three months of working from home. A little about Binary Noggin and the different size clients they work with. The inspiration behind the company name and the transition from side work to a full-time gig. Amos' experiences as a CEO during the pandemic and the surprising growth at Binary Noggin. How Amos inspired the BEAM Magic theme for this season and his thoughts on understanding. Amos' experiences of speaking at conferences and the possibility of presenting about magic. Some details on Amos' talk this year at ElixirConf. How Amos was introduced to Elixir through Erlang and the things that made him love it! The impact that learning new languages can have on your work in general. How an extremely long commute early in Amos' career served him in unexpected ways. Links Mentioned in Today’s Episode: SmartLogic Jobs — https://smartlogic.io/about/jobs Amos King on Twitter — https://twitter.com/adkron Binary Noggin — https://binarynoggin.com/ Binary Noggin Careers — https://binarynoggin.com/about-us/#careers Binary Noggin Email — contact@binarynoggin.com DirtyInformation — http://dirtyinformation.com/ Elixir Outlaws — https://elixiroutlaws.com/ Wallaby — https://github.com/elixir-wallaby/wallaby Testing Elixir — https://www.goodreads.com/book/show/54156353-testing-elixir Special Guest: Amos King.
Mini-Feature Extravaganza featuring Tyler Clemens, Elom Amouzou, Elise Navarro, and Jeremy Neal
This episode serves as a round-up of some of the special mini-features we have recorded throughout Season 6, where we'll hear from Tyler Clemens, Elom Amouzou, Elise Navarro, and Jeremy Neal about their work and experiences with Elixir. Our first segment is with Tyler, who is a software developer at Jackpocket, where he explains what he is currently busy with and how the company is offering access to the lottery in more safe and convenient ways. We then move on to Elom, who talks about transitioning from a life in public education, and what prompted him to learn functional programming. Elise, who works at Zingeroo, takes us through her relatively new career, why she is so excited about Elixir, and the interesting work that is being done at her company to educate the public about the stock market. Lastly, Jeremy talks to us about the socially conscious agenda at Clover Food Lab, his personal interests in cooking and baking, and how he came to work with Elixir. All of our guests share helpful resources for learning, and reflections on their time working within Elixir - make sure to join us to catch all this good stuff! Key Points From This Episode: Tyler's path into software engineering and the first language he learned. What Jackpocket offers its customers and how Elixir is used within the company. Tyler's thoughts on the perks and challenges associated with engineering with Elixir. The most helpful resources that Tyler uses when in need: Elixir Slack, books, and Elixir School! Onboarding and training in Elixir and the biggest challenges presented in this area. Tyler's passion for photography and imagining an alternative career path in this direction. Elom's first programming language and the subsequent transition into Elixir. How Elom moved into working in programming from his roots in education. Elom's perspective on the positives associated with adopting Elixir early on. Resource recommendations from Elom for early-stage developers. Considering the pros and cons of the small intimate Elixir community and its future. Elom's ideal alternative career path and favorite book! Elise's beginnings in programming and her move from a career in digital media. Comparing Elixir with other languages; Elise weighs in with her experiences. What Zingeroo does and how they use Elixir to make the stock market more accessible through the app. The benefits of using Elixir for a real-time app like Zingeroo. The resources that have been most valuable to Elise since joining the community. Elise's alternative career path, and her passion for teaching Pilates. Jeremy's educational and professional path into software engineering and working with Elixir. How Jeremy has been using LiveView in his work to get a functional UI up and running. What Clover Food Lab does and how Elixir is used at the company and online store. Jeremy's thoughts on a different career and why he would love to be a baker! Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Tyler Clemens — https://www.linkedin.com/in/tylerclemens Jackpocket — https://jackpocket.com/ Elixir in Action — https://www.goodreads.com/book/show/38732242-elixir-in-action Elixir School — https://elixirschool.com/ Turing School — https://turing.edu/ Pragmatic Bookshelf — https://pragprog.com/ Code Flow Thinking Elixir — https://thinkingelixir.com/available-courses/code-flow/ Frantz Fanon — https://www.britannica.com/biography/Frantz-Fanon Peau Noire, Masques Blancs — https://www.amazon.com/Peau-Noire-Masques-Blancs-French/dp/2020006014 Elise Navarro — https://www.linkedin.com/in/elise-navarro Zingeroo — https://zingeroo.com/ Jeremy Neal — https://www.linkedin.com/in/jeremy-neal-59ba8b82 Clover Food Lab — https://www.cloverfoodlab.com/ Special Guests: Elise Navarro, Jeremy Neal, and Tyler Clemens.
Delving Deeper into Magic with Quinn Wilton
Joining us on the show today is Quinn Wilton, and we have a wonderful conversation with our guest about her journey with Elixir, unusual path into programming, and her wide appreciation for different languages! We start off looking at the time Quinn spent at Waterloo University and what separates the Canadian ethos around computer science. From there, we turn to Quinn's early work in programming, the first proper job that she stepped into, and the immediate affinity she felt for working in Elixir. We also talk a bit about the interesting research that Quinn has been conducting privately, tracking and plotting the path of Erlang over the decades, while also reflecting on the skill of academic reading. We spend some necessary time hearing from Quinn about the BEAM and what BEAM magic means to her, before hearing about her website, love of Twitter, other languages that currently have her excited, and the avenues she is most lit up about exploring in the future! Listen in to hear it all, as we continue this journey! Key Points From This Episode: Quinn's reflections on her education in Canada, and differences to the American approach to computer science. Reasons that Quinn wanted to pursue a career in programming The first jobs that Quinn landed as a programmer; creating a Roblox game and tracking malware. How Quinn was introduced to Elixir and the immediate love she felt for the language. The recent work that Quinn has been busy with researching and tracing the history of Erlang. Experiences of reading academic papers and what sets it apart from other formats. The inspiration behind Quinn's website and her affinity for Twitter's format. Quinn's favorite characteristics of the BEAM: the debugging possibilities. The project that Quinn worked on using Gleam on the BEAM and her enjoyment of its simplicity. Some possible areas, outlined by Joe Armstrong, that Quinn is excited to explore in the near future. Quinn's huge appreciation for different programming languages and her fascination with Strand. Encouragement from Quinn to dive into reading intimidating research papers. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/jobs Quinn Wilton — https://quinnwilton.com/ Quinn Wilton on Twitter — https://twitter.com/wiltonquinn Quinn Wilton on GitHub — https://github.com/QuinnWilton University of Waterloo — https://uwaterloo.ca/ Roblox — https://www.roblox.com/ Lookout — https://www.lookout.com/ Clint Gibler — https://clintgibler.com/ Gleam — https://gleam.run/ Joe Armstrong — https://www.theguardian.com/education/2019/may/08/joe-armstrong-obituary 'Getting Erlang to talk to the outside world' — https://www.researchgate.net/publication/2549678GettingErlangtotalktotheoutsideworld Universal Binary Format — https://github.com/ubf/ubf CLU — https://en.wikipedia.org/wiki/CLU(programminglanguage) Strand — https://en.wikipedia.org/wiki/Strand(programming_language) Special Guest: Quinn Wilton.
The Bridge Between Elixir and Zig with Isaac Yonemoto
While NIFs provide a great way to interface with native code in the BEAM machine, the process can also be rather error-prone. Thankfully, since Isaac Yonemoto built Zigler, things have become a lot simpler, and he joins us today to talk about how. Isaac is an Elixir developer with a background in biotech and we kick off the discussion by hearing about his journey into programming and some of the ways that he has combined it with science. From there we hear more about the different languages Isaac has worked in and why he fell in love with Elixir, where he talks about its encouragement of test-driven development and how this has made him a better programmer. We dive right into the contributions Isaac is making to the Elixir community next, and he starts off by talking about Zigler. He explains how Zigler provides a bridge between Zig and Elixir that makes it far easier to build NIFs. We hear a bunch of the other cool possibilities that Zigler offers to Elixir as well, including its ability to make debugging easier by appending the Zig stack trace to the Elixir one. After hearing Isaac’s opinion of magic in Elixir, we close today's show off with a few of the other projects he is working on, contributions that are bound to make the world of Elixir even more exciting! Key Points From This Episode: Isaac’s early exposure to programming and how he got started in tech. The education Isaac had in the sciences and his experience in the biotech sphere. Difficulties with installing Ruby and how this led to Isaac learning Elixir. Support for asynchronous testing and the reasons why Isaac finds joy in Elixir. The emphasis on test-driven development in Elixir and how this has made Isaac a better programmer. Isaac’s experiences with Zig and the similarities between it and Elixir. How NIFs allow C code in Elixir and what it is like debugging them. Isaac’s Zigler project and how it provides integration between Elixir and Zig making it easy to build NIFs. Cross-compiling C using Zig and why Isaac built a disassembler. Aspects of the BEAM that make it harder to write NIFs in Elixir than in Julia. Isaac’s opinion of magic in programming and how it should always be comprehensible. Final plugs from Isaac: where to find Zigler, and some upcoming projects. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Isaac Yonemoto on Twitter — https://twitter.com/DNAutics Isaac Yonemoto on GitHub — https://github.com/ityonemo Isaac Yonemoto on YouTube — https://www.youtube.com/channel/UCarZZW7eavljSdGRQx9kkSA Selectrix — https://github.com/ityonemo/selectrix Mavis — https://github.com/ityonemo/mavis Chiaroscuro - https://github.com/ityonemo/chiaroscuro Zigler - https://hexdocs.pm/zigler/Zig.html Zigler on GitHub — https://github.com/ityonemo/zigler Julia — https://julialang.org/ Testing Elixir with Jeffrey Matthias and Andrea Leopardi — https://smartlogic.io/podcast/elixir-wizards/s6e6-matthias-leopardi/ Special Guest: Isaac Yonemoto.
Maxim Fedorov on Building and Scaling WhatsApp with Erlang
Today we are so excited to share a conversation with Maxim Fedorov, who is the Core Infrastructure Lead at communications giant, WhatsApp! In our chat, Maxim offers such interesting insight and wisdom from a long career in the space, focusing on Erlang and why he views it as such a powerful language for the work at WhatsApp. We also get some backstory from Maxim, looking at his first experiences with computers, his educational background, and some of the work he did leading up to his current position. Our guest does a great job of sharing his thoughts on what he sees as a lack of magic within the Erlang language, why he prefers this, and how the company has managed to scale in such a major way over the past years. We also deal with some more general questions, weighing functional languages against object-oriented ones, useful resource recommendations, and a whole lot more! We finish off this episode with a mini-interview with David Hardwick, who is the current Vice President of Engineering at STORD, so make sure to stay tuned until the end for that! Key Points From This Episode: The beginnings of Maxim's interest in computer science and software development. How Maxim transitioned into the network security field. Maxim's experience with timezones and how this is approached for an app like WhatsApp. Thoughts on why WhatsApp is so popular outside of the United States. How Erlang is used at WhatsApp to power messaging. Probable reasons that Erlang was selected as the language for WhatsApp. Outages and downtime; what constitutes a serious issue for WhatsApp user experience. The massive growth that WhatsApp has seen and how their approach to scaling has evolved. Characteristics of Erlang that make it so well suited to WhatsApp's needs; simplicity and reliability. Maxim's perspective on the issues around programmer education and their results. Functional languages versus object-oriented programming; Maxim's thoughts on strengths and weaknesses. Why Maxim views Erlang as not containing or performing anything magical. Maxim's recommendations for resources when getting started in Erlang! Looking back at Maxim's experiences of tertiary education and the thesis he produced. The scaling of the WhatsApp server; the project that Maxim is most proud of! Maxim's love for motorcycles and bicycles and how these grew out of initial conveniences. Today's mini-feature interview with David Hardwick, VP of Engineering at STORD. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Maxim Fedorov: https://au.linkedin.com/in/maxim-fedorov-14a570b Electronika MK-61 — https://en.wikipedia.org/wiki/ElektronikaMK-52 Brian Acton — https://www.forbes.com/profile/brian-acton/ Learn You Some Erlang — https://learnyousomeerlang.com/ Adopting Erlang — https://github.com/adoptingerlang Joe Armstrong Thesis — https://erlang.org/download/armstrongthesis2003.pdf The BEAM Book— https://github.com/happi/theBeamBook ejabberd — https://www.ejabberd.im/ Will Cathcart Tweet — https://twitter.com/wcathcart/status/1385253969522413568 Clarke's three laws — https://en.wikipedia.org/wiki/Clarke%27sthree_laws Lukas Larson — https://twitter.com/garazdawi Erlang OTP — https://github.com/erlang/otp/blob/master/lib/kernel/src/pg.erl David Hardwick — https://www.linkedin.com/in/davidhardwick STORD — https://www.stord.com/ BetterCloud — http://www.bettercloud.com/ Special Guest: Maxim Fedorov.
Chelsea Troy on the Importance of Access and the Impact of Teaching
Some of you may recognize Chelsea Troy from her popular blog of the same name or as a keynote speaker for the March 2021 Code BEAM conference. Chelsea is an instructor in the Master's Program in Computer Science at the University of Chicago and currently works as a staff software engineer at Mozilla, where she specializes in machine learning and backend systems. In our conversation with Chelsea, we discuss some of the unique aspects of coding as a career. Chelsea outlines how programming can be more accessible than other careers because it doesn't have the same financial burden when it comes to education. She also emphasizes the importance of allowing a more diverse range of people access to the field and unpacks the type of person the internet was originally built for, explaining how it had favored privileged affluent individuals from the Bay Area. We hear from Chelsea about how she became a programmer out of a desire for job security rather than passion and why she believes it’s so important to have a broader representation of different narratives when it comes to careers in programming and coding. Later Chelsea shares the story of how she became an educator and why she is so passionate about teaching. For all this and much more, join us today! Key Points From This Episode: Introducing today’s guest Chelsea Troy Why Chelsea believes it’s important to privilege multiple narratives of why people choose to pursue programming as a career. There is less of a financial burden with becoming a programmer than other higher-paying professions. The benefits of a diverse group of people having access to programming as a career. What first prompted Chelsea to start her blog and how her goals for it have changed over time. Why Chelsea struggles to give advice on how to market a blog. How being able to draw parallels between different coding languages has strengthened Chelsea’s teaching and writing pursuits. Why Chelsea is so enthusiastic about teaching. How teaching allows Chelsea to have a more meaningful impact in the field of tech. How Chelsea prioritizes which jobs and clients to pursue as a consultant. How having two parents who taught for living influenced Chelsea’s passion for teaching. Chelsea shares how she earned her position at Chicago University, despite expecting not to. The challenges and benefits of teaching remotely. The pros and cons of functional languages versus object-oriented languages. How students tend to react to learning functional languages versus object-oriented languages. Mini-feature segment: hear from Rosemary about how she became a software engineer. How Rosemary built websites as a side hustle while studying English. Rosemary shares how she transitioned from working with Java and Blu-ray discs to doing back-end web development and writing in Elixir. How RentPath, the company Rosemary is currently working for, is transitioning from Ruby to Elixir. An outline of RentPath and what they do. Rosemary’s many hobbies and pursuits, including wildlife photography. Links Mentioned in Today’s Episode: Chelsea Troy on Twitter — https://twitter.com/HeyChelseaTroy Chelsea Troy on LinkedIn — https://www.linkedin.com/in/chelseatroy/ Chelsea Troy Blog — https://chelseatroy.com/ Upcoming Code BEAM Conferences — https://codesync.global/ Chelsea Troy on Youtube — https://www.youtube.com/channel/UCIwpdjmSUJmqJ8HwvIGNqig Ruby — https://www.ruby-lang.org/en/ Mozilla — mozilla.org/en-US/ Pocket — https://getpocket.com/ Rosemary Ledesma — https://www.linkedin.com/in/rosemary-ledesma-b6198717/ RentPath — https://www.rentpath.com/ RedFin — https://www.redfin.com/ Special Guest: Chelsea Troy.
Testing Elixir with Jeffrey Matthias and Andrea Leopardi
While we can think of many reasons why we love Elixir, the community could always benefit from a more lively conversation around testing. It was with this in mind that Jeffrey Matthias and Andrea Leopardi decided to write Testing Elixir, and today they join us on the show to share some of the insights to be found in their new book. Our guests start by sketching out the main reasons why they decided to write a book of this nature before speaking to the process of writing it collaboratively from their respective homes in Italy and the US. Andrea and Jeffrey speak about the challenges of finding a middle ground between their unique styles to come up with a unified testing method. The conversation then takes a deep dive into the weeds of testing in Elixir and we hear our guests' perspectives on the most appropriate situations to use async true, Mox, Ecto Sandbox, and other techniques. We wrap up our interview with a question about what Andrea and Jeffrey would most like people to take away from their book where they express the hope that it can act as a springboard for further conversation about best practices for testing in Elixir and more. As always, we close the show off with our mini-interview, this time talking to Tracey Onim from Podii. Key Points From This Episode: Why Jeffrey and Andrea wrote their book and how they pitched it to the publisher. How the feedback Andrea and Jeffrey got while writing the book shaped its content. What writing the book was like considering its authors live in different countries. How our guests came up with a unified testing method when each had their own style. Stories about testing mistakes and the funny situations they led to. Discussing the HBO integration test email and how it was responded to and dealt with. The issue of developers not using async true enough and how to get better at it. When to use async true, Ecto Sandbox, and Mox. Why our guests use Mox, when the best times to use it are, and how it shapes your thinking. Exploring the relationship between test driven development and using the program. What can go wrong if you rely purely on tests to test out your code. The main takeaways our guests hope can be found in their book. Final plugs from Jeffrey and Andrea and where to find them online. A quick interview where we learn more about Tracey Onim from Podii. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Jeffrey Matthias on Twitter — https://twitter.com/idlehands Andrea Leopardi — https://andrealeopardi.com/ Andrea Leopardi on Twitter — https://twitter.com/whatyouhide Andrea Leopardi on GitHub — https://github.com/whatyouhide/corsica Testing Elixir — http://testingelixir.com/ Testing Elixir — https://pragprog.com/titles/lmelixir/testing-elixir/ Testing Elixir — https://www.target.com/p/testing-elixir-by-andrea-leopardi-jeffrey-matthias-paperback/-/A-83072057#lnk=sametab Testing Elixir on Twitter — https://twitter.com/testingelixir Publish with The Pragmatic Bookshelf — https://pragprog.com/become-an-author/ Ecto.Adapters.SQL.Sandbox — https://hexdocs.pm/ecto_sql/Ecto.Adapters.SQL.Sandbox.html Mox — https://hexdocs.pm/mox/Mox.html Command Line Options — https://hexdocs.pm/mix/1.12/Mix.Tasks.Test.html#module-command-line-options Mocks and Explicit Contracts — http://blog.plataformatec.com.br/2015/10/mocks-and-explicit-contracts/ bypass — https://github.com/PSPDFKit-labs/bypass Test-Driven Development with Phoenix — https://www.tddphoenix.com/ Tracey Onim — https://www.linkedin.com/in/tracey-onim-420b3316a?originalSubdomain=ke Podii — https://www.apollo.io/companies/Podii/5c1df0e8f651257261ddc16a?chart=count Special Guests: Andrea Leopardi and Jeffrey Matthias.