<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Elixir on Carlos Souza</title><link>https://csouza.me/tags/elixir/</link><description>Recent content in Elixir on Carlos Souza</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 26 Jan 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://csouza.me/tags/elixir/index.xml" rel="self" type="application/rss+xml"/><item><title>Handling Gaps in Time-Series Data with PostgreSQL's generate_series() and Ecto</title><link>https://csouza.me/posts/handling-gaps-in-time-series-data-with-postgres-and-ecto/</link><pubDate>Mon, 26 Jan 2026 00:00:00 +0000</pubDate><guid>https://csouza.me/posts/handling-gaps-in-time-series-data-with-postgres-and-ecto/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Consider a monitoring system for a weather station. A sensor in the field collects temperature readings every hour and reports them back to the system, but occasionally goes offline due to power outages or maintenance. When generating daily reports, the data shows gaps.&lt;/p&gt;
&lt;p&gt;Querying the readings table for a particular day returns only the hours when the sensor was operational. Asking users to figure out which hours are missing feels like poor UX.&lt;/p&gt;</description></item><item><title>ElixirConf US 2023</title><link>https://csouza.me/posts/elixirconf-us-2023/</link><pubDate>Wed, 20 Sep 2023 00:00:00 +0000</pubDate><guid>https://csouza.me/posts/elixirconf-us-2023/</guid><description>&lt;p&gt;Em setembro, Orlando voltou a ser palco da ElixirConf US após 7 anos desde sua última edição na cidade. Tive o privilégio de participar novamente desse encontro de três dias, repleto de palestras sobre variados temas relacionados ao ecossistema Elixir e BEAM, organizadas em três trilhas simultâneas. A qualidade das palestras foi tão alta que se tornou um desafio decidir qual assistir! A seguir, faço um resumo das que tive a oportunidade de acompanhar.&lt;/p&gt;</description></item><item><title>Selects dinâmicos com LiveView</title><link>https://csouza.me/posts/selects-dinamicos-com-liveview/</link><pubDate>Thu, 24 Mar 2022 00:00:00 +0000</pubDate><guid>https://csouza.me/posts/selects-dinamicos-com-liveview/</guid><description>&lt;p&gt;A utilização de selects dinâmicos é uma excelente forma de filtrar uma listagem muito grande e tornar a navegação de uma aplicação mais amigável.&lt;/p&gt;
&lt;p&gt;Neste post iremos construir selects dinâmicos com &lt;em&gt;Phoenix&lt;/em&gt; e &lt;em&gt;LiveView&lt;/em&gt;. A aplicação de exemplo é uma simples página de listagem de guitarras.&lt;/p&gt;
&lt;p&gt;(O segundo select é preenchido dinamicamente, de acordo com o valor do primeiro)&lt;/p&gt;
&lt;p&gt;Uma guitarra pertence a uma marca, como Gibson ou Fender. Cada marca oferece algumas opções diferentes de modelo, como Les Paul e SG no caso da Gibson, ou Stratocaster e Telecaster no caso da Fender.&lt;/p&gt;</description></item></channel></rss>