Skip to content

Commit 212bb63

Browse files
committed
website: merge x.blog branch
The x.blog branch was created out-of-band by rewriting the x/blog history to have this repo's first commit as its initial commit and moving all the work into a blog/ subdirectory. This merge brings the blog/ subdirectory into the main branch of x/website. After this merge, all work on the blog will happen here in x/website, first in the blog/ directory and then eventually merged into the website proper. Change-Id: I25b94377a1f111ee0a640afcb7e2e4a4384d0733
2 parents 9966d5e + d3553d9 commit 212bb63

File tree

791 files changed

+57918
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

791 files changed

+57918
-0
lines changed

blog/.gcloudignore

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
.gcloudignore
2+
.git

blog/.gitattributes

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Treat all files in this repo as binary, with no git magic updating
2+
# line endings. Windows users contributing to Go will need to use a
3+
# modern version of git and editors capable of LF line endings.
4+
#
5+
# We'll prevent accidental CRLF line endings from entering the repo
6+
# via the git-review gofmt checks.
7+
#
8+
# See golang.org/issue/9281
9+
10+
* -text

blog/AUTHORS

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# This source code refers to The Go Authors for copyright purposes.
2+
# The master list of authors is in the main Go distribution,
3+
# visible at https://tip.golang.org/AUTHORS.

blog/CONTRIBUTING.md

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Contributing to Go
2+
3+
Go is an open source project.
4+
5+
It is the work of hundreds of contributors. We appreciate your help!
6+
7+
## Filing issues
8+
9+
When [filing an issue](https://golang.org/issue/new), make sure to answer these five questions:
10+
11+
1. What version of Go are you using (`go version`)?
12+
2. What operating system and processor architecture are you using?
13+
3. What did you do?
14+
4. What did you expect to see?
15+
5. What did you see instead?
16+
17+
General questions should go to the [golang-nuts mailing list](https://groups.google.com/group/golang-nuts) instead of the issue tracker.
18+
The gophers there will answer or ask you to file an issue if you've tripped over a bug.
19+
20+
## Contributing code
21+
22+
Please read the [Contribution Guidelines](https://golang.org/doc/contribute.html)
23+
before sending patches.
24+
25+
Unless otherwise noted, the Go source files are distributed under
26+
the BSD-style license found in the LICENSE file.

blog/CONTRIBUTORS

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# This source code was written by the Go contributors.
2+
# The master list of contributors is in the main Go distribution,
3+
# visible at https://tip.golang.org/CONTRIBUTORS.

blog/LICENSE

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
Copyright (c) 2009 The Go Authors. All rights reserved.
2+
3+
Redistribution and use in source and binary forms, with or without
4+
modification, are permitted provided that the following conditions are
5+
met:
6+
7+
* Redistributions of source code must retain the above copyright
8+
notice, this list of conditions and the following disclaimer.
9+
* Redistributions in binary form must reproduce the above
10+
copyright notice, this list of conditions and the following disclaimer
11+
in the documentation and/or other materials provided with the
12+
distribution.
13+
* Neither the name of Google Inc. nor the names of its
14+
contributors may be used to endorse or promote products derived from
15+
this software without specific prior written permission.
16+
17+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21+
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23+
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

blog/PATENTS

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
Additional IP Rights Grant (Patents)
2+
3+
"This implementation" means the copyrightable works distributed by
4+
Google as part of the Go project.
5+
6+
Google hereby grants to You a perpetual, worldwide, non-exclusive,
7+
no-charge, royalty-free, irrevocable (except as stated in this section)
8+
patent license to make, have made, use, offer to sell, sell, import,
9+
transfer and otherwise run, modify and propagate the contents of this
10+
implementation of Go, where such license applies only to those patent
11+
claims, both currently owned or controlled by Google and acquired in
12+
the future, licensable by Google that are necessarily infringed by this
13+
implementation of Go. This grant does not include claims that would be
14+
infringed only as a consequence of further modification of this
15+
implementation. If you or your agent or exclusive licensee institute or
16+
order or agree to the institution of patent litigation against any
17+
entity (including a cross-claim or counterclaim in a lawsuit) alleging
18+
that this implementation of Go or any code incorporated within this
19+
implementation of Go constitutes direct or contributory patent
20+
infringement, or inducement of patent infringement, then any patent
21+
rights granted to you under this License for this implementation of Go
22+
shall terminate as of the date such litigation is filed.

blog/README.md

+69
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# Go Blog
2+
3+
[![Go Reference](https://pkg.go.dev/badge/golang.org/x/blog.svg)](https://pkg.go.dev/golang.org/x/blog)
4+
5+
This repository holds the Go Blog server code and content.
6+
7+
## Download/Install
8+
9+
The easiest way to install is to run `go get -u golang.org/x/blog`. You can also
10+
manually git clone the repository to \$GOPATH/src/golang.org/x/blog.
11+
12+
## Running Locally
13+
14+
To run the blog server locally:
15+
16+
```
17+
go run . -reload
18+
```
19+
20+
and then visit [http://localhost:8080/](http://localhost:8080) in your browser.
21+
22+
## Contributing
23+
24+
Articles are written in the [x/tools/present][present] format.
25+
Articles on the blog should have broad interest to the Go community, and
26+
are mainly written by Go contributors. We encourage you to share your
27+
experiences using Go on your own website, and [to share them with the Go
28+
community][community]. [Hugo][hugo] is a static site server written in Go that
29+
makes it easy to write and share your stories.
30+
31+
[present]: https://godoc.org/golang.org/x/tools/present
32+
[community]: https://golang.org/help/
33+
[hugo]: https://gohugo.io/
34+
35+
## Report Issues / Send Patches
36+
37+
This repository uses Gerrit for code changes. To learn how to submit changes to
38+
this repository, see https://golang.org/doc/contribute.html.
39+
40+
The main issue tracker for the blog is located at
41+
https://github.com/golang/go/issues. Prefix your issue with "x/blog:" in the
42+
subject line, so it is easy to find.
43+
44+
## Deploying
45+
46+
The Google Cloud project triggers a fresh deploy of the blog on each submit
47+
but that deployment is published to a temporary URL.
48+
49+
To publish the blog to blog.golang.org, you need access to the
50+
Cloud Console for the golang-org project.
51+
Then:
52+
53+
1. Visit the
54+
[builds list](https://console.cloud.google.com/cloud-build/builds?project=golang-org&query=trigger_id%3D%22c99674d3-32c1-4aec-ade4-ae2d5a844369%22)
55+
and click on the build hash for the most recent build
56+
with trigger name “Redeploy-blog-on-blog-commit”.
57+
58+
Scrolling to the bottom of the build log, you will find a URL in a log message like
59+
60+
Deployed service [blog] to [https://TEMPORARYURL.appspot.com]
61+
62+
2. Copy that URL and load it in your browser. Check that it looks OK.
63+
64+
3. Assuming it does, visit the
65+
[AppEngine versions list](https://console.cloud.google.com/appengine/versions?project=golang-org&serviceId=blog).
66+
Click “Migrate Traffic” on the new entry to move 100% of the blog.golang.org
67+
traffic to the new version.
68+
69+
4. You're done.

blog/_content/10years.article

+137
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
# Go Turns 10
2+
8 Nov 2019
3+
Summary: Happy 10th birthday, Go!
4+
5+
Russ Cox, for the Go team
6+
7+
8+
##
9+
10+
Happy birthday, Go!
11+
12+
This weekend we celebrate the 10th anniversary of
13+
[the Go release](https://opensource.googleblog.com/2009/11/hey-ho-lets-go.html),
14+
marking the 10th birthday of Go as an open-source programming language
15+
and ecosystem for building modern networked software.
16+
17+
To mark the occasion,
18+
[Renee French](https://twitter.com/reneefrench),
19+
the creator of the
20+
[Go gopher](https://blog.golang.org/gopher),
21+
painted this delightful scene:
22+
23+
<a href="10years/gopher10th-large.jpg">
24+
.image 10years/gopher10th-small.jpg _ 850
25+
</a>
26+
27+
Celebrating 10 years of Go makes me think back to early November 2009,
28+
when we were getting ready to share Go with the world.
29+
We didn’t know what kind of reaction to expect,
30+
whether anyone would care about this little language.
31+
I hoped that even if no one ended up using Go,
32+
we would at least have drawn attention to some good ideas,
33+
especially Go’s approach to concurrency and interfaces,
34+
that could influence follow-on languages.
35+
36+
Once it became clear that people were excited about Go,
37+
I looked at the history of popular languages
38+
like C, C++, Perl, Python, and Ruby,
39+
examining how long each took to gain widespread adoption.
40+
For example, Perl seemed to me to have appeared fully-formed
41+
in the mid-to-late 1990s, with CGI scripts and the web,
42+
but it was first released in 1987.
43+
This pattern repeated for almost every language I looked at:
44+
it seems to take roughly a decade of quiet, steady improvement
45+
and dissemination before a new language really takes off.
46+
47+
I wondered: where would Go be after a decade?
48+
49+
Today, we can answer that question:
50+
Go is everywhere, used by at least [a million developers worldwide](https://research.swtch.com/gophercount).
51+
52+
Go’s original target was networked system infrastructure,
53+
what we now call cloud software.
54+
Every major cloud provider today uses core cloud infrastructure written in Go,
55+
such as Docker, Etcd, Istio, Kubernetes, Prometheus, and Terraform;
56+
the majority of the
57+
[Cloud Native Computing Foundation’s projects](https://www.cncf.io/projects/)
58+
are written in Go.
59+
Countless companies are using Go to move their own work to the cloud as well,
60+
from startups building from scratch
61+
to enterprises modernizing their software stack.
62+
Go has also found adoption well beyond its original cloud target,
63+
with uses ranging
64+
from
65+
controlling tiny embedded systems with
66+
[GoBot](https://gobot.io) and [TinyGo](https://tinygo.org/)
67+
to detecting cancer with
68+
[massive big data analysis and machine learning at GRAIL](https://medium.com/grail-eng/bigslice-a-cluster-computing-system-for-go-7e03acd2419b),
69+
and everything in between.
70+
71+
All this is to say that Go has succeeded beyond our wildest dreams.
72+
And Go’s success isn’t just about the language.
73+
It’s about the language, the ecosystem, and especially the community working together.
74+
75+
In 2009, the language was a good idea with a working sketch of an implementation.
76+
The `go` command did not exist:
77+
we ran commands like `6g` to compile and `6l` to link binaries,
78+
automated with makefiles.
79+
We typed semicolons at the ends of statements.
80+
The entire program stopped during garbage collection,
81+
which then struggled to make good use of two cores.
82+
Go ran only on Linux and Mac, on 32- and 64-bit x86 and 32-bit ARM.
83+
84+
Over the last decade, with the help of Go developers all over the world,
85+
we have evolved this idea and sketch into a productive language
86+
with fantastic tooling,
87+
a production-quality implementation,
88+
a
89+
[state-of-the-art garbage collector](https://blog.golang.org/ismmkeynote),
90+
and [ports to 12 operating systems and 10 architectures](https://golang.org/doc/install/source#introduction).
91+
92+
Any programming language needs the support of a thriving ecosystem.
93+
The open source release was the seed for that ecosystem,
94+
but since then, many people have contributed their time and talent
95+
to fill the Go ecosystem with great tutorials, books, courses, blog posts,
96+
podcasts, tools, integrations, and of course reusable Go packages importable with `go` `get`.
97+
Go could never have succeeded without the support of this ecosystem.
98+
99+
Of course, the ecosystem needs the support of a thriving community.
100+
In 2019 there are dozens of Go conferences all over the world,
101+
along with
102+
[over 150 Go meetup groups with over 90,000 members](https://www.meetup.com/pro/go).
103+
[GoBridge](https://golangbridge.org)
104+
and
105+
[Women Who Go](https://medium.com/@carolynvs/www-loves-gobridge-ccb26309f667)
106+
help bring new voices into the Go community,
107+
through mentoring, training, and conference scholarships.
108+
This year alone, they have taught
109+
hundreds of people from traditionally underrepresented groups
110+
at workshops where community members teach and mentor those new to Go.
111+
112+
There are
113+
[over a million Go developers](https://research.swtch.com/gophercount)
114+
worldwide,
115+
and companies all over the globe are looking to hire more.
116+
In fact, people often tell us that learning Go
117+
helped them get their first jobs in the tech industry.
118+
In the end, what we’re most proud of about Go
119+
is not a well-designed feature or a clever bit of code
120+
but the positive impact Go has had in so many people’s lives.
121+
We aimed to create a language that would help us be better developers,
122+
and we are thrilled that Go has helped so many others.
123+
124+
As
125+
[\#GoTurns10](https://twitter.com/search?q=%23GoTurns10),
126+
I hope everyone will take a moment to celebrate
127+
the Go community and all we have achieved.
128+
On behalf of the entire Go team at Google,
129+
thank you to everyone who has joined us over the past decade.
130+
Let’s make the next one even more incredible!
131+
132+
<div>
133+
<center>
134+
<a href="10years/gopher10th-pin-large.jpg">
135+
.image 10years/gopher10th-pin-small.jpg _ 150
136+
</center>
137+
</div>
1.79 MB
Loading
851 KB
Loading
Loading
455 KB
Loading

0 commit comments

Comments
 (0)