Thinking Elixir News 135

Episode 135 of Thinking Elixir. News-only episode covers some overlooked new Livebook features, Mint support added to Elixir GRPC, Phoenix Live Storybook is getting visual comparisons between versions, LiveView Native progress updates, the Circle CI breach and more!

https://podcast.thinkingelixir.com/135

Elixir Dependency Security: Mix, Hex, and Understanding the Ecosystem

The Elixir ecosystem has excellent tooling for securing your project’s dependencies. Learn more about how to use it in this article.

https://paraxial.io/blog/hex-security

Goodbye IO.inspect/2. Hello dbg/2

I vaguely recall seeing dbg when Elixir 1.14 first came out, but I hadn’t tried it until now. 🤯

No more IO.inspect/2 for me.

dbg/2 is way more powerful. For example, it understands Elixir code so it can print out every step in a pipeline! ⚡️

https://www.youtube.com/watch?v=Mw1032eS92A

Why We Chose Elixir Part 2: Elixir and the CELP Stack

Cees de Groot talks about how we decided to use Commanded, Elixir, LiveView and Phoenix (CELP) as a big part of our tech stack

https://metrist.io/blog/why-we-chose-elixir-part-2-elixir-and-the-celp-stack/

Phoenix 1.6 to 1.7 Video Upgrade Guide

The journey to upgrade Phoenix to version 1.6 to 1.7 is a difficult one; especially since the upgrade guide is incomplete. I made a quick tutorial on this upgrade to alleviate some of the short-comings of the official guide.

https://youtu.be/MxRDE63-loM

Stenography and Elixir

From the January 2023 Elixir Sydney meetup, a talk about using stenography to write Elixir code: https://www.youtube.com/watch?v=ZQO-5KfnCi4

PostgreSQL Logical Replication with Docker and Elixir

A step-by-step tutorial.

Start PostgreSQL Logical Replication and wal2json plug-in in Docker, then read the changes with Elixir Postgrex.

https://www.peterlau.xyz/posts/postgresql-logical-replication-with-docker-and-elixir/

LiveSelect

In this episode we’ll create a dynamic selection field using LiveSelect.

https://elixircasts.io/liveselect

Easy Caching in Elixir

We go over an easy technique to introduce a bit of state in Elixir by caching with an Agent.

ThinkingElixir 134: Inside the Security Working Group

Episode 134 of Thinking Elixir. We get a glimpse into the EEF’s Security Working Group with Bram Verburg. We learn about existing resources available to the community and we get hints of work underway for the future. Bram shares some cool security tips and insights as well!

https://podcast.thinkingelixir.com/134

Common Commands to Start New LiveView Project

Common commands to update Elixir, Hex and generators to start a new LiveView project with Authentication and UTC Datetime. Using Phoenix 1.7.

Async Processing in LiveView

When Chris McCord showed off doing image classification in a single-file Phoenix application, he used a really cool way to run an async Task in a LiveView that is linked to the LiveView process. This means if the user leaves the page, it automatically kills the worker process! This can come in really handy! In this post, we dig in deeper to see how it works and how to choose when to use this approach. https://fly.io/phoenix-files/liveview-async-task/

BuildItWithPhoenix.com launched!

I’ve been working on an @ElixirLang @ElixirPhoenix video course over the past couple of months. Today, I’m launching its landing page. Check out https://builditwithphoenix.com and let me know what you think! Sign up for updates while you are there. #MyElixirStatus

What's new in Livebook 0.8?

This post showcases ten of the most noteworthy features released with Livebook 0.8.

https://news.livebook.dev/whats-new-in-livebook-0.8-4gQiEE

GraphQL vs REST for Elixir Devs

Introducing the second part of the “Phoenix LiveView Architecture discussion”:

  • Is LiveView a stable ecosystem?
  • What is the best approach for GraphQL vs other APIs, like REST, when you have LiveView code?
  • What’s the best way to integrate the Ash Framework with Phoenix?
  • Is there a way to implement dynamic events with no JS in LiveView?

Dependency inversion on Elixir using Ports and Adapters design pattern

The following post is about implementing dependency inversion principle on Elixir and using it to achieve useful results, such as circuit breakers.

https://dev.to/dcdourado/dependency-inversion-on-elixir-using-ports-and-adapters-design-pattern-4k3f

Naming Phoenix context functions

In a Phoenix context, we frequently need to create and update resources, using changesets.

Each operation requires a function to get the changeset, and a function to perform the operation. If the operation in question is “create”, the standard approach is to name the changeset function “create_changeset”, but that’s just confusing; am I getting a changeset for the “create” operation, or am I creating a generic changeset?

I prefer the following conventions: https://www.stephenlewis.me/blog/naming-phoenix-context-functions

ThinkingElixir 133: Winning the ML Prise

Episode 133 of Thinking Elixir. We talk with Philip Brown who started Prise in Jan 2022 using Elixir, Axon and Nx to apply machine learning to project management. He shares what he’s accomplished as a one-person dev team and how Elixir enabled him to develop more rapidly. He shares how, with no ML academic training, he learned as he went and developed and trained his own models that classify and prioritize people’s tasks spread across multiple systems! A fun and empowering discussion!

https://podcast.thinkingelixir.com/133

Debugging and Tracing in Erlang

In the second and final part of this two-part series, we’ll dive into Erlang tools you can use for debugging: https://blog.appsignal.com/2023/01/10/debugging-and-tracing-in-erlang.html

Validating Phoenix params with Ecto

Implement an easy way for validating request params in Pheonix with Ecto. No extra tools needed!

https://0x7f.dev/post/validating-pheonix-with-ecto/

Previous page Next page