Thinking Elixir Podcast

75: RabbitMQ and Commanded at Simplebet with Dave Lucia


Listen Later

We talk with Dave Lucia about Simplebet’s use of RabbitMQ and Commanded for solving unique real-time problems. We learn how Simplebet uses Elixir when creating real-time sports betting markets. We also learn what CQRS systems are, how the Commanded library supports that in Elixir, and how Commanded pairs well with RabbitMQ. Dave talks about moving away from Kafka to RabbitMQ and how that made sense for their use cases. Also valuable, Dave shares where they have found the “dragons” in their design. A helpful discussion that helps identify when CQRS systems might be a tool to use when solving our own problems. Also, Simplebet is betting on SurfaceUI for front-end design in a big and interesting way as well!

Show Notes online - http://podcast.thinkingelixir.com/75

Elixir Community News

  • https://fly.io/phoenix-files/ – Phoenix focused section of Fly.io blog
  • https://fly.io/phoenix-files/safe-ecto-migrations/ – Safe Ecto Migrations multi-part guide
  • https://github.com/erlang/otp/pull/5292 – Erlang 25 is documenting all the built-in types
  • https://twitter.com/theerlef/status/1460683487317577734 – Erlang Ecosystem Foundation shared that they reached the milestone of 1000 members!
  • https://www.youtube.com/watch?v=y8-9yZlye30 – Quinn Wilton's "100 years of Erlang" Code Beam America presentation
  • https://slides.com/rc-6/100-years-of-erlang-slimmed – Quinn's slides
  • https://github.com/spawnfest/eep49ers/ – SpawnFest Overall Winner
  • https://github.com/spawnfest/eArangoDB – SpawnFest Maintainability Winner
  • https://github.com/spawnfest/beamoji – SpawnFest Innovation Winner
  • https://www.twitch.tv/josevalim – Advent of Code problems will be solved by Jose Valim on Twitch
  • https://github.com/rrrene/credo/blob/master/CHANGELOG.md – Credo 1.6 release includes mix credo --first-run feature
  • https://github.com/livebook-dev/kino/pull/50 – Jonathan's Kino PR that adds "controls" and is demonstrated by playing multi-player Pong in a Livebook notebook!
  • https://github.com/pprzetacznik/IElixir – Jupyter's kernel for Elixir
  • https://github.com/elixir-lang/ex_doc/blob/main/CHANGELOG.md – ExDoc v0.26.0 is out with new usability features
  • https://twitter.com/josevalim/status/1462436734285795340 – José Valim highlights several new ExDoc features
  • https://vimeo.com/647867227 – Oban Web v2.8.0 is out along with Oban Pro v0.9.3 and a video demonstrates the changes
  • Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected]

    Discussion Resources

    • https://www.youtube.com/watch?v=dmBdFh5N1g4 – Migrating from Kafka to RabbitMQ at SimpleBet: Why and How | David Lucia | RabbitMQ Summit 21
    • https://medium.com/@davelucia/two-years-of-elixir-at-the-outline-ad671a56c9ce
    • https://medium.com/@davelucia/beyond-functions-in-elixir-refactoring-for-maintainability-5c73daba77f3
    • https://medium.com/@davelucia/battleship-elixir-json-sunk-my-float-dc3df46447db
    • https://soundcloud.com/elixirtalk/episode-153-feat-dave-lucia-the-dream-stack-with-rust-elixir
    • https://www.youtube.com/watch?v=xmUfTl33-fU – Rustling up predictive sporting betting models on the BEAM - DAVID LUCIA
    • https://www.youtube.com/watch?v=wvfhrvAFOoQ – David Lucia - Refactoring Elixir for maintainability | Code BEAM SF 19
    • https://www.youtube.com/watch?v=Lh5rA1pgWCk – ElixirConf 2021 - Dave Lucia - Surface - a bridge to the Javascript community
    • https://github.com/davydog187/migrating_from_kafka
    • https://speakerdeck.com/davydog187/betting-on-observability-at-simplebet
    • https://lightstep.com/case-studies/simplebet/
    • https://theoutline.com/
    • https://www.bloomberg.com/
    • https://www.theverge.com/
    • https://www.bdg.com/
    • https://www.draftkings.com/
    • https://www.amqp.org/
    • https://www.rabbitmq.com/
    • https://github.com/commanded/commanded
    • https://opencollective.com/commanded
    • https://microservices.io/patterns/data/cqrs.html
    • https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type
    • https://www.confluent.io/blog/avro-kafka-data/
    • https://kafka.apache.org/
    • https://www.linkedin.com/in/joseph-lozano/
    • https://en.wikipedia.org/wiki/Synthetic_monitoring
    • https://github.com/surface-ui/surface
    • Guest Information

      • https://twitter.com/davydog187 – Dave Lucia on Twitter
      • https://twitter.com/sb_engineers – Simplebet Engineering on Twitter
      • https://twitter.com/simplebethq – Simplebet on Twitter
      • https://github.com/davydog187/ – on Github
      • https://davelucia.com – Blog
      • Find us online

        • Message the show - @ThinkingElixir
        • Email the show - [email protected]
        • Mark Ericksen - @brainlid
        • David Bernheisel - @bernheisel
        • Cade Ward - @cadebward
        • Sponsored By:

          • Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
          ...more
          View all episodesView all episodes
          Download on the App Store

          Thinking Elixir PodcastBy ThinkingElixir.com

          • 4.9
          • 4.9
          • 4.9
          • 4.9
          • 4.9

          4.9

          32 ratings


          More shows like Thinking Elixir Podcast

          View all
          Hanselminutes with Scott Hanselman by Scott Hanselman

          Hanselminutes with Scott Hanselman

          377 Listeners

          Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

          Software Engineering Radio - the podcast for professional software developers

          272 Listeners

          The Changelog: Software Development, Open Source by Changelog Media

          The Changelog: Software Development, Open Source

          283 Listeners

          Talk Python To Me by Michael Kennedy

          Talk Python To Me

          592 Listeners

          Software Engineering Daily by Software Engineering Daily

          Software Engineering Daily

          624 Listeners

          Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

          Syntax - Tasty Web Development Treats

          982 Listeners

          REWORK by 37signals

          REWORK

          211 Listeners

          CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

          CoRecursive: Coding Stories

          189 Listeners

          Elixir Mix by Charles M Wood

          Elixir Mix

          13 Listeners

          Elixir Wizards by SmartLogic LLC

          Elixir Wizards

          22 Listeners

          The Stack Overflow Podcast by The Stack Overflow Podcast

          The Stack Overflow Podcast

          64 Listeners

          Beam Radio by Lars Wikman

          Beam Radio

          11 Listeners

          Oxide and Friends by Oxide Computer Company

          Oxide and Friends

          47 Listeners

          Elixir Mentor by Jacob Luetzow

          Elixir Mentor

          2 Listeners

          The Pragmatic Engineer by Gergely Orosz

          The Pragmatic Engineer

          52 Listeners