https://levelup.gitconnected.com/getting-started-with-go-maps-structs-error-handling-logging-testing-304e86e70cde