← todos os posts

"Construa, Estruture, Opere: as três fases e o portão de cada uma"

Três fases, cada uma com um portão que o seu app passa ou não passa. O que cada portão exige, por que a ordem é essa, e o que fazer quando não passa.

"Estamos a mais de 2 semanas tentando fazer um SaaS usando IA. Simplesmente existem tantos por menores que ninguém conta. Agora estamos correndo de lá para cá procurando um programador."

É de quem não programa, num fórum brasileiro. Repare no "de lá para cá". Não é falta de esforço nem de ferramenta. É que os "por menores" chegam todos ao mesmo tempo, sem ordem, e a pessoa apaga o incêndio que grita mais alto. Hoje o login, amanhã o banco, depois o domínio, e nada fica pronto.

Eu já contei o que acontece com um protótipo nas três semanas depois de publicado e o que a promessa da mentoria mede. Este post é sobre o caminho entre os dois: as três fases, o que o portão de cada uma exige, e por que portão é o contrário de curso.

Portão é o contrário de aula 7

Num curso, a aula 7 vem depois da 6 independente do que aconteceu com o seu projeto. Três meses depois você tem um certificado e o mesmo app.

Portão é outra coisa. É uma lista curta de perguntas com sim ou não, respondidas no seu app, e a regra é uma só: não passa com "não" em aberto. Não é nota. Ninguém reprova. É que a fase seguinte é construída em cima da anterior, e construir em cima de "não" é construir em terreno que cede.

E parar num portão é o esperado. Você não parou porque é lento; parou porque o portão fez o trabalho dele.

Fase 1, Construa: o aperto de mão

É a fase em que o app deixa de morar só na conta da plataforma. O portão pede quatro coisas:

  1. O código roda na sua máquina. Não "está exportado": roda, você abre no navegador, no seu computador.
  2. O banco é seu. A conta onde moram os dados dos clientes está no seu nome, e você já baixou uma cópia hoje.
  3. Teste e produção são lugares diferentes. O que você experimenta não toca o dado do cliente. A documentação do Firebase é direta: recomenda "um projeto Firebase separado para cada ambiente" porque isso "dá isolamento pra desenvolver e testar sem afetar os usuários". Serve pra qualquer banco, não só o deles.
  4. Existe um ponto de retorno. Cada mudança tem um lugar marcado pra onde voltar. O nome disso é git, e a documentação oficial dele resume a lógica: a cada "salvar", ele "tira uma foto de como todos os arquivos estão naquele momento", e "é difícil fazer o sistema fazer qualquer coisa que não dê pra desfazer". É o que você quer embaixo do seu app.

Por que esta fase vem primeiro, e não a segurança, que assusta mais? Porque todo conserto feito antes dela é feito em terreno alheio e sem volta. Corrigir a regra de acesso sem ponto de retorno é a mudança que quebra o login e você não sabe voltar. A fase 1 não exige entender o código. Exige que ele rode onde você manda.

Fase 2, Estruture: o app aguenta dado de verdade

Com o chão firme, agora se mexe no que está em cima. O portão pede três coisas:

  1. O modelo de dados foi desenhado por você. Uma folha com o que existe (cliente, pedido, agendamento), o que liga o quê, e o que é obrigatório. Sem isso, o segundo mês é uma pintura com três estilos.
  2. As regras do negócio têm prova. O cálculo, o prazo, o desconto: existe um teste que dá verde ou vermelho sem você clicar em tudo. Peça prova, não afirmação.
  3. O login protege, não só aparece. O teste dos dois usuários passa: a conta B não vê o dado da A.

Por que a segurança só entra aqui? Porque depende do item 3 da fase 1: testar regra de acesso em cima do banco de produção é testar com o dado do cliente na mesa. Com ambiente separado, você quebra à vontade.

Fase 3, Opere: gente de fora, e o dia em que quebra

A última fase é a que o tutorial trata como "fim". Portão:

  1. Publicado no seu domínio, no seu nome, conferido em janela anônima.
  2. Custo mensal conhecido, em real, antes de vender.
  3. Uma pessoa de fora usa sem você do lado. Uma, com nome.
  4. Está escrito o que fazer quando quebra, com backup que já voltou uma vez e a ordem de religar.

Por que o domínio só agora? Porque publicar em endereço próprio um app que não passou nos outros dois portões é só tornar o problema público, com o seu nome no cadeado.

O que fazer hoje

Responda os onze itens acima, no seu app, com sim ou não, e "não sei" conta como não. Depois marque em que fase está o seu primeiro "não". Esse é o seu portão. Tudo que vem depois pode esperar, mesmo o que assusta mais: um "não" da fase 1 resolvido vale mais que três da fase 3, porque as três vão ser refeitas quando a fase 1 mudar o chão.

Dois desses itens ainda não têm tutorial aqui, o de separar teste de produção e o de montar o ponto de retorno sem virar programador, e eles vêm nas próximas semanas. O resto está linkado.

O que não cabe em post nenhum é o que a mentoria faz: passar o seu app pelos três portões, na ordem, com alguém conferindo cada "sim" antes de avançar. Ela ainda não tem aluno pra citar, e eu não vou inventar um. Tem esta lista como contrato. Você já sabe o seu primeiro "não". Começa por ele.

Fontes