资深开发者们是如何读书的?---线下读书会记录

  • 读了多少书?怎么读书?

——请问大家最近读书了吗?一年大概读了多少本书。有超过20本,超过30本,超过50本吗?

在7月14日由长沙互联网活动基地和长沙.NET技术社区组织的小型社区活动,《开发者爱读书•线下读书会》上,长沙.NET技术社区的专家、资深开发者、架构师郭德强问了大家这样一系列问题。

读书会其实对我们技术社区来说,是一种比较独特的形式,作为一个以“不搭讪,不闲聊,不吹水,只讨论技术”为口号的线上社区,在长沙这样的城市,本身就有点“奇葩”,因为愿意静下心来学习新技术、读书的开发者,或许并没有那么多,更何况是读书会这种奇怪的形式。

所以活动通知发出去之后,报名人数并不多,计划20人,实际上只报名了12人,但是出席率看起来还不错,来了十一位,接近百分之百。

事实上,读书在现代人的生活节奏中,也越来越成为最奇怪的一种学习方式,尤其是对于享受996福报的开发者来说,更是如此。沉迷于工作不可自拔的开发者们,下班回家之后已经十点了,大概很少有时间读书,而且碎片时间也被各类app充分发掘,是头条系应用们的业务增长点,所以能在炎炎夏日之下,这么多开发者来到现场,实属一股清流。

回到那个问题,显然不太可能真的读过这么多书的人,大家普遍回答说一年大概一两本,基本上也很难能够读这么多的书。

---德强哥说他一年大概能读三十到五十本,这是一个非常厉害的成绩,溪源认为今年看了不少书,也才7本书,他为什么能读下这么多书?

德强哥分享了他的经验,他说读书本身就需要一些方法,并非每一本书都值得精读,他推荐了一本书《如何阅读一本书》,他说读书首先应该从阅读序开始,体会作者写书的背景和心境,然后在根据目录再按章节先略读一遍,有的书,看一遍就会体会到这些书中有价值的点,然后再结合这些点,逐步的开展剧情。

  • 为什么要读这么多的书?

德强哥说,作为程序员往往习惯于看技术书,例如教大家怎么用工具的书和某些语言的技能书,但是有时候也应该看一些非技术的书,例如思考人性的书,心理学的书,倒也不是说一切程序皆玄学,而是因为在软件开发的过程中,实际上依然是人与人之间沟通的过程,而每个人说的话,做的事,实际上都有其动机和想法,思考对方的想法,更有利于开发者们对功能的实现。

      如果始终站在自我为中心的角度,思考在某些场景下,数据驱动行为,本身就容易陷入误区。

既然数据驱动设计有毛病,那采用测试驱动设计?还是领域驱动设计?还是行为驱动设计?

德强哥说,其实是人性驱动设计。在看似风口迭起的IT行业,似乎大家的身边有许多程序员,但实际上真正全世界范围来看,依然只有两千万程序员,从中国范围来看,也就两三百万程序员,所以看似原本跟计算机打交道的枯燥无味的软件开发,依然是人类群体活动的一个环节。

所以程序员不是孤立存在的现代行业,阅读一些社会心理学的书,更有利于发掘需求的意义。尤其是面向特定的行业人群,更需要站在行业人群的教育背景、人际交往、爱好等领域去思考,这更需要我们的书,即便是许多产品,其实是抄袭竞品出来的,同样也需要了解行业背景做出独特的特色,才能在市场上立于不败之地。

学习软件架构,有时候阅读一些建筑学的书,反而能产生不错的触动效果,“他山之石可以攻玉”,建筑业其实和软件行业具有更多的共同性,有很多重要的架构思想,其实也是从建筑架构体系中发散出来的。

阅读管理学的书,则让我们能够具有同理心,想想老板是如何将问题分下来的,或许有利于我们更好的解决问题。

如果要学习Redis这个工具的用法,单纯只看Redis的书,难免会有点片面,但是如果你把其他类似的NoSql相关的技术体系,都看一遍,那反而能更加深入的了解redis这种技术的独特之处了,而且还会产生附加效应,例如哪天有一个别的Nosql技术火起来了,至少知识体系是一同百通的。

  • 彼得原理告诉我们要读书

在过程中还聊到了其他内容,一些看似无关的概念,如彼得原理。彼得原理是西方管理学的一个重要理论,他说的是,在各种组织中,由于习惯于对在某个等级上称职的人员进行晋升提拔,因而雇员总是趋向于被晋升到其不称职的地位。

彼得原理有时也被称为“向上爬”理论,这种现象在现实生活中无处不在。例如每个开发者的职场生涯,总有一个阶段感觉进步很快,但很快就到了瓶颈期,所以需要晋升到更高级的岗位,或改变自己的学习方法,让自己的技能进一步提升。

其实企业发展同样受这个理论的掌控,如果一家组织如果发展得很快,那么到了一个阶段,例如两百人的规模,就容易陷入内卷化,需要引入新的管理方法才或许能再进一步。

  • 要有输入和输出,要用输出倒逼输入

到场的996的开发者们说上班太忙了,有时候想学一些新知识,都没有足够的时间,或者就算挤出了时间,也感觉学不进什么,除了遗忘曲线本身外,还有其他原因么?

溪源说大概是因为有输入没输出造成的,例如,最常见的一种输出,就是做项目,通过做项目能够快速的沉淀我们的技能,让我们快速成长,这也是我们在参加工作的前三年感觉技能突飞猛进的一个原因。但是随着我们的技能逐渐成长,原来做项目的模式带来的成长效果其实也越来越差。其主要原因是项目中使用的技术虽然很多,为了解决眼前问题,我们往往更倾向于越快越好,这就让我们可能掌握了许多技术,但是都不精通。所以随着经验的增长,需要一些其他的方式来进一步沉淀我们的技能。

写博客其实是一种方式,写书也是一种方式。还有一种方式是做技术分享。优秀开发者都善于用输出倒逼输入。

周尹老师说,优秀开发者都善于用输出倒逼输入。哪怕你是一个自律的人,有时候也难免会陷入自以为是的怪圈,这时候,通过外力来逼迫,促使你沉下心来认真的学习,反而能让输入产生更好的效果。

溪源深有同感。曾经跟咕泡学院创始人、校长蒋孟枝蒋总有过交流,他曾在大众点评担任高级架构师。他说他最大的爱好不仅仅是解决问题带来的快乐,而是把自己的知识分享出去,让更多人了解这些知识,这让他得以获得更大的满足,也促使他学习更多的新技术,同时也让他认识了许多朋友,这也是他得以成功创立咕泡学院的一个很重要的因素。

  • 钻研技术有用吗?

现场还有人提出了一个问题:

不要妄想用技术改变世界,技术是没什么用的,因为我们学的技术都在被新技术取代。

必须承认,在长沙的软件公司,似乎大部分技术体系都没有那么先进,许多.NET企业,其实还是在用三层架构。但是这也只是公司当前的形态而已,大部分的IT公司都对新技术有兴趣,只是限于当前的业务发展状况,寻求稳定的技术是必然选择。

学习新技术也正是开发者们立足于世界的根本之一,只有不断的学习新技术,我们的技术体系才不至于落后。

虽然真正改变世界的企业,其实只有那么几家,但头部玩家所引领的时代潮流,已经逐步改变了我们的生活。一切知识往往都是有用的,要么是真的没有用起来,要么是我们还不够熟练。

 

  • 结语

这是我们第一次组织读书会这种形式,从2点半开始,到5点20结束,持续了将近3个小时的时间,实际上交流的点非常多,当然还有更多思想碰撞,例如:

为什么项目老是延迟?

为什么长沙的那些老项目管理者,找工作总是很不如意?

为什么需求总是做不完?

外包项目值不值得做?

看了那么多书,怎么用?有用吗?

限于时间缘故,溪源只能记录五点,请大家见谅(典型的捡了芝麻,丢了西瓜)。

       640      

通过这种方式,大家可以从线上走下线下,进一步打开自己的圈子,也能跟其他开发者一起交流、效果还是非常不错的,尤其是目前大家主要学习形式依然是借助于自学或公司的安排,并非每家公司都有比较不错的分享氛围。

这样的读书会,能够面对面的与比我们年长的开发者、架构师们交流,更有利于年轻开发者们对于方向的把握,所以长沙.NET技术社区计划把这种形式固定下去(每月一次),欢迎大家持续关注。

预告,近期还会有两次类似的小范围读书分享活动,敬请期待。

  • 读书会兴趣小组讨论群

       640      

 

  • 分享几本好书:

1、《软技能,代码之外的生存指南》。

2、《如何阅读一本书》

3,《能力陷阱》

4、《系统思考》

5、《商业模式新生代(个人篇)》

6、《高效阅读法》,社区书评(https://www.jianshu.com/p/70f4ddac4ace?utm_campaign=haruki&utm_content=note&utm_medium=reader_share&utm_source=weixin&from=groupmessage&isappinstalled=0

  • 分享社区两个公众号

 

       640      

面向DotNET的线上技术社区。社区宗旨:以弘扬互联网精神为己任,致力于打造开放,分享,互利,共赢的互联网技术社区。打破闭塞,拉进你我,分享知识,共同进步,努力创造更加友善进取的.NET技术圈。

       640      

架构师郭德强的个人公众号,提升认知,持续成长。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/314933.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【APIO2018】Duathlon 铁人两项 【圆方树】

题意:给一张 nnn 点 mmm 边的简单无向图,求有多少个三元组 (s,c,f)(s,c,f)(s,c,f) ,满足存在一条从 sss 到 fff 经过 ccc 的简单路径。 n≤105,m≤2105n\leq 10^5,m\leq 2\times 10^5n≤105,m≤2105 首先这个 “经过 ccc 的简单路径” &…

Codeforces Round #598 (Div. 3) E. Yet Another Division Into Teams dp + 输出方案

传送门 文章目录题意:思路:题意: 给你一个长度为nnn的序列aaa,你需要将其分成若干组,每组的价值为max⁡(ai)−min(ai)\max(a_i)-min(a_i)max(ai​)−min(ai​),求如何分组才能使得代价最小,输出…

架构杂谈《三》

一致性问题前面的《架构杂谈一》和《架构杂谈二》 杂谈了从服务化到微服务架构的演进,并肯定了服务化和微服务架构是一脉相承的。微服务在服务化架构的基础上,对服务化的细节和方案进行了优化和细化,重点突出了无中心化管理的微服务架构&…

【SDOI2018】战略游戏【圆方树】【虚树】

题意:给一张 nnn 点 mmm 边的连通无向图,qqq 次询问,每次给出一个点集 SSS ,求有多少个不在 SSS 中的点满足删除后 SSS 中存在两个点不连通。 n≤105,m≤2105,∑∣S∣≤2105n\leq 10^5,m\leq 2\times 10^5,\sum |S|\leq 2\times 1…

Codeforces Round #598 (Div. 3) F. Equalizing Two Strings 思维 + 逆序对

传送门 文章目录题意:思路:题意: 给你两个长度为nnn的串a,ba,ba,b,每次可以同时翻转a,ba,ba,b中任意一段长度为L(1≤L≤n)L(1\le L\le n)L(1≤L≤n)的子串,问能否通过若干次操作使两个串相同。 思路: 首…

腾讯发布 Tencent SCF Toolkit VS Code 插件,轻松开发无服务器云函数

在之前的文章中,我们提到了亚马逊、谷歌、IBM 等大厂都上了 Visual Studio Code 的船。阿里巴巴也在近日发布了 Aliyun Serverless VS Code 插件。近期,腾讯也上了 VS Code 的船,发布了基于 VS Code 的 Tencent SCF Toolkit 插件,…

Codeforces Round #726 (Div. 2) D. Deleting Divisors 博弈

传送门 文章目录题意:思路:题意: 给你一个数nnn,有两个人博弈,每次可以将nnn减去一个nnn的因子,这个因子不能为111或nnn。当不能操作的人输掉游戏。问你先手赢还是后手赢。 思路: 这个题多写…

【POI2007】OSI-Axes of Symmetry【计算几何】【manacher】

题意:给一个 nnn 个点的多边形,求对称轴个数。 n≤105n\leq 10^5n≤105 显然对称轴一定在顶点或边的中点上。 但你 n2n^2n2 枚举完全没有一点能过的样子。 冷静分析,发现有 “中点”,“对称轴”,很自然个鬼地想到了…

端到端测试实践:Jenkins集成TestCafe

上一篇《对产品质量的一点思考》中说到自动化测试的重要性,本文简单介绍下怎样在实际项目中实现端到端测试的自动化,在这里我们使用的端到端测试工具是TestCafe。环境Jenkisn:2.183TestCafe:1.3.0为什么采用TestCafe做自动化测试要…

Codeforces Round #727 (Div. 2) F. Strange Array 线段树 + 区间合并 + 排序优化

传送门 文章目录题意:思路:题意: 给你一个长度为nnn的数组,对每个位置iii求一个最大价值,价值计算方式如下:选择一个包含iii的[l,r][l,r][l,r],让后将其拿出来排序,之后价值就是当前…

【CF487E】Tourists【圆方树】【树链剖分】【multiset】

题意:给一张 nnn 点 mmm 边的连通无向图,点帯权,qqq 次操作: 修改一个点的权值。询问两点间所有简单路的最小权值的最小值。 n,m,q≤105n,m,q\leq 10^5n,m,q≤105 显然建出圆方树然后询问路径最小值。多半要树链剖分了。 对于方…

再见Jenkins,从Gitlab代码提交到k8s服务持续交付只需七毛三

Gitlab runner 快速搭建CICD pipeline背景日常开发中,相信大家已经做了很多的自动化运维环境,用的最多的想必就是利用Jenkins实现代码提交到自动化测试再到自动化打包,部署全流水线Jenkins在devops担任了很重要的角色,但是另一方面…

Codeforces Round #726 (Div. 2) F. Figure Fixing 二分图 + 思维

传送门 文章目录题意:思路题意: 给你一张nnn个点mmm条边的图,每个点都有一个当前值aia_iai​,目标值bib_ibi​,每次可以选择一条边(i,j)(i,j)(i,j),将ai,aja_i,a_jai​,aj​都加上任意一个数,问…

【NOI2020】命运【树形dp】【线段树合并】

题意:给一棵 nnn 个点的树,每条边需要染成黑白两种颜色中的一种。给出 mmm 个条件,每个条件给出 u,vu,vu,v,其中 uuu 是 vvv 的祖先,要求 uuu 到 vvv 的链上至少一条黑边。求方案数 模 998244353998244353998244353。 …

.NET Core 3.0之深入源码理解Kestrel的集成与应用(二)

前言前一篇文章主要介绍了.NET Core继承Kestrel的目的、运行方式以及相关的使用,接下来将进一步从源码角度探讨.NET Core 3.0中关于Kestrel的其他内容,该部分内容,我们无需掌握,依然可以用好Kestrel,本文只是将一些内部…

Codeforces Round #726 (Div. 2) E2. Erase and Extend (Hard Version) 贪心

传送门 文章目录题意:思路:题意: 给你一个长度为nnn的串sss,你有两个操作可以使用: (1)(1)(1)从sss的结尾删除一个字母。 (2)sss(2)sss(2)sss。 让你通过若干次操作使其变成一个长度为kkk的串,且其字典序最…

【BZOJ3451】Normal【期望线性性】【点分治】【NTT卷积】

题意:随机分治中心点分治的期望操作次数 n≤3104n\leq 3\times 10^4n≤3104 即求点分树的 siz 之和的期望 即祖孙关系对数期望 考虑一有序点对 (u,v)(u,v)(u,v),uuu 在点分树上是 vvv 祖先当且仅当 uuu 是 u∼vu\sim vu∼v 路径上第一个被选为分治中心…

译 | 使用Roslyn分析器高效编写更好的代码

原文:Mika Dumont翻译:汪宇杰Roslyn 是 .NET 编译器平台,即使在运行代码之前,它也能帮助您捕获 Bug。例如内置于 Visual Studio 中的Roslyn 拼写检查分析器。假设您正在创建一个静态方法,并将 static 单词拼错为 statc…

Codeforces Round #724 (Div. 2) F. Omkar and Akmar 组合数学 + 博弈

传送门 文章目录题意:思路:题意: 思路: 首先我们先来研究一下这个游戏,手画几个会惊奇的发现,后手这个b怎么怎么画都赢啊???对,没错,就是怎么画都…

Visual Studio 支持 Java?谣言止于智者

在去年的某一段时间内,我们经常会看到标题类似为“宇宙第一 IDE Visual Studio 支持 Java 了!”的文章。当时,韩老师看到这篇文章也是一脸懵逼。公司里做 Java 的开发童鞋们就坐在韩老师附近(嗯,不超过五米的距离&…