Inevitably, every Go developer asks the following question: How do I organize my code? There are many articles and approaches, and while some work well for some, they may not work well for others. Go has no official conventions and preferences on h...