195: Migrating from Next.js to Phoenix

In this compelling episode, we sit down with Ben Reinhart who shares his journey of transitioning from the JavaScript ecosystem, specifically migrating off of Next.js and Vercel, to Elixir and Phoenix, with Fly.io as the new host. Ben discusses his frustrations with the complexity and performance issues he faced, and how the switch to Elixir helped streamline operations and improve the efficiency of his AI-focused product at Axflow. He delves into his strategic choice for leveraging the operational simplicity and real-time features of Phoenix, while also acknowledging trade-offs such as rebuilding front-end components. Join us to explore Ben's story, learn about the features of Elixir that helped him, and discover how the move has influenced Axflow's path towards finding product-market fit, and more! Show Notes online - http://podcast.thinkingelixir.com/195 Elixir Community News Update on the phoenix_live_reload package to v1.5 containing useful tips. https://www.elixirstreams.com/tips/stream_server_logs_to_console – Tips on how to stream Elixir server logs to the browser console. https://github.com/phoenixframework/phoenix_live_reload?tab=readme-ov-file#streaming-serving-logs-to-the-web-console – Documentation on streaming Elixir server logs to the web console using phoenix_live_reload v1.5. Advise to change Appearance theme to "Dark" in the browser console for better readability of debug-level messages. https://github.com/phoenixframework/phoenix_live_reload?tab=readme-ov-file#jumping-to-heex-function-definitions – Information on the new feature "Jumping to HEEx function definitions" in phoenix_live_reload v1.5. https://blog.appsignal.com/2024/03/19/direct-file-uploads-to-amazon-s3-with-phoenix-liveview.html – A new blog post by Joshua Plique about uploading files directly to S3 using Phoenix LiveView. https://hexdocs.pm/phoenix_live_view/uploads-external.html – Official Phoenix documentation on direct file uploads to external services like S3. https://x.com/whatyouhide/status/1768345597369532660 – Andrea Leopardi working on integrating Open Telemetry (OTel) with Sentry for the Elixir SDK. https://github.com/getsentry/sentry-elixir/issues/538 – A Github issue discussing the integration of OTel with Sentry's Elixir SDK. https://twitter.com/TylerAYoung/status/1769741350126149857 – Tyler Young's tip for keeping Elixir tests running faster and asynchronously by using the Process dictionary instead of Application environment. https://saltycrackers.dev/posts/bye-bye-async-false/ – An article discussing how to avoid async false in tests by using the Process dictionary. https://github.com/jbsf2/process-tree – Introduction of a new Elixir library, ProcessTree, to navigate the process ancestry hierarchy and aid in better test configuration. Advice on using the process dictionary check only in MIX_ENV=test to prevent runtime overhead in production. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://axflow.dev/ https://twitter.com/benjreinhart/status/1758616465589014531 https://exercism.org/tracks/elixir https://www.youtube.com/watch?v=JvBT4XBdoUE https://www.typescriptlang.org/ https://nextjs.org/ https://vercel.com/ https://supabase.com/ https://remix.run/ https://inertiajs.com/ https://vitejs.dev/ https://github.com/fidr/phoenix_live_react https://github.com/geolessel/react-phoenix https://www.pinterest.com/ https://fly.io/docs/gpus/ Guest Information https://twitter.com/benjreinhart – Ben on Twitter https://twitter.com/axflow_dev – AxFlow on Twitter https://github.com/benjreinhart/ – on Github https://benreinhart.com/ – Blog https://axflow.dev/ – AxFlow Website Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @ThinkingElixir@genserver.social Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @brainlid@genserver.social David Bernheisel - @bernheisel David Bernheisel on Fediverse - @dbern@genserver.social Cade Ward - @cadebward Cade Ward on Fediverse - @cadebward@genserver.social Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Om Podcasten

The Thinking Elixir podcast is a weekly show where we talk about the Elixir programming language and the community around it. We cover news and interview guests to learn more about projects and developments in the community. Whether you are already experienced with Elixir or just exploring the language, this show is created with you in mind. We discuss community news, Functional Programming, transitioning from OOP, coding conventions, and more. Guests visit the show to help challenge our assumptions, learn about new developments and grow in the process. Subscribe to join us on this journey!