最近一段时间,我一直在推进自己的 A Tour of Go 多语言翻译项目。
项目地址:
https://github.com/shuijingwan/go-tour-i18n
目前已经有 11 个语言版本正式上线:
- 巴西葡萄牙语
- 荷兰语
- 法语
- 德语
- 意大利语
- 日语
- 韩语
- 简体中文
- 西班牙语
- 瑞典语
- 土耳其语
其中一部分语言版本也已经出现在官方 A Tour of Go 的本地化页面中:
之前,我在推广上主要依赖几个渠道:
- go.dev 官方页面提供的链接;
- Google、Bing 等搜索引擎;
- GitHub;
- 自己的技术博客。
但随着语言越来越多,我开始意识到一个问题:
如果只是把网站上线,然后等待搜索引擎慢慢收录,增长速度可能会非常慢。
另外,从搜索引擎后台看到的数据来说,不少新语言站点的外部链接也非常少。
所以这次我决定第一次比较系统地尝试:
除了 go.dev、搜索引擎和 GitHub 之外,还有哪些地方可以主动让 Go 开发者知道这个项目?
最后实际尝试了:
- Go Weekly
- Golang News
- Reddit
r/golang - DEV Community
- Go Forum
过程比我原本想象的有意思很多。
一、先给 Go Weekly 投稿
最先尝试的是 Go Weekly。
Go Weekly 是专门面向 Go 开发者的英文周刊,读者本身就是非常精准的 Go 用户。
这种渠道对我来说,比在一个泛技术社区到处发链接更有价值。
我最终没有针对某一个具体语言站投稿,而是推广整个:
go-tour-i18n
项目。
邮件标题使用的是:
Go Weekly link suggestion: A Tour of Go in 11 languages
正文重点说明了几件事:
- 这是一个非官方、社区维护的多语言 A Tour of Go 项目;
- 当前已经有 11 个 production 语言;
- 项目持续同步 Go 官方上游;
- 有完整的翻译、validation、语言审核和 production publishing 流程;
- 部分语言版本已经出现在官方 A Tour of Go localization 页面中。
邮件里只保留两个核心链接:
- GitHub 项目
- go.dev 官方 localization 页面
而没有把 11 个站点全部塞进去。

我这次还特意使用了自己的企业邮箱:
admin@shuijingwanwq.com
而不是 Gmail。
原因也很简单:这是以项目维护者身份进行联系,使用和自己网站域名一致的邮箱,会更容易建立身份关联。
当然,这里的前提仍然是企业邮箱本身投递正常。
发完之后,就只能等待编辑是否采用了。
这类投稿即使最终被收录,也不一定会单独收到回复。
二、Golang News:注册后发现社区已经不太活跃
第二个尝试的是 Golang News。
这是一个专门聚合 Go 新闻、项目和文章的网站。
从定位来看,本来非常适合这个项目。
我先注册了账号。
但是注册完成后,一打开首页,就感觉有一点不对。

8 users online而首页最新的一些内容已经是几天、几十天甚至上百天以前发布的。
和 Reddit、DEV 这种社区相比,活跃程度明显低很多。
不过既然账号已经注册好了,我还是继续尝试投稿。
一开始甚至可以正常进入 Submit Story 页面,所以我一度以为新账号可以直接提交。
但真正点击提交以后,服务器才给出了最终限制。

也就是说,不是注册后马上就能发。
而且这里写的是:
more than 2 points
至少要达到 3 points。
我的新账号当时只有:
1 point
理论上,我可以继续在社区参与讨论,把积分慢慢提升到可以投稿。
但结合前面看到的社区活跃程度,我最终决定:
暂时不为了这 2 个积分专门花时间。
账号保留。
以后如果自然获得足够的 points,再把项目投进去即可。
这也是这次推广过程中一个挺重要的判断:
并不是所有“Go 专门社区”都值得投入同样多的时间。
渠道本身也需要评估投入产出。
三、Reddit:选择 Small Projects,而不是直接发广告帖
接下来转到 Reddit 的:
r/golang
和 Golang News 相比,这里的社区明显活跃很多。
但 Reddit 又有另外一个问题:
如果新账号一注册,就马上创建一个专门宣传自己项目的帖子,很容易显得像广告。
幸运的是,r/golang 本身有一个很适合的固定帖子:
Small Projects
这是一个每周让开发者分享自己 Go 项目的帖子,而且发帖标准比主版宽松很多。

go-tour-i18n。所以我没有创建独立主题,而是在 Small Projects 下面发布了一条评论:
go-tour-i18n — A Tour of Go in 11 languages
内容简单介绍:
- 我是项目维护者;
- 当前有 11 个正式上线的语言版本;
- 项目持续同步 Go 官方上游;
- 有翻译、validation、语言审核、同步和 production publishing 流程;
- 部分翻译也已经出现在官方 Tour localization 页面。
链接仍然只放两个:
- GitHub
- go.dev

评论成功发布以后,我没有继续马上在 r/golang 创建第二个独立帖子。
我觉得这样更自然。
先正常进入社区,有真实互动以后,再决定以后是否有必要写一篇更有讨论价值的独立帖子。
例如以后完全可以写:
I’m maintaining A Tour of Go in 20 languages — lessons learned from keeping translations in sync with upstream
这种帖子本身有技术讨论价值,而不是单纯:
请访问我的网站。
顺便遇到了一个 Reddit Bug
我本来还打算完善一下个人资料。
例如:
- 上传自己的头像;
- 设置英文简介;
- 让别人点进账号后能知道我是项目维护者。
结果 Reddit 的个人资料保存功能一直报错。
头像可以选择,但是保存失败。
后来连个人简介也保存失败。
折腾几次以后,我决定直接放弃。
这件事情和推广本身关系不大,也没有必要为了一个头像花太多时间。
四、DEV Community:从“发链接”升级成“写一篇真正有内容的文章”
下一步是 DEV Community:
这是这次尝试中,我觉得长期价值比较高的一个渠道。
因为 DEV 并不是简单的链接聚合站。
更适合的玩法是:
写一篇本身有内容、有经验、有搜索价值的文章,然后让项目自然成为文章的一部分。
我先注册账号,并把用户名设置为:
shuijingwan
这样可以和 GitHub 保持一致。
个人资料则不只介绍 Go Tour 项目,而是从我个人的方向来写:
Independent developer and technical writer. Building open-source projects, writing about software, infrastructure, and AI, and documenting what I learn along the way.
这样以后即使写其他主题,也不需要重新调整身份定位。
五、先去 Welcome Thread 做一个正常的新成员介绍
DEV 注册以后,会有一个 Signup Checklist。
其中一个任务是:
Say hi in the Welcome thread
我没有跳过。
而是先在 Welcome Thread 中做了一段很简单的自我介绍:
Hi! I’m Shiqiang Wang, an independent developer and technical writer. I work on open-source projects and write about software, infrastructure, AI, and Go. I’m currently maintaining a multilingual A Tour of Go project as well. Looking forward to learning from the community and sharing some of what I build along the way.
没有放 GitHub 链接。
也没有放 11 个站点。
目的就是:
先作为一个正常的社区成员出现,而不是账号刚创建就开始发广告。

这一步虽然很小,但我觉得挺有必要。
社区推广和搜索引擎提交不是一回事。
面对真人社区时,身份和互动方式仍然很重要。
六、第一篇 DEV 文章:How I Maintain A Tour of Go in 11 Languages
完成 Welcome Thread 后,我开始准备第一篇 DEV 文章。
标题最终定为:
How I Maintain A Tour of Go in 11 Languages

我没有把文章写成:
我的项目有 11 个网站,请大家访问。
而是把内容重点放到了:
维护 11 个语言版本以后,我发现一个多语言技术教程真正难的地方是什么?
文章里面主要谈了:
- TranslationUnit;
- 每个 locale 独立 glossary;
- 为什么翻译不能随意拆成很小的文本片段;
- 为什么 automatic validation 不等于语言质量;
- 为什么 validator passed 不能代表 translation finished;
- AI 可以提高翻译速度,但不能代替语言审核;
- 如何跟踪 Go 官方 upstream;
- stale detection;
- UI、metadata、SEO 等 locale surface;
- production publishing;
- 为什么项目仍然明确标注为 unofficial。
现在正式的 TranslationUnit 流程大致是:
glossary preparation
→ translation
→ automatic validation
→ Candidate Snapshot
→ language quality review
→ machine finalization
→ promotion
→ deployment这里我特别强调了一件事情:
Validation is not language quality.
机器 validation 的职责,是保护:
- 代码;
- Go 标识符;
- URL;
- link target;
- directive;
- protected token;
- preformatted content;
- 机器语义。
但是一句话即使全部通过这些检查,仍然有可能:
- 生硬;
- 不自然;
- 含义有偏差;
- 技术表达不符合当地开发者习惯。
所以语言质量必须独立审核。
这也是我现在整个多语言翻译流程里非常重要的一条原则。
文章已经正式发布:
这篇文章的标签使用的是 Go、Open Source、i18n、Show DEV 这一类项目相关标签。
在文章末尾,我仍然只保留:
- GitHub
- go.dev localization page
而没有为了“外链数量”故意堆 11 个子域名。
七、外链不是越多越好
这次推广过程中,我也重新想了一下“外链”这件事情。
最开始,我确实考虑过:
既然很多语言站在搜索引擎后台都显示几乎没有外链,那是不是每发一篇帖子,就应该把 11 个站点全部列出来?
后来还是放弃了这种做法。
因为从 SEO 的角度来说:
一个页面同时链接 11 个站点,并不等于获得了 11 个独立高质量 referring domains。
来源仍然是同一个网站。
而从真人社区的角度看,突然堆一排 URL,还很容易显得像 spam。
所以我现在更倾向于:
先推广整个 go-tour-i18n 项目。
然后未来再针对具体语言,寻找对应语言的本地开发者社区。
例如:
- 日语版本 → 日本开发者社区
- 巴西葡萄牙语 → 巴西开发者社区
- 德语版本 → 德语技术社区
- 法语版本 → 法语开发者社区
- 西班牙语版本 → 西语社区
- 韩语版本 → 韩国开发者社区
如果一个日语开发者社区自然链接:
ja-go-dev...
这种链接无论从真实用户还是 SEO 角度,都比在一个英文页面里一次堆 11 个网址更自然。
八、Go Forum:再增加一个 Go 垂直社区入口
完成 DEV 以后,我又去了 Go Forum。
这个论坛也是专门面向 Go 开发者的。
我把帖子发到了适合项目发布的分类,标题仍然保持非常直接:
go-tour-i18n: A Tour of Go in 11 languages
内容主要介绍:
- 项目是什么;
- 为什么做;
- 现在有多少语言;
- 项目如何维护;
- GitHub;
- go.dev;
- DEV 上的详细文章。
不过因为是新账号,第一篇帖子没有立刻公开。

系统提示:
Post Needs Approval
以及:
You have 1 post pending.
也就是说,帖子已经提交成功,但需要版主审核。
这种新账号首帖人工审核很正常。
所以现在不重复提交,只需要等待即可。
九、这一天实际完成了哪些推广
最终,一次原本只是:
“除了 go.dev、搜索引擎、GitHub,还有什么地方可以推广?”
的讨论,变成了一轮真正的站外推广实践。
截至目前:
Go Weekly
已向编辑部发送项目推荐邮件。
状态:
已投递至对方邮件服务器。
是否收录,等待后续结果。
Golang News
账号已经注册。
但是:
- 社区目前活跃度较低;
- 投稿需要
more than 2 points; - 新账号只有 1 point。
所以暂缓,不为了积分专门投入时间。
Reddit r/golang
已经在 Small Projects 周常帖中成功发布项目介绍。
目前先观察自然互动,不马上重复发独立主题。
DEV Community
账号已经建立。
已经:
- 完善个人资料;
- 在 Welcome Thread 做自我介绍;
- 正式发布第一篇英文技术文章。
文章:
Go Forum
项目介绍已经提交。
当前:
等待版主审核。
十、这次最大的变化:从“等搜索引擎”变成“主动去开发者所在的地方”
过去做站点的时候,我的习惯通常是:
上线
→ 提交 Sitemap
→ GSC
→ Bing
→ IndexNow
→ 等搜索引擎抓取这套事情当然还要继续做。
但是对于一个完全新的子域名和新语言站来说,单纯依赖搜索引擎,可能需要非常长的时间。
尤其我的 A Tour of Go 多语言站目前还没有多少自然流量。
所以这次开始尝试另一条路线:
搜索引擎
+
官方链接
+
GitHub
+
Go 垂直社区
+
开发者内容社区
+
各语言本地社区我觉得这才可能逐渐形成一个更健康的流量来源结构。
当然,一天做几次推广,并不会马上让流量出现明显变化。
甚至今天这些动作,很可能短期内一个用户都带不来。
但至少它解决了另外一个问题:
以前除了等待搜索引擎,我基本没有主动把项目放到 Go 开发者真正出现的地方。
现在开始有了。
十一、下一步不会继续一天铺几十个平台
做完这一轮以后,我反而不打算继续当天再注册十几个网站。
原因很简单。
推广也有边际成本。
每个新平台都意味着:
- 注册账号;
- 完善资料;
- 了解规则;
- 写适合平台的内容;
- 处理审核;
- 回复评论;
- 后续维护。
如果只是为了制造链接,到处复制同一段文字,很快就会变成低质量推广。
所以接下来更合理的方式应该是:
- 观察 Go Weekly 是否采用;
- 等 Go Forum 审核结果;
- 看 Reddit 是否出现评论;
- 看 DEV 文章有没有阅读和互动;
- 继续把多语言项目推进到更多 production locale;
- 等语言数量达到新的里程碑以后,再考虑更大的曝光。
例如:
20 languages
或者:
30 languages
那时候再考虑 Hacker News / Show HN,新闻点会明显更强。
结语
这次最大的收获其实不是多了几条外链。
而是开始把这个项目从:
“我自己维护的一组多语言站点”
逐渐变成:
“一个可以被不同 Go 社区发现、讨论和反馈的开源项目。”
目前 A Tour of Go 多语言翻译项目仍然几乎没有多少真实流量。
搜索引擎收录也仍然需要时间。
所以现阶段还远远谈不上“推广成功”。
但至少今天迈出了比较具体的一步。
与其一直盯着搜索引擎后台等数据变化,不如同时主动去:
Go 开发者本来就在的地方。
接下来继续翻译,继续上线新语言,也继续观察这些推广渠道到底能不能真正带来用户。
如果后面 Go Weekly 收录、Go Forum 审核通过,或者 Reddit / DEV 开始带来实际访问,我再继续记录结果。
A Tour of Go 多语言翻译项目
本系列完整记录 A Tour of Go 多语言翻译项目从架构设计、整页翻译、结构保护、自动校验,到生产发布与后续维护的实际开发过程。
项目入口:
✅ Brazilian Portuguese — Português (Brasil)
✅ Dutch — Nederlands
✅ French — Français
✅ German — Deutsch
✅ Italian — Italiano
✅ Japanese — 日本語
✅ Korean — 한국어
✅ Simplified Chinese — 简体中文
✅ Spanish — Español
✅ Turkish — Türkçe
✅ 项目源码:GitHub:shuijingwan/go-tour-i18n
项目正在持续扩展更多语言版本,并长期维护翻译质量、生产发布与后续更新。项目属于非官方社区多语言翻译项目,与 Go 官方无隶属或授权关系。

