What is the future for Go?

This year I had the privilege to organize GopherConIndia 2015 and also interview a number of Gophers.

Read what Gophers from across the world had to say to the question — “How do you see the market for Go Programmers in the work place? What is the future for Go?

Andrew Gerrand — Go usage continues to grow, and with it the demand for Go programmers. Obviously, I’d like to see Go supplant Java as the language of choice for the enterprise. I don’t think that’s an unreasonable goal. It’s hard to see how exactly it will play out, but I think Go will be important in the programming world for years to come.

Baishampayan Ghose — I think Go has a very bright future. Considering the fact that some well-known projects are already using Go to solve complex problems and that the community is growing strong I think it can only get better from here.

Baron Schwartz — Go programmers are very much in demand, especially those who really understand things like interfaces and don’t impose “patterns” from other programming languages. This will only increase. Go is set to become the Java of the future, in my opinion. It’s spreading like wildfire.

Brian Ketelsen — I’ve seen a tremendous increase in the demand for Go developers. I think that demand for Go developers will continue to rise quickly over the next few years as more and more companies realize that Go is built for developer productivity.

Chris Saunders — Go is one of “the big three” as I am seeing it right now. If you choose between Go, Rust or Clojure you can’t go wrong. These are tools that are being used to solve problems that are really hard in the more “traditional” areas that languages like Ruby would’ve been used.

Damian Gryski — As an infrastructure developer, I see the market growing as more and more companies find themselves needing to write internal systems where Python/Perl/Ruby are too slow and C/C++/Java are too obnoxious. Basically, what Go was designed to do. However, knowing when to break with corporate tradition and make the leap to a new technology can be tricky, especially in large companies when other technologies have a proven track record and lots of existing support.

Dave Cheney — Go started as a language to write large software programs, or more correctly, a language where a large number of programmers could collaborate on a software project; at the time this meant the large distributed projects inside Google.

Since the 1.0 release in 2012, in addition to solidifying its usefulness on the server side, some other interesting use cases have emerged:

  • Go appears to be attractive to the scientific and bioinformatic communities, displacing their use of scipy/numpy. Scientists appear to be a pragmatic bunch and I like to think that Go is a language that helps them get stuff done.
  • The static binary story is very refreshing, considering the previous decade’s focus on managed runtimes and dynamic languages, both of which have a complex and unwieldy distribution story. This appears to be very attractive to system administrators and others who identify with the ‘devops’ moniker.
  • In this space, we see projects like Docker and Hashicorp’s stable of tools like Consul, Serf, and the recently released Terraform, leading the charge.
  • One of the unexpected successes of Go is its applicability for programmers producing cross-platform CLI tools, previously a domain of C and operating system distributions.
  • I personally would like to see less of a reliance on cgo, and hope that over time the goal of “Pure Go” becomes an aspirational catch cry just as it did with Java (does anyone remember type 2 JDBC drivers ? yuk).
  • Another recent surprise is the support for Go on Android that David Crawshaw was working on.
  • Lastly, I think the potential of Go as a language to teach the art and the profession of programming is enormous.

Eleanor McHugh — The number of Go roles in the UK has increased, but it’s still very marginal. Mostly where companies are adopting it this seems to either because they’ve a developer whose already learned the language in their free time, or they decide to train a team in-house. As the number of deployed systems increases so will demand but it’s not really going to take off until we have a killer framework which intersects with mainstream needs. This is what happened to Ruby back in 2005/6 with Rails so it’s really a question of whether Go develops a similarly disruptive framework for developing viable commercial applications. The two obvious contenders are a high-performance web framework or else an Android application framework — assuming Go becomes a first-class language on the Android platform.

Elliott Stoneham — At the moment, with Go mainly being used for systems programming, there are only a lucky few, like me, who are paid to write in Go full-time.

But as Go gradually gets adopted for general-purpose programming, especially replacing interpreted languages like Ruby, Python and PHP on the server-side, so opportunities for Go programmers will rise exponentially.

Francesc Campoy Flores — I see it as a day to day language, both in the industry but also, and especially, in schools.

Gabriel Aszalos — I think the future of Go is very bright and I for one will gladly put all my chips in the Go corner. I think it will be adopted more and more by companies in the future and to me it seems to be growing at a fast pace. A lot of people have asked me how they can convince their company to use Go. Hearing from others on how they’ve done it was: don’t ask for approval, just use it and show it to them, they’re bound to be convinced!

Jason Moiron — There’s been big adoption at companies which have to deal with a lot of data, especially smaller companies who had initially standardized on scripting languages. I can only speak for my market (NYC), but it feels like there are more jobs out there for Go programmers than there are people to fill them.

Levi Cook — If you compare the number of open jobs from last year to this year, it’s staggering. Everyone is dialing in and adopting. I see numerous large companies through startups committing to some form of adoption and are actively hiring. Go’s future is very bright, I’m convinced we’ll continue to be shocked by adoption stats, especially on new projects.

Manik Taneja — Go is a great tool in the armory for any developer. Furthermore, it’s very easy to learn and be productive quickly with this language. The fact that it is a compiled language gives it a great edge over languages such as Java and Python. In my opinion, I see the future being very bright for GoLang and Go developers. We are already seeing some companies that are using Go in production and I think the number of companies who do that is going to grow exponentially over the next few years.

Matt Aimonetti — I prefer to stay away from predictions, but what I did notice that most startups and bigger companies I interact with started using Go to do some extent. Go’s concurrency model, memory/CPU footprint and simplicity of adoption, pushes companies that want better performance than Ruby and Python but don’t want to deal with C/C++ or the JVM (Java, Scala, Clojure, Groovy..). Good programmers will always find a job, and it looks like a bunch of them are switching to Go, while more and more company are looking for skilled engineers.

Matthew Campbell — Market is great, we are still having trouble hiring good developers. Future is good. Go is swallowing up the high-performance apps that Python, Ruby and Javascript are having trouble doing.

Mike Gehard — I see a bright future for Go. A lot of Cloud Foundry components are being rewritten from Ruby to Go so I know that we at Pivotal are heavily investing in the language. Also seeing the investment from Google and companies like Hashicorp makes me think that Go will be around for a while and will require a lot of eager developers to learn the language.

Nathan Youngman — Ultimately, I think programmers who love Go will find a way to make it (part of) their day job. Whether that means convincing a boss or client to use Go for a new project, moving on to another job, or becoming the technical co-founder of something new.

I really hope to see Go break into education. Go feels like a good first or second language. A language suitable for low-level tinkering while learning how computers work, but without the complexity of multiple inheritance or metaprogramming magic.

Richard Crowley — The market’s only growing and I’m sure that’ll continue for some time. As architectures tend towards services and microservices there are more and more opportunities for Go to take hold in the lower layers of the stack. I suspect these experiences will convince entrepreneurs to bet their companies on Go, too. I can’t say how this will affect big enterprises in the short-term but in the long-term they always seem to catch up.

Ron Evans — Go will definitely increase in market share and we for sure see Go replacing older Java applications, or alternatively rewriting projects written in a dynamic language which require more performance.

Sau Sheong Chang — Go is in an exciting phase now, where the velocity of programmers picking it up is increasing, and more companies are willing to try and use Go in production. In my company PayPal, Go is being used in PayPal Beacon, a Bluetooth Low Energy device to connect to a customer’s PayPal app when they enter a store. Companies like Google, Heroku, SendGrid, SoundCloud, CloudFlare and many others are also using Go in production. In Singapore, companies like Viki and Nitrous.IO are also using Go as part of their production stack. The future is certainly bright for Go.

Steve Francia — I think it’s still quite early. Go is starting to gain adoption at the developer level, but not so much today at the CTO level. Consequently the number of companies hiring Go programmers today is still small and your options are going to be far more limited than they would be compared to Java or Python.

I think the future is bright for Go. CTOs are generally quite risk adverse and money conscious. Go is easy to learn and cost effective both from a development point of view and from an operational point of view. Companies that adopt Go coming from dynamic languages report needing significantly fewer servers and far simpler deployments. I think it will just take a bit of time for the word to spread, developers to be trained, and packages to be written for decision makers to recognize that adopting Go is a safe and prudent solution.

Vivek Bagade — Of course, a lot of organisations have already migrated from Node.js to Go. I am strongly advocating Go’s use in my company’s system. The future for Go is bright and it can penetrate all use cases involving high-performance architectures.

William Kennedy — I think the next evolution for Go will be support for building desktop and mobile applications. Currently Pietro Gagliardi is working on a platform native GUI library that will support desktop application development. Guastavo Niemeyer is working on a QML library which can support both desktop and mobile application development.

Finally, you may be interested in checking out the comprehensive list of companies using Go.