CloudWeGo Study Group 是由 CloudWeGo 社区发起的学习小组,开展以 30 天为一期的源码解读和学习活动,帮助新成员融入社区圈子,和社区 Committer 互动交流,并学习上手 CloudWeGo 几大框架项目。目前 CSG 第二期——Hertz 框架篇已经正式启动!
本期活动期间安排了 4 期直播分享,主题分别为:
从精通烤肉到精通HTTP——HTTP 框架初识;
如何利用命令行工具 Hz 快速开发 Hertz 服务;
如何对开源项目进行学习——从全局到局部分析的思路;
代码学习无止境,程序员的未来归于何处。
本文为 CSG 第二期第四场直播中杨文、王伟超和李龙圆桌讨论分享的内容。
01 圆桌议题
-
议题一:开源自 2020 年开始列入国家规划后,开源项目越来越多。开源项目的涌现,为大家提供了学习和深度了解升级项目的途径。从学习的角度来看,一个开发者如何参与项目、学习项目?
-
议题二:CloudWeGo 开源项目主要方向是云原生微服务框架,这类项目主要的使用场景是什么样的?学习这类项目的价值点在哪里?混迹社区有什么经验分享?
-
议题三:程序员作为项目使用者的角色,开发者作为开源项目设计者的角色,这两种角色关注的点有什么不同?作为一个经历过这类角色转换的社区 Committer 来说,有什么经验可以分享?
-
议题四:在社区视角和全局角度下,谈一谈为什么大厂都在招聘 Go 工程师?程序员应该如何规划自己的职业发展?程序员最终的归宿是哪里?
-
议题五:大佬分享环节,大佬们关注的博主/学技术的网站/书籍推荐。
02 嘉宾
03 议题一
开源自 2020 年开始列入国家规划后,开源项目越来越多。开源项目的涌现,为大家提供了学习和深度了解升级项目的途径。从学习的角度来看,一个开发者如何参与项目、学习项目?
分享人:王伟超
关于这个问题的介绍主要从以下四个方面展开:
-
如何与 Kitex、CloudWeGo 社区结缘;
-
个人对于云原生和开源文化的认识;
-
为什么要参与开源以及我理解的开源精神;
-
个人以后对开源的想法。
如何与 Kitex 和 CloudWeGo 社区结缘
其实与 Kitex 的结缘是非常巧合的,虽然做了几年后端开发,但是感觉在技术上还是存在一些瓶颈,因此想要提升自己。回顾一下本人的过往经历:
-
2021 年 9 月尝试在 InfoQ 做输出,挑战日更,更多是做翻译;
-
10 月底决定学一点特定的技术,发现之前自己学习的更多是“道”和“法”层面,主要关于编程理念的知识和理解,很少关于“术”和“器”;
-
联想孔子的一句话:“吾尝终日不食,终夜不寝,以思,无益,不如学也”,就是之前都是思维层面和架构层面的思考,不如学点具体的技术。因此,我决定再找一个话题,从感兴趣的方面入手,但是 Docker、云原生、架构设计、微服务思考这些话题非常火热且竞争很大,可能一时难以入手做出自己的东西;
-
想起刚刚开源的 Kitex ,以及刚开源的 CloudWeGo 项目中相关的一些中间件集合的资料和实践应该比较少,于是开始了《CloudWeGo 微服务实践》系列,做了一个小的集合,但是也没写完整,只是写到了操作数据,不是一个完全的业务实践。
对我个人而言,了解微服务框架是一个很好的入门,并且更重要的是能够参与到社区中来。我在了解框架的过程中,经常在 CloudWeGo 飞书群了解相关动态,看一下 CloudWeGo 相关的 PR 或者 issue,关注一些最新动态,看看哪些东西自己是可以做的。后面我主要是为 Kitex 服务发现、服务注册相关的组件、单元测试等方面做了一些贡献。
个人对于云原生和开源文化的认识
那么我是怎么一步一步了解或者接触到开源文化的呢?
这大概要回顾 2018-2019 年,当时在深圳经常参加一些技术峰会、Meetup 等活动,这个城市的技术氛围还是比较不错的。那时就能明显地感觉出来云原生、围绕容器的虚拟化 K8S 相关一定是一个技术趋势,当时也是因为对 Docker 感兴趣,所以更多地留意了 K8S 这些相关的技术领域。
最后在机缘巧合下,了解到 Linux Foundation,即 Linux 开源基金会,会有一些技术认证。当时我想通过这种机会,特意地学一些特定的技术,比如他们推出了 CKA 、CKS,所以这也是一种学习的渠道。
不仅如此,我还会经常关注基金会推出的一些开源项目。当时在学 K8S 的时候浏览了一遍 K8S 相关文档,给他们的文档提过一些 PR ,这是我最早接触到开源。
为什么要参与开源以及我理解的开源精神
- 学习优秀的开源项目