No último fim de semana, eu estava ansioso e queria testar a construção do DApp de votação privada mais simples na rede de testes do Midnight — os usuários podem provar com ZK que têm "direito a voto", mas não revelam o endereço.
Como resultado, caí em três armadilhas reais.
Armadilha 1: A geração de provas local é tão lenta que me fez questionar a vida
Na primeira geração da prova, esperei 47 segundos. Achei que o computador tinha travado e quase forcei o desligamento. Depois percebi que no documento oficial havia uma linha em letras pequenas: "A primeira geração precisa aquecer o cache." Se isso for lançado na rede principal, os usuários vão esperar 47 segundos?
Armadilha 2: O código de exemplo da documentação não funciona
Uma biblioteca de dependência na amostra oficial estava com a versão errada, e o npm install deu erro direto. Perguntei em um grupo no Discord e, por fim, um estranho me enviou um link de patch que resolveu. Naquele momento, eu entendi repentinamente a importância do ecossistema de desenvolvedores — sem uma comunidade ativa, nenhuma tecnologia boa vale a pena.
Armadilha 3: A assinatura do frontend sempre expira
Quando os usuários assinam a prova ZK, a janela do wallet frequentemente expira, fazendo com que todo o processo trave. Depois de duas horas de ajustes, percebi que a configuração padrão de tempo limite era muito curta. Depois de aumentá-la, funcionou.
Embora tenha caído em armadilhas, quando vi "Voto registrado com prova" no terminal, ainda me senti bem.
Atualmente, não tenho participação em tokens do Midnight, sou puramente um entusiasta técnico. Mas essa experiência de desenvolvimento me fez acreditar: a base técnica do Midnight realmente é diferente, mas as ferramentas para desenvolvedores ainda precisam ser aprimoradas.
Você já enfrentou algum problema ao desenvolver em uma nova blockchain? Compartilhe sua experiência.