How to Fix PostgreSQL Performance Issues with PG Extras
https://pawelurbanek.com/postgresql-fix-performance
PostgreSQL database queries are a common performance bottleneck for web apps. Before you resort to more complex optimization techniques like caching or read replicas, you should double-check if your database engine is correctly tuned and queries are not underperforming.
PG Extras is a tool that allows you to spot common PostgreSQL pitfalls. Ruby, Rails, Elixir, and NodeJS implementations are currently available.
In this blog post, I present a step by step guide on using PG Extras library to spot and resolve common PostgreSQL database performance issues.
Adding Global View Helpers to a Phoenix Application
If you come from a Ruby on Rails background you might be used to having view helpers such as number_with_delimiter
up your sleeve and ready to use in any view. Here’s how to configure functions that are accessible in your Phoenix views: https://danielwachtel.com/phoenix/adding-global-view-helpers-phoenix-app
Elixir Wizards S4E20 Devon Estes on how Architecture Is a Myth and One-file Design
Latest episode of Elixir Wizards is out today! Check it out here: https://smartlogic.io/podcast/elixir-wizards/s4e20-estes/
Stupid solutions: Live Server Push Without JS
Elixir makes it easy to do the weird, wonderful and woeful. Especially when it comes to state. This simple application based on Plug sends live visuals to anyone connected via the odd MJPEG live image format.
A Brief Guide to OTP in Elixir
Learn more about OTP, a set of tools and libraries that Elixir inherits from Erlang.
ThinkingElixir 015: Inside Elixir Radar with Hugo Baraúna
In episode 15 of Thinking Elixir, we talk with Hugo Baraúna, the guy behind Elixir Radar, to get the inside scoop. Would you like to increase the chances of your blog post being featured by Elixir Radar? Hugo shares how! We also discuss his observations of Elixir adoption in companies, the type of community we have, early observations from the Elixir Ecosystem Survey, sustainability in OpenSource, his efforts to fund his time on Elixir Radar, and more!
Collectable: Custom Data Structures in Elixir, part 2
Continue creating a custom Array type in Elixir and learn about the Collectable protocol.
https://blog.brettbeatty.com/elixir/custom_data_structures/collectable
Migrating to Elixir with the Strangler Pattern
I think it’s fair to say that a good amount of folks - if not the majority of them - using Elixir in production today are doing so after migrating an application to Elixir from some other language instead of just building in Elixir from scratch. Of course this idea of re-writing an application is scary, and rightly so! But there are some ways to make this process simpler and less scary, and also to reduce the likelihood of introducing regressions during this process, and that’s what I go over in this post.
http://devonestes.com/migrating-to-elixir-with-the-strangler-pattern
Blazing with Phoenix: Project Structure
An article about how to layer your Phoenix project with a structure convention focused on developer productivity: https://dev.to/pedromtavares/blazing-with-phoenix-project-structure-463l
RestClient an open source LiveView project
I’ve just open sourced a REST API client demo using Phoenix LiveView.
Using Ansible to Deploy Elixir Applications on Dokku
Beginners guide to building a Elixir application with Pheonix. A ‘liveblog’ of a rubyist learning Elixir. http://mikebian.co/building-a-elixir-phoenix-application/
IntelliJ Elixir v11.8.1
Changelog
Bug Fixes
-
Vendor JInterface 1.11 to support
BIG_CREATION
when debugging. The JInterface on Maven Central has stopped being updated because the OTP Team didn’t actually maintain it, that was Basho, and Basho is gone now. This version of JInterface, 1.11, is from Erlang 23.0.4 from Homebrew, but with the formula edited (brew edit erlang
) to add–with-java
and then built withbrew install erlang –build-from-source
. -
On Windows, the
file.path
to the debugger server files has\
, but they aren’t escaped. Therefore, replace them with escaped version,\\
to fix debugging on Windows, but leave Linux and macOS unaffected.
8th video in the series about building cryptocurrency trading bot in Elixir
8th video in the series about building cryptocurrency trading bot in Elixir - this time we will broadcast and store orders inside Postgres
we will modify the naive traders to broadcast the Binance orders structs to a new PubSub topic. We will add a handler function to the DataWarehouse.Subscribers.Worker module to be able to store the Binance Orders into the database. To be able to store them inside DB we will also add a migration script and Ecto schema.
Link: https://www.youtube.com/watch?v=-HunMxOo7Y4&list=PLxsE19GnjC5Nv1CbeKOiS5YqGqw35aZFJ&index=8
Elixir Wizards Podcast Listener Survey Results
The latest Elixir Wizards post is out! Check it out here: https://blog.smartlogic.io/listener-survey-results/
Phx.Gen.Auth usage and customization
A couple of posts on authentication with Phx.Gen.Auth and how to go about adding some simple customizations to the workflow and functionality.
https://experimentingwithcode.com/phoenix-authentication-with-phx-gen-auth-part-1/https://experimentingwithcode.com/phoenix-authentication-with-phx-gen-auth-part-2/
Phx.Gen.Auth and Swoosh
In this episode we’ll update the example user notifications generated by Phx.Gen.Auth to trigger emails using Swoosh.
ThinkingElixir 014: LiveView and Airtable with Ricardo Garcia Vega
In episode 14 of Thinking Elixir, we talk with Ricardo Garcia Vega about how he paired a Phoenix application with no database Repo to an Airtable backend to quickly solve a problem but without compromising on speed or reliability. Includes great discussion of ETS tables, GenServers for syncing a cache, LiveView for live updates, links to great resources, a github repo for doing it yourself and much more!
Ash Framework - Looking for contributors and alpha users! http://www.ash-elixir.org
Looking for anyone interested in contributing to Ash, or trialing it during the alpha. Anyone who is interested will get as much in person attention from me (@ZachSDaniel1) as they need. Ash covers a lot of ground, so there is plenty to do! Check out the community page on the website for information on how to get involved. http://www.ash-elixir.org
Morphix 0.8.1 released! Now with minor bug fixes! https://hex.pm/packages/morphix/0.8.1
Morphix is a tiny library of functions to perform transforms on maps and arrays.
Morphix provides atomorphification (transforming string keys to atoms in maps) at either the top level or at all depths. This release fixes a bug with the atomorphification methods, which were throwing uncaught errors on maps with non-printable binary keys.
Keys that cannot be transformed to atoms will be ignored.
Use Ecto Embedded Schemas to Back Phoenix Forms
A blog post showing how to use Ecto’s embedded_schema to create form modules to use with Phoenix:
https://mattpruitt.com/articles/phoenix-forms-with-ecto-embedded-schema