Elixir Mix cover image

Elixir Mix

Latest episodes

undefined
Aug 17, 2022 • 54min

Domain-Driven Design And Elixir - EMx 185

In today’s all-panelist episode, we take a shot at demystify domain-driven design.  We discuss several books and some concepts that stand out in those texts.  How easy or hard do Elixir and Phoenix make it to apply DDD principles?  We give our experience with taking these concepts and putting them into practice, and give some tips and resources for getting started. Some of the topics covered:Tactical vs. strategic domain-driven design Event StormingBounded ContextsAccidental vs Intentional complexityConnect with Adi aditya7iyengar@gmail.com SponsorsTop End DevsCoaching | Top End DevsLinksDomain-Driven Design: Tackling Complexity in the Heart of SoftwareDomain-Driven Design DistilledDomain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F#EventStormingDDD, Hexagonal, Onion, Clean, CQRS, ... How I put it all togetherPicksAdi- GitHub - sasa1977/boundaryAdi- Mix: Using Xref to Enforce better DesignAdi- Macro - Elixir v1.13.4Adi- digraphAdi - Three people looking for jobs - reach out to me to connect with them (sr. Elixir engineer, two Jr. Elixir engineers, and others too)Adi- Assassin's Creed Valhalla for Xbox One, PS4, PC & More | Ubisoft (US)Sascha- Virtual Domain-Driven DesignSascha- KanDDDinsky - The art of business softwareSascha- Citizen Sleeper on SteamAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/elixir-mix--6102049/support.
undefined
Aug 10, 2022 • 43min

Getting Hired as an Elixir programmer with Adi Iyengar - EMx 184

Today Adi, one of our hosts and the hiring manager at Elixir, talks about the intricacies of applying for a job, and what companies to search out.  We talk about the expectations for the applicant, and how to prepare.  We also talk about what you can look for the employer to provide before spending too much of your time in the interview process.  Walking through various interview processes, we learn what things can help you land the job you want. Companies that are hiring Elixir positions (google or reach out to Adi):Pepsi Co (E-commerce): Senior Elixir EngineerDockYard: Senior Elixir EngineerRecorded Future: Elixir EngineerCars.com: Elixir EngineerCorvus Insurance: Elixir EngineerHawku: Elixir EngineerIf you need help looking for Elixir jobs, reach out to Adi for help: aditya7iyengar@gmail.com SponsorsTop End DevsCoaching | Top End DevsPicksAdi - DartsAdi- Stray - PS4 & PS5 Games | PlayStationAdi - Hiring Companies (see the show notes)Allen- HERO10 BlackAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/elixir-mix--6102049/support.
undefined
Jul 27, 2022 • 59min

How Quiqup Left Elixir and Then Came Back - EMx 183

In this episode the panel talks to Danny Hawkins - CTO at Quiqup - and his team's journey at Quiqup with Elixir. Danny explains how some of the first things Quiqup built were using Elixir and how they then left Elixir behind in favor of TypeScript, only to come back to Elixir.The panel considers how these choices rarely are purely driven by technological qualities but instead have to factor in cultural- and knowledge-aspects of a team, and how a top-down dictated technology decision - even if there are good reasons for it - can be harmful to a team's morale.Get in touch with Danny via email!  Click here.SponsorsTop End DevsCoaching | Top End DevsLinksQuiqupChoice of Technology at QuiqupEventStoreDB - the event database for today's fast moving, event-driven systemsGitHub - commanded/commanded: Use Commanded to build Elixir CQRS/ES applicationsElixir for ProgrammersGitHub - quiqupltd/libelection: Library to perform leader election in a cluster of containerized Elixir nodesConnect Livebook to Elixir in KubernetesTwitter: @dannyhawkinsPicksDanny- Onward - The ultimate VR Mil-Sim tactical shooterDanny- Treadmill for Standing Desk (Danny has a Sparnod)Danny- Accelerate: The Science of Lean Software and DevOpsSascha- KanDDDinsky - The art of business softwareAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/elixir-mix--6102049/support.
undefined
Jul 20, 2022 • 44min

Combining GraphQL and LiveView with Abul Asar Sayyad - EMX 182

Today we talk with Abul Asar Sayyad, a software engineer from Mumbai, India.  Working for ID Plans, a commercial property management solution.  We discuss his blog article about combining GraphQL with LiveView for rendering on the front end.  We also dive into GraphQL libraries, working with LiveView, and testing.  SponsorsTop End DevsCoaching | Top End DevsLinksAbul Asar's BlogLinkedIn: AbulAsar SayyadFetching data from external Graphql API service in Phoenix LiveViewHashnode - Blogging community for developers, and people in techGitHub - uesteibar/neuron: A GraphQL client for ElixirGitHub - annkissam/common_graphql_client: Elixir GraphQL Client with HTTP and WebSocket SupportGitHub - sasa1977/con_cache: ets based key/value cache with row level isolated writes and ttl supportCreating Note taking app using LiveView and GenServer - Part 1PicksAbul - Project management tool in LiveViewAbul - Blog about canvas realtime drawing coming soonAbul - Thor Love and ThunderAdi- GitHub - annkissam/common_graphql_client: Elixir GraphQL Client with HTTP and WebSocket SupportAdi - donkeycr.appAllen - How to Cache in LiveViewSascha - The SprawlAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/elixir-mix--6102049/support.
undefined
Jul 13, 2022 • 1h 2min

Building APIs - EMX 181

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. SponsorsTop End DevsCoaching | Top End DevsLinksFinch - Finch v0.12.0 HTTPoison - HTTPoison v1.8.1GitHub - elixir-plug/plug_cowboy: Plug adapter for the Cowboy web serverInstant GraphQL APIs on your data | Built-in Authz & CachingJWT.IODDD, Hexagonal, Onion, Clean, CQRS, ... How I put it all togetherProtocol Buffers | Google DevelopersGitHub - parroty/exvcr: HTTP request/response recording library for elixir, inspired by VCR.Boston Elixir June 2021 - Adi Iyengar - Levels of testing API callsHow I deal with behaviours and boilerplate - Sascha WolfA guide to fuzz testingPicksAdi- Reach out if you're hiring Elixir devs! (aditya7iyengar@gmail.com)Adi- Buy a punching bag for both workout/releasing frustrationAdi- Testing ElixirSascha- Deep Rock GalacticAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/elixir-mix--6102049/support.
undefined
Jul 6, 2022 • 1h 1min

Effective Software Documentation with Everett Griffiths - EMx 180

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, examplesHaving an effective feedback loopKey word argumentsCoding is easy, but documentation is hardUsing mermaid chartsOpen sourcing your softwareClean code and clean infrastructure Simplifying coding environments SponsorsTop End DevsCoaching | Top End DevsLinksWTFM: Writing Effective Software DocumentationInspecting Ecto Schemas with Elixir | by Everett Griffiths | Medium 1Enhancing Elixir Documentation with Mermaid Charts | by Everett Griffiths | Medium 1Coding is Easy; Communication is Hard | by Everett Griffiths | Medium 1LinkedIn: Everett GriffithsTwitter: @fireproofsocksPicksAdi- Grafana OnCallAllen- MJML - The Responsive Email FrameworkEverett- Paasaa - Paasaa v0.6.0Everett- The Guns of August: The Pulitzer Prize-Winning Classic About the Outbreak of World War IAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/elixir-mix--6102049/support.
undefined
Jun 29, 2022 • 43min

All Things Concurrency - EMx 179

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. SponsorsTop End DevsCoaching | Top End DevsLinksStuff Goes Bad Erlang in AngerPicksAllen- Handling OverloadSascha- Kinetic GamesAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/elixir-mix--6102049/support.
undefined
Jun 22, 2022 • 1h 5min

Animating Error Tags in Phoenix LiveView - EMx 178

David van Leeuwen joins the show to share his perspective about error handling with Phoenix’ LiveView form and keeping implementations that are used to render an input as simple as possible.  He also discusses his career progressions with Elixir and other various languages, plus why and how he built his latest project, Mave.io.  SponsorsTop End DevsCoaching | Top End DevsLinksmave - plug-and-play video embedsAnimating error tags in Phoenix LiveViewDavid van LeeuwenTwitter: @davidvanleeuwenTwitter: @mavedotioPicksAllen - Bose SunglassesDavid - Sonic PiDavid- Bambu Lab X1 Series | 16 Colors | High Speed CoreXY | 300°C Hotend | Ultra-SmoothDavid- Robert Space IndustriesDavid - Addy Osmani on TwitterAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/elixir-mix--6102049/support.
undefined
Jun 15, 2022 • 1h 9min

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

In this episode Simon Zelazny joins the mix to talk about his experience in scaling an Elixir and Phython based service to meet a once-in-a-blue-moon demand scenario. The panel and him discuss the challenges in finding the relevant bottlenecks in non-trivial software systems - and BEAM applications in particular - and what options there are to fix those.They also discuss pragmatism in the context of software development, and how we as software developers are not paid to write pretty code but to solve business problems, which might also mean to choose NOT to build on top of the BEAM, if circumstances demand it. SponsorsTop End DevsCoaching | Top End DevsLinkswhatnotwhatnot - careersKeeping Up with the Fans: Scaling for Big Events at Whatnot, with Elixir and PhoenixErlang Solutions - Scalable Distributed Technology"How NOT to Measure Latency" by Gil Tene PicksAllen- K9s - Manage Your Kubernetes Clusters In StyleAllen- Kubernetic - The Kubernetes Desktop ClientSascha- The Book You Wish Your Parents Had ReadSimon - Joe Armstrong’s PHD Thesis - Making reliable distributed systems in the presence of software errors (PDF)Simon- Joe's Blog - a non-linear personal web notebookSimon- ACM Turing award lectures | ACM Other BooksAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/elixir-mix--6102049/support.
undefined
Jun 8, 2022 • 1h 7min

Macros and Busting Boilerplate with Robert Ellen - EMx 176

In this episode the panel talks to Robert Ellen and his experience with using macros in Elixir to get rid of some repetitive boilerplate code. They discuss common pitfalls when first diving into macros and resources which help to avoid these mistakes.Robert shares some of the finer details of the challenges they encountered when trying to build these macros and the panel gives their own personal verdict on the age old elixir question: to macro or not to macro.Finally the group briefly touches on some event sourcing topics - as the system Robert refers to was an event-sourced one. SponsorsTop End DevsCoaching | Top End DevsLinksMacro Madness: when busting boilerplate backfires - Robert Ellen (Talk)GitHub - commanded/commanded: Use Commanded to build Elixir CQRS/ES applicationsJoin Alembic (Career)talks | robertellen.devAlembic Engineering Blog — AlembicLinkedin: Robert EllenTwitter: @robertellenPicksAdi- Contact regarding the job and job seeker: aditya7iyengar@gmail.comAdi- Metaprogramming + DSL Design in Elixir - Adi Iyengar (Talk)Adi- The pillars of Metaprogramming in Elixir - Adi Iyengar (Talk)Adi- Elixir source code to checkout regarding macros - elixir_quote.erl (GitHub)Adi- Elixir source code to checkout regarding macros - elixir_bootstrap.erl (GitHub)Adi- Vegan cheeseAllen- GoPro - Weekender BackpackRobert- Nix & NixOSRobert- Jeff Geerling (YouTube Channel)Robert- Elixir Sydney (Meetup)Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/elixir-mix--6102049/support.

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode