https://kirubaspace.medium.com/part-ii-level-up-your-go-skills-5-concepts-for-go-developers-30056cfd19dd