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
Flutter 101 Podcast
Weekly podcast focusing on software development with Flutter and Dart. Hosted by Vince Varga.
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.
Remote Ruby
Three Rubyists having conversations and interviewing others about Ruby and web development.
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.
Scaling and The Growth Curve with Francesco Cesarini
Joining us for this episode of Elixir Wizards is the vastly experienced and well-traveled Francesco Cesarini! Francesco is the founder of Erlang Solutions and we are so lucky to have him here on the show to talk about his personal and professional journey, and take this great season of shows on the magic of the BEAM even further. Francesco takes us through his early interactions with computers and coding and the events that led to his decision to study computer science, before diving into his move to Sweden, and subsequently the UK, and how this all resulted in the founding of his company. Our guest touches on some helpful lessons he learned around marketing and branding, particularly related to the name of the company and we also discuss how the company grew in stages over the years. From there, the conversation turns to Francesco's work on conferences, and his commitment to this important feature of the community. We talk about the benefits of virtual conferences, what to look forward to, and the team that Francesco works with when organizing. To finish off this segment, our guest gives a few recommended resources and comments on Erlang syntax too! For today's mini-feature we welcome Jeffery Utter who works as a Senior Software Developer at Bleacher Report, so make sure to tune in to catch it all! Key Points From This Episode: Francesco's route into coding from an early age and first forays into studying computer science. The first job that Francesco had out of college: an exciting internship at Ericsson. How Francesco founded Erlang Solutions after leaving Sweden and moving to London. The big growth steps that happened over the years as Erlang Solutions developed. Francesco's evolving mindset during this growth period and his attitude towards scaling the company. The current size of the company and the offices that are spread all over the world! Virtual conferences, more connectivity, and the benefits of getting involved in the community. The planning process for conferences and the size of the team that put them together. The growth curve for Erlang Solutions over the years and the main drivers in the process. Examples from the explanatory videos that Francesco produced to help people understand Erlang. Francesco's feelings about Erlang syntax and the misconceptions about its difficulty. Recommendations of helpful resources to aid the learning curve. Getting involved with Erlang Solutions and connecting with Francesco and his team! Jeffery Utter from Bleacher Report joins us to briefly talk about his journey with Elixir. The time that Jeffery spent working at Communication Service for the Deaf prior to Bleacher Report. Some updates on the growth and evolution of Bleacher Report and what they offer users. How Elixir is used at Bleacher Report and its succession of Ruby at the company. Jeffery's alternate career paths and qualifications in music and education! Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Elixir Conference — http://smr.tl/conf-podcast Francesco Cesarini on Twitter — https://twitter.com/FrancescoC Joe Armstrong — https://codersatwork.com/joe-armstrong.html Erlang Solutions — https://www.erlang-solutions.com/ Erlang Programming Language - Computerphile — https://www.youtube.com/watch?v=SOqQVoVai6s Chalmers University of Technology — https://www.chalmers.se/en/Pages/default.aspx Erlang & Elixir Developers | Careers at Erlang Solutions — https://www.erlang-solutions.com/careers/ Code BEAM V SF 2021 — https://codesync.global/conferences/code-beam-sf-2021/. RabbitMQ Summit— https://rabbitmqsummit.com/ Languages, and about languages, on the BEAM — https://github.com/llaisdy/beam_languages Lambda Days 2021 — https://www.lambdadays.org/lambdadays2021 Code Mesh — https://codesync.global/conferences/code-mesh-ldn Erlang Master Classes University of Kent — https://www.cs.kent.ac.uk/ErlangMasterClasses/ Professor Simon Thompson — https://www.kent.ac.uk/computing/people/3164/thompson-simon Designing for Scalability with Erlang/OTP — https://www.oreilly.com/library/view/designing-for-scalability/9781449361556/ Erlang Programming — https://www.oreilly.com/library/view/erlang-programming/9780596803940/ Jeffery Utter — https://www.linkedin.com/in/jeffutter Bleacher Report — https://bleacherreport.com/ Communication Service for the Deaf — https://www.csd.org/ Gallaudet University — https://www.gallaudet.edu/
Bringing the Magic of Math into Programming with Chris Miller
Today we have some extra BEAM magic for all of you! Joining us on the show is Chris Miller, who currently works as an Associate Software Engineer at Corvus Insurance. We get into a great conversation with Chris about his history with programming, his long-held interest in mathematics, and how he is trying to bring these two worlds closer together through his work. Chris weighs in with some very important expert perspectives on a range of subjects, from monads and monoids to Vim and Emacs, before we get into the different avenues of Chris' work. Along with an old college friend, Chris runs the informative YouTube Channel, Coding Cave, helps other coders through mentorship and tutoring, and is also multilingual, speaking Mandarin, Spanish, German, and English! We get some illumination on interesting and important concepts such as Turing completeness, programming language theory, and more, all delivered with an accessibility that belies the high level of the material. So for all this, plus our bonus mini-segment with Semsee employee, Sidney Leatherwood, at the end, be sure to listen in today! Key Points From This Episode: The story behind Chris' Twitter handle and his admiration for Leonhard Euler! How Chris is bringing his love of math into his programming work. A crash course on monads and monoids! Chris' teaching and tutoring work and his aim of bringing fun examples into learning. The YouTube channel that Chris runs with an old friend, called Coding Cave. Chris' take on the Vim versus Emacs debate. How Chris learned to program from his father, and his return to it during college. Unpacking programming language theory and the idea of Turing completeness. Chris clears up the difference between computer science and mathematics. Reasons that Chris enjoys working in Elixir compared with other languages. Chris' goals for his YouTube channel and his hopes to spread advanced education. Magic and languages; a programming language theory perspective. Chris' day job as a software engineer at Corvus Insurance using Elixir and Elm. The array of languages that Chris can speak; Mandarin, German, and Spanish. The process of language acquisition and Chris' methods for learning. Why Chris believes starting with the function is the best way to learn a new programming language. The aspects of Elixir and the BEAM that have Chris the most excited at the moment! This week's mini-feature with Sidney Leatherwood and his use of Elixir in production. The comparative rating service that Semsee offers their customers. Hiring in Elixir currently; perks, challenges, and resources in the space. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Chris Miller on Twitter — https://twitter.com/blackeuler Elixir Wizard Conference — http://smr.tl/conf-podcast Leonhard Euler — https://en.wikipedia.org/wiki/LeonhardEuler Curry–Howard Correspondence — https://en.wikipedia.org/wiki/Curry%E2%80%93Howardcorrespondence Haskell — https://www.haskell.org/ Brooklyn Zelenka — https://medium.com/@expede Coding Cave — https://www.youtube.com/channel/UCwIO8jv71cbOyEwJdrYovg Conversations with the Creator: José Valim — https://www.youtube.com/watch?v=BXpoKKkqAX4 Functor — https://en.wikipedia.org/wiki/Functor Spacemacs: Emacs advanced Kit focused on Evil — https://www.spacemacs.org/ hlissner/doom-emacs — https://github.com/hlissner/doom-emacs Turing Completeness — https://en.wikipedia.org/wiki/Turingcompleteness Cal Newport — https://www.calnewport.com/ Boolean Algebra — https://en.wikipedia.org/wiki/Booleanalgebra Clojure — https://clojure.org/ Corvus Insurance — https://www.corvusinsurance.com/ APL — https://en.wikipedia.org/wiki/APL(programming_language) Gleam - https://gleam.run/ Sidney Leatherwood on LinkedIn — https://www.linkedin.com/in/leather-s Semsee — https://semsee.com/ Special Guest: Chris Miller.