Early returns podem de fato simplificar o código elimando estruturas aninhadas, tornando a fonte mais legível e fácil de entender, em um primeiro olhar, é especialmente verdade para exemplos simples como este.
Mas para funções complexas essa abordagem pode tornar mais díficil acompanhar o fluxo de controle do programa e entneder o que o código faz. É particularmente verdade para funções que tem diversas condições saidas, que envolvem diferentes ações de 'limpeza' e que cada condição depende de lógica complexa. Como em tudo em engenharia de software não existe bala de prata, apenas trade-offs.