diff --git a/Go-1.10-Release-Party.md b/Go-1.10-Release-Party.md
index e7e12e7..312e2bb 100644
--- a/Go-1.10-Release-Party.md
+++ b/Go-1.10-Release-Party.md
@@ -64,7 +64,7 @@
 
 Trying to co-ordinate dozens of meetup groups around the globe will be challenging. Here are some ways you can plan your event, and keep up to date. 
 
-As always, if you get stuck, or need help, please [contact the organisers directly](/wiki/Go-1.10-release-party#no-seriously-whos-organising-this), we're here to help.
+As always, if you get stuck, or need help, please [contact the organisers directly](#no-seriously-whos-organising-this), we're here to help.
 .
 ##### Slack Channel
 We have a channel for the [release party](https://gophers.slack.com/messages/go-release-party/) on the [Gophers Slack](https://gophers.slack.com/messages/go-release-party/). If you need an invite to Slack, [you can request an automatic invite with this link](https://invite.slack.golangbridge.org/).
@@ -73,7 +73,7 @@
 We have set up a [mailing list for meetup organisers](https://groups.google.com/forum/#!forum/go-meetup-organisers) to ask questions.
 
 ### What happens in a release party?
-As with the previous [Go 1.6](/wiki/Go-1.6-release-party) and [Go 1.8](/wiki/Go-1.8-release-party) release parties, this is a great opportunity to spread the word about the improvements landing 1.10, and the plans for what is coming next!
+As with the previous [Go 1.6](/wiki/Go-1.6-release-party) and [Go 1.8](/wiki/Go-1.8-Release-Party) release parties, this is a great opportunity to spread the word about the improvements landing 1.10, and the plans for what is coming next!
 
 #### Resources
 
diff --git a/Go-1.8-Release-Party.md b/Go-1.8-Release-Party.md
index bf3b83c..c95ef6d 100644
--- a/Go-1.8-Release-Party.md
+++ b/Go-1.8-Release-Party.md
@@ -35,7 +35,7 @@
 - Belo Horizonte, MG, Brazil: Feb 16 7pm at The Plant. Contact [@joaoh82](https://twitter.com/joaoh82) for more info or go to [Go Belo Horizonte](https://www.meetup.com/go-belo-horizonte/)
 - Florianólis, SC, Brazil: Feb 16 7pm at Neoway Business Solutions. Contact [@ricardolonga](https://twitter.com/ricardolonga) for more info or go to [Floripa Gophers](https://www.meetup.com/Floripa-Gophers/events/236729070/)
 - São Paulo, Brazil: Feb 16 7pm at TBD. Contact [@vdemario](https://twitter.com/vdemario) for more info or check the [meetup page](https://www.meetup.com/golangbr/)
-- [@GolangParis](https://twitter.com/golangparis), France, Feb 16 7pm at [Deezer](www.deezer.com/features), see [meetup page](https://www.meetup.com/fr-FR/Golang-Paris/events/236696058). Ping: gaufres [at] golangparis.org.
+- [@GolangParis](https://twitter.com/golangparis), France, Feb 16 7pm at [Deezer](https://www.deezer.com/features), see [meetup page](https://www.meetup.com/fr-FR/Golang-Paris/events/236696058). Ping: gaufres [at] golangparis.org.
 - Sydney, Australia: Feb 16 6pm at TBD. Contact [@chewxy](https://twitter.com/chewxy) for more info. The [event page](https://www.meetup.com/golang-syd/events/236680493/)
 - Moscow, Russia: Feb 16 7pm. [Meetup group](https://www.meetup.com/Golang-Moscow/events/237132934/).
 - Novosibirsk, Russia: Feb 19 11am NOVT. Contact [@lkalneus](https://twitter.com/lkalneus) for more info.  [Live stream](https://www.youtube.com/watch?v=r1KBpBpEinA)
@@ -107,7 +107,7 @@
 
 Trying to co-ordinate dozens of meetup groups around the globe will be challenging. Here are some ways you can plan your event, and keep up to date. 
 
-As always, if you get stuck, or need help, please [contact the organisers directly](/wiki/Go-1.8-release-party#no-seriously-whos-organising-this), we're here to help.
+As always, if you get stuck, or need help, please [contact the organisers directly](#no-seriously-whos-organising-this), we're here to help.
 .
 ##### Slack Channel
 We have a channel for the [release party](https://gophers.slack.com/messages/go-release-party/) on the [Gophers Slack](https://gophers.slack.com/messages/go-release-party/). If you need an invite to Slack, [you can request an automatic invite with this link](https://invite.slack.golangbridge.org/).
diff --git a/GoForCPPProgrammers.md b/GoForCPPProgrammers.md
index 95a37d2..d953206 100644
--- a/GoForCPPProgrammers.md
+++ b/GoForCPPProgrammers.md
@@ -472,7 +472,7 @@
 }
 ```
 
-Note that `Equal` has an argument of type `Iterator`.  This does not behave like a C++ template.  See <a href='go_faq.html#t_and_equal_interface'>the FAQ</a>.
+Note that `Equal` has an argument of type `Iterator`.  This does not behave like a C++ template.  See [the FAQ](/doc/faq#t_and_equal_interface).
 
 <h2>Function closures</h2>
 
diff --git a/GoUsers.md b/GoUsers.md
index aa8d2b7..4763616 100644
--- a/GoUsers.md
+++ b/GoUsers.md
@@ -197,7 +197,7 @@
   * [IQ Escolhas Inteligentes](https://www.iq.com.br/) - [github](https://github.com/IQ-tech)
   * [isaac](https://isaac.com.br/) - [github](https://github.com/olaisaac)
   * [Jexia](http://jexia.com) - [github](https://github.com/jexia-inc)
-  * [Jusbrasil](https://www.jusbrasil.com.br) - [github](github.com/jusbrasil)
+  * [Jusbrasil](https://www.jusbrasil.com.br) - [github](https://github.com/jusbrasil)
   * [Koli](https://www.koli.com.br) - [github](https://github.com/koli)
   * [Levpay](http://www.levpay.com/) - [github](https://github.com/levpay)
   * [Loggi](https://www.loggi.com) - [github](https://github.com/loggi)
@@ -748,7 +748,7 @@
   * [Sorint.lab](https://www.sorint.it) - [github](https://github.com/sorintlab)
   * [Trenìt!](http://www.trenit.info) - ([FB post](https://www.facebook.com/trenitapp/posts/907728379283787)) -- Most popular mobile app for Italian trains schedules
   * [Develer](https://www.develer.com)
-  * [Qlik](www.qlik.com) - [jobs](https://www.qlik.com/us/company/careers/job-listings?overridedefault=true&department=R%2526D&country=-1)
+  * [Qlik](https://www.qlik.com) - [jobs](https://www.qlik.com/us/company/careers/job-listings?overridedefault=true&department=R%2526D&country=-1)
   * [Wellnet](https://www.wellnet.it)
   * [Pixartprinting](https://www.pixartprinting.com/)
   * [Overzoom](https://www.overzoom.it)
@@ -1016,7 +1016,7 @@
   * [Nextail](https://www.nextail.nl/)
   * [NPO](https://www.npostart.nl/) - [github](https://github.com/npo-topspin)
   * [nx'change](https://www.nxchange.com/)
-  * [Pocket Media](http://www.pocketmedia.mobi/) - [company website](http://www.pocketmedia.mobi/), [github](github.com/pocketbrain/)
+  * [Pocket Media](http://www.pocketmedia.mobi/) - [company website](http://www.pocketmedia.mobi/), [github](https://github.com/pocketbrain/)
   * [Poki](http://poki.com/) - [company website](http://poki.com/company/), [github](https://github.com/pokibv)
   * [Pointer Brand Protection](http://pointerbrandprotection.com)
   * [Sensys Gatso Group](https://www.sensysgatso.com/)
@@ -1113,7 +1113,7 @@
   * [Vipps](https://www.vipps.no)
   * [Webstep](https://www.webstep.no)
   * [Zeipt](https://www.zeipt.com)
-  * [Zendera](www.zendera.no)
+  * [Zendera](https://www.zendera.no)
 
 ### Oman
   * [Rihal](https://www.rihal.om/) - Designed for Data
diff --git a/Modules.md b/Modules.md
index bd76665..fd0b082 100644
--- a/Modules.md
+++ b/Modules.md
@@ -530,7 +530,7 @@
 
 After you have adopted modules, changing your module path in your `go.mod` is a breaking change.
 
-Overall, this is similar to the pre-modules enforcement of a canonical import path via ["import path comments"](https://pkg.go.dev/cmd/go/#hdr-Import_path_checking), which are also sometimes called "import pragmas" or "import path enforcement".  As an example, the package `go.uber.org/zap` is currently hosted at `github.com/uber-go/zap`, but uses an import path comment [next to the package declaration]((https://github.com/uber-go/zap/blob/8a2ee5670ced5d94154bf385dc6a362722945daf/doc.go#L113)) that triggers an error for any pre-modules consumer using the wrong github-based import path:
+Overall, this is similar to the pre-modules enforcement of a canonical import path via ["import path comments"](https://pkg.go.dev/cmd/go/#hdr-Import_path_checking), which are also sometimes called "import pragmas" or "import path enforcement".  As an example, the package `go.uber.org/zap` is currently hosted at `github.com/uber-go/zap`, but uses an import path comment [next to the package declaration](https://github.com/uber-go/zap/blob/8a2ee5670ced5d94154bf385dc6a362722945daf/doc.go#L113) that triggers an error for any pre-modules consumer using the wrong github-based import path:
 
 `package zap // import "go.uber.org/zap"`
 
diff --git a/PortingPolicy.md b/PortingPolicy.md
index 05f5c30..00af9a8 100644
--- a/PortingPolicy.md
+++ b/PortingPolicy.md
@@ -62,7 +62,7 @@
 
 In general, people changing the Go tools and standard library must not break any of the first class ports listed above.  A change that breaks a first class port must be fixed or rolled back.
 
-A change that breaks a secondary port will not necessarily be rolled back.  If there is some reasonable possibility of breaking a secondary port developers are encouraged to make sure that the ports continue to work (for example, by running [port-specific trybots](https://go.dev/wiki/Slowbots)).  Developers are also encouraged to notify secondary port maintainers of any possible port-specific problems, which they can do by reaching out to the appropriate [GitHub team(s)](https://github.com/orgs/golang/teams/port-maintainers/teams).  That said, ultimately the port maintainers are responsible for keeping their ports working.
+A change that breaks a secondary port will not necessarily be rolled back.  If there is some reasonable possibility of breaking a secondary port developers are encouraged to make sure that the ports continue to work (for example, by running [port-specific trybots](https://go.dev/wiki/SlowBots)).  Developers are also encouraged to notify secondary port maintainers of any possible port-specific problems, which they can do by reaching out to the appropriate [GitHub team(s)](https://github.com/orgs/golang/teams/port-maintainers/teams).  That said, ultimately the port maintainers are responsible for keeping their ports working.
 
 ## Broken ports
 
diff --git a/Projects.md b/Projects.md
index 80f7c15..d20bd64 100644
--- a/Projects.md
+++ b/Projects.md
@@ -1377,7 +1377,7 @@
   * [canopus](https://github.com/zubairhamed/canopus) - CoAP Client/Server implementation (RFC 7252)
   * [chunkedreader](https://github.com/knadh/chunkedreader) - A light weight library for reading continuous fixed sized messages from TCP streams.
   * [circle](https://github.com/lanl/circle/) - Go interface to the [libcircle](http://hpc.github.io/libcircle/) distributed-queue API
-  * [createsend-go](https://sourcegraph.com/github.com/sourcegraph/createsend-go/tree) - API client for [Monitor http://www.campaignmonitor.com](wiki/Campaign) (email campaign service)
+  * [createsend-go](https://sourcegraph.com/github.com/sourcegraph/createsend-go/tree) - API client for [Campaign Monitor](http://www.campaignmonitor.com) (email campaign service)
   * [cwmp-proxy](https://github.com/FeNoMeNa/cwmp-proxy) - Reverse cwmp proxy
   * [dmrgo](https://github.com/dgryski/dmrgo) - Library for with Hadoop Streaming map/reduce
   * [doozerconfig](https://github.com/srid/doozerconfig) - Go package for managing json-encoded configuration in Doozer
diff --git a/index.md b/index.md
index 9df048c..643b1c2 100644
--- a/index.md
+++ b/index.md
@@ -39,7 +39,7 @@
 - [Effective Go](https://go.dev/doc/effective_go) will help you learn how to write idiomatic Go code.
 - [Go standard library documentation](https://pkg.go.dev/std) to familiarize yourself with the standard library.
 - [Use the Go Playground](https://go.dev/play) to test out Go programs in your browser.
-- Still not convinced? Check out this list of [Go Users](GoUsers) and a few of their [Success stories](SuccessStories). We've also assembled a long list of reasons [why you should give Go a try](whygo).
+- Still not convinced? Check out this list of [Go Users](GoUsers) and a few of their [Success stories](SuccessStories). We've also assembled a long list of reasons [why you should give Go a try](WhyGo).
 - Read about the companies which have [switched from other languages to Go](/wiki/FromXToGo).
 
 ## Working with Go
@@ -52,10 +52,9 @@
   - [InstallFromSource](InstallFromSource) - Additional tips on source installs.
   - Windows user? [Install and configure Go, Git, and Visual Studio Code for Windows](https://github.com/abourget/getting-started-with-golang)
   - Mac user? [How I start - Go](https://howistart.org/posts/go/1) - A step-by-step guide to installing Go and building your first web service.
-  - Having installation problems? [InstallTroubleShooting](InstallTroubleShooting)
+  - Having installation problems? [InstallTroubleshooting](InstallTroubleshooting)
   - Make sure you have your [$GOPATH environment variable set correctly](https://go.dev/doc/install/source#gopath)
     - If you need additional tips on using [$GOPATH, go here](GOPATH).
-  - [MultipleGoRoots](MultipleGoRoots) - More advanced information on working with multiple go installations and the `$GOROOT` variable.
 - [Go IDEs and Editors](IDEsAndTextEditorPlugins) - Information on how to use your favorite editor with Go.
 - [Tools for working with Go code](CodeTools) - Formatting, linting, vetting, refactoring, navigation, and visualization.
 - Finding Go Libraries and Packages
@@ -63,11 +62,9 @@
   - Search for Go packages: [pkg.go.dev](http://pkg.go.dev)
   - Visualization of the [Go open-source package graph](https://anvaka.github.io/pm/#/galaxy/gosearch?l=1)
 - [Modules](Modules) - documentation on the dependency management system built into the Go command, added in 1.11.
-- [Managing your dependencies](PackageManagementTools) - An overview of the tools you can use to manage third-party packages (vendoring).
 - Publishing Go Packages as Open Source
   - Getting ready to publish your package? [Start here.](PackagePublishing)
   - [The Go Checklist](https://github.com/matttproud/gochecklist) - A comprehensive guide for publishing a project.
-  - [How to layout your GitHub repo](GitHubCodeLayout) to make it easy for other Go programmers to use with the `go get` command.
   - [Go Package, Go](https://johnsto.co.uk/blog/go-package-go) - A few recommendations for making Go packages easy to use.
 
 ## Learning more about Go
@@ -127,7 +124,6 @@
 
 - Start with the standard documentation for the `go` command [available here](https://pkg.go.dev/cmd/go/)
 - Start here to learn about [vendoring](https://pkg.go.dev/cmd/go/#hdr-Vendor_Directories).
-- See also [PackageManagementTools](PackageManagementTools) for package management tools.
 - [Cross Compilation](https://rakyll.org/cross-compilation/)
 - Shared libraries and Go (buildmode)
   - [Go Shared Libraries](https://github.com/jbuberel/buildmodeshared) - Examples for creating and using shared libraries from Go and Python.
@@ -153,7 +149,6 @@
   - [Timeouts](Timeouts) - Abandon async calls that take too long
   - [LockOSThread](LockOSThread)
   - [MutexOrChannel](MutexOrChannel) - When to use one vs the other
-  - [RaceDetector](RaceDetector) - How to detect and fix race conditions
 - Working with Databases
   - [database/sql](http://go-database-sql.org/) - Online tutorial for working with the database/sql package.
   - [SQLDrivers](SQLDrivers)
