As others have kindly pointed out, we use authentication as one means of preventing abuse of the system. Each guide is connected to a remote container instance, so there are real compute costs associated with each user's session. Leaving this open is not something that we, as a sponsor-supported open source project, can afford.
You get a Linux terminal, that will be why to prevent spam. The login only takes a public email address.
That's legit, think of katacoda and other e-learning platforms.
Prevent span on who, though? Generally (~99.99% of the time), providing an e-mail address is an invitation to getting spam.
Assumedly to help the site owners prevent using their service to perpetrate spam against others using the Go language services/shell?