Adding Elixir to Erlang via Rebar3
Adding Elixir to Erlang via Rebar3 - https://itnext.io/adding-elixir-to-erlang-via-rebar3-2ad83476b627
IntelliJ Elixir v13.2.1
Changelog
v13.2.1
Bug Fixes
-
Ignore
PsiErrorElementwhen collecting doc comments. - Fix README typos.
- Log before and after setting mirror for decompiled files. Parsing complex decompiles can freeze the IDE. Logging before parsing the decompiles will give a chance of finding the file and recovering the decompiled code to find the error or complexity that needs to be suppressed.
-
Use
Options.truncateDecompiledBodyz on Elixir decompiled bodies too. Previously, this was only used for Erlang functions. Fixes parsing decompiled code causing freezes for some files. * Ignoreauthors: …for documentation when injecting Markdown. * StopprependQualifierswhen reaching a qualified bracket operation (Alias.function[key]). * Skip-1and other unary operations when resolving types. * Ignore maps at the root of files when collecting doc comments. * ReturnemptySequencefromchildExpressionswhenPsiElementhas nofirstChildorlastChild. * Don’t descend inside struct literal when resolving types. * Ignore injecting Markdown in calls that read the text from a file, such as in@moduledoc File.read!(Path.join([DIR, “..”, “README.md”]))* Ignore undocumented script code at root of files. * Alias used in qualified call. * Integers * Floats * Tuples * StopancestorTypeSpeconQualifiedMultipleAliases. * Ignore pipelines for injecting Markdown in doc comments. * Ignore uselesswarn_missinginedeliver‘sdistillery` dep. * Stop accumulating qualifiers when bracket operation is hit either as qualifier or argument. Installation Instructions
Doing expensive things only once in Elixir
A simple solution to the stampeding herd problem and a library that wraps it up: https://dev.to/palm86/doing-things-only-once-in-elixir-4hdg
Expose GraphQL operation in logs with Absinthe
We always use named operations in our GraphQL requests, so we thought it would be a good idea to include the operation name in logs so instead of:
20:33:56.107 request_id=… [info] POST /graphql
20:33:56.239 request_id=… [info] Sent 200 in 84ms
We have
20:33:56.107 request_id=… [info] POST /graphql
20:33:56.239 request_id=… graphql_operation_name=UserProfile [info] Sent 200 in 84ms
We used Absinthe’s powerful middleware feature to achieve this: https://craft.mirego.com/2022-10-06-expose-graphql-operation-in-logs-with-absinthe
Elixir vs Cybersecurity - is Elixir Language a Safe Technology?
In this post, I will introduce you to the world of cybersecurity and tell you how Elixir programming language works in this environment. https://curiosum.com/blog/elixir-cybersecurity-safe-technology
Detecting SQL Injection in Phoenix with Sobelow
Learn how Ecto encourages you to write secure code, what a function vulnerable to SQL injection looks like, and how Sobelow prevents this vulnerabliity.
What is App Scaling and why Elixir is Perfect for Scalable Applications?
No more rewriting code,
No more loading delays
No more limiting the number of users
Elixir is one of those languages that works great for MVP, but also allows you to scale your application without disrupting its operation.
In this blog post, I explained what app scaling is and why Elixir is the perfect language for scalable apps.
https://curiosum.com/blog/what-is-app-scaling-why-elixir-perfect-scalable-app
ThinkingElixir 119: NPM CLI Maintainer Moves to Phoenix and Rust
Episode 119 of Thinking Elixir. Kat Marchán was the maintainer of NPM CLI for 5 years but now works at Microsoft on the VisualStudio product. Kat is passionate about Rust and uses Elixir and Phoenix to build a new Banchan Art site to serve artists. It helps connect artists with clients who want to commission custom artwork. The goal is to create a platform that does not exploit artists like many of the existing options. Amazingly, the Banchan Art Elixir project is OpenSource as well!
Faster XML Parsing with Elixir
Explore how you can parse XML effectively with Elixir using a few different methods. https://blog.appsignal.com/2022/10/04/faster-xml-parsing-with-elixir
Q&A with Sasa Juric! FREE & ONLINE
The 10th edition of Elixir Meetup hosted by Curiosum on Wednesday, October 12, 2022 at 18 CET!
During the special edition, Joshua Plicque will talk about 3 Secrets to Unlocking Elite Developer Productivity and you will have the unique opportunity to ask Sasa Juric about anything you want in an hour-long Q&A!
Join the event! https://curiosum.com/meetups/elixir
Probuild-ex : Create a league of legends pro players build trackers with elixir Part 2
Second part of a series to create a probuild tracker for the game league of legends. Together we will build probuild-ex using elixir, phoenix, liveview and friends.
Infinitely Scroll Images in LiveView
We see plenty of examples around the web of infinite scrolling content. Phoenix LiveView gives us some nifty abilities to do this elegantly and smoothly without needing any frontend frameworks.
In this post we’re going to build a very simple infinite scroll page with LiveView, using TailwindCSS for the grid layout. Check out the Demo app and the code if you want to follow along.
By Jaeyson Anthony Y.
https://fly.io/phoenix-files/infinitely-scroll-images-in-liveview/
Optimize Ecto's insert_all with Placeholders
Learn how to never sent duplicate data to your database again with insert_all/3 calls using placeholders.
https://www.peterullrich.com/optimize-ectos-insert-all-with-placeholders
New Project: Nerves Metal Detector - Find Nerves supported hardware
The Nerves Metal Detector project will help people find hardware supported by the Nerves Framework. It is like rpilocator.com but with a much broader scope.
The project is meant to be community driven. It is far from done but ready to accept contributions. The current milestone is to get to the same catalogue as rpilocator.com and then expand from there on.
Contributions for adding scraping logic for missing vendors are greatly appreciated.
The repository can be found here: https://github.com/nerves-metal-detector/nerves_metal_detector
For any questions, please join the #nerves Slack channel.
Some Early Thoughts on LiveView Native
After working through the LiveView Native tutorial and demoing the project to my Apple friends, I figured I’d capture my notes and concerns. https://mikezornek.com/posts/2022/9/26-liveview-native/
phx_live_storybook 0.4.0 is out 🔥
Hey there, we just released 0.4.0 of phx_live_storybook
A lot of work was involved in shipping new features, fixing bugs, refactoring code, and integrating feedback from both @josevalim & @chris_mccord 🙏
Support for Live View 0.18 plus automatic fly.io deploys - Legendary Template v8.0.0
We just released v8.0.0 of Legendary with support for LiveView 0.18, HEEx HTML formatter, and full CI tooling for automatic deploys to fly.io!
How to query and visualize data from Amazon Athena using Livebook
Livebook has built-in integrations with many data sources, including Amazon Athena.
In this blog post, you’ll learn how to use Livebook to connect to Amazon Athena, execute a SQL query against it, and visualize the data.
Use dbg to check your Elixir code
Debugging Elixir code has become even more accessible thanks to the dbg/2 function. Thanks to the latest version, your work may become more pleasant and the search for errors even easier. Check how to apply new possibilities in your code. A simple one-line can facilitate your error analysis.
More on: https://bartoszgorka.com/use-dbg-to-check-your-elixir-code
Probuild-ex : Create a league of legends pro players build trackers with elixir
I’m launching a series to create a probuild tracker for the game league of legends. Together we will build probuild-ex using elixir, phoenix, liveview and friends.
