golang_web_practice Concepts: fmt package pointer receivers switch statements structs go routines channels defer file i/o web server