Which Go-based web-application frameworks can best assist developers in getting their Go-related projects done? According to data from analyst firm RedMonk, it could be Gin and Beego.
Go is an open-source language created by engineers at Google in 2009, offers must-have features such as garbage collection and memory safety. Google has used Go for years in some of its production systems; now the language is expanding to infrastructure run by other tech firms. “From our perspective at RedMonk it is rare to encounter a new infrastructure project which is not using Go in a significant manner,” read the firm’s blog posting on the most popular Go-based frameworks. “We are also seeing Go appear as a language of choice for people building cloud native applications.”
For example, Amazon and Microsoft have both thrown formal support behind Go (AWS Lambda compute service for on-demand applications, for example, offers support for Go due to its error handling and strongly typed language). Non-tech firms such as The New York Times are also leveraging the language as the basis of frameworks for web applications and microservices (the newspaper created Gizmo, a framework for microservices).
RedMonk examined 20 different Go-based frameworks, and concluded that Gin and Beego occupy “Tier 1,” with Martini (which is no longer active), Echo, Revel, and Iris (which has some licensing issues) in “Tier 2.” When the scope is narrowed to just microservices, the firm thinks that Go-Kit, Micro, Gizmo, and Kite are the “clear leaders.”
Although Go hasn’t yet dominated the enterprise, it’s clear that developers and sysadmins are interested in the capabilities of the language (and the frameworks that stem from it). If companies such as Amazon, Google, and Microsoft are all weaving its use into their respective tech stacks, it seems likely that the language’s popularity will only increase throughout the balance of the year.
A recent developer survey by HackerRank found that Go, despite its relative newness (or perhaps because of it), was especially popular among older developers (along with Kotlin and Swift). Considering how many experienced tech pros are at the forefront of deciding their respective companies’ technology stacks, that’s another good sign that Go could eventually find its way deeper into business infrastructure.
In the meantime, stay aware of other languages that Google has on the proverbial horizon. For example, Google has been long-rumored to be working on Fuchsia, a universal OS capable of operating on a variety of devices and screen sizes. After rumors of its development persisted for years (fueled by the presence of a Github repository), Google used its I/O conference to outright acknowledge that something is in the works. Now Google’s Fuchsia.dev site (which launched after I/O) is populated with documentation; one page discusses Zircon, the microkernel at the heart of Fuchsia, although right now the link to the code repository is nonfunctional.
In other words, Go continues to have its specific uses; just stay aware of the fact that Google likes to experiment, and even as developers work to bulk out Go’s capabilities, the search-engine giant could introduce other ways of coding and working in the near future.