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.

Building APIs - EMX 181

July 13, 2022 1:06:16 30.82 MB Downloads: 0

In this episode Adi and Sascha dig deeper into what it means to consume and build APIs in Elixir and how a RESTful approach compares to choosing GraphQL as your weapon of choice. Along the way they discuss common pitfalls when building APIs (spoiler: one is caching), how to test all of this, and what their personal preferences and experiences are in creating APIs in Elixir. Sponsors Top End Devs Coaching | Top End Devs Links Finch - Finch v0.12.0  HTTPoison - HTTPoison v1.8.1 GitHub - elixir-plug/plug_cowboy: Plug adapter for the Cowboy web server Instant GraphQL APIs on your data | Built-in Authz & Caching JWT.IO DDD, Hexagonal, Onion, Clean, CQRS, ... How I put it all together Protocol Buffers | Google Developers GitHub - parroty/exvcr: HTTP request/response recording library for elixir, inspired by VCR. Boston Elixir June 2021 - Adi Iyengar - Levels of testing API calls How I deal with behaviours and boilerplate - Sascha Wolf A guide to fuzz testing Picks Adi- Reach out if you're hiring Elixir devs! (aditya7iyengar@gmail.com) Adi- Buy a punching bag for both workout/releasing frustration Adi- Testing Elixir Sascha- Deep Rock Galactic

Effective Software Documentation with Everett Griffiths - EMx 180

July 06, 2022 1:01:13 74.4 MB Downloads: 0

Bad documentation wastes time, costs real money, and makes developers unproductive.  Documentation might be bad because it is flat-out wrong (typos, references to an older version, etc.), but more often documentation is bad when it fails to tell us what we need to know.  Don’t let all your hard work go to waste because you failed to communicate what your software is or how to use it.  Today on the show, Everett Griffiths shares his insights on how to approach documentation simply and effectively. In this episode… What got you into documentation?   Examples, examples, examples Having an effective feedback loop Key word arguments Coding is easy, but documentation is hard Using mermaid charts Open sourcing your software Clean code and clean infrastructure  Simplifying coding environments  Sponsors Top End Devs Coaching | Top End Devs Links WTFM: Writing Effective Software Documentation Inspecting Ecto Schemas with Elixir | by Everett Griffiths | Medium 1 Enhancing Elixir Documentation with Mermaid Charts | by Everett Griffiths | Medium 1 Coding is Easy; Communication is Hard | by Everett Griffiths | Medium 1 LinkedIn: Everett Griffiths Twitter: @fireproofsocks Picks Adi- Grafana OnCall Allen- MJML - The Responsive Email Framework Everett- Paasaa - Paasaa v0.6.0 Everett- The Guns of August: The Pulitzer Prize-Winning Classic About the Outbreak of World War I

All Things Concurrency - EMx 179

June 29, 2022 43:13 52.8 MB Downloads: 0

In this week’s all-panelist episode, Sascha and Allen tackle the topic of concurrency on The Beam.   They discuss parallelism, some things to do and some not to do, and some of the questions and issues that arise. Sponsors Top End Devs Coaching | Top End Devs LinksStuff Goes Bad Erlang in AngerPicks Allen- Handling Overload Sascha- Kinetic Games

Animating Error Tags in Phoenix LiveView - EMx 178

June 22, 2022 1:00 79.01 MB Downloads: 0

Challenges of Scaling and Choosing the Right Tool with Simon Zelazny - EMx 177

June 15, 2022 1:00 83.2 MB Downloads: 0

Macros and Busting Boilerplate with Robert Ellen - EMx 176

June 08, 2022 1:00 81.58 MB Downloads: 0

Managing Business Rules in Elixir Applications - EMx 175

June 01, 2022 1:00 53.92 MB Downloads: 0

Career Progressions: From Paratrooper to Software Engineer with Teo Diaz - EMx 174

May 25, 2022 1:06:50 81.14 MB Downloads: 0

Teo Diaz spent the first half of his career as a paratrooper and security agent for the Spanish army, until he made a career pivot to become a software engineer. Teo shares his story from the bootcamp beginnings to JavaScript and Elixir, and then landing his first job in the industry. Teo also shares how he uses Elixir on a daily basis as an engineer within Cabify, the international ridesharing company based in Madrid, Spain. Sponsors Top End Devs (https://topenddevs.com/) Coaching | Top End Devs (https://topenddevs.com/coaching) Links From paratrooper to programmer (https://cabify.tech/culture/from-paratrooper-to-programmer/) Cabify (https://cabify.com/en) Picks Adi- Tray.io (https://tray.io/) Adi- Code Sync (https://codesync.global/conferences/code-beam-sto-2021/) Allen- Alpine.js (https://alpinejs.dev/) Teo- Phoenix LiveView Free Course (https://pragmaticstudio.com/phoenix-liveview) Teo- Tailwind CSS (https://tailwindcss.com/) Special Guest: Teo Diaz .

Promises of the Elixir & BEAM - EMx 173

May 18, 2022 54:12 65.98 MB Downloads: 0

In this all-panelist episode we discuss the promises of the BEAM, and how these hold up in reality. Is the BEAM truly resilient? Allen, Sascha and Adi discuss their experiences using the BEAM, how it compares to other options, and discuss why Elixir isn’t a more prominent technology. Sponsors Top End Devs (https://topenddevs.com/) Coaching | Top End Devs (https://topenddevs.com/coaching) Links Tailwind CSS - Rapidly build modern websites without ever leaving your HTML (https://tailwindcss.com/) Tailwind UI (https://tailwindui.com/) Picks Adi- Masamune-kun no Revenge (https://myanimelist.net/anime/33487/Masamune-kun_no_Revenge) Allen- Tailwind UI (https://tailwindui.com/) Sascha- Metaprogramming Elixir (https://read.amazon.com/kp/embed?asin=B00U1VU2GA&preview=newtab&linkCode=kpe&ref_=cm_sw_r_kb_dp_4Y1E33VJTWB7RP9XTNTW) Sascha- studiominiboss (https://blog.studiominiboss.com/celeste) Sascha- Psycho-Pass (https://psycho-pass.com/)

Publishing Static Github Pages Using Github Actions - EMx 172

May 11, 2022 1:00:31 73.56 MB Downloads: 0

Nato Boram joins the show to share how to publish static GitHub pages of your documentation using GitHub actions. Allen and Nathan also discuss Elixir compared to other languages, functional ways of programming, and the “let it crash” philosophy. Finally, they end the show with ideas on how Elixir can become a better language. In this episode… Nato’s journey from Flutter to Elixir Pros and cons of Elixir and Phoenix How to publish static GitHub pages using GitHub actions Elixir compared to other languages Elixir syntax variations and inconsistencies Functional way of programming with Elixir Pattern matching Let it crash philosophy Go formatting Ideals and changes to make Elixir better Sponsors Top End Devs (https://topenddevs.com/) Coaching | Top End Devs (https://topenddevs.com/coaching) Links How to publish ExDocs on GitHub Pages (https://medium.com/@nato.boram/how-to-publish-exdocs-on-github-pages-5cda6f89a8e9) Picks Allen- Row Level Security (RLS): Basics and Examples (https://satoricyber.com/postgres-security/postgres-row-level-security/) Nathan- Phoenix Live View Formatter (https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.HTMLFormatter.html) Special Guest: Nato Boram.

Benchee and Elixir 2.0 with Tobi Pfeiffer - EMx 171

May 04, 2022 1:21:50 99.13 MB Downloads: 0

Tobi Pfeiffer, creator of Benchee, joins the show to share his perspective on benchmarking and Elixir integrations. The hosts start by bantering with Tobi about the Elixir community, deeming it less inviting compared to other language communities. Tobi then shares his career progression, how he landed in the Elixir ecosystem, and why he created Benchee. Finally, the panel debates the future for Elixir and share their wish list features for Elixir 2.0. Sponsors Top End Devs (https://topenddevs.com/) Coaching | Top End Devs (https://topenddevs.com/coaching) Links Benchee 1.1.0 released + why did it take so long – Journeys of a not so young anymore Software Engineer (https://pragtob.wordpress.com/2022/03/08/benchee-1-1-0-released-why-did-it-take-so-long/) The silence between – Journeys of a not so young anymore Software Engineer (https://pragtob.wordpress.com/2022/03/08/the-silence-between/) My Talks (https://www.pragtob.info/talks) GitHub: PragTob - Overview (https://github.com/PragTob) Picks Adi- Joy of Elixir (https://leanpub.com/joyofelixir) Adi- Learn with me Elixir (https://inquisitivedeveloper.com/tag/lwm-elixir/) Allen- Pomodoro Technique (https://pragprog.com/titles/snfocus/pomodoro-technique-illustrated/) Sascha- Team Topologies (https://teamtopologies.com/book) Sascha- First Class Trouble (https://store.steampowered.com/app/953880/First_Class_Trouble/) Tobi- Godot Engine (https://godotengine.org/) Tobi- The Healthy Programmer (https://www.amazon.com/Healthy-Programmer-Better-Pragmatic-Programmers/dp/1937785319) Tobi- Code Bean Lite Conference (https://www.codebeamcorunha.es/en) Tobi- Mistborn: The Final Empire (https://www.amazon.com/Mistborn-Final-Empire-Book-No/dp/0765350386) Tobi- Foreigner on Steam (https://store.steampowered.com/app/1207210/The_foreigner/) Special Guest: Tobias Pfeiffer.

Supabase with Chase Granberry - EMx 170

April 27, 2022 48:35 59.24 MB Downloads: 0

In this Episode we talk with Chase Granberry of Supabase discussing the role of Elixir and other languages at the company. Upcoming developments and potential directions that the company may take. Sponsors Top End Devs (https://topenddevs.com/) Coaching | Top End Devs (https://topenddevs.com/coaching) Links Demo Site (https://multiplayer.dev/) GitHub: Supabase / realtime-js (https://github.com/supabase/realtime-js) stressgrid.com (https://stressgrid.com/blog/100k_cps_with_elixir/) Logflare (https://logflare.app/) Supabase (https://supabase.com/) Picks Allen - Phoenix LiveView on The Pragmatic Studio (https://pragmaticstudio.com/phoenix-liveview) Chase - Stressgrid Blog (https://stressgrid.com/blog/) Chase - ElixirConf 2021 Mark Ericksen - Globally Distributed Elixir Apps on Fly.io (https://www.youtube.com/watch?v=IqnZnFpxLjI) Special Guest: Chase Granberry.

Building Project Severus with Eric Sullivan - EMx 169

April 20, 2022 1:03:34 77.22 MB Downloads: 0

Eric Sullivan joins the mix to discuss Project Severus. He started out with greeting carts and it grew into a way of sharing and keeping up on contact information. He dives into how it works and then into the technical details of how he build it. This is an interesting discussion about the architecture and design of the system. Sponsors Top End Devs (https://topenddevs.com/) Coaching | Top End Devs (https://topenddevs.com/coaching) Links Severus (https://getseverus.com/) Severus - Initial MVP Demo (https://www.youtube.com/watch?v=JetDW221ajo) Using Ecto.Multi and Phoenix.PubSub to update Phoenix Liveview (https://intever.co/blog/ecto-liveview-pubsub) Picks Adi- Creative Projects for Rust Programmers (https://amzn.to/3xLiL1C) Allen- Phoenix LiveView Free Course | The Pragmatic Studio (https://pragmaticstudio.com/phoenix-liveview) Allen- Nature Calls Calendar 2022 (https://amzn.to/3MoFTXT) Eric- Belgian Malinois Eric- Horizon Forbidden West - Wikipedia (https://en.wikipedia.org/wiki/Horizon_Forbidden_West) Sascha- Stand with Ukraine Bundle (https://www.humblebundle.com/stand-with-ukraine-bundle) Sascha- Bundle for Ukraine by Necrosoft Games and 736 others - itch.io (https://itch.io/b/1316/bundle-for-ukraine) Special Guest: Eric Sullivan.

Untangling Cloud Infrastructure with Cory o’Daniel - EMx 168

April 06, 2022 1:11:22 86.57 MB Downloads: 0

In this episode the panel chats with Cory o’Daniel which is one of the founders of massdriver.cloud (https://www.massdriver.cloud/) where they try to give teams the tools to deploy production-ready, best-practice, and secure cloud infrastructure. The panel talks about the the various options for running software in the cloud - from SAAS providers, like Heroku, to full-fledged cloud providers like AWS - and the tradeoffs these options introduce for the average developer. They go over Cory’s history and how he experienced the pains of some of these trade-offs himself which prompted him to create Massdriver. They also explore which parts of Massdriver are powered by Elixir, and which not. Sponsors Top End Devs (https://topenddevs.com/) Coaching | Top End Devs (https://topenddevs.com/coaching) Links massdriver.cloud (https://www.massdriver.cloud/) localstack.cloud - Simulate cloud components locally for testing (https://localstack.cloud/) Kubernetes (https://kubernetes.io/) What is a Kubernetes operator? (Article) (https://www.redhat.com/en/topics/containers/what-is-a-kubernetes-operator) Kubernetes - Custom Resources (Documentation) (https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) Kubernetes in Action (Book) (https://www.manning.com/books/kubernetes-in-action) crossplane - Kubernetes add-on to provision cloud infrastructure through Kubernetes (https://crossplane.io/) GitHub - absinthe-graphql/absinthe: The GraphQL toolkit for Elixir (https://github.com/absinthe-graphql/absinthe) kitchen.ci - Test your “infrastructure as code” configuration (https://kitchen.ci/) Picks Allen- Basecamp (Product) (https://basecamp.com/) Cory- Naps! Take naps! Cory- June.so (Product) (https://june.so/) Sascha- Overcooked 2 (Game) (https://www.team17.com/games/overcooked-2/) Sascha- Kubernetes in Action (Book) (https://www.manning.com/books/kubernetes-in-action) Special Guest: Cory O’Daniel.

Phoenix LiveView for Frontend Developers with Koen van Gilst - EMx 167

March 16, 2022 53:53 65.59 MB Downloads: 0

In this episode Koen van Gilst joins the mix to share his experience learning Elixir and LiveView as a mainly frontend developer. The panel then discusses the evolution of LiveView since it’s announcement and how it’s incorporating ideas from the frontend world to simplify building complex UIs, such as components. The episode closes with the panel’s perspective on how we specialize as software developers and that we can learn a lot from other by moving closer together. Sponsors Top End Devs (https://topenddevs.com/) Coaching | Top End Devs (https://topenddevs.com/coaching) Links Phoenix LiveView Docs (https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html) Phoenix Docs on Views (https://hexdocs.pm/phoenix/views.html) GitHub - elixir-wallaby/wallaby (https://github.com/elixir-wallaby/wallaby) GitHub - teamcapybara/capybara (https://github.com/teamcapybara/capybara) Picks Adi- Elden Ring (Game) (https://store.steampowered.com/agecheck/app/1245620/) Adi- Karthik Ganesh (https://www.linkedin.com/in/catchkg38/) - Looking for an internship in Healthcare or Blockchain technology. Adi- Neel Vinoth (https://www.linkedin.com/in/neel-vinoth-345578176) - Looking for an Elixir mid-senior position. Has a lot of Software Engineering experience and has been attending after work mentoring sessions with Bruce Tate, Sophie Debenedetto, myself (and other Elixir mentors) every week. Adi- A few others with Elixir knowledge/experience who aren’t open about their job search. Reach out to Adi via email to get their info. Allen- Rust Brain Teasers (Book) (https://pragprog.com/titles/hwrustbrain/rust-brain-teasers/) Sascha- Game Maker’s Toolkit (YouTube Channel) (https://www.youtube.com/channel/UCqJ-Xo29CKyLTjn6z2XwYAw) Koen- Advent of Code (https://www.twitch.tv/josevalim/videos) (from José Valim on Twitch) Special Guest: Koen van Gilst.