Although Go was released to much furore in late 2009, when it was heralded as Programming Language of the Year by the TIOBE Index, its popularity has waxed and waned over the years.
Now Go has re-emerged as one of the best programming languages to learn this year for two main reasons: security and AI.
In December 2023, the National Security Agency and Central Security Service released a report co-authored by cybersecurity authorities in the U.S., Australia, Canada, UK and New Zealand.
In it, international security experts combined to recommend software manufacturers’ transition from memory-unsafe programming languages like C and C++ to memory-safe programming languages, like Go, C#, Java, Python, Rust and Swift.
“Memory safety vulnerabilities affect software development across all industries,” said Neal Ziring, technical director of NSA Cybersecurity Directorate. “Working together to set clear goals and timelines in transition roadmaps to safer programming language is critical for mitigating these problems.”
Originally designed at Google — reportedly motivated by a shared dislike of C++ — now the open-source language is used by leading companies like PayPal, Dropbox, Uber, Microsoft and ByteDance to create web services, backend services and critical infrastructure.
GO is also growing in popularity in ‘FAANG’ companies aka Facebook, Amazon, Apple, Netflix and Google.
As it shows efficiency and high performance with large datasets, it is expected to become a bigger player in AI development.
In its own 2024 H1 developer survey, there was a shared consensus among survey participants who develop AI-powered services and apps that Go is a strong platform for executing these kinds of applications in production.
Most respondents working on AI-powered applications either currently use Go, or would like to switch to Go, for their AI-powered workloads.
A large breadth of reasons are cited for this, from hailing the core aspects of Go, namely robustness, simplicity and performance, through to the fact that organizations are already using Go and prefer to keep the tech stack used as homogenous as possible.
Roughly a third of respondents who were building AI-powered features said they were already using Go for a variety of GenAI tasks, including prototyping new features and integrating services with LLMs.
These percentages slightly increase for two domains where Go is an especially useful tool: hosting API endpoints for ML/AI models (41%) and data pipelines for ML/AI systems (37%).
However, many organizations still start AI-powered work in Python, before switching to a more production-ready language, and there is a natural reluctance for companies to shift once there has been investment in the language originally used.
Greater knowledge of Go among ML teams would unblock 10% of respondents from using Go with AI-powered applications, but unless Go’s AI libraries and ecosystems improve, Python and PyTorch will continue to dominate AI development. As the report was released in April, you can bet this is a current workstream in process to aid Go’s dominance in AI.
What both Python and Go share is that they are relatively easy to learn, and ideal for beginners. Both also have easy-to-understand syntax and first-party support from all of the main cloud providers, but AWS and Azure support Go especially well.
But where does Go rank when it comes to average salaries? According to Stack Overflow’s 2024 survey, developers that are using Erlang and Clojure are top earners in the past year, averaging more than $95K annually with about 12 years experience, while Go developers typically command $75,361. This compares well to Python – $67,559, C# – $65,467 and SQL – $64,444.
With endorsements from international security experts and growing adoption in AI-powered applications, Go is positioning itself well as a versatile and future-proof language that will help shape the future of software development. For developers looking to upskill or pivot their careers, learning it could be a strong strategic move.