22 | 领域:知识与体系
下载APP
关闭
渠道合作
推荐作者
22 | 领域:知识与体系
2018-09-21 胡峰 来自北京
《程序员进阶攻略》
课程介绍
讲述:刘飞
时长08:03大小3.69M
今年年初,我学习了梁宁的《产品思维》课,其中有一篇叫《点线面体的战略选择》,我觉得特别有感触。虽然是讲产品,但假如把个人的成长当成产品演进一样来发展,会有一种异曲同工、殊途同归之感。
在我工作的经历中就曾碰到过这么一个人,他一开始做了几年开发,从前端到后端,后来又转做测试,接触的“点”倒是不少,但却没能连接起来形成自己的体系,那他个人最大的价值就局限在最后所在的“点”上了。
其实个人的成长有很多方面,但对于程序员的成长最重要的就是知识体系的构建,这其实就是一个 “点线面体” 的演进过程。
下面我会结合自己的成长路线来梳理下这个体系的建立过程。
点
进入任何一个知识领域,都是从一个点开始的。
如下图,是我从大学进入软件开发领域所接触的一系列的点,我将其从左到右按时间顺序排列。红色的部分是目前还属于我 “掌握” 与 “了解” 的领域,其他灰色的部分则是要么被时代淘汰了,要么已经被我放弃了维持与更新。
我的成长时间线上相关技术领域知识点
我入行的年代,流行的是 C/S 架构的软件开发模型。当时客户端开发三剑客是 PB(PowerBuilder)、VB(Visual Basic)和 Delphi,而我只是顺势选了其中的一两个点,然后开启了程序员生涯。
没过两年 B/S 架构开始流行,并逐步取代了 C/S 架构。于我,只是因为研究生阶段学校开了一门面向对象语言课,老师用 Java 做教学语言,所以我后来就又顺势成了一名 Java 程序员。而又只是因为 Java 的生命力特别旺盛,所以也就延续至今。
早些年,前后端还没太分离时,因为项目需要,所以我又去涉猎了一些前端 JS 开发;之后移动互联网崛起,又去学习了些移动开发的东西;再之后就是 ABC 的时代(其中 A 是 AI ,人工智能;B 是 Big Data,大数据;C 是 Cloud,云计算),就又被潮流裹挟去追逐新的技术浪潮。
如今回过头再看,每一个技术点,似乎都是自己选择的,但又感觉只是一种被趋势推动的一次次无意“捡起”。有些点之间有先后的承接关系,而更多点都慢慢变成了孤点,从这片技术的星空中暗淡了下去。
在你入行后,我想你可能也会因为时代、公司或项目的原因,有很大的随机性去接触很多不同的技术点。但如果你总是这样被客观的原因驱动去随机点亮不同的 “点”,那么你终究会感到有点疲于奔命,永远追不上技术的浪潮。
线
当形成的点足够多了后,一部分点开始形成线,而另一些点则在技术趋势的演进中被自然淘汰或自己主动战略放弃。
那你到底该如何把这些零散的点串成线,形成自己的体系与方向呢?如下图,是我的一个成长 “T 线图”,它串联了如今我沉淀下来的和一些新发展的 “点”。
我个人的成长发展 “T 线图”
我从成为了一名 Java 程序员开始,在这条 “T 线” 上,先向下走,专注于解决业务需求碰到的技术问题。先自然地要向下至少走一层,接触 Java 的运行平台 JVM。而又因为早期做了几年电信项目,要和很多网络设备(包括各类网元和交换机等)通信,接触网络协议编程;后来又做了即时消息(IM)领域的工作,网络这一块就又继续增强了。而网络编程依赖于操作系统提供的 I/O 模型和 API,自然绕不过 OS 这一块。
在 Java 领域走了多年以后,以前涉猎的技术点就逐步暗淡了。而再从程序员到架构师,就开始往上走,进入更纯粹的 “架构与设计” 领域,在更宽的范围和更高的维度评估技术方案,做出技术决策与权衡,设定技术演进路线。
但是,再好的技术方案,再完美的架构,如果没有承载更有意义的业务与产品形态,它们的价值和作用就体现不了。所以不可避免,再往上走时就会去了解并评估 “业务与产品”,关注目标的价值、路径的有效性与合理性。
在整个纵向的技术线上,最终汇总到顶点,会形成一种新的能力,也就是我对这条纵向线的 “掌控力”。到了这个 “点” 后,在这里可以横向发展,如图中,也就有了新的能力域:领导力和组织力。
一个个点,构成了基本的价值点,这些点串起来,就形成了更大的价值输出链条。在这条路上,你也会有一条属于自己的 “T 线”,当这条线成型后,你的价值也将变得更大。
面
线的交织,将形成面。
当我试着把我最近六年多在电商客服和即时通讯领域的工作画出来后,它就织就了下面(如图所示)的这个“面”。
我近些年工作面的分层图
我从最早的聚焦于某个业务点和技术栈,逐步延伸扩展到整个面。因为 IM 这个产品本身具备很深的技术栈,而且也有足够多元化的应用场景,这样整个面就可以铺得特别宽广。这也是为什么我已经在这个面上耕耘了六年多之久。
但事实上,我并不掌握这个面上的每个点,整个团队才会分布工作在整个面上,每个个体贡献者也只会具体工作在这个面上的某个或某些点。但我们需要去认清整个面的价值体系,这样才能更好地选择和切入工作的点,创造更大的价值。
而有时候,我也了解到有些程序员的一些说法是这样的:在相对传统的行业,做偏业务的开发,技术栈相对固定且老化,难度和深度都不高,看不到发展方向,期望找到突破口。若你也出现这样的情况,那就说明你从事的业务开发,其单个技术点的价值上限较低,而选择更新、更流行的技术,你就是期望提升单个技术点的价值,但单个技术点的价值是相对有限的。
反过来,如果很难跳脱出自身环境的局限,那么也可以不局限于技术,去考虑这些传统的业务价值,从技术到业务,再上升到用户的接入触达,考虑产品的场景、形态和人群是如何去为这些用户提供的服务、产生的价值。
当你对整个业务面上的价值点掌握的更多,能抓住和把握核心的价值链条,去为更广、更大的价值负责,那么你就能克服自己的成长发展困境,找到了另外一条出路了。
同时,你也为自己织就了一张更大的领域之网。在整个面形成了一个领域,在这个面上你所能掌控的每条线就是你的体系。在这条线的 “点” 上,你解决具体问题,是做解答题;但在整个面上你选择 “线”,是做选择题。
体
体是经济体或其中的单元。
你的 “面” 附着在什么 “体” 上决定了它的价值上限。如果 “体” 在高速增长并形成趋势,你就可能获得更快的发展。
从电力时代到信息时代再到智能时代,互联网、电商、移动互联网,这些都是 “体” 的变化。今天互联网行业的软件工程师,他们面临的挑战和难度不见得比传统的机械或电力工程师更大,只不过他们所从事的 “点” 所属的 “面”,附着于一个快速崛起的 “体” 上,获得了更大的加速度。
“体” 的崛起,是时代的机遇。
总结来说,就是:在领域知识体系中,“点” 是利器,“线” 是路径,“面” 是地图;而就我们个体而言,“点” 是孤立知识点的学习掌握,而 “线” 是对这些点的连接,“面” 则构成了完整的知识体系网。
以上就是我建立知识体系并形成自己领域的思考。而在每个不同的阶段,你都可以先做到心中有图,再来画“线”,然后再在每个“点”上去努力。
分享给需要的人,Ta购买本课程,你将得20元
生成海报并分享
赞 17
提建议
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
上一篇
21 | 信息:过载与有效
下一篇
23 | 转化:能力与输出
精选留言(18)
- 搬砖维持生活2018-09-21工作一年多一点,觉得建立知识图谱十分重要。“用”和“懂”是两回事,但“懂”得越多,用起来就越快。现在还在连“点”成“线”的过程中,继续努力吧!
作者回复: 💪恩
14 - 钱2018-09-24点-线-面,成长路线虽是如此,但绝非易事,做到T字型就需要花上数年的时间。 目前已经工作七年,在小公司是多面手,产品、研发、测试、运维都要做,接触点多,但确实技术栈浅,在大公司是螺丝钉一个萝卜一个坑,业务接触点少,技术栈较深。 如何形成自己的核心竞争力,还要看自己的特点,学霸型能迅速成网,学渣型只能慢慢吐丝,自我感觉是学渣型,目前公司内许多技术仅局限于使用原理有待深究。只希望自己走的扎实,踏雪留痕。展开
作者回复: 吐丝这比喻神了😄有时候你的网是由经历左右的,但必须得有网这个概念
12 - 行者周2019-04-10惊叹于作者的思路和文笔,把自己认识的这么清楚我觉得很难得。共 2 条评论6
- 湮汐2018-10-08点:每个技术的运用。这个可能是因为自己的兴趣或者是工作中碰到的问题去不断的学习和迭代的知识点。比如我们现在的java开发,除了java知识,还有各种框架和中间件(mq,redis,分布式框架),自己数据存储,包括操作系统,底层的一些原理都是点。这些点在自己不断的学习和成长的过程可能有些会保留,有些会丢弃,最终配合业务方面形成面。 线:各种有用的知识点互相贯穿,并且搭配业务,能够独立的形成一套完整的解决方案。能够形成面,应该在行业里就有一定的不可替代性了。 面:从业务到技术最终到底层全部贯穿,可能不是每个点、每条线都掌握,但是必须要了解,更要知道这里面的工作配合,能够很好的组织整个团队的工作。感觉到了面应该就可以说是行业大咖了,一般到这个水平的,能胜任一些中小型公司的CTO吧!(个人感觉而已,因为我离这个层次还有很远的距离,距离太远有时候看不到那个世界。) 最后的体,应该是一个时代的领袖。展开
作者回复: 你感觉的不差^_^
共 2 条评论4 - third2018-09-21梁宁老师的产品思维三十讲我也看过。写的很好,很有收获。 心得如下 1.点线面-体。 点线面是自己的可以努力的。 体是时代和机遇 2.由点连线,形成T型,先向下,再向旁边。先深,后广 3.面是地图,拿好地图不迷路。 4.有时候,选择比努力更重要展开
作者回复: 对,选好路,再努力
3 - MapleShaw2018-09-25之前看过一篇讲的是阿里的曾鸣的分享,也是点线面理论,看来这个理论还是适合在不同的领域。https://mp.weixin.qq.com/s/4TavG_w-YVL--5Vqc3ZYvw
作者回复: 理论不就是为了引导我们的吗,最终通过行为产生改变
2 - Jiantao2018-09-21点线面,嗯先梳理一张自己的地图💪2
- Franklin.du2018-09-26我现在所属的行业就是很传统的,有些迷茫了。只能努力寻找更多的点,绘制自己心中的技术地图。
作者回复: 加油💪
1 - Geek_8c9d872023-02-13 来自甘肃总结: 点是自己对一个技术点的掌握,点多了自然而然就构成线了,不一样的点构成不一样的线,不一样的线构成不一样的面,我们在自身发展中可能会有很多的点,但随着构建线、面要学会放弃一些没用的点,在有一定的点后你要考虑清楚自己想要的是什么样的面,不同的面所需的点和线不同,在平时学习的时候要有所取舍,就像上边文章中提到的心智模型,一击中的展开
- Geek_a4cca62022-05-16工作多年,还是没太明白知识体系怎么去形成,目前也开始有点盲目了
- 范2021-11-17每个人的线、面是不同的,可以是技术深耕,可以是业务优先,也可以是注重管理。无论是通过学习,还是项目,最终要在深度和广度上发展。
- 闻人2021-08-26知识体系是知识从点线面组织起来的过程,点是某个具体技术,线是多个点串起来解决业务问题的能力,面是多个线组织起来解决特定领域问题的知识网络
- 云淡风轻2021-04-24我的理解,点线面是工作中三个阶段。 第一阶段:收集足够多的点。快速学习满足当下工作需要。 第二阶段:由点穿成线。选择一个技术点进行上下扩展,慢慢行程一条线。(可以参考<面试现场>两个维度,八个方面讲清一个技术点)。 第三阶段:多个技术线进行组合就汇聚成了自己的技术面。
- 阿杜2020-01-18由点连成线,形成T型认识,有自己的深度也有一定的广度。然后结合业务提升技术,技术反哺业务,形成自己的面。然后结合时代大背景,找到一个体,然后驾航远行。
- 孙磊2020-01-15可能我天生愚钝,点,线明白他们之间的关系,面,我的理解是你从事的业务领域可能存在多条线,比如一个系统至少开发,和自动化测试就是两条线,是不是建立起一个面,就是把你所在的业务领域的各条线理清楚。所以面其实还是业务领域驱动的。
- 丁丁历险记2019-10-09没python...
- kevin2019-07-10T型发展路线有借鉴意义,点线面体的思考行程自己的体系
- 北风一叶2018-12-06我还在点上奋斗
作者回复: 加油💪