Digests » 263

this week's favorite

Postgres & Phoenix Search Without Triggers

Our first implementation of search looked pretty much as described there, we had materialized views per type that we wanted to conduct searches on. These materialized views are created by triggers in the database on every insert, update and delete of that entity. Next to the materialized views, we also created indexes to increase the search speed.

Securing application webhooks in Elixir

Not long ago, I had a task that involved securing a webhook from an external API, making it possible to verify if the request was coming from the allowed application (authenticity) and if the received payload matched the one sent from the application, by verifying if the hashes matched (integrity).

How to use web scraping in Elixir to gather useful data

Businesses are investing in data. The big data analytics market is expected to grow to $103 billion (USD) within the next five years. It’s easy to see why, with everyone of us on average generating 1.7 megabytes of data per second.

Decomposing domain models based on lifecycles

Good decomposition is one of the most important parts of software design. Unfortunately it’s also one of the hardest. We all know that modular design is a good thing. But how do we make our systems more modular?

Cookie Authentication with Phoenix LiveView

When I started learning Elixir a few years ago I built a multiplayer game for the iPad using Phoenix. The game had a fairly minimal authentication requirement so I looked around at some of the popular open source libraries available but ultimatly I decided to write something myself to get experience with the language and ecosystem.