3

Go语言编程技巧和参与开源项目

 1 month ago
source link: https://colobu.com/2024/04/21/gotips-and-open-source/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Go语言编程技巧和参与开源项目

Go语言编程技巧 一个翻译项目, 主要翻译Phuong Le的 Golang Tips系列。
翻译后的网站是: https://colobu.com/gotips/

如果一个人能分享一条关于Go语言的技巧,那是非常有意思的一件事情。
如果一个人能分享十条关于Go语言的技巧,那是非常有心值得大家称赞的事情。
如果一个人能分享一百条关于Go语言的技巧,那是值得大家顶礼膜拜的事情。
实际上,这需要相当大的毅力坚持下来,不少人可能写了一二十条就半途而废了。如果持续输出高质量的编程技巧,说明作者工作中非常有心做总结,作者也有丰富的Go编程经验,才能持续高质量的输出。

Phuong Le已经坚持写了78条Go编程技巧了,而且还在持续输出,非常的赞。

我也征得了Phuong Le的同意,将这些技巧翻译成中文,方便更多的人学习Go语言的技巧,了解Go语言的陷阱。

当然,Phuong Le也希望能够以项目仓库的方式来翻译这些技巧。

我在githun上创建了一个仓库: github.com/smallnest/gotips, 用于翻译Phuong Le的Go编程技巧。

因为有70条的条目,翻译起来也需要花一些时间,我也希望有更多的人参与进来,一起翻译这些技巧。在熊厂内部也有很多Go语言的爱好者,大家也希望能够参与进来,厂外的朋友也可以参与进来。

因为Phuong Le的Golang tips系列每一个技巧都是独立的,而且每一个都是简短的几句话或者几段话,再加上几张代码图片,所以翻译起来也比较容易,也非常适合大家翻译。

目前翻译进度是 45%, 也欢迎大家积极参与进来,按照这个速度,五一之后很快就可以翻译完了。

为大家协作做的一些工作

为了方便大家参与到翻译项目,我做了一些工作,让大家可以更容易的参与进来。

制定翻译规则

  1. 设置项目布局,基于mdbook的方式进行管理
  2. 每一个tip一个markdown文件,内容格式保持统一
  3. 参与者首先创建issue,说明要翻译的tip,然后fork项目,翻译完成后提交PR
  4. 允许先进行机翻,但是一定要经过人工润色,保证翻译质量
  5. 认领一个星期未提交或者修改的tip,将会被关闭,无论多么接近完成状态

同时设置了github actions,合并后自动进行编译发布,第一时间可以在 http://colobu.com/gotips/ 看到最新的翻译。

为了鼓励大家的积极性,我还配置贡献者插件,将贡献者的图标加入到README中。 翻译最后我还准备制作一个翻译数量的统计。

为什么要参与开源项目

本来在上星期的QCON大会,我准备分享一些关于开源项目的心得,但是因为时间关系,没有分享出来。我也想借这个开源项目,和大家聊一聊为什么我们要参与开源项目,尤其是对那些还未参加过开源项目的同学。

我总是想提供一些参与开源项目的机会给身边的同学,但是我从不苦口婆心的规劝同学到开源项目中来。因为我觉得自有主动的人才能真正的享受到开源项目的乐趣,也能真正的从中受益。

参与开源项目,可以让开发者接触到更广阔的技术领域和更先进的技术理念。

通过参与开源社区,开发者可以与全球的技术同行进行交流和合作,共享知识和经验,不断提升自己的技术水平。这种交流和合作不仅能够拓宽开发者的视野,还能够激发创新思维,推动技术的进步和发展。
我曾经对Go并发库中的Once实现有疑问, Ian Taylor当天就在论坛上回答了我的问题,这种能得到大牛的指导是非常难得的,无论你是参与到Go、Linux、Redis等知名的项目,还是一些小众的软件中,都有可能得到一些业界大牛和经验丰富开发者的知道、帮助和讨论。
参与开源项目,也也能够得到技术的提升,比如你参与翻译这个Golang Tips系列,肯定会比你自己看一本Go语言的书籍要更深入的了解Go语言的一些细节和陷阱。

参与开源项目,还可以提高开发者的编程能力和解决问题的能力。

参与开源项目能够提升开发者的个人影响力和知名度。

比如Go生态圈,你极有可能通过Go的贡献者名单,了解到一些赫赫有名的Go技术大牛。如果你在Go的项目中有过贡献,你的名字也会出现在贡献者名单中,这对于你的个人影响力和知名度是非常有帮助的。
在开源社区中,优秀的贡献者往往会受到广泛的认可和赞誉,这对于开发者个人职业发展来说是非常有利的。通过参与开源项目,开发者可以展示自己的技术实力和团队协作能力,吸引更多的关注和机会。
大部分的招聘者在看到你在github上的贡献之后,印象分会更好,你的简历也会更有竞争力。

参与开源项目还能够培养开发者的责任心和使命感。

开源项目往往承载着社区成员的共同愿景和使命,参与其中需要承担一定的责任和义务。通过履行这些责任和义务,开发者可以培养自己的责任心和使命感,为社区的发展贡献自己的力量。
比如你认领了一个工作,如果你积极的去完成,你会感到一种责任感,你会感到一种使命感,你会感到一种成就感,大家也会对你的贡献表示感谢。
如果你认领了一个工作,拖拖拉拉,最后没有完成,大家会对你感到失望,你自己也会缺乏这种责任感。

参与开源项目还能够拓展开发者的人脉和社交圈。

通过参与开源项目,开发者可以结识更多的技术同行和志同道合的朋友,建立起更广泛的人脉和社交圈。这些人脉和社交圈不仅能够为开发者提供技术支持和资源共享,还能够为开发者提供更多的机会和发展空间。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK