Go Turns 10
以下为 快照 页面，建议前往来源网站查看，会有更好的阅读体验。
Happy birthday, Go!
This weekend we celebrate the 10th anniversary of the Go release , marking the 10th birthday of Go as an open-source programming language and ecosystem for building modern networked software.
To mark the occasion, Renee French , the creator of theGo gopher, painted this delightful scene:
Celebrating 10 years of Go makes me think back to early November 2009, when we were getting ready to share Go with the world. We didn’t know what kind of reaction to expect, whether anyone would care about this little language. I hoped that even if no one ended up using Go, we would at least have drawn attention to some good ideas, especially Go’s approach to concurrency and interfaces, that could influence follow-on languages.
Once it became clear that people were excited about Go, I looked at the history of popular languages like C, C++, Perl, Python, and Ruby, examining how long each took to gain widespread adoption. For example, Perl seemed to me to have appeared fully-formed in the mid-to-late 1990s, with CGI scripts and the web, but it was first released in 1987. This pattern repeated for almost every language I looked at: it seems to take roughly a decade of quiet, steady improvement and dissemination before a new language really takes off.
I wondered: where would Go be after a decade?
Today, we can answer that question: Go is everywhere, used by at least a million developers worldwide .
Go’s original target was networked system infrastructure, what we now call cloud software. Every major cloud provider today uses core cloud infrastructure written in Go, such as Docker, Etcd, Istio, Kubernetes, Prometheus, and Terraform; the majority of the Cloud Native Computing Foundation’s projects are written in Go. Countless companies are using Go to move their own work to the cloud as well, from startups building from scratch to enterprises modernizing their software stack. Go has also found adoption well beyond its original cloud target, with uses ranging from controlling tiny embedded systems with GoBot and TinyGo to detecting cancer with massive big data analysis and machine learning at GRAIL , and everything in between.
All this is to say that Go has succeeded beyond our wildest dreams. And Go’s success isn’t just about the language. It’s about the language, the ecosystem, and especially the community working together.
In 2009, the language was a good idea with a working sketch of an implementation. The
go command did not exist: we ran commands like
6g to compile and
6l to link binaries, automated with makefiles. We typed semicolons at the ends of statements. The entire program stopped during garbage collection, which then struggled to make good use of two cores. Go ran only on Linux and Mac, on 32- and 64-bit x86 and 32-bit ARM.
Over the last decade, with the help of Go developers all over the world, we have evolved this idea and sketch into a productive language with fantastic tooling, a production-quality implementation, a state-of-the-art garbage collector , and ports to a 12 operating systems and 10 architectures .
Any programming language needs the support of a thriving ecosystem. The open source release was the seed for that ecosystem, but since then, many people have contributed their time and talent to fill the Go ecosystem with great tutorials, books, courses, blog posts, podcasts, tools, integrations, and of course reusable Go packages importable with
get . Go could never have succeeded without the support of this ecosystem.
Of course, the ecosystem needs the support of a thriving community. In 2019 there are dozens of Go conferences all over the world, along with over 150 Go meetup groups with over 90,000 members . GoBridge and Women Who Go help bring new voices into the Go community, through mentoring, training, and conference scholarships. This year alone, they have taught hundreds of people from traditionally underrepresented groups at workshops where community members teach and mentor those new to Go.
There are over a million Go developers worldwide, and companies all over the globe are looking to hire more. In fact, people often tell us that learning Go helped them get their first jobs in the tech industry. In the end, what we’re most proud of about Go is not a well-designed feature or a clever bit of code but the positive impact Go has had in so many people’s lives. We aimed to create a language that would help us be better developers, and we are thrilled that Go has helped so many others.
As #GoTurns10 , I hope everyone will take a moment to celebrate the Go community and all we have achieved. On behalf of the entire Go team at Google, thank you to everyone who has joined us over the past decade. Let’s make the next one even more incredible!
Appearing on Astro’s wireless display app Luna
It’s the morning of March 31, 1998, and the Netscape campus is chock-full of engineers, hours earlier than on a normal day. It’s a Tuesday and it’s known universally in ...
Once upon a time, we launched Google Public DNS , which you might know by its iconic IP address, 22.214.171.124. (Sunday, August 12th, 201...
One of the oldest Linux distribution still in development, Debian has just turned 25. Let’s have a look at some interesting facts about this awesome FOSS project.
r/ProgrammerHumor: dedicated to humor and jokes relating to programmers and programming.
Five years ago, we created the Facebook AI Research (FAIR) group to advance the state of the art of AI through open research for the benefit of all — it’s an effort to understand the nature of intelligence so that we mig...
I’ve been working on the FullCalendar for a really long time. Though I couldn’t remember exactly how long, so I dove into the archives of old releases. I found the source code for
In this blog post, I’m going to share about a double-free vulnerability that I discovered in WhatsApp, and how I turned it into an RCE. I informed this to Facebook. Facebook acknowledged and patched it officially in Whats...
Thanks to AOSP code, we now know that four specific apps have been blacklisted by the Pixel 4 to not allow the 90Hz refresh rate "Smooth Display."