DEV Community

Daniel Porto
Daniel Porto

Posted on

Diário de dev #1: o que 15 minutos desbloqueou

Segunda semana do diário. Se a anterior foi sobre um mês inteiro de construir e jogar fora, essa foi mais mundana. Infra que ninguém vê, um projeto pequeno que virou ferramenta pra outra pessoa, e uma noite explorando um problema que ainda não tem resposta.

A última milha que ninguém pensa

Alguém do time de marketing me mostrou uma página de evento que tinha construído com IA. Ficou boa. Sério, boa mesmo: cores certas, espaçamento certo, seguindo o design system. Aí veio a pergunta: "como eu coloco isso no ar?"

Esse gap me pegou de surpresa. O trabalho difícil estava feito. A parte que eu esperaria ser o obstáculo, criar a interface, tinha sido resolvida por alguém sem experiência técnica usando IA. O que travou foi publicar. Um detalhe de infraestrutura que pra qualquer dev é trivial, mas que pra quem nunca mexeu com git ou servidores é uma parede.

Montei um repo no GitHub Pages onde cada pasta vira automaticamente uma URL em nosso domínio. Faz upload, aparece em dominio.com/nome-do-evento. Quinze minutos de configuração.

O que me ficou foi pensar em quantas outras pessoas estão nessa situação agora. IA abaixou muito o piso pra criar interfaces, mas a infraestrutura ainda pressupõe conhecimento que a maioria das pessoas não tem e provavelmente não quer ter. O trabalho de dev vai mudando, mas não necessariamente diminuindo. Às vezes vira isso: resolver a última milha pra quem chegou até lá sozinho.

A semana que não aparece em nenhum demo

No trabalho foi uma semana de trabalho que ninguém vai mostrar numa apresentação. Infraestrutura, permissões, estado inconsistente.

Tem uma categoria de bug que eu acho particularmente frustrante: o que não grita. Sem exception, sem mensagem de erro, sem log óbvio. Só um usuário preso num fluxo de login que não avançava e não explicava por quê. Quando você finalmente entende o que estava acontecendo, a solução cabe em três linhas. O difícil foi chegar até lá.

Além disso, rodou um ciclo de QA mais pesado numa tela complexa do produto, aquele tipo de tela onde o estado vem de vários lugares ao mesmo tempo e as fontes se interferem de formas que só aparecem quando você junta tudo. Tínhamos testes. Não eram suficientes.

Não é que os testes fossem ruins. É que teste automatizado tende a verificar o que você imaginou que poderia dar errado. QA externo encontra o que você não imaginou. São dois tipos de cobertura diferentes, e essa semana ficou claro de novo que um não substitui o outro.

O resto foi infra. Esse tipo de trabalho tem um ritmo próprio: você acha que vai ser rápido, descobre que não é, ajusta, testa de novo. Cloud costuma ter pelo menos uma surpresa guardada em algum canto de permissão que você não esperava precisar configurar.

Uma noite tentando dar voz a personagens em português

RPGTeller é um engine de livros-jogos que estou construindo. Essa semana queria explorar narração por voz, dar vozes distintas pra cada personagem.

Comecei pelo Kokoro, uma opção de síntese de voz que roda offline. Tem apelo óbvio pra um projeto assim: sem dependência de API, sem custo por caractere, roda localmente. O problema é que dublagem em português brasileiro ficou robótica demais. Funcional, mas longe de imersiva.

Migrei pro ElevenLabs. Ficou melhor, suficiente pra eu conseguir atribuir vozes específicas por personagem: uma voz de narrador, outra pra Svetlana, outra pro guerreiro. Dá pra imaginar como vai soar no jogo.

Mas ElevenLabs é uma API paga por caractere. Antes de seguir por esse caminho, quero saber se consigo qualidade aceitável rodando algo local. Ainda não sei a resposta.

Não terminei essa exploração. Ainda quero testar mais opções, especialmente coisas que rodam localmente e têm qualidade aceitável em pt-BR. Por enquanto ficou Kokoro ruim, ElevenLabs bom mas online.


O diário #0 cobriu um mês. Esse cobriu uma semana normal. Se quiser acompanhar os próximos, segue lá.

Top comments (0)