- 内容提要
- 译者序
- 译者致谢
- 序一
- 序二
- 前言
- 作者致谢
- 关于本书
- 第1章 为何这本书与你先前读过的任何书籍都迥然不同
- 第一篇 职业
- 第2章 从非同凡响开始:绝不要做他人都在做的事
- 第3章 思考未来:你的目标是什么
- 第4章 人际交往能力:远比你想象的重要
- 第5章 破解面试之道
- 第6章 就业选择:列出你的选择
- 第7章 你是哪类软件开发人员
- 第8章 公司与公司是不一样的
- 第9章 攀登晋升阶梯
- 第10章 成为专业人士
- 第11章 赢得自由——如何辞职
- 第12章 成为自由职业者:开启自己的一片天地
- 第13章 创建你的第一个产品
- 第14章 你打算开始创业吗
- 第15章 远程工作的生存策略
- 第16章 假装自己能成功 [1]
- 第17章 单调乏味的简历——如何修改
- 第18章 请勿陷入对技术的狂热之中
- 第二篇 自我营销
- 第19章 针对码农的营销基础课
- 第20章 打造引人注目的品牌
- 第21章 创建大获成功的博客
- 第22章 你的主要目标:为他人增加价值
- 第23章 善于运用社交媒体
- 第24章 演讲、报告和培训:做说话的极客
- 第25章 著书立说,吸引追随者
- 第26章 百折不挠,越挫越勇
- 第三篇 学习
- 第27章 学习怎样学习:如何自我教育
- 第28章 我的十步学习法
- 第29章 第 1 步到第 6 步:这些步骤只做一次
- 第30章 第7步到第10步:循环往复
- 第31章 寻找导师:找到你的尤达 [1]
- 第32章 开山收徒:成为尤达一样的大师
- 第33章 传道授业:若要学知识,必得为人师
- 第34章 你需要一个学位吗,还是可以对此忽略不计
- 第35章 发现自己的知识短板
- 第四篇 生产力
- 第36章 一切始于专注
- 第37章 我的私房生产力提升计划
- 第38章 番茄工作法
- 第39章 我的定额工作法:我是如何做到超额完成工作的
- 第40章 对自己负责
- 第41章 要不要多任务并行
- 第42章 职业倦怠:我已找到解药
- 第43章 时间是怎样被浪费掉的
- 第44章 形成惯例的重要性
- 第45章 培养习惯:刷新你的代码
- 第46章 分解任务:如何吃掉一头大象
- 第47章 努力工作的价值,以及为什么你总是逃避努力工作
- 第48章 任何行动都比不采取行动好
- 第五篇 理财
- 第49章 怎样支配你的薪水
- 第50章 怎样进行薪酬谈判
- 第51章 期权:所有乐趣之所在
- 第52章 房地产投资面面观
- 第53章 你真的了解自己的退休计划吗
- 第54章 债务的危害:社保债务 [1] 代价昂贵
- 第55章 额外馈赠:我是如何做到 33 岁退休的
- 第六篇 健身
- 第56章 为什么需要破解自己的健康密码
- 第57章 设定你的健身标准
- 第58章 热力学、热量和你
- 第59章 动力:让你的屁股离开椅子
- 第60章 如何增长肌肉:书呆子也能拥有强健的肌肉
- 第61章 如何获得完美腹肌
- 第62章 启动跑步程序
- 第63章 站立式办公及其他窍门
- 第64章 高科技健身装备:极客现身
- 第七篇 精神
- 第65章 心灵是如何影响身体的
- 第66章 拥有正确的心态:重新启动
- 第67章 构建一个积极的自我形象——规划你的大脑
- 第68章 爱情与恋爱:计算机无法牵着你的手
- 第69章 我的私房成功书单
- 第70章 积极面对失败
- 第71章 结束语
- 附录A 如果你能写代码,你就能理解金融
- 附录B 股市是如何运作的:系统的游戏规则
- 附录C 垃圾进来,垃圾出去:饮食和营养基础知识
- 附录D 如何吃出健康来:比萨并不是一个食物组
第18章 请勿陷入对技术的狂热之中
我不知道你是不是一位有宗教信仰的人。无论你信仰何种宗教,我肯定你会同意我的看法,历史上许多最血腥、最残酷的战争,在某种程度上都是为宗教而战的。
这里我并非是在抨击宗教,也并非以某种方式表明某种宗教与生俱来的善与恶。我只是希望你能清楚地意识到,恪守教条的信仰往往有很大的煽动性。
软件开发也是如此。软件开发和技术的虔诚很容易像信仰生命起源或至高无上的神的存在一样。尽管一般我们不会因为某个人喜欢iOS超过Android就杀死他,但是我们确实有一种倾向,总想在没人注意的时候给对方点颜色看看。
我坚信,如果你能让自己不成为某种技术的信徒,你会在职业生涯之路上走得更远。在本章中,我们将探讨为什么会是这样的情形。
我们都是技术的信徒
这是真的,你还是承认这一点吧。你对某种技术或编程语言存在偏见,认为它是最好的——至少大多数程序员是这样的。这很正常。我们总是对自己做的事情充满热情;只要是有激情、有热情,就很容易变得极度感性。来看看职业运动员。
对技术虔诚的一大问题是,我们中的大多数崇拜某项特定的技术,只是因为自己熟悉这种技术。我们很自然地会相信自己选择的是最好的,然而这会让我们经常忽略任何反对意见。我们不可能充分了解现存的所有技术,从而给哪项技术最好作出最英明、最睿智的判断,于是我们倾向于选择我们了解的技术并先入为主地认为它是最好的。人生多艰,无暇他顾。
尽管这一行为的起因合理又自然,但其实具有破坏性和局限性。当我们武断地只根据自身经验就固执己见时,很容易只与理念相同的人打交道而排斥其他人,最终我们只会固步自封、墨守陈规。我们自以为找到所有答案,却只是裹足不前。
在我职业生涯的相当长的一段时间里,我都是操作系统、编程语言甚至文本编辑器这些技术的忠实信徒。然后我才逐渐意识到,我没必要只是选择最好的而贬低其他的。
天生一物必有用
不是所有的技术都是伟大的,但多数被普遍应用的技术至少是好的。一样东西如果不好,就不会为人所知或使用,也不会成功。诚然,环境是随着时间而变化的,但重要的是,我们必须认识到:至少在历史的某个时间点,每项技术都被看作是那个时代里好的甚至是伟大的。
有了这样的视角会有助于你理解:在很多情况下,解决问题并不只有一个好的或是最好的方法。同理,最好的编程语言、框架、操作系统,甚至是文本编辑器不会只有一种。你可能会喜欢某项技术多过其他,或者用某种编程语言的效率要高过其他,但是称其最好并无必要。
发生在我身上的转变
让我自己相信这一点经历了一段漫长的艰难时间。我花了无数时间与人争论为什么Windows比Mac好得多。我为C#和其他静态类型语言大声疾呼,我认为它们可以把Perl或者Ruby这些动态语言甩开几条街。现在我讲起来都有些惭愧,我那时甚至会严厉斥责那些不这么认为的开发人员——他们怎么敢相信那些我都从来不用的技术?
令我大开眼界的是在我第一次担当一个Java项目的项目组长的时候。在此之前,我一直是.NET开发人员,专注C#语言。(好吧,其实也不尽然。在.NET技术出现以前我是C++的信徒。)我不能容忍用Java语言工作的想法。同优雅的C#相比,Java就是不入流。我甚至都不会使用Lambda表达式,我怎么可能喜欢用Java写代码呢?
最终我还是决定接受这份工作,因为这个机会实在是太好了,而且我认为这不过就是一个合同,我只要忍上区区一年而已。后来,我才发现,接下那份工作是我在职业生涯中所做出的最杰出的决策之一。使用自己一度厌恶的技术工作,让我从不同的视角审视所有的技术。事实证明,Java一点都不糟糕,我也能够理解为什么有些开发人员喜欢用Java而不用C#。
在做Java项目的那几年里,我学到的东西比之前工作中学到的都多。突然之间,我有了一个巨大的装满各式工具的工具箱,能用来解决任何问题,我再也不像以前那样死守着少数几个被过度使用的工具。
从那时起,面对其他编程语言,即使是动态语言,我都会抱有与面对Java时一样的开放心态,使用从中学到的任何知识和技能,使自己成为更好的程序员。我也放弃了对操作系统和框架的偏爱,努力尝试新东西之后再做评价。如果没有这段经历,我可能不会写这本书,又或者,我会写一本《为什么C#是最好的语言,其他语言都糟透了》。
不拘一格
不拘一格是本章的要点所在。没有理由去强烈坚持自己选择的技术就是最好的,而轻视甚至无视其他技术。如果固执己见,最终受损失的是你自己。
另一方面,如果你愿意对技术保持开放的心态,而不是固守自己已经了解的技术,声称它是最好的,你会发现有更多的机会为你敞开大门。
采取行动
- 列出你钟爱的所有技术,或者你觉得更胜一筹的技术。
- 针对这张列表里的每一项,想想它为什么吸引你。你都做了哪些比较来确定它确实是更胜一筹?你真的使用过它们的竞争对手吗?
- 挑选一门你厌恶的技术,找几个喜欢它的人,开诚布公地讨论为什么他们喜欢这门技术。更进一步,你也试着用用它。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论