Olha, acompanhar o Trump e exaustivo. O homem domina as manchetes da BBC, Guardian, NPR, Al Jazeera e ate do Babylon Bee. Checar mais de 10 sites diariamente? Nao, obrigado. Entao eu construi o Trump Daily! E um agregador RSS auto-hospedado que joga tudo em uma interface limpa. O https://trumpdaily.site nasceu!

E honestamente? Foi a coisa mais divertida que codifiquei em meses, alguns anos atras.

O Stack (Ou: Por que Escolhi Tecnologia Sem Gracinha)

  • Backend: Python/Flask (sim, eu amo!)
  • Banco de Dados: PostgreSQL
  • Cache: Redis (para literalmente tudo)
  • Tarefas: Celery (fetch RSS em background)
  • Frontend: Vanilla JS (sem React, pode vir pra briga)
  • Deploy: Docker Compose (um comando, pronto)

A coisa toda tem ~1.000 linhas de Python e 400 linhas de JS. Roda localmente. Sem rastreamento (Apenas Google Analytics). Sem contas de nuvem. Sem enrolacao.

Como Funciona

RSS Feeds → Celery → Palavras-chave → PostgreSQL → Flask API → Navegador
                         ↓
              (Engracado? Politico? Serio?)

A cada 5 minutos, o Celery busca feeds e categoriza artigos usando correspondencia de palavras-chave:

  • "investigation" + "indictment" = Serio
  • "ridiculous" + "bizarre" = Engracado
  • "tariff" + "trade war" = Economico

Regex simples, ~85% de precisao. Sem necessidade de ML.

Por que Isso Foi Ridiculamente Divertido

1. Realmente Funciona
Diferente da maioria dos projetos paralelos que acumulam poeira, eu uso isso todas as manhas. Construir algo que voce genuinamente precisa tem um sabor diferente.

2. Vanilla JS e Libertador
Sem webpack. Sem babel. Sem 500MB de node_modules. Apenas 400 linhas de JavaScript que carregam instantaneamente. O frontend filtra mais de 500 artigos do lado do cliente sem suar.

3. Docker Compose e Magia
Um unico docker compose up -d sobe 5 servicos (nginx, flask, postgres, redis, celery). Zero inferno de configuracao.

4. Python Resolve o Problema
Projeto de fim de semana → Prototipo funcional em 3 dias. O ecossistema (feedparser, SQLAlchemy, Celery) simplesmente funciona. Zero bugs de biblioteca.

Os Trade-Offs (Ou: E se eu usasse Go/Rust?)

Python nao e rapido. Sejamos realistas:

LinguagemParsing RSSMemoriaTempo Dev
Python15-30s~600MB3 dias
Go3-5s~50MB5-7 dias
Rust2-4s~30MB9-15 dias
Node.js12-25s~500MB3 dias
Bun5-8s~200MB3 dias

Go poderia analisar feeds 10x mais rapido? Sim.
Faria diferenca? De jeito nenhum.

O app ja parece instantaneo. O RSS atualiza a cada 5 minutos. Quem se importa se a ingestao leva 15 segundos vs 3 segundos? Nao estou rodando o Twitter aqui.

Quando eu Escolheria Diferente

  • 10.000 usuarios simultaneos? Go ou Rust.
  • WebSockets em tempo real? Elixir/Phoenix.
  • VPS de $5/mes? Go (menor uso de memoria).
  • Ja conhece Rust? Use o que voce conhece.

Mas para uma ferramenta auto-hospedada e de usuario unico? Python e perfeito.

Melhores Decisoes

- Filtragem client-side - Carregue todos os 500 artigos, filtre no navegador. Rapido e simples.
- Docker Compose - Sem complexidade de Kubernetes para um projeto pessoal.
- Sem frameworks - Vanilla JS carrega em milissegundos, sem etapa de build.
- PostgreSQL - Indices adequados, sem drama de travamento do SQLite.
- Privacy-first - Roda localmente, zero rastreamento, zero nuvem.

Piores Decisoes

- Sem busca de texto completo - LIKE do PostgreSQL e basico, mas bom o suficiente.
- Sem atualizacoes em tempo real - Artigos atualizam a cada 5 min, nao ao vivo.
- Uso de memoria - 600MB e exagero para isso, mas quem se importa.

Quer Contribuir?

O repo e privado no GitHub, mas fico feliz em adicionar colaboradores. Se voce quiser:

  • Explorar o codigo
  • Contribuir com funcionalidades
  • Fazer um fork para seu proprio agregador

Basta me enviar seu nome de usuario do GitHub ou seu endereco de e-mail. Mantive privado para evitar spam, mas adoro colaboracao.

Licoes Aprendidas

  1. Tecnologia sem graca vence - Flask, PostgreSQL, Redis sao sem graca. Tambem sao testados em batalha e previsiveis.
  2. Renderizacao client-side e subestimada - Navegadores modernos sao rapidos. Use-os.
  3. Docker Compose > Kubernetes - Para projetos pequenos, K8s e um exagero insano.
  4. Vanilla JS e suficiente - React/Vue sao otimos, mas complexidade desnecessaria para UIs simples.
  5. RSS nao esta morto - Simples, padronizado, sem chaves de API, simplesmente funciona.

O Veredito

Python foi absolutamente a escolha certa. Nao porque e rapido (nao e), mas porque:

  • Lancei em 3 horas com Github Co-Pilot
  • O codigo e legivel
  • O desempenho e "bom o suficiente"
  • Eu realmente gosto de mante-lo

Go poderia ser 10x mais rapido? Claro. Faria diferenca? Nao.

Escolha ferramentas que te deixem lancar rapido, resolvem o problema e nao fazem over-engineering.


Tech: Python, Flask, PostgreSQL, Redis, Celery, Vanilla JS
Linhas de Codigo: ~1.400 total
Tempo Dev: 3 horas com Github Co-Pilot
Deploy: docker compose up -d
Status: Repo privado, colaboradores bem-vindos

2026. Construi, lancei, uso diariamente. E assim que projetos paralelos deveriam ser.