Sinopsis
Elixir Mix is a weekly show focused on the Elixir programming community. Our panel discusses topics around functional programming, the Elixir ecosystem, and building real world apps with Elixir based tools and frameworks.
Episodios
-
EMx 060: Property-Based Testing, Dialyzer, & Inaka with Brujo Benavides
16/07/2019 Duración: 01h08minSponsors Sentry– use the code “devchat” for two months free on Sentry’s small plan CacheFly Panel Mark Ericksen Eric Oestrich Michael Ries Joined by Special Guest: Brujo Benavides Summary Brujo Benavides shares what he is working on right now and how his team feels about working in both Elixir and Erlang. He shares what his team has gotten out of using Elixir and what he thinks his team will get out of Elixir in the future. The panel discusses property-based testing and Fred Hebert’s book on property-based testing. Brujo shares use cases that would benefit from property-based testing and those that would benefit from unit testing. The panel considers dialyzer and shares their experiences using it in their code. Brujo explains how he chooses which tools to use for a project. Inaka is discussed; Brujo explains what they are all about and how to join. Upcoming conferences that Inaka is organizing is outlined and details on how to buy tickets are given. Links EMx 031: Le
-
EMx 059: Using Rust to Scale Elixir for 11 Million Concurrent Users with Matt Nowack
09/07/2019 Duración: 54minSponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly Panel Mark Ericksen Josh Adams Michael Ries Eric Oestrich Joined by Special Guests: Matt Nowack Summary Matt Nowack, a developer at Discord, gives an intro to Discord and shares its origin story. The panel discusses the problems that Discord was having because of its 11 million concurrent users. Matt talks about when they knew there was a problem, how they used a runtime VM to find the problem, the tools they tried to fix the problem and how they landed on NIFs to fix the problem. The panel discusses the risks of using NIFs and how using Rust helps negate that risk. Matt discusses the reference counter in the rustler package and answers questions about using dirty schedulers. Discord developers publish many blogs and publish many open source projects; Matt shares the Discord philosophy on open sourcing and contributing to the Elixir community. Links https://github.com/discor
-
EMx 058: Mint library with Eric Meadows-Jönsson & Andrea Leopardi
02/07/2019 Duración: 01h01minSponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly Panel Mark Ericksen Josh Adams Michael Ries Joined by Special Guests: Eric Meadows-Jönsson & Andrea Leopardi Summary Eric Meadows-Jönsson and Andrea Leopardi, members of the Elixir core team discuss the upcoming Mint library. They tell the panel their experience working on the core team and on the Mint library. They explain what Mint is and why people should know about it. Mint doesn’t use processes; Eric and Andrea explain why and what that means for the library. The panel discusses the benefits of using Mint and the use cases it can be applied to. Eric and Andrea give an update on how Mint is coming and explains why mint is not part of Elixir core. The panel considers building an HTTP library; Eric and Andrea share their experience. Links http://erlang.org/doc/man/httpc.html https://github.com/ericmj/castore https://elixir-lang.org/blog/2019/02/25/mint-a-new-http-libra
-
EMx 057: The Elixir Community with Adolfo Neto
25/06/2019 Duración: 01h05sSponsors Sentry use the code “devchat” for 2 months free on Sentry small plan Triplebyte offers a $1000 signing bonus CacheFly Panel Mark Ericksen Josh Adams Michael Ries Eric Oestrich Joined by Special Guest: Adolfo Neto Summary Adolfo Neto shares the background behind his Elixir Brazil 2019 talk. The panel discusses other talks of Elixir Brazil 2019, the organizing of the conference, and the diversity initiative. Adolfo shares his experience in the U.S., attending meetups for other programming languages, comparing them to Elixir. The panel considers the Elixir code formatter and gives protips for using it. The best way to teach Elixir and functional programming is considered; the panel shares experiences and resources for learning functional programming. Links A Comunidade de Elixir, Adolfo Neto, Elixir Brasil 2019https://medium.com/@adolfont/elixir-brazil-2019-4de3fc06b18fhttps://twitter.com/clojure_conj?lang=enhttps://collaboration.csc.ncsu.edu/laurie
-
EMx 056: Sobelow and Security with Griffin Byatt
18/06/2019 Duración: 46minSponsors Sentry use the code “devchat” for 2 months free on Sentry small planTriplebyte offers a $1000 signing bonusCacheFly Panel Mark EricksenJosh Adams Joined by Special Guest: Griffin Byatt Summary Griffin Byatt shares his background and what he is doing now as a security consultant for NCC Group. The panel discusses his security library, Sobelow, and their experiences using it. Griffin explains how it works, how it came into being and the goal of Sobelow. The panel wonders who contributes to Sobelow and Griffin invites anyone to contribute. Vulnerabilities that are commonly seen across all frameworks and those specific to Elixir are discussed. Elixir’s security features are considered and Griffin shares his experiences working to improve the ecosystem. Griffin gives advice and recommends resources to developers. Links Substitute Teacher - Key & Peelehttps://www.nccgroup.trust/us/https://brakemanscanner.org/https://github.com/nccgroup/sobelowhttps://github.com/nccgroup/sobelow/blob/master/lib/
-
EMx 055: Params Modules for Phoenix with Kuba Subczynski
11/06/2019 Duración: 56minSponsors Sentry use the code “devchat” for 2 months free on Sentry small planTriplebyte offers a $1000 signing bonusCacheFly Panel Mark EricksenMichael Ries Joined by Special Guest: Kuba Subczynski Summary Kuba Subczynski starts by introducing params modules and the story behind the pattern. The panel discusses their heuristics for deciding when to bring on a dependency and when to build something yourself. Kuba defines an embedded schema and walks through the login controller use case for the params modules. The panel discusses the highlights from the article and the benefits of using params modules. Kuba warns that this pattern isn’t for everything and discusses with the panel when to use params modules. Kuba discusses his team and what it was like adopting Phoenix and Elixir. Links https://www.sandimetz.com/https://kubasub.proseful.com/params-modules-for-phoenixhttps://github.com/vic/paramshttps://github.com/vichttps://medium.com/@alves.lcs/phoenix-strong-params-9db4bd9f56d8https://www.sandimetz.co
-
EMx 054: Phoenix LiveView with Leandro Pereira
04/06/2019 Duración: 01h02minSponsors Sentry use the code “devchat” for 2 months free on Sentry small planTriplebyte offers a $1000 signing bonusCacheFly Panel Michael RiesJosh AdamsMark Ericksen Joined by Special Guest: Leandro Pereira Summary Leandro Pereira starts by sharing what the Elixir community is like in Brazil. He explains what applications Phoenix LiveView works well for and those that it does not. The panel discusses why people are so excited for LiveView. JavaScript in LiveView is discussed, including where it is, what it does and Javascript fatigue in the community. Leandro shares where people can find demo projects. The panel discusses drab and why it didn’t catch on. The benefits of LiveView are discussed including, pain problems it will solve, avoiding the duplication of code, and the magic that happens in web end development. The panel shares projects they are working on or thinking of. Links https://lnasystems.com.br/https://medium.com/@ericclemmons/javascript-fatigue-48d4011b6fc4Swapping React for Phoenix Liv
-
EMx 053: Building beautiful systems with Phoenix Contexts and DDD with Andrew Hao
28/05/2019 Duración: 50minSponsors Sentry use the code “devchat” for 2 months free on Sentry small plan Triplebyte offers a $1000 signing bonus CacheFly Panel Mark Ericksen Josh Adams Joined by Special Guest: Andrew Hao Summary Andrew Hao joins the panel to discuss a recent talk he gave; he shares his background and his origin story with domain driven design. Andrew introduces an exercise that helped him called “Context Mapping”. The panel discusses how to context map and the benefits of doing this exercise with your team. Andrew explains what to model as methods and functions in context style mapping. Andrew explains aggregate roots. The panel discusses using these design tools in GraphQL and Phoenix Live View. Andrew warns against overusing these tools, leading to a discussion about how much is too much. Links ElixirDaze 2018 - Building beautiful systems with Phoenix contexts... by Andrew HaoDomain-Driven Design: Tackling Complexity in the Heart of Software Domain-Driven Design: Tackling Complexity
-
EMx 052: Production Pitfall Pontification
21/05/2019 Duración: 52minSponsors Sentry use the code “devchat” for 2 months free on Sentry small planTriplebyte offers a $1000 signing bonusCacheFly Panel Michael RiesJosh Adams Summary Michael Ries and Josh Adams share mistakes they have made and common pitfalls developers fall into during production. They start by discussing Heroku and Josh explains what pushed him away from Heroku. They discuss alternatives to Heroku and give tips on finding that “deployment sweet spot”. Moving on to configuration, they discuss the most common configuration error and their favorite configuration tools. Michael and Josh share the ways they use clustering. Using their own experiences they explain how they fell into these pitfalls warning new elixir developers, giving advice and sharing career hacks. Links https://nanobox.io/https://gigalixir.com/https://hex.pm/packages/conformhttps://github.com/bitwalker/toml-elixirhttps://github.com/keathley/vaporhttps://github.com/coryodaniel/bonnyhttps://hex.pm/packages/libclusterhttp://blog.plataformatec
-
EMx 051: Nerves and Farmbot with Connor Rigby
14/05/2019 Duración: 01h01minSponsors Sentry use the code “devchat” for 2 months free on Sentry small planTriplebyte offers a $1000 signing bonusCacheFly Panel Mark EricksenMichael RiesCharles Max Wood Joined by Special Guest: Connor Rigby Summary Connor Rigby, a core member of the Nerves team, answers the panel's questions about Farmbot and his experience working with Nerves. The panel discusses the great things about nerves. Connor shares his favorite tools for productions and testing practices. The panel discusses NervesKeys and NervesHub. Connor tells the panel what it was like working with NASA. Known for experimenting with Nerves, Connor talks about some of his projects. Links https://farm.bot/https://github.com/nerves-projecthttp://wiki.ros.org/sig/Embeddedhttps://elixirforum.com/t/sqlite-ecto2-new-maintainer/15611https://github.com/elixir-sqlite/sqlite_ecto2https://www.rosepoint.com/https://github.com/RosePointNavElixirConf 2015 - Embedded Elixir in Action by Garth HitchensMocks and explicit contractshttps://www.nerves-hu
-
EMx 050: Elixir Origin Story with José Valim
07/05/2019 Duración: 01h21minSponsors Sentry use the code “devchat” for 2 months free on Sentry small planTriplebyte offers a $1000 signing bonusCacheFly Panel Mark EricksenMichael RiesCharles Max WoodJosh Adams Joined by Special Guest: José Valim Summary José Valim, the creator of Elixir, shares his story with the panel starting with why he built Elixir. The panel wonders why José did not just use Erlang. José discusses what he wanted from Elixir and what problems he wanted to solve. The panel discusses concurrency, Metaprogramming, ad hoc polymorphism, and run times. José talks about what it was like as elixir grew in popularity and maintaining Elixir. José shares his goals for Elixir for 2019 and discusses his role in different projects. The panel shares their love for the friendliness and openness of the Elixir community and asks José how it became that way. The history of the signature heart emojis is shared. José shares a little about his everyday life and the things he enjoys to do. The episode ends with an update on the Er
-
EMx 049: Standard Library Treasures
30/04/2019 Duración: 45minSponsors Sentry use the code “devchat” for 2 months free on Sentry small plan Triplebyte offers a $1000 signing bonus .TECH – Go.tech/Elixir and use the coupon code “ELIXIR.TECH” and get a 1 year .TECH Domain at $9.99 and 5 Year Domain at $49.99. Hurry! CacheFly Panel Josh Adams Michael Ries Summary Josh Adams and Michael Ries discuss some of their favorites found in standard libraries and other tools. Michael starts by defining Ets, Dets, and Mnesia. They share the best ways to use these tools and when to use them. They also share uses cases and stories from times they have used these tools. Josh shares his work with UI’s and Michael discusses his work with nerves. They end by discussing the right time for new developers to learn how to use the tools discussed. Links https://showoff.riesd.com/https://hex.pm/packages/lbm_kvhttps://gist.github.com/mmmries/54c2110bb93af61ebfa1aff36acec9cahttps://twitter.com/elixir_mixhttps://twitter.com/elixir_mix Picks Michael Ries htt
-
EMx 048: Introducing Newest Panelist: Michael Ries
23/04/2019 Duración: 01h10minSponsors Sentry use the code “devchat” for 2 months free on Sentry small planTriplebyte offers a $1000 signing bonus.TECH – Go.tech/Elixir and use the coupon code “ELIXIR.TECH” and get a 1 year .TECH Domain at $9.99 and 5 Year Domain at $49.99. Hurry!CacheFly Panel Mark Ericksen Joined by Special Guest: Michael Ries Summary Mark Ericksen interviews the newest member of the Elixir Mix panel, Michael Ries. Michael shares a bit of his background and how he got into Elixir. While sharing what he loves about Elixir, Michael gives advice to developers new to Elixir. Mark asks Michael about all his experimental projects. Michael discusses his play with TCP subscriptions, monitoring, nerves, and robotics. Michael talks about Hackaway, a cabin retreat for developers, how he runs it and how it all got started. Links https://github.com/mmmries/gnathttps://github.com/mmmries/roombexhttps://pragprog.com/book/elixir16/programming-elixir-1-6https://nats.io/https://www.youtube.com/user/birdnandnerdhttps://gist.github
-
EMx 047: Property Based Testing with PropEr and Fred Hebert
16/04/2019 Duración: 58minSponsors Sentry use the code “devchat” for 2 months free on Sentry small planTriplebyte offers a $1000 signing bonus.TECH – Go.tech/Elixir and use the coupon code “ELIXIR.TECH” and get a 1 year .TECH Domain at $9.99 and 5 Year Domain at $49.99. Hurry!CacheFly Panel Mark Ericksen Joined by Special Guest: Fred Hebert Summary Fred Hebert shares his experience writing “Learn You Some Erlang for Great Good!: A Beginner's Guide” and “Stuff Goes Bad: Erlang in Anger”. He talks about why he wrote these books and explains the whimsical illustrations in “Learn you some Erlang”. Mark Ericksen asks Fred about his latest book “Property-Based Testing with PropEr, Erlang, and Elixir: Find Bugs Before Your Users Do”. Fred gives an overview of property-based testing, explaining what it is, why it is important and sharing tips for getting started in property-based testing. Mark and Fred discuss PropEr and Fred’s inclusion of Elixir in this book. The ecosystems of Erlang and Elixir are explored and Fred shares what he wou
-
EMx 046: Don't Repeat Your Domain Knowledge with Yiming Chen—
09/04/2019 Duración: 53minSponsors Sentry use the code “devchat” for 2 months free on Sentry small plan Triplebyte offers a $1000 signing bonus .TECH – Go.tech/Elixir and use the coupon code “ELIXIR.TECH” and get a 1 year .TECH Domain at $9.99 and 5 Year Domain at $49.99. Hurry! CacheFly Panel Mark Ericksen Josh Adams Joined by Special Guest: Yiming Chen Summary Yiming Chen and the panel discusses his recent blog post about not repeating domain knowledge. Yiming Chen describes what he means by domain knowledge and how this differs from the well known “do not repeat yourself” rule. The panel discusses how this changes the code and this leads to a conversation about good testing practices. Live view is discussed and the panel asks Yiming Chen what he is looking forward to in elixir. Yiming Chen talks about what the elixir community is like in China and his experience switching from ruby to elixir. Links https://dsdshcym.github.io/blog/2018/10/26/dont-repeat-your-domain-knowledge/https://en.wikipedi
-
EMx 045: Where the Wild Things Are with Johnny Winn
02/04/2019 Duración: 01h25minSponsors Sentry use the code “devchat” for 2 months free on Sentry small plan Triplebyte offers a $1000 signing bonus .TECH – Go.tech/Elixir and use the coupon code “ELIXIR.TECH” and get a 1 year .TECH Domain at $9.99 and 5 Year Domain at $49.99. Hurry! CacheFly Panel Charles Max Wood Mark Ericksen Josh Adams Joined by Special Guests: Johnny Winn and Michael Ries Summary Johnny Winn share his story with the panel starting with how elixir fountain got started. The panel compares elixir to other languages and share what they appreciate about it. After Johnny talks about what he is working on and his love for experimenting with elixir, the panel reveals some of the dumb, fun experiments that they have done in the past. Johnny shares how he burned himself out and the panel picks Johnny’s brain on signs that a someone might be burning out. This leads the panel into a deeper discussion of Johnny’s story and how he overcame that hard time in his life. Johnny shares a lot
-
EMx 044: Dangers of GenServers in Elixir with Mika Kalathil
26/03/2019 Duración: 42minSponsors Sentry use the code “devchat” for 2 months free on Sentry small planTriplebyte offers a $1000 signing bonus.TECH – Go.tech/Elixir and use the coupon code “ELIXIR.TECH” and get a 1 year .TECH Domain at $9.99 and 5 Year Domain at $49.99. Hurry!CacheFly Panel Charles Max WoodJosh AdamsMark Ericksen Joined by Special Guest: Mika Kalathil Summary Mika Kalathil introduces genservers and how they are misused. The panel plays with an analogy that explains how people think genservers work versus how genservers actually work. Mika Kalathil shares some ways to avoid the common mistakes with genservers. Tasks are introduced and explained by Mika Kalathil; the panel adds their input on the usefulness and the importance of tasks. Mika Kalathil shares his background and his transition to elixir from javascript. The panel asks Mika Kalathil questions about the libraries he uses, the types of projects that he works on and what improvements he would like to see in elixir. The episode ends with a discussion about
-
EMx 043: Using GenServers and Tasks Together to Create Fault-Tolerant Apps with Jack Marchant
19/03/2019 Duración: 54minSponsors Sentry use the code “devchat” for 2 months free on Sentry small planTriplebyte offers a $1000 signing bonus.TECH - Go.tech/Elixir and use the coupon code “ELIXIR.TECH” and get a 1 year .TECH Domain at $9.99 and 5 Year Domain at $49.99. Hurry!CacheFly Panel Mark EricksenJosh Adams Joined by Special Guest: Jack Marchant Summary Mark Ericksen and Josh Adams ask Jack Marchant, a software engineer from Australia, about a few of his blog articles. Jack Marchant compares supervision trees to react component trees using his background in both the frontend and the backend. The panel exchanges views on what these observations might look like and how they can help elixir developers. Mark Ericksen turns the discussion to Jack Marchant's articles on genservers, and the lessons he learned in working with genservers. Jack Marchant explains that there are so many different uses for a genserver. The panel considers when it is useful to use a genserver and when it is better not to. Jack Marchant shares a way to
-
EMx 042: Updates on ExVenture with Eric Oestrich
12/03/2019 Duración: 42minSponsors Sentry use the code “devchat” for $100 creditTriplebyteCacheFly Panel Josh AdamsMark Ericksen Guest: Eric Oestrich Episode Summary In this episode of Elixir Mix, Mark Ericksen and Josh Adams chat with guest, Eric Oestrich, a developer at SmartLogic and creator of ExVenture and Grapevine, two open source Elixir applications centered around text based games. Eric gives updates on ExVenture and Grapevine. Mark and Josh both have referenced ExVenture before, for using different ideas. They mention Prometheus and Grafana, two monitoring platforms that work well with Elixir applications. Eric also describes how Grapevine and ExVenture interact to help gamers get profiled with their achievements. Eric shares his experiences getting ExVenture set up with a continuous integration (CI) server. Panelists agree having side projects help developers try out new technology without deadline pressure. Eric does live development every Monday at 12:00 pm EST on smartlogictv. Eric and Mark both share their exp
-
EMx 041: What Really Makes Erlang and Elixir Fault Tolerant and Scalable with Francesco Cesarini
05/03/2019 Duración: 01h08minSponsors Sentry use the code “devchat” for $100 creditTriplebyteCacheFly Panel Josh AdamsMark EricksenCharles Max Wood Guest: Francesco Cesarini Episode Summary In this episode of Elixir, Charles Wood, Josh Adams and Mark Ericksen chat with guest, Francesco Cesarini, Founder and Technical Director at Erlang Solutions about how to build reliable and scalable systems within the Elixir and Erlang world. Erlang Solutions provides consultancy to customers who are not familiar with Elixir and offers training when necessary. With their WOMBATOAM tool that can handle very large-scale systems like WhatsApp with its fault tolerant capability. Francesco talks about how he likes Elixir which is an up and coming language that focuses on UI/UX usability and compares Erlang and Elixir languages. Francesco mentions he is impressed with the emphasis Elixir community places on user-friendliness. The guest discusses pros and cons of handling shared memory and concurrency. Supervisors and OTP help handle errors by crea