坚持写作必有收获。
今天我们采访的嘉宾是 @xindoo。他是一位工作快 10 年的互联网老兵,有着丰富的开发经验,主要从事 Java 后端开发,同时涉猎广泛,涵盖前端、算法、数据分析等技术领域。他积极参与开源项目,也是一位技术博主。在个人生活中,他热爱阅读,也喜欢看科普视频,他也是使用 AI 比较早的一批人,利用 AI 提升自己的工作效率,积极拥抱新技术。本期我们很荣幸地邀请到了他,让我们一起听听他的精彩故事和心路历程吧。
大家好我是 xindoo,一个十多年的技术博主,之前工作不忙的时候还搞过一段时间开源,在别人的努力下我在 Github 上参与贡献过的项目共收获了46w+ Star(🐶 其实只是给几个知名项目提过简单 mr 被采纳,我个人只有 1k 多 Star) ,后来空余时间不是很多也就放弃搞开源项目了。另外我也是一个工作快 10 年的互联网老兵了,本科毕业后直接进入互联网,不过刚开始运气不太好,干了几年的运维,之后转研发做过广告引擎研发,现在在 To B 领域做装修相关业务后端研发。
我个人技术领域目前主要是 Java 后端开发,但业余时间偶尔自己折腾点小东西啥的,涉猎的技术领域还是挺广的,所以除了后端研发和运维这两个有实际工作经验的岗位外,像前端、算法、数据分析之类的工作都可以简单搞一搞,感觉勉强可以够到全栈的门槛吧!
高中的时候借宿我姑家,正好我表哥是学计算机相关专业的,所以他家里有本电脑手册(像字典一样介绍电脑的基本概念和基本操作),平时没事的时候就翻一翻,就觉得这东西挺有意思的,然后逐渐产生了兴趣,所以高考后毅然决然报了计算机相关的专业。我记得我填志愿的时候,几个志愿都是计算机相关的,最后被软件工程录取。大学的时候跟学长参加 ACM 竞赛,靠着 ACM 刷题的经验顺利过了某大厂面试,然后毕业后就去当运维了,当然后来也是靠着刷题的底子,在干运维 2 年多不写代码的情况下还能转岗到研发岗,之后就成为一名真正的程序猿了。
我目前本职工作是 Java 后端,使用的技术栈就是国内互联网公司常用的 Java 技术栈,日常会用到 Spring、MySQL、Redis……因为也经常要跑数据刷数据啥的,所以也会写一些 Python、Shell 脚本。 不过当前我日常工作中写代码的时间相对少了,一来是我现在在一个业务团队,平时业务相关的方案沟通就会比纯技术团队多一些,二来是今年也承担了部分团队管理的工作,所以会涉及到很多沟通协调的工作。
其实我个人业余生活就很符合大家对程序员的刻板印象,就是比较宅,业余也不太喜欢出去玩啥的,平常也不怎么玩游戏,后来养成了看书的习惯,每年都会看很多书(有兴趣可以逛下我豆瓣读书主页:https://book.douban.com/people/xindoo/collect)。之前还会跑步,曾经有段时间隔天跑 5km,不过去年跑步伤了膝盖,只能先把跑步戒了。其他运动的话前两天跟着女朋友入坑单板滑雪,不过水平还是比较菜,也很怕摔。 我现在日常也会刷视频,因为我比较喜欢研究任何事物的底层运作机制,所以还是比较喜欢看那些科普类的博主,比如最近看的比较多的博主就是大刘科普,我看这类视频最大的感受就是果然没用的知识学着更有意思。
我感觉我工作最大的变化就是我个人性格的变化,曾经的我比较内向,我对计算机专业比较感兴趣的其中一个原因就是它不涉及人与人之间的沟通,写代码只需要和机器沟通,就很纯粹。然而工作这么多年,我的工作内容离业务越来越近(离用户越来越近),反而和人的沟通越来越多,曾经不善言辞的青涩少年,现在坐下来可以随便写几千字的技术文章。我也越来越体会到,即便是做程序猿,沟通和表达也是一项非常重要的能力,程序猿其实不只是代码的编写者,还是现实世界中普通人和机器之间沟通的桥梁。
要说最近尝试的新技术那一定就是 AI 了,不过倒也不是最近才尝试的,只是现在 AI 技术发展很快,几乎隔一段时间就会搞出一个大新闻,而我也在一直跟进体验。我自己其实是我周围使用 AI 比较早的一批人,去年 3 月份 GPT-3.5 推出后我就在用了,也花钱开了 Poe 的会员,像 GPT-4v、Claude、Gemini Pro 以及刚出来的 Claude-3.5-Sonnet 也在第一时间体验了,文生图的模型比如 DALL·E、Stable-Diffusion、Midjourney 这些也一个都没落下都玩过。
关于提升自己技能水平最好的方式,我一直认为是多输入 + 多实践 + 多输出。这三点都很直白很好理解,也没必要展开解释,这里我就说下我的方式。
- 多输入,我就是多看一些书籍、文章之类的,书的话日常基本都会看,然后今年开始每天也会刷下 Medium 上的文章(这里推荐下Medium,上面很多国外优质文章),然后平时刷手机的时候也会看下公众号,里面经常也会看到很多大厂的优质文章或者资讯。
- 多实践,这点也非常重要,我相信大家在学习编程的时候,老师也说过无数次了吧!我个人为了方便搞一些技术实践,自己也采购云服务器,在上面部署过很多东西。
- 多输出,这点其实绝大多数人都做不到,其实我也做的一般,我的主要输入方式就是写博客,真的感觉这些年坚持写博客对我产生了很多潜移默化的影响,比如博客的写作显著提升了我的总结表达能力,要知道我之前高考语文也只是勉强及格的水平。
作为一个技术博主,我很早就借助 AI 写过博客,真的速度特别快,比如要写某个工具的使用教程,就是几句话的事,不过要提升文章质量,还是需要稍微花时间多问几次 AI,然后将其结果整理汇总起来。不过 AI 生成的技术文章总有一股明显的 AI 味,怎么说呢,就是不知道哪别扭,就是一眼就能看出来是 AI 写的,所以现在我在写文章的时候不会直接使用 AI 生成内容了。
目前用 AI 比较多的场景就是文章翻译总结,这点 AI 做的真的很好。比如我看到一篇英文文章,我会先让 AI 用中文总结其中的要点,我看过后如果对要点有啥不理解的,才会仔细去看文章,否则如果其中的观点我比较熟知,我就直接放弃看原因了,这对我信息输入的效率提升非常大。
这里分享一个我使用 AI 的心得。我发现有很多人和 AI 沟通存在障碍,我总结出一个规律,其实和 AI 沟通有障碍的人和其他人沟通也不会很顺畅,原因就是他缺少沟通的技巧。我认为其实和AI沟通和人与人之间沟通没有本质的区别,最大的区别在于和人沟通,对方默认会带上和你之前沟通的信息,而目前的 AI 不会。所以你在和 AI 沟通的时候,你每次都需要将它当成一个初次沟通的陌生人,在你问 AI 任何问题前,可以先问自己两个问题:
- AI 是否具备你想问问题的相关背景信息(这里可以大概了解下 AI 是拿什么数据训练出来的)?
- 你的问题描述是否明确清晰(你可以先尝试问下你周围的人,如果他没有直接回答反而是反问你问题,就说明你这个问题问的不行)?
现在网络上有很多关于如何写 prompt 的教材,也有很多 prompt 模板,这些模板的基本逻辑其实就是在当下 AI 能力局限下强制你将背景信息、你的诉求更明确的描述出来。最后说一句,其实真正的沟通高手是不需要什么 prompt 模板的,他们随口就是高效沟通。
当然会了,原因也很简单,因为这是我能想到人生最好的一条路径,没有其他。通过做程序员,我赚到了不算少的薪水,而且工作中我也得到了公司和同事的认可,在外面我通过写博客,也得到了陌生网友们的认可,感觉一切都是最好的安排。
我在 23 年的年终总结里详细回答过这个问题,这里我用 AI 将原文总结下列在这里,有兴趣可以看下原文: XINDOO 的 2023 年总结 。
2023 年的主要收获和感悟:
- 在 30 岁时感觉自己已经经历了孔子所说的"三十而立"、"四十而不惑"和"五十而知天命"的阶段,形容自己的 2023 年为"知天命"。
- 读书量达到 60 本,虽然质量不高,但积累了知识并在工作生活中发挥作用。
- 工作上虽然绩效不如预期,但得到了同事的认可和公司其他方面的奖励。
- 积极拥抱 AI 技术,将其作为助手提升工作效率。
- 对同理心、客观评价和组织与个人利益平衡有了新的认识。
2024 年的主要期待(部分已实现):
- 顺利结婚,完成婚纱照拍摄和婚礼。
- 与妻子开的花店能实现盈利。
- 继续保持读书和写博客的习惯,提高质量。
- 在工作中尝试团队管理,推动团队成长。
- 利用 AI 技术打造个人工作助手。
- 应对可能是人生最具挑战的一年,在工作和生活上都有重大变化。
我第一想到的就是 @程序员DD,之前学 Spring Cloud 的时候就看他的书和文章,我们公司入职的应届生还搞学习小组看他的书学习 Spring Cloud,我也在各个技术社区经常看到他。还有 @小傅哥,我之前也看过他网站,印象中小傅哥涉猎很广,而且还是很高产的博主(类似的博主还有很多)。当然他们博客很多偏教程所以我具体看的比较少,但是他们一直坚持产出高质量的博客,这点我是很羡慕的,我在持续高质量输出上和他们差太多。
我在社区的收获,最大的不是我得到了多少输入,而是我坚持输出了一些东西,坚持输出的过程迫使我需要不断地总结和思考,所以提升了我的总结思考能力,这点我也很推荐大家尝试,坚持写作必有收获。
我觉得思否在内容上做的还是很干净的,都是一些比较干和实用的内容,很少有软文之类的。 我这里提一个博客的优化点,在博客推荐页,可以考虑给每个博客增加一个文章概要,这个可以是作者自己给出,也可以是 AI 总结,这样可以方便用户一眼了解到博客的内容。
在本次访谈中, @xindoo 分享了他提升自身技能的方式:多输入、多实践和多输出。通过广泛阅读技术书籍、文章等获取知识、扩展视野;通过实践将知识应用到实操中,培养自己解决问题的能力和积累相关经验;通过写博客等方式进行输出,分享自己的经验心得,总结、巩固所学知识,进一步加深对知识的理解。学习是一个持续积累的过程,这些经验方法在学习过程中至关重要,值得我们所有人学习、借鉴。
《思否有约》记录你与编程的故事。欢迎小伙伴们加入访谈,共同分享成长之路,扫描二维码报名吧~