<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
     xmlns:content="http://purl.org/rss/1.0/modules/content/"
     xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Piras — Thiago Lu Silva</title>
    <link>https://thiago.lu/piras</link>
    <description>Links, vídeos e textos que eu junto e comento.</description>
    <language>pt-BR</language>
    <atom:link href="https://thiago.lu/piras.xml" rel="self" type="application/rss+xml" />
      <lastBuildDate>Sun, 02 Aug 2026 00:00:00 +0000</lastBuildDate>

      <item>
        <title>#02 · De onde vem o sample</title>
        <link>https://thiago.lu/piras/de-onde-vem-o-sample</link>
        <guid isPermaLink="true">https://thiago.lu/piras/de-onde-vem-o-sample</guid>
        <pubDate>Sun, 02 Aug 2026 00:00:00 +0000</pubDate>
        <description>Dois vídeos sobre sampling: os sons que viraram base de gênero inteiro, e alguém garimpando trilha de videogame.</description>
        <content:encoded><![CDATA[
          <p>Os dois são sobre a mesma coisa vista de dois lados: o primeiro é o catálogo
dos sons que já estavam lá antes de qualquer um de nós, e o segundo é alguém
achando um que ainda não tinha sido usado.</p>

            <ul>
                <li>
                  <a href="https://www.youtube.com/watch?v=pMfl5kRGXdM">the most sampled sounds in music</a>
                   — Percorre os sons que viraram base de gênero inteiro — o break de Impeach the President, Hot Pants, Darkest Light, o efeito de UFO. A parte boa é ouvir o original e depois o que fizeram com ele.
                </li>
                <li>
                  <a href="https://www.youtube.com/watch?v=Vatt_FNsKf0">Sampling Yoshi&#39;s Island</a>
                   — Um beat montado em cima da trilha de Yoshi&#39;s Island. É o mesmo garimpo do vinil, com a fonte trocada.
                </li>
            </ul>
        ]]></content:encoded>
      </item>
      <item>
        <title>#01 · A parede de comparação</title>
        <link>https://thiago.lu/piras/parede-de-comparacao</link>
        <guid isPermaLink="true">https://thiago.lu/piras/parede-de-comparacao</guid>
        <pubDate>Sun, 26 Jul 2026 00:00:00 +0000</pubDate>
        <description>Rodar o sistema velho e o novo lado a lado durante a migração, e comparar as respostas antes de acreditar em qualquer uma delas.</description>
        <content:encoded><![CDATA[
          <p>Migração de sistema costuma ser tratada como um evento: existe um sábado, uma
janela, um plano de rollback e um grupo de pessoas acordadas. Funciona quando o
sistema é pequeno. Quando ele não é, o evento vira o único momento em que
alguém descobre o que estava errado.</p>

<p>A alternativa é fazer a migração deixar de ser um evento. Em vez de trocar o
sistema num instante, os dois rodam juntos por um tempo, e o trabalho passa a
ser comparar o que cada um responde.</p>

<h2 id="como-isso-funciona-na-prática">Como isso funciona na prática</h2>

<p>O sistema novo recebe o mesmo tráfego do velho, sem que a resposta dele chegue
a ninguém. Cada par de respostas é guardado e comparado. Enquanto os dois
divergirem, o novo não assume nada.</p>

<ul>
  <li>O velho continua sendo a fonte de verdade durante todo o período.</li>
  <li>O novo processa tudo, e nada do que ele devolve é servido.</li>
  <li>Cada divergência vira um item para investigar, com os dois lados guardados.</li>
</ul>

<p>O que se ganha é ordem de investigação: no dia do corte, a lista de diferenças
já é conhecida e já foi decidida uma a uma.</p>

<h2 id="o-que-conta-como-divergência">O que conta como divergência</h2>

<p>Aqui está a parte que dá trabalho. Duas respostas raramente são idênticas byte
a byte, e quase sempre há diferença que não importa: ordem de chave num JSON,
carimbo de tempo, identificador gerado, arredondamento na última casa.</p>

<pre><code>igual        → nada a fazer
diferente    → investigar
diferente,
mas esperado → registrar a regra e parar de perguntar
</code></pre>

<p>A terceira linha é a que decide se a comparação sobrevive à primeira semana.
Sem ela, todo mundo para de olhar o relatório no terceiro dia, porque ele tem
milhares de linhas e nenhuma delas é um problema.</p>

<blockquote>
  <p>Uma comparação que sempre acusa diferença é uma comparação que ninguém lê.</p>
</blockquote>

<h2 id="o-custo">O custo</h2>

<p>Não é de graça. Rodar dois sistemas custa o dobro de infraestrutura durante o
período, e o mecanismo de comparação é software que precisa ser escrito,
mantido e depois desligado. Em migração pequena isso não se paga.</p>

<p>O que decide não é o tamanho do sistema, é o custo de errar: quanto vale uma
resposta errada servida por três dias sem ninguém perceber.</p>

        ]]></content:encoded>
      </item>
  </channel>
</rss>
