Making Phoenix LiveView Sing!
Sound effects are frequently used in games and media to make the experience more believable, and tangible. Sound effects also communicate information and can make an experience much more immersive. Phoenix LiveView is already highly responsive and dramatically simplifies the developer experience of creating real-time web applications. What would it be like to add sound effects to a LiveView page? This post and demo project covers how to do it and why it’s worth considering for your application. LiveView was already awesome, now let’s make it really sing!
The Elixir Book Club has chosen our next book!
📘👨💻💜 The Elixir Book Club has chosen our next book!
Domain-Driven Design: Tackling Complexity in the Heart of Software by Eric Evans
Our next meeting is Sunday, February 11th, and we will discuss chapters 1, 2, and 3.
Join our Discord to participate!
Thinking Elixir News 186
Episode 186 of Thinking Elixir. In today’s episode, we peek into Elixir’s impact on operational costs and developer experience, highlighted by Amplified’s move to Elixir and insights from José Valim. Learn about the latest community discussions, including a tip for Elixir package maintainers. Plus, there’s a buzz about the upcoming NervesConf US. Join us for these stories and more!
From Next.js to Rails then Elixir: My journey through React.js burnout
After getting burned out by the React.js ecosystem, I tried multiple languages and frameworks, but ultimately, I decided to stick with Elixir and Phoenix.
Elixir Strams |> ⚡️ Quick Access to Repo Config
Sometimes you want to find out information about your Repo configuration.
You can dive into the config files and ENV variables to sort out what’s being used… or you can take the easier path!
Build A Simple Tracing System in Elixir
Let’s add tracing to an Elixir application using OpenTelemetry and streamline the process: https://blog.appsignal.com/2024/01/23/build-a-simple-tracing-system-in-elixir.html
Elixir programming language guide - learn why it's so admired
Elixir needs more newcomers and businesses to boost its presence in IT world. My ambition with this article is to provide a deep overview of Elixir for devs and decision makers. Things I covered here includes: history, ecosystem, adoption (companies, industries) and its benefits.
Unpacking Elixir: Phoenix
A post covering a lot of ground on trying to explain Phoenix without necessary delving deep into using it. Is it really the Rails of Elixir?
What is Phoenix LiveView? An introductory overview
Learn more about what makes Phoenix Framework’s younger sibling stand out and how it compares against other contemporary counterparts.
Thinking Elixir 185: InstructorEx for LLMs
Episode 185 of Thinking Elixir. Dive into the world of structured LLM prompting with our latest guest who shares insights on their innovative project, InstructorEx. We’ll explore how this tool is pushing the boundaries of large language models to return structured data, particularly JSON, and the benefits it offers when integrated into existing systems. The conversation takes a deep dive into the challenges and solutions of forcing LLMs to output data in desirable formats using Elixir technology, like Ecto schemas, and what it means to treat an LLM like a digital human, even applying it to tasks like spam detection in emails. Discover the intriguing concept of using a local database as a cache for LLM results. If you’re curious about the intersection of structured data, Python experience transition to Elixir, and the future of LLM integration, this is an episode not to miss. Tune in for these engaging topics and more!
Elixir Streams |> 🔍 Debug Ecto queries in tests
Sometimes, it’s helpful to see what queries our tests make.
Thanksfully, there’s a quick and easy config change to do that!
Check it out! 👉 Elixir Streams |> 🔍 Debug Ecto queries in tests
Elixir Streams |> 🔥 ok/1 & noreply/1 LiveView helpers!
I’m not a fan of writing {:ok, socket}/{:noreply, socket} in all of my LiveViews. Can’t pipe into them!
So, I typically introduce ok/noreply helpers in every single LiveView.
But my colleague had the brilliant idea to introduce them to the web module!
Check it out 🤩👇
IntelliJ Elixir v17.0.0
I released v17.0.0 of my Elixir plugin for JetBrains IDEs
Changelog
v17.0.0
Breaking changes
- Drop support for <= 2023.2 IDEs.
Enhancements
- Support 2023.3 IDEs.
Bug Fixes
-
Add
displayNameinplugin.xmlfor configurables for faster menu loading.-
org.elixir_lang.facet.configurable.Project- “Elixir” -
org.elixir_lang.facets.sdks.erlang.Configurable- “Internal Erlang SDKs” -
org.elixir_lang.facets.sdks.elixir.Configurable- “SDKs”
-
You might not need gradual typing in Elixir
This week José Valim announced that Elixir’s long-awaited gradual typing system is finally coming to fruition. But if dynamic typing was the reason you’re avoiding Elixir, I’d argue that your fears are overblown anyway.
Learn why Elixir’s lack of static types isn’t as big a problem as you might think:
https://phoenixonrails.com/blog/you-might-not-need-gradual-typing-in-elixir
Blog on "Adding PDF generate feature in Phoenix LiveView"
This blog explains how to create pdf in Phoenix LiveView app. Here is the link for the blog https://abulasar.com/adding-pdf-generate-feature-in-phoenix-liveview-app
Introducing Paraxial.io Slack Alerts
Get notified in Slack about the security of your Elixir app! https://paraxial.io/blog/slack-app
Thinking Elixir 184: Magic Links
Episode 184 of Thinking Elixir. In the news, we dive into a mix of intriguing Elixir updates and innovative developments. We explore the convenient and versatile Testcontainers project, designed to streamline your testing environment, and touch on Zach Daniel’s efforts to integrate bulk operations into the Ash Framework. German Velasco has been busy sharing a wealth of tips on ElixirStreams.com, and we stumbled upon a rare gem, a Windows-focused Elixir library that bridges the gap with Azure authentication services. But the heart of our discussion revolves around the magic of “magic links” in Phoenix applications. We delve deep into how these links offer a seamless user experience by simplifying authentication, the challenges they may pose, and the impressive ways they can refine your developer workflow. Stay tuned for these updates and more in the show!
Tail-Recursive & Body-Recursive Function Performance Across Elixir & BEAM versions – what’s the impact of the JIT?
Finally having finished my own little yak-shave of figuring out a performance problem and releasing benchee 1.3.0 to fix it here is what I was up to: Taking my old blog post about body-recursive vs. tail-recursive functions and benchmarking it across Elixir & Erlang versions from 1.6 @ OTP 21 up to 1.16 @ OTP 26 and see:
- How much faster have we gotten? What was the impact of the JIT?
- Did the performance characteristics change? (aka what’s the fastest for which input)
And spoiler alert, we got quite a bit faster and performance charteristics changed - read on to learn more!
January Nerves Meetup
The next Nerves meetup is Wednesday, January 31st! This will be a social gathering to hang out with other Elixir/embedded engineers, share projects, ask questions, and get help!
