The lack of generics used to be the biggest challenge to using Go, according to the annual Go Developer Survey. Now that Go has generics, the biggest challenges Go developers report are error handling and learning best practices, according to the most recent edition of the survey.
The January 2023 edition of the Go Developer Survey asked 5,844 Go developers to share how they are using Go, their biggest challenges using Go, and their top priorities for future improvements of the language. The results were published on May 11.
Error handling, particularly the readability and verbosity of errors in Go, and the difficulty of learning best practices for Go programming were the most commonly reported challenges. Historically, the lack of registered generics as the biggest challenge among the Go developers surveyed. But generics, which simplify coding by allowing developers to write functions that are independent of the types used, officially arrived with Go 1.18 in March 2022. Since this introduction, comments about generics have declined.
In other survey findings, open source Go module maintainers reported challenges in keeping dependencies up-to-date and avoiding disruptions due to versioning and breaking changes. Plans call for exploring this area further to assist maintainers with providing a stable, healthy ecosystem. The survey also found that novice Go developers are interested in using Go for web development.
In other findings from the January 2023 Go Developer Survey:
- An optimization guide was the most valuable way to boost Go performance. When asked how they would spend resources on improvements to Go’s compiler and runtime, respondents favored an optimization guide rather than specific performance improvements, demonstrating the value of documentation in this area.
- 92% of respondents were satisfied with Go while 4% were dissatisfied and 4% were neither satisfied nor dissatisfied.
- About a third of respondents maintain an open source Go module.
- 30% of respondents have used Go for two to four years, while 19% have used the language for five to seven years, and 8% have used it for more than eight years.
- Microsoft’s Visual Studio Code was the most-preferred code editor for Go. Linux and macOS were nearly neck and neck as the most-preferred development platforms.
- Development of API/RPC services was the most prominent use of Go, followed by runnable/interactive programs, libraries or frameworks, and automation/scripts.