高效的程序员是聪明和懒惰的

Beyond the Spec: Decoding Samsung‘s LPDDR6 Sub-Channel and Wide-NRZ Innovations 本文深入解析了三星LPDDR6内存的两大核心技术:Sub-Channel架构与Wide-NRZ信号技术。Sub-Channel架构通过将物理通道划分为多个独立子通道,实现了内存访问的细粒度控制,大幅提升了能效,尤其适用于AI与边缘计算场景。Wide-NRZ则通过增加并行数据线而非采用PAM4,在提升带宽的同时保持了优异的信号完整性与低功耗特性。 阅读详情



本文是码农网原创翻译,转载请看清文末的转载要求,谢谢合作!

我之所以要用聪明和懒惰来形容高效的程序员,原因有以下几点:

  • 聪明是因为能找出问题的正解
  • 懒惰是因为不愿写多余的代码(即不会长时间地坐在电脑前)

好的软件开发过程应该是懒惰的软件开发,亦称耐心开发,原因是开发人员在写代码之前会先将时间花在透彻地考虑各种解决方案上。

这是懒惰开发的主旨,即在不了解之前就不会开始写代码。这个负责任的态度减少了他们所需要写的代码量。

主要需要做到以下几点:

  • 真正了解需求、获得产品管理,关键是要明确什么才是实际要求
  • 确保与团队中其他开发人员之间的顺利对接

这些过程都是需要时间的。然而,不少开发人员往往一拿到问题就开始急于敲代码,然后再花费大把大把的时间修改代码。

事实上,只有5%都不到的时间才真正是有生产力的。所以下回你要是看到某个开发人员将他100%的时间都紧盯着屏幕,不与其他人做任何互动,那么只能说你找来的程序员可不太好啊。

这是一个不好的迹象——如果开发人员总是写代码的话

高效的开发人员会时不时地检查对需求的理解,以确保与代码相一致。富有生产力的开发人员会经常与产品经理/业务分析员分析交流,也时常可以看到他们与同事和架构师出双入对。当然资深的开发人员也会因其自身丰富的经验而变得非常有效率。事实上,最好的开发人员与其他人相比:

  • 编写初始编码所用的时间约为1比20
  • 调试时间的比例超过1比25
  • 程序执行速度大概是1比10
  • 程序大小为1比5

然而,总的说来,随着时间的推移,开发人员的生产效率并没有随之而增长,即从成千上万的开发人员那儿可以证实,丰富的经验和生产力是无关的。事实上,我们的生产效率在过去50年间已经提高了8倍,所以,从总体上说,经验与生产力水平是不相干的。

为什么在代码上的懒惰会变得如此重要?

很多人很勤快,还没有好好理解需求就开始动手写代码。并且,迅速编写的代码往往不能很好的适应其他人的代码。而这一问题往往只有在集成代码的时候才能被发现,但是已经晚了。优秀的开发人员很有耐心,他知道快速编码的风险。

开发人员在心理上很重视他们的代码

差的开发人员往往不愿意去改变自己写得不好的代码。他们只会选择增添更多的代码来弥补不足,而不会重写不理想的代码。更糟的是,他们往往会去责怪其他人有不良的代码,而不愿意自我检讨。在他们手中,最终只会导致一个严重缺陷和不稳定的系统。

当然,好的开发人员也会写出差的代码,非最优的代码。所不同的是,他们愿意认识自己的不足,并且对于有问题的部分:

  • 如果代码大致还是能正确运行的,那就重构代码
  • 否则,就重写代码

当开发人员生产并维护了非最优代码,随着时间的推移,那么修改这些代码就会变得越来越难。这是因为你的同事需要在这些代码接口上写代码,然后再创建繁杂的接口等等使用这些非最优代码。并且随着代码库的发展,会有更多更多的代码是依赖这些原始代码编写出来的。故而,后面写的代码再怎么好也几乎增加不了代码的稳定性,也不能对略有改动时bug增殖的情况产生影响。总之,开发过程会变得越来越慢、越来越难。

所以,如果有什么疑问,那么不妨偷个懒,晚点再写代码,须知,磨刀不误砍柴工啊!


DICOM三维重建:基于VTK实现三种面绘制算法 版本:VS2019、VTK9.0.1 #define vtkRenderingCore_AUTOINIT 3(vtkInteractionStyle,vtkRenderingFreeType,vtkRenderingOpenGL2) #define vtkRenderingVolume_AUTOINIT 1(vtkRenderingVolumeOpenGL2) #include "vtkDICOMImageReader.h" #include "vtkRenderWindowInteractor.h" #i 阅读详情

相关推荐

东华大学2020考研计算机OJ题目解答分享——进阶篇(4)

4 一个月的天数 作者: Turbo时间限制: 1S章节: 分支结构 问题描述 : 输入年和月,输出该月有几天。 输入说明 : 输入两个整数,中间以空格分隔,第一个整数表示年,第二个整数表示月。 输出说明 : 输出该年该月的天数,输出时,行首与行尾均无空格,仅输出一个整数。 输入范例 : 2000 2 输出范例 : 29 解答思路: 闰年和质数出题一样频繁,简单必会 AC代码 #include...

qq_38344326的博客 472

程序员是世界上最聪明最务实的群体-没有之一

 程序员是当今中国最优秀的群体,虽说用“最”,听上去有些不科学,但这个“最”是和其他群体比较而言的,凭我的观察发现,还真没找到中国当前哪些群体能比的上的。      说说程序员的优点:   程序员尊重科学,实事求是,不弄虚作假,不徇私舞弊。程序员都有一个聪明自主的大脑,遇到什么事情都用自己的大脑思考判断是非。因为我们知道,即便一时判断错了也没关系,再思考再尝试,总能一步步接近正确,就象调试出正确的程序一样,不会盲目听信他人表达的观点,不会为了眼前的那点小利益而歪曲客观事实,指鹿为马。   程序员热爱自由,只

AdolfQiu的博客 3375

linux下wayland协议修改键盘映射

linux下wayland协议,修改键盘映射,实验环境是Ubuntu24,其他wayland协议窗口应该也是可以的。

qq_15027967的博客 1068

程序员赞歌

 很早以前就想写篇类似的文章来“歌颂”下程序员了,但一直没下笔,今天心血来潮,发挥下吧,也算了却一个心愿,让那些程序员们以自己从事的职业为豪为荣,也间接的为软件业做点小贡献吧。 ­         也许你看了很不服气,什么?程序员最聪明?比得上那些专家学者聪明吗?比数学家、物理学家等等还聪明吗?你先别急啊,坐下喝杯绿茶,请听我慢慢道来。 ­         首先大家先了解几个实事吧,当今世界首富比

csuhanyong的专栏 1791

BERT之提取特征向量 及 bert-as-server的使用

本文内容列表提取句向量1、句向量简介1-1传统句向量1-2、BERT句向量2、 extract_features.py源码分析2-1 main函数 前一篇文章 BERT介绍及中文文本相似度任务实践 简单介绍了使用BERT进行中文文本相似度计算的方法,这篇文章着重对特征提取方法进行讲述。 提取句向量 1、句向量简介 1-1传统句向量 更多采用word embedding的方式取加权平均,该方法的一大...

ling620的专栏 1万+

避坑指南:群晖DSM 7.X挂载NTFS硬盘,为什么你的SATA口不行?从原理到实战一次讲清

本文深入解析群晖DSM 7.X系统挂载NTFS硬盘的底层原理与实战排查方法,揭示SATA接口权限配置的关键参数(如esataportcfg和internalportcfg),并提供安全修改端口配置的详细步骤。针对不同型号群晖NAS的配置差异,给出替代方案与常见故障排查技巧,帮助用户解决NTFS硬盘挂载问题。

weixin_26757925的博客 256

周鸿祎:很多程序员聪明,但我一看就知道他不会成功

周鸿祎:很多程序员聪明,但我一看就知道他不会成功 IT时代网 03-23 22:29 IT时代网编者按大家经常说这句话:态度决定一切。但事实上好程序员基本上都比较傲气,因为程序员往往会觉得自己在做世界上一件十分伟大的事情,这就是驱动机器,修改一行代码,机器就能够工作,可以产生各种不同的行为。这很容易会让程序员产生一种错觉,认为自己可以ControlEverything。 很多

IF U 的博客 2072

mapbox高阶,加载倾斜摄影

本文详细介绍如何基于mapbox-gl v3.8.0版本实现倾斜摄影的加载,亲测可用。希望能帮助到您。一起学习,加油!加油!

我哎GIS博客 345

程序人生:为什么优秀的程序员又懒又笨!

我认识到一个非常有悖常理的现象,优秀的程序员大都是即懒又傻的。 因为懒,他才会写出各种各样的开发工具来替自己干活。因为懒,他才会想办法避免去写无聊重复的代码——因此避免的代码的冗余,消减了维护的成本,使重构变得容易。最终,这些由于懒惰激发出的动力而开发出的工具和最佳编程实践方法提升了产品的质量。   懒惰的程序员也因此变成了优秀的程序员。当然,这只是事情的一部分;从一个懒惰的程序员变成一个优秀的程序员,他/她会在学习如何能够永远保持懒惰时表现出惊人的不懒惰——也就是,什么样的软件工具能让自己干活更轻.

C语言C++学习俱乐部:765860056 727

YOLOv11【第二十章:模型迭代与生态闭环篇·第1节】在线增量学习——部署后新数据自动回流重训!

🏆 本文收录于专栏 《YOLOv11实战:从入门到深度优化》。本专栏围绕 YOLOv11 的改进、训练、部署与工程优化 展开,系统梳理并复现当前主流的 YOLOv11 实战案例与优化方案,内容目前已覆盖 分类、检测、分割、追踪、关键点、OBB 检测 等多个方向。

**My Coding Family** 432

智能车图像处理1-基础图像规格

从厂家摄像头的库函数中,我们可以直接得到完整图像的灰度数组,经过二值化之后(算力允许,可以考虑大津法),就是我们要处理的0-1二值图像了。本系列所有的文章中,我们的图像规格如下。

taiyuezyh的博客 4326

高效的程序员什么样?聪明、懒惰

程序员:有积极活力的,专注于用代码解决真实世界里的问题。不是指那些梦想家,那些永远只想不做的人 聪明:能够周全的思考问题(不是那些耍小聪明的人) 懒惰:就像是程序中的lazy-loading,是指延后写代码的时间(而不是无所事事的人)。 正确的软件开发应该是懒惰式开发,也被称作忍耐式开发;这种开发方式的表现是,在真正动手写代码前,程序员要花大量的时间通盘考虑所有可能的解决方案和途径。这可以看

u014457793的专栏 558

手把手教你学Simulink——基于多能互补微电网系统的建模与优化场景实例:风柴储联合供电系统在孤岛模式下的功率分配建模

本文介绍了使用MATLAB/Simulink和Simscape Electrical构建风柴储联合供电系统的建模方法。系统包含风力发电、柴油发电、储能电池等模块,重点研究孤岛模式下功率分配策略。详细说明了从创建项目、添加模块到搭建风力发电系统(含MPPT控制)、柴油发电系统及集成各模块的全过程,并提供了仿真参数设置建议。通过分析频率偏差、电池SOC等关键指标,验证了系统在维持稳定运行的同时能有效利用可再生能源。该模型为研究多能互补微电网提供了实验平台,未来可拓展更高效的能量管理策略和AI技术的应用。

MHD0815的博客 1万+

为什么优秀的程序员既懒又笨

摘要: 我认识到一个非常有悖常理的现象,优秀的程序员都是即懒又傻的。因为懒,他才会写出各种各样的工具来替自己干活。因为懒,他才会想办法避免去写无聊重复的代码——因此避免的代码的冗余,消减了维护的成本,使重构变 ... 我认识到一个非常有悖常理的现象,优秀的程序员都是即懒又傻的。 因为懒,他才会写出各种各样的工具来替自己干活。因为懒,他才会想办法避免去写无聊重复的代码——因此避免的代...

程序员资讯 351

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

《大道至简》之懒人的‘懒’

今天我读了《大道至简》的前几章,有一个章节名称叫“是懒人造就了方法”,我感觉这有点道理,是懒的基因促使程序员的进步,因为懒,他们想要更快捷的方法去完成自己的目的,而这个目的可能很简单,比如受不了一直按PageDown/PageUp来翻页去查找一个自己想要的函数而创造了‘单元文件’进而出现了模块,导致结构化编程的时 代开始了,这便是‘懒’的推动力,当然,仅仅‘懒’是不够的能让此进化的人,必然还...

weixin_30675967的博客 93

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

我愿意出2倍工资,挖这个被裁员的程序员!

有一位工作4年的女孩问我一个问题: “临公子,我上个月晋升为主管薪资涨了1K多,可工作量剧增。除了原先的任务,我还做了A+B+C……几乎每天加班。好累啊,越想越不平衡,怎么办?” 这似乎是个挺普遍的问题。大部分晋升加薪的背后,隐藏着“加班”的潜在条件,而人们潜意识是默许的。 实际上,不少上班族累死累活的主要原因,在于4个字。 “不。会。偷。懒。” 别急着吐槽,我先说一件真事。 美国一位“天才程序员”的故事 2013年,有位叫Bob的程序员名声大噪。他在美国一家知名运营商任职,是公司最.

飞熊的博客 555

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

高效程序员的特征:聪明,懒惰

这里我使用了聪明,懒惰和程序员这几个词。我说的这几个词的意思是: 程序员:有积极活力的,专注于用代码解决真实世界里的问题 不是指那些梦想家,那些永远只想不做的人 聪明:能够周全的思考问题(不是那些耍小聪明的人) 懒惰:就像是程序中的lazy-loading,是指延后写代码的时间(而不是无所事事的人)。 正确的软件开发应该是懒惰式开发,也被称作忍耐式开发;这种开发方式的表现是,...

Cool2Feel的博客 408

为什么优秀的程序员既懒又笨程序员

我们会发现这样一个有悖常理的现象:优秀的程序员都是即懒又笨的。 因为懒,他才会写出各种各样的工具来替自己干活。因为懒,他才会想办法避免去写无聊重复的代码。因此避免了代码的冗余,消减了维护的成本,使重构变得容易。最终,这些由于懒惰作用开发出的工具和最佳编程实践方法大大提升了产品的质量。 懒惰的程序员也因此变成了优秀的程序员。当然,这只是事情的一部分;从一个懒惰的程序员

tengyunjiawu_com的专栏 4082

高效的开发人员既聪明又懒

当我使用术语Smart , Lazy和Developer时 ,我的意思是: 像在智能中一样聪明,并能够通过思考(即不是智能资产) 不是梦想家,他从不动手写任何实用的东西 延迟 加载中的延迟 ,即等待编写代码(即不等待马铃薯) 充满活力的开发人员 ,专注于构建实际的代码解决方案 良好的发展是懒惰的发展。 它是当开发人员花费想通过他正在开发前编写代码解决方案的所有途径...

danpu0978的博客 133

优秀程序员----很笨很懒惰

懒 只有懒惰的程序员才会去编写那些可以最终代替自己工作的自动化工具,才不会成天为了实现相似的功能去编写大段大段冗余重复的代码 - 这种代码往往是软件后期维护和重构的天敌。通常来说,由于惰性的驱使所产生出来的工具和程序将最终极大的提高生产开发的速度。当然,对于一个程序员来说,光光具备懒惰这个要素还是不够的。在享受懒惰之前,他必须以最大 的热情和最高的效率去研究解放自己的途径,比如:找到最有助

梦想---软件设计师 1075

一个懒得程序员才是一个好的程序员

今天在csdn上看到一篇文章,觉得不错,但是不能转载到我csdn的博客,所以只能复制过来 (原址我不小心丢了,原作者sorry啊) 以下引用正文: 我之所以要用聪明和懒惰来形容高效的程序员,原因有以下几点: 聪明是因为能找出问题的正解 懒惰是因为不愿写多余的代码(即不会长时间地坐在电脑前) 好的软件开发过程应该是懒惰的软件开发,亦称耐心开发,原因是开发人

banlifeather的专栏 665
上一篇: Swift 基础 ---类和结构体
皓浩
博客等级 码龄18年 157粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值