The Go Blog

Clone this repo:


  1. 66e5dad content: fix typo in share-memory-by-communicating.article by kraem · 12 days ago master
  2. 76ab66c blog: add survey2019.article by Todd Kulesza · 10 weeks ago
  3. 97ded1e content: ensure better semver versions in the v2 modules article by Ainar Garipov · 3 months ago
  4. 3780780 content: add article by Russ Cox · 2 months ago
  5. 584205e content: fix typo in 10years.article by Yann Salaün · 3 months ago

Go Blog

This repository holds the Go Blog server code and content.


The easiest way to install is to run go get -u You can also manually git clone the repository to $GOPATH/src/

Running Locally

To run the blog server locally:

go build && ./blog -reload

and then visit http://localhost:8080/ in your browser.


Articles are written in the x/tools/present format. Articles on the blog should have broad interest to the Go community, and are mainly written by Go contributors. We encourage you to share your experiences using Go on your own website, and to share them with the Go community. Hugo is a static site server written in Go that makes it easy to write and share your stories.

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see

The main issue tracker for the blog is located at Prefix your issue with “x/blog:” in the subject line, so it is easy to find.


  1. To deploy, run:

    GO111MODULE=on gcloud --project=golang-org app deploy --no-promote app.yaml

    This will create a new version, which can be viewed within the golang-org GCP project.

  2. Check that the deployed version looks OK (click the version link in GCP).

  3. If all is well, click “Migrate Traffic” to move 100% of the traffic to the new version.

  4. You're done.