知名的漫画家西乔,前段时间发了一组的漫画《为什么程序员们喜欢写脚本?》。讲的是一名程序员因为讨厌每次部署程序要运行多个命令,于是花了两倍时间写了个脚本执行。后来将脚本分享到开源网站上,帮助许多人快速完成部署工作的故事。

从某方面一说,懒惰是激发程序员开发新工具的源泉,越是懒惰的程序员,越喜欢用点小聪明(比如写个脚本),最大化的利用机器简化工作,程序的本质就是驱使机器去替人干活。

懒惰的程序员,不愿意做繁复无聊的工作,所以会时刻思考用脚本代替自己,让自己处在一个高效节能的工作氛围中,以免浪费自己的体力、精力、时间。

程序员喜欢定脚本来偷懒,通常是因为:

1.现在需要重复2次,也许过几个月我还要重复2次,再过几个月还要重复2次

2.我可能一辈子就重复做2次这件事,但其他人是不是也要重复做2次

于是写完这个脚本之后,程序员们就会通过开源把它贡献出来,这些是对整个行业的积累。他们把自己完成的脚本贡献出来,经过各种汇总,抽象提升,制作出新的工具,给更多人用,接受更多人的贡献,最终让整个行业的技术水平大大提升了一步。

一个好的程序员应该是“懒惰的”,他懒到不愿意亲自重复做同样的事情3次,这才能在这个基础上创造出更好的工具。

公众号:w3c技术教程

学编程,从www.w3cschool.cn开始。

为什么说“懒”是程序员应有的美德?相关推荐

  1. C/C++开发程序员应有的素养

    C/C++开发程序员应有的素养 文章来源说明 什么是好的程序员? 1.版权和版本 2.缩进.空格.换行.空行.对齐 3.程序注释 4.函数的[in][out]参数 5.对系统调用的返回进行判定 6.i ...

  2. 作为程序员应有10项权利

    Scott认为,作为开发人员,应该有权享有以下列表所示的待遇:不过在国内,这个却有点异想天开,能有几个老板愿意给员工如此舒适的环境呢? 1.每位程序员应该拥有一个安静的工作环境 2.每位程序员应该拥有 ...

  3. 3 年工作经验程序员应有的技能

    前言 因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结,因此有了这篇文章.这篇文章大部分内容都是面向整个程序员群体的,当然因为LZ本身是做Java开发的,因此有一部分内容也是专门面向咱们Ja ...

  4. 面试感悟:3年工作经验程序员应有的技能

    前言 因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结,因此有了这篇文章.这篇文章大部分内容都是面向整个程序员群体的,当然因为LZ本身是做Java开发的,因此有一部分内容也是专门面向咱们Ja ...

  5. 我的编程之路:「懒惰」是程序员最大的美德

    首先给大家介绍一下自己吧 大家好,我是 justjavac,一名全栈工程师,目前正在出版<代码之谜>.熟悉我的人可能知道我还有一个中文昵称「迷渡」,取「雾失楼台,月迷津渡」之意,一般用在豆 ...

  6. 因为一条SQL,程序员差点被祭天......

    来源:鄙人薛某  作者:很懒的程序员 上周四午休时分,我正在工位上小憩,睡梦中仿佛看到了自己拿着李白在荣耀峡谷里大杀四方的情景,就在我刚拿完五杀准备带领队友推对面水晶的时候,一句慌乱急促的" ...

  7. 不停机还能替换代码?6年的 Java程序员表示不可思议

    ❝ 相信很多人都有这样一种感受,自己写的代码在开发.测试环境跑的稳得一笔,可一到线上就抽风,不是缺这个就是少那个反正就是一顿报错,而线上调试代码又很麻烦,让人头疼得很.不过, 阿里巴巴出了一款名叫Ar ...

  8. java 获取当前ip_不停机还能替换代码?6年的 Java程序员表示不可思议

    ❝ 相信很多人都有这样一种感受,自己写的代码在开发.测试环境跑的稳得一笔,可一到线上就抽风,不是缺这个就是少那个反正就是一顿报错,而线上调试代码又很麻烦,让人头疼得很.不过, 阿里巴巴出了一款名叫Ar ...

  9. 替换jar包_替换代码的情况下不停机!这操作可能工作6年的Java程序员都不会

    相信很多人都有这样一种感受,自己写的代码在开发.测试环境跑的稳得一笔,可一到线上就抽风,不是缺这个就是少那个反正就是一顿报错,而线上调试代码又很麻烦,让人头疼得很.不过, 阿里巴巴出了一款名叫Arth ...

  10. 一个程序员血淋淋的教训,心态没了,世界坍塌了

    1.每天下班前往公共托管代码的平台---推代码 2.操作数据库的时候,慎重慎重...特别重要的数据,及时备份.mysql打开binlog 3.代码写注释,要规范.不要怕麻烦,懒的程序员出来混,早晚要还 ...

最新文章

  1. 【错误记录】Android NDK 错误排查记录 ( Could not get version from cmake.dir path ‘xxx\cmake\3.6.4111459‘. )
  2. lucene之创建索引代码
  3. STM32的I2C特性及架构
  4. RabbitMQ Topic交换机(生产者)
  5. SQLServer下 存储过程内 包含事务 及 返回处理是否成功
  6. 【ElasticSearch】ES 的 path.data 配置多个盘的路径,查询效率与单个存储盘的效率比,哪个效率高些?
  7. 游戏机制新设计工具(Machinations)工作原理
  8. 跨站脚本攻击(反射型xss)笔记(一)
  9. java简单的小程序_编写一个简单的入门java小程序
  10. HttpClient4.x 文件上传
  11. 计算机vb代码电阻,利用VB程序编写色环电阻阻值计算器
  12. 【FFmpeg编程进阶】(13)FLV 解码器初始化函数 ff_h263_decode_init() 代码分析 --- 待更新
  13. 微信公众号JSAPI支付对接
  14. 锁机制初探(五)Moniter的实现原理
  15. python:24点游戏
  16. 微擎公众号js支付util.pay()手动与自动引入
  17. “adb”不是内部或外部命令的解决方法
  18. 我的十一Win10之旅
  19. Oracle BLOB类型的数据如何查看和下载?
  20. 【JavaScript】性能优化

热门文章

  1. visual studio 2019/2022 安装时卡住,一直正在提取文件时的亲测有效的解决方案
  2. SageMath | Crypto Tool
  3. java随机生成姓名
  4. 图文教你选择和区别A卡和N卡
  5. matlab中si是什么意思,Sitsang是什么意思
  6. C++中的取地址符()
  7. 北京的哪些地方开的发票可参与国家税务局的摇奖
  8. leetcode 904 水果成篮
  9. 手机看java源码软件_pin.java 源代码在线查看 - 一个专门为手机写的程序 资源下载 虫虫电子下载站...
  10. 2021 绩效管理必读