| Several things make it easier to maintain: - super fast compile times for fast developer iterations - you can create an interface (set of methods) that your module owns, and apply it to objects created by other modules without recompiling. If you only need one method you can take that one. It encourages decoupling you from your dependencies. - the code has one correct formatting convention and a tool that will auto-format your code - many complex rules for numeric conversions that are implicit in C and cause no end of trouble are explicit and much simpler in Go. - treating concurrency as a series of sequential process connected with channels makes it MUCH easier to reason about. |