Ecto's uniqueness constraint vs Rails' uniqueness validation
I really like how Ecto’s uniqueness constraints integrate with our database’s unique index. Having come from Rails, it was a pleasant surprise to know we could use the power of database constraints from within our app.
With Rails, we can add uniqueness validations, but there’s always a chance we’ll have race conditions. So, it always felt like a somewhat incomplete solution. Ecto solves that nicely by rescuing the database error and turning it into a nice error message.
✍️ https://www.germanvelasco.com/blog/ecto-uniqueness-constraint-vs-rails-uniqueness-validation
ThinkingElixir 099: Slipstream and Tree-Sitter with Michael Davis
In episode 99 of Thinking Elixir, Michael Davis explains Slipstream, a Phoenix channels websocket client library that enables Elixir applications to become a client of a Phoenix channel on another server. Out of this work, an underlying websocket library was created built on mint, which has now officially become part of the mint project. We talk about other libraries in the same space and why Slipstream was created. Michael was also involved in the recent Tree-Sitter Elixir work that Github celebrated and he shares some insight into that work as well!
(pt-BR) Criando aplicação com Phoenix Channels and NodeJS https://youtu.be/hdS7a8x5vdE
Criamos uma aplicação usando Phoenix Channels https://youtu.be/hdS7a8x5vdE
React and Phoenix LiveView in 2022
ReactJS in a LiveView world https://blog.nootch.net/post/react-and-phoenix-liveview-2022/
A library for writing readable regexes in functional style
Elixir library for writing regular expressions in functional style.
Features:
- Readable and human-friendly.
- Less error-prone.
- 100% compile-time, no overhead in runtime.
- Will fallback to runtime if needed (if you use dynamic content like variables).
- Well documented with lots of examples.
- Optimized and readable output.
Elixir meetup talk: Elixir, Kubernetes, and minikube
This Wed, May 11th, at 18:00 CET I’ll present my talk:
“Elixir, Kubernetes, and minikube”
This is a free & online meetup so you can join from everywhere.
I’ll have a surprise for the attendants, so don’t miss it.
Classifying Data Center IP Addresses in Phoenix with Radix Trees
When a new client connects to your web application, are they coming from a data center IP address? This is a common signal the client is a bot, and not a human user. If you own a ticket sales website, and hundreds of clients from data center IP addresses are buying tickets before real users, that’s a problem. Learn how to solve it in this blog post!
ThinkingElixir 098: Elixir in the iOS App Store with Dominic Letz
In episode 98 of Thinking Elixir, Dominic Letz did something I thought was impossible. He got an Elixir application packaged up, approved, and available through the Apple App Store on iOS devices. The application runs Elixir on the device, creates a web view, and hosts Phoenix LiveView pages. They went further and created a bridge to integrate with more of the platform specific features of the device. Is Android your preferred platform? They have it running there as well and in the Google Play Store. We talk about how it works, challenges overcome, and where it is now. They also created several Github projects that show how to do this yourself to create a cross-platform desktop application and apps for Apple and Android mobile devices. Very cool! They want your help to make it even better.
How to safely handle related database operations with Ecto Multi
Check the short TIL (today I learned) post from Oskar Lenger: https://curiosum.com/til/safely-handle-related-database-operations-with-ecto
A Guide to Event-Driven Architecture in Elixir
Let’s explore three ways to implement event-driven architecture in Elixir — synchronously, using GenServer, and using GenStage. https://blog.appsignal.com/2022/05/10/a-guide-to-event-driven-architecture-in-elixir.html
A Livebook notebook for Elixir Code Smells
In this video I show a Livebook notebook for Elixir code smells. https://www.youtube.com/watch?v=pV6YxGPvx4U
One-Time-Password library in Elixir!
ExOtp is a library for generating and verifying One-Time-Passwords (either Time-based OTP(TOTP) or Counter based(via HOTP)). It is based on PyOTP and nimble_totp.
How I hacked a bunch of crypto wallets with Elixir
I hacked several poorly protected crypto wallets in “Bitcoin”, “Ethereum”, “Tron” and “Dogecoin” blockchains. In this post, I’ll describe my approach and show you what I found
Writing to NFC tags on Android Chrome with LiveView
How Severus uses Web NFC to create shareable invitations. https://intever.co/blog/liveview-nfc
Elixir, Kubernetes, and minikube
Join me, this Wednesday, May, 11th, at 18:00 CET and watch me talk about
“Elixir, Kubernetes, and minikube”
I’ll show you how to deploy an Elixir application to Kubernetes using minikube.
Register here https://twitter.com/curiosum_dev/status/1518728735301718017
P.S. I’ll give away a copy of my book to one of the attendants to the meetup
IntelliJ Elixir v13.0.0
Changelog
v13.0.0
Incompatible Changes
-
#2594 - @KronicDeth
- Drop support for IDEEs before 2022.1.
Enhancements
-
#2594 - @KronicDeth
-
Support 2022.1 IDEs
- Update IntelliJ Plugin Gradle to 1.5.3.
- Set untilBuild explicitly
- Target JVM Version 11
-
Support 2022.1 IDEs
-
#2633 - @KronicDeth
-
Expand
untilBuild
to cover PATCH releases of 2022.1.
-
Expand
Bug Fixes
-
#2594 - @KronicDeth
-
Fix (some) plugin verifier warnings
- Fix (some) deprecation warnings.
- Use fewer Internal APIs.
-
Fix (some) plugin verifier warnings
-
#2633 - @KronicDeth
-
Don’t use ElixirModuleType to check if it is available.
It will not load in IDEs that lack
JavaModuleBuilder
, which is why I was hard coding the ran previously. -
Don’t use
XmlSerializer
as equivalent ofDefaultJDOMExternalizer
TheDefaultJDOMExternalizer
method calls weren’t writing anything and the explicit attribute value accesses were, so it is more correct to just remove the original deprecated calls.
-
Don’t use ElixirModuleType to check if it is available.
It will not load in IDEs that lack
Recognize Digits Using ML in Elixir
Machine learning allows you to solve once unimaginable problem. Elixir’s support for machine learning through Nx and Axon let us do impressive thing while staying in our favorite language.
Great getting-started guide from Philip Brown for Axon, Phoenix and machine learning! Walks you through training a model to recognize handwritten digits in a LiveView!
https://fly.io/phoenix-files/recognize-digits-using-ml-in-elixir/
Elixir Wizards S8E4 - Sanne Kalkman on Coding, Crafting, and Collaboration
Check it out - the latest episode of Elixir Wizards just hit your feed! https://smartlogic.io/podcast/elixir-wizards/s8e4-kalkman/
Elixir Wizards S8E4 - Sanne Kalkman on Coding, Crafting, and Collaboration
Check it out - the latest episode of Elixir Wizards just hit your feed! https://smartlogic.io/podcast/elixir-wizards/s8e4-kalkman/