Experimentação

Renderização anti-flicker

Ninguém vê a página original virar o teste. E nenhuma falha pode deixar a página escondida.

Sem piscada do originalQuatro salvaguardasErros reportados, nunca lançados

Quando uma variante muda algo acima da dobra, o visitante não pode ver o original primeiro. O runtime esconde a página enquanto as mudanças são aplicadas e a revela logo em seguida, então a primeira coisa renderizada é a versão sendo testada.

A engenharia interessante está na segunda metade. Esconder a página de um cliente é a coisa mais perigosa que este software faz, então a revelação é chamada a partir de quatro caminhos de código independentes: depois de as mudanças serem aplicadas, a partir do tratador de erro interno, a partir do tratador de erro externo, e no runtime servido a sites sem nenhum experimento em execução.

Essa redundância é deliberada e é tratada como um invariante, e não como duplicação a ser arrumada num só lugar. Se um caminho falha, outro ainda roda. A falha contra a qual isso se defende é o site de um cliente ficar em branco para os próprios visitantes dele.

Erros no código do experimento são capturados e reportados depois, em vez de lançados, pelo mesmo motivo: uma variante quebrada deve custar a você o teste, nunca a página.

Melhores testes, melhores conversões

Test on all visitors with the world’s lightest script and make confident decisions powered by real-time reporting.