左耳听风 - 我对技术的态度「读书打卡 day 02」
笔记
成功的技术人员首先需要有严谨的思维方式和工作习惯,这可以帮助我们在工作中减少犯错的次数并始终对工作保持高标准的要求。
不断学习并掌握基础知识和相关技术,可以帮助我们更好地理解和解决问题。
对日新月异的技术该持什么态度
要了解技术就必须了解计算机技术的历史发展和进化路线。
技术的发展脉络
企业级软件语言层面的主干: C → C++ → Java
操作系统层面的主干: UNIX → Linux/Windows
网络知识主干: Ethernet → IP → TCP/UDP
Web 开发层面: HTML、CSS、JS、LAMP 等
技术的发展变迁具有向后端移动的趋势,通过这个趋势,我们可以预判整个技术生态发展的方向。
无论是应用,还是学术的,有用的知识不嫌多,学习时不应有门户之见。
技术的发展要扎根于历史,而不是基于对未来的设想,承前的技术才会常青。
我们应该了解整个计算机文化,我个人认为计算机文化源于 UNIX/C 这条线。
计算机科学教育的侧重点
学校在讲解一门技术时,大部分内容是知识密集型的,但社会上的大多数工作是劳动密集型的。
软件开发的三个层次 (位于哪个软件开发层次,主要取决于日常的工作内容):
第一层,面向业务功能,只要会编程就可以。
第二层,面向业务性能,技术基础非常重要,对操作系统的文件管理、进程调度、内存管理、网络的七层模型、TCP/UDP、语言用法、编译和类库的实现、数据结构及算法等知识要非常熟悉并做到灵活运用。
第三层,面向业务智能,涉及的知识都比较学院派,比如搜索算法、推荐算法、预测、统计、机器学习、图像识别、分布式架构等,需要阅读很多专业论文。
真正的高手几乎都来自知识密集型的学院派,他们的优势在于,能够将理论基础知识应用到现实业务中。
软件开发是否越来越难
一旦开发环境变得优越,人就变得懒惰和挑剔。
“35+” 的程序员如何面对技术
北卡罗莱纳州立大学计算机科学系的 Patrick Morrison 和 Emerson Murphy-Hill 对 Stack Overflow 的用户数据进行挖掘,并撰写了论文 “Is Programming Knowledge Related to Age?”
编程就像登山一样,越往上爬,人越少。
职位是虚的,公司没了什么都没了,只有技术才是实在的。
工作经历决定技术思维
软件工程非常严谨,不能马虎对待。
技术思维
要知其所以然。这需要不断学习基础原理及与特定技术相关的基础知识,就像在维基百科上搜索一个条目时,该条目会与很多新的条目关联一样,我们也要在脑海里自动关联所学的基础原理。“知识广度是深度的副产品。”
要开发工业级的软件。衡量一个软件是工业级还是民用级,有一个最重要的指标,就是软件在性能和稳定性方面是否有 SLA。
要有专业人员和专业软件工程。开发工业级软件需要有计算机科学教育背景的工程师,需要有工业级的软件工程,比如严谨的设计/代码审查、严格的测试,以及完备的线上运维。同时,高级别的 SLA 需要大量的专业工具来支撑,这也是工业级软件的标准之一。
我们总需要至少在某个环节上认真。这个环节越靠前,效率就越高,反之效率就越低。在设计和编码时不认真,就需要在测试上认真。在测试上不认真,就必须在运维和故障处理上认真。
享受技术带来的快乐
我很开心,因为有成长的感觉。
虽然有技术焦虑症,但是这样的生活节奏让我感到充实且踏实。
深度掌握任何一门技术都是非常有趣的。
没有必要自我设限。
编程的关键不在于使用什么语言编写代码,而在于组织程序、设计软件的能力。
没有兴趣才是不快乐的原因,其他的都是借口。
打卡:结合内容,分享下如何保持对技术的兴趣?
对于兴趣这个话题,相较于其他事物而言,技术并不具备特殊性。
保持对一个事物的兴趣,很大程度上来源于在与这个事物产生联系的过程中获得的成就感和满足感。
接下来,我以不同类型的游戏为例,来阐述个中原理:
养成类游戏: 它会让你目睹通过自己的努力使所养成的角色变得更强的过程,这个过程会让你获得极大的成就感,如果能再力压其他玩家养成的角色,那么你的成就感将会被数倍放大。
策略类游戏: 通过策略上的“排兵布阵”赢得游戏的过程,会让你不自觉产生一种智商上的优越感,从而带来满足感和成就感。
操作类游戏: 主要靠操作,简单粗暴。赢会很爽,输了会让你更加想赢,多输几次之后再赢的满足感更是难以言表。
思考你对游戏感兴趣甚至上瘾的原因,就在于游戏世界是被一群聪明人精心设计过的,它会通过各种手段让你尽可能获得满足感和成就感。
因此,想要对技术保持兴趣,也可以采用类似的方式。
如果你对某个技术比较擅长,那你更容易对它保持兴趣,如果你能给别人分享这个技术,进而获得他人的认可和赞扬,那么你对该技术的兴趣将会更加浓厚。这将会对你之后的学习带来很大的正面影响——你很有可能会投入更多的时间来学习该技术相关的内容,从而变得更加擅长,进而形成一个正反馈闭环。
这就跟学生时代的学习是一样的,你擅长的学科,你能从中得到满足感和成就感,你就会更加感兴趣,你就愿意投入更多的时间去学习,从而更加擅长。
因此,对于如何保持对技术的兴趣,我的看法是,从自身工作出发,以某一个你比较擅长的点为阵地,对其进行深挖,总结和分享。然后再逐渐辐射到具有相关性的其他点,最终点连成线,线组成面,面构成体,从而形成独属于你的一套知识体系,你就是这方面的专家。你对这方面技术的兴趣将是其他人不可比的。
版权声明: 本文为 InfoQ 作者【Java 工程师蔡姬】的原创文章。
原文链接:【http://xie.infoq.cn/article/009211fe39b40e6ef606d87f5】。文章转载请联系作者。
评论