Elixir Wizards

Elixir Wizards

By SmartLogic LLCTechnologyEducationHow To
Download on the App Store

Elixir Wizards episodes

  • Brooklyn Zelenka from SPADE Co. - Elixir in Production

    We talk with Brooklyn Zelenka from SPADE Co. about their current and past Elixir projects and how they are deployed.

    Brooklyn Zelenka - SPADE Co.

    Find Brooklyn elsewhere online:

    https://twitter.com/expede
    https://github.com/expede

    1:08 - Brooklyn’s Background

    Brooklyn's background and experience with Elixir is deep. Huge open source contributor.

    Got started in Elixir just after Phoenix got to 1.0.

    1:53 - Worked on several Elixir projects in production.

    2:43 - Why she got into Elixir.

    • Real Time
    • More performant than Rails.
    • Great documentation
    • Industrial-grade
    • 4:38 - When you wouldn't use Elixir.

      Easy to get stakeholder buy-in. Just point to WhatsApp.

      Elixir is made for 2019

      CLI tools
      Repl-driven development
      TDD tools built in by default

      All the best practices we have today are built in.

      7:14 - Where has Brooklyn hosted her apps?

      Heroku for POC's. AWS for production. Dockerized because "kubernetes is the new hotness"

      9:40 - Do you do any clustering?

      Load balanced above. AWS load balancing is very standard. They're well understood and have a nice developer experience.

      10:29 Are you able to get any zero downtime deploys?

      Zero downtime deploys. Awesome but impractical. Rolling deploys are easier and usually more appropriate. Some requirements make it valuable.

      Erlang error states. Exceptional. Allows you to build for the happy path. Don't worry about error handling all the time.

      Witchcraft and dark magic. Monads.

      Poke around the standard library.

      12:50 - How does Elixir compare to Rails in terms of response times, and other aspects?

      15:32 - What libraries do you use and what have you built?

      22:41 - Any cool features of OTP you are using?

      25:36 - One tip to developers new to Elixir

      Build up a peer-to-peer cli chat from scratch in one GenServer.

      Find her at @expede everywhere on the internet.

      Learn more about how SmartLogic uses Phoenix and Elixir.

      Special Guest: Brooklyn Zelenka.

      Links:

      • Heroku Elixir Buildpack
    • Heroku Phoenix Static Buildpack
    • Exceptional
    • Witchcraft
    • QuickChat
    • 28 min
    • Todd Resudek from Weedmaps - Elixir in Production

      We talk with Todd Resudek from Weedmaps about their current Elixir projects and how they are deployed.

      Todd Resudek - Weedmaps

      Find Todd elsewhere online:

      https://twitter.com/sprsmpl
      https://github.com/supersimple

      00:00 - Intro

      01:06 - Tom introduces himself
      02:54 - What is Weedmaps?
      04:33 - Overview of the Elixir projects you have in production.
      06:25 - Why are you using Elixir in production?
      07:21 - Advantages / disadvantages of Elixir
      10:37 - What do you use to host your Elixir app?
      10:50 - How do you deploy your application?
      11:22 - Are you able to get zero downtime deploys?
      12:00 - Do you cluster the application?
      13:00 - How does your Elixir App perform compared to others in your environment?
      14:15 - How are you solving background task processing?
      16:40 - What libraries are you using?
      21:09 - 3rd Party Services
      23:56 - Do you have a story where Elixir saved the day in production?
      24:22 - Are you using any cool OTP features?
      24:39 - Tip to developers
      25:12 - Where you can find him
      25:32 - Outro

      Learn more about how SmartLogic uses Phoenix and Elixir.

      Special Guest: Todd Resudek.

      Links:

      • A Deep Dive into Hex - ElixirConf talk
    • Credo
    • Dialyxir
    • Swoosh
    • 27 min
    • Lonestar ElixirConf 2019 Lunchisode

      We sat down with numerous developers, including José Valim and Chris McCord, during the Saturday lunch at Lonestar ElixirConf 2019. Hear what they had to say about the state of Elixir!

      Guests:

      José Valim - Creator of Elixir
      Chris McCord - Creator of Phoenix
      Paul Schoenfelder - Creator of Distillery, Timex, Libcluster, and many others
      Chris Keathley - Host of Elixir Outlaws, developer at Bleacher Report
      Amos King - Host of Elixir Outlaws
      Jim Freeze - Organizer of ElixirConf, ElixirConf EU, and others
      Susumu Yamazaki - Creator of Hastega
      Brian Cardarella - CEO of Dockyard
      Osa Gaius - Engineer at Mailchimp

      Spectating:

      Bruce Tate and Ben Marx

      00:00 - Intro

      01:47 - LoneStar begins
      02:03 - Panelists introduce themselves
      09:15 - Where is Elixir going?
      10:14 - Releases
      19:04 - The issue with hype
      26:30 - Osa Intro
      29:00 - Define lists
      40:00 - How can Elixir displace Java?

      Learn more about how SmartLogic uses Phoenix and Elixir.

      50 min
    • Ryan Billingsley from ClusterTruck - Elixir in Production

      We talk with Ryan Billingsley from ClusterTruck about their current Elixir projects and how they are deployed.

      Ryan Billingsley - ClusterTruck

      Find Ryan elsewhere online:

      https://twitter.com/ryanbillingsley
      https://horriblenight.com/

      00:00 - Fade In

      00:50 - Ryan introduces us to ClusterTruck.
      02:00 - How did Ryan get into Elixir?
      03:12 - Where does the name ClusterTruck come from?
      04:17 - Tell us about the projects you have in production.
      05:50 - Why are you using Elixir in these projects.
      08:11 - Disadvantages of using Elixir
      09:22 - Comparing Elixir with Ruby, Node, Go.
      11:38 - Where is ClusterTruck hosting their applications?
      15:03 - Kubernetes?
      16:03 - Zero Downtime Deployments?
      16:42 - Do you do any clustering?
      18:06 - How does Elixir perform compared to other project environments you’ve worked in?
      19:52 - How are you solving background task processing?
      21:09 - Other libraries?
      23:34 - Other third party integrations?
      25:46 - Is there a time Elixir has saved the day in Production?
      27:47 - Cool OTP Features!
      29:45 - Tips to devs thinking about running Elixir in Production.
      31:17 - Outro

      Learn more about how SmartLogic uses Phoenix and Elixir.

      Special Guest: Ryan Billingsley.

      Links:

      • Programming Elixir
    • Salt Stack
    • Swarm
    • Opus
    • handle_continue
    • 33 min
    • Dan Ivovich from SmartLogic - Elixir in Production

      We talk with developers from the team here at SmartLogic about our current practices on deploying Elixir and Phoenix in production.

      Dan Ivovich - Director of Development Operations @ SmartLogic

      Learn more about how SmartLogic uses Phoenix and Elixir.

      00:00 - Fade In

      00:30 - Introductions to Eric, Dan and SmartLogic

      Dan Ivovich - Director of Development Operations @ SmartLogic

      Eric Oestrich - Developer, Elixir Lead @ SmartLogic

      Justus Eapen - Full stack developer @ SmartLogic

      Introduced to Elixir by an old colleague.

      1:20 - What Elixir projects do you have in production?

      Several client projects in production. Several Mobile Apps with APIs powered by Phoenix and Elixir.

      Baltimore Water Taxi.

      A digital marketplace.

      And more!

      1:57 - Advantages and disadvantages to using Elixir.

      We made the switch when a colleague was stoked about Functional Programming and introduced us to Elixir. We were won over by the performance and rich feature sets, OTP, etc.

      2:43 - Where are we hosting our Elixir Apps?

      • Heroku
      • AWS
      • Linode
      • Digital Ocean
      • 6:20Deployment process, tools, scripting

        • Ansible - for underlying VPS’s, servers, and more recently deployment itself. (Similar to Capistrano).
        • Distillery
        • Mix.release
        • 7:18 - Zero Downtime Deployments

          • Old school load balancers and rolling restarts
          • 7:46 - What are the performance metrics like? Comparatively.

            • Ruby ends up with memory leaks. That doesn’t happen with Elixir.
            • Memory utilization is flat and low no matter what.
            • “Phenomenal response times”
            • 8:54 - How does Eric think about clustered applications in Elixir?

              • Going Multi Node (https://www.youtube.com/watch?v=lCUKQnkjajo)
              • Pg2 - process groups
              • Mnesia distributed database (beware!)
              • “Just sending messages to pids because Erlang is great”
              • Swarm / Horde
              • 12:40 - How do we handle background tasks?

                • Started with verk
                • Recently becoming more comfortable with spinning up GenServers
                • “The language itself is built to be concurrent.”
                • 15:06 What libraries are we using in prod?

                  • First thing: You don’t need a whole lot because the language is so well designed.
                  • Phoenix - web framework
                  • Ecto - sort of an ORM
                  • Distillery - for releases
                  • Bamboo - for sending emails
                  • Quantum - for task scheduling
                  • Timex - for dates and times, and timezones
                  • Cachex - for caching
                  • 18:20- What third party integrations have we attempted

                    • Stripe
                    • Square
                    • Twilio
                    • Mindbody
                    • Always building our own clients.  Using HTTPoison

                      19:58Has Elixir ever saved the day in production?

                      It’s saved many days by PREVENTING ISSUES. Systems are architected for reliability and fault-tolerance.

                      21:48 - Where do supervision trees come from? What is OTP?

                      • OTP is an Erlang standard lib
                      • Includes supervision trees, genservers, ETS, and a lot of stuff we don’t even know about!
                      • gen_tcp
                      • Mnesia
                      • dets
                      • 23:43- Tips for devs considering running elixir in production.

                        • Jump in and read the docs
                        • Understand how systems boot, distillery releases, config providers, etc.
                        • “Good server monitoring hygiene”
                        • “DIVE IN!”
                        • 19:54 Outro

                          Learn more about how SmartLogic uses Phoenix and Elixir.

                          Special Guest: Dan Ivovich.

                          Links:

                          • Going Multi-Node
                        • PG2
                        • mnesia
                        • Swarm
                        • Horde
                        • Verk
                        • Bamboo
                        • Quantum
                        • Cachex
                        • 29 min
                        • Smart Software Season 1 Trailer

                          Welcome to the first season of Smart Software with SmartLogic. We'll be interviewing several companies about how they use Elixir in Production this season. In this preview episode, we introduce ourselves and some of the topics we’ll be covering.

                          Learn more about how SmartLogic uses Phoenix and Elixir.

                          2 min

                        About Elixir Wizards

                        From the publisher's feed

                        Elixir Wizards is an interview-style podcast from SmartLogic featuring conversations with developers, engineers, and industry leaders about the Elixir programming language and the broader software…