Elixir Wizards is an interview-format podcast, focused on engineers who use the Elixir programming language. Initially launched in early 2019, each season focuses on a specific topic or topics, with each interview focusing on the guest's experience and opinions on the topic. Elixir Wizards is hosted by Eric Oestrich and Sundi Myint of SmartLogic, a dev shop that’s been building custom software since 2005 and running Elixir applications in production since 2015. Learn more about how SmartLogic uses Phoenix and Elixir. (https://smartlogic.io/phoenix-and-elixir?utm_source=podcast)
Mark & David from Thinking Elixir on Ecto Queries
This week the Thinking Elixir Podcast is taking over Elixir Wizards! Mark & David from Thinking Elixir are here today to parse the particulars of Ecto Queries! Mark Ericksen is an Elixir Specialist at Fly.io and host of Thinking Elixir. David Bernheisel is a Senior Software Engineer at Stripe and host of Thinking Elixir. Tune in today to learn more about Ecto Queries from today’s special guests, Mark Ericksen and David Bernheisel!
Key Points From This Episode:
- A brief breakdown of today’s topic and introduction to our special guests, Mark & David
- The hosts catch up with Mark & David and learn about David’s new book Ecto In Production
- Dave Lucia is mentioned once again, can we go one episode without talking about him?
- Find out how long David & Mark have been working in databases
- We get the breakdown of what an Ecto Query is
- There is a discussion around schema migrations vs data migrations and how to avoid common pain points
- Learn what resources are available for learning Ecto
- We find out what the pin operator is and when it is used
- What an extensive query is and how to optimize queries
- We learn about fun edge cases that we’ve bumped into while working with Ecto
- The ins and outs of Ecto dump and Ecto load
”Ecto is a whole wide world of information. You think you know a lot and then you realize you don't. Nope, I'm almost just as dumb as I was five years ago about SQL and Ecto. Nope, it evolves. It gets deep.” - Mark Ericksen
Links Mentioned in Today’s Episode:
Mark Ericksen on Twitter — https://twitter.com/brainlid
Mark Ericksen on LinkedIn — https://www.linkedin.com/in/mark-ericksen-66397417/
David Bernheisel on Twitter – https://twitter.com/bernheisel
David Bernheisel on GitHub – https://github.com/dbernheisel
David Bernheisel on LinkedIn – https://www.linkedin.com/in/bernheisel/
Thinking Elixir Podcast https://podcast.thinkingelixir.com/
SmartLogic — https://smartlogic.io/
SmartLogic Twitter — https://twitter.com/smartlogic
Use The Index, Luke! https://use-the-index-luke.com/
Postgresql Tutorial https://www.postgresqltutorial.com/
Postgresql subqueries
https://stackoverflow.com/questions/3004887/how-to-do-a-postgresql-subquery-in-select-clause-with-join-in-from-clause-like-s
https://www.w3resource.com/sql/subqueries/understanding-sql-subqueries.php
Fly Blog: Safe Ecto Migrations https://fly.io/phoenix-files/safe-ecto-migrations/
Crunchy Data Developer Tutorials https://www.crunchydata.com/developers/tutorials
Crunchy Data Postgres Tips https://www.crunchydata.com/postgres-tips
Ecto in Production https://www.ectoinproduction.com/
SQL Join Illustration https://commons.wikimedia.org/wiki/File:SQLJoins.svg
SQL Join Illustration https://i.stack.imgur.com/UI25E.jpg