John D. Cook是一位数学教授、程序员、顾问、经理人和统计学家,善于并享受结合运用这些技能来解决问题。他曾撰文说(中文):

“最近,我听说了一个关于缺乏经验的程序员和经验丰富的程序员每天写相同行数的代码的研究结果。其不同之处在于,经验丰富的编程人员让这些代码更高效,向着目标稳步前进;缺乏经验的程序员单纯地将大段的代码分隔开,并且多次复写相同的代码块直到它们看起来能够运行。或者不拆分代码,他们连续调试好多天,几乎是随机的改变一两行代码,直到这些代码看起来能够运行……

并且,也有研究显示,程序员每天编写相同行数的代码与他们使用的语言无关。你可能认为使用汇编语言的程序员每天能比使用像VB或Java之类的高级语言的程序员编写更多的代码,但是事实并非如此。虽然通过数代码的行数来衡量程序员的产量是一种很烂的方法,但它却是判断一个人大脑能装多少东西的好方法……”

John D. Cook

Experienced programmers and lines of code

by JOHN on JUNE 3, 2008

I heard of a study recently that concluded inexperienced and experienced programmers write about the same number of lines of code per day. The difference is that experienced programmers keep more of those lines of code, making steady progress toward a goal. Less experienced programmers write large chunks of code only to rip them out and rewrite the same chunk many times until the code appears to work. Or instead of ripping out the code, they debug for days on end, changing one or two lines at a time, almost at random, until the code appears to work.

As Greg Wilson pointed out in his interview, focusing on quality in software development often results in increased productivity as well. More effort goes into forward progress and less goes into re-work.

Not only do experienced programmers produce more lines of code worth keeping each day, they also accomplish more per line of code, sometimes dramatically more. But that’s not news. It’s well known that the best programmers aren’t just a little more productive than average, they’re one or two orders of magintude more productive. (See, for example, Joel Spolsky’s book Smart and Gets Things Done.) More interesting is that the best programmers don’t seem to have a much larger capacity for producing and understanding lines of code.

There have also been studies that show programmers produce about the same number of lines of code per day independent of the language they use. You might think that someone working in assembly language could produce more lines of per day than someone writing in a higher level language such as VB or Java, but that’s not the case. It seems that while counting lines of code is a terrible way to measure productivity, it is a good way to measure what you can expect someone to be able to hold in their head.

私信“01”领取海量C/C++的编程学习资料以及代码编辑工具。我设置好了自动回复,就看你们是不是需要这些了。

多少行数_经验丰富的程序员和其每日代码行数相关推荐

  1. 抖音python上的代码视频_资深程序员:十行Python代码教你爬取抖音视频!

    环境说明 环境: python 3.7.1 centos 7.4 pip 10.0.1 部署 [root@localhost ~]# python3.7 --version Python 3.7.1 ...

  2. 公司KPI考核代码行数,程序员神操作:10行变500行!

    "如果你无法度量,就无法管理." 这年头,谁都逃不过被KPI支配的恐惧. KPI,俗称绩效,全称关键绩效指标,也是领导口中常说的"小目标",往往"领导 ...

  3. python制作表白神器_程序员的七夕用30行代码让Python化身表白神器

    转眼又到了咱们中国传统的情人节七夕了,今天笔者就带大家来领略一下用Python表白的方式.让程序员的恋人们感受一下IT人的浪漫. 一.词云制作 首先咱们可以用之前介绍过的wordcould包制作词云. ...

  4. 讨厌程序员_我是程序员但讨厌编程

    讨厌程序员 Did I spark your curiosity? Maybe you have come to the conclusion that you dislike programming ...

  5. python编程语言的缺点-常见的AI编程语言优缺点比较,程序员千万不要入错行!...

    原标题:常见的AI编程语言优缺点比较,程序员千万不要入错行! 人工智能编程是一种技术的提升,为不同公司的运营和人们的生活带来了极高的效率和最佳效益. 人工智能为不同的行业带来了另一种智能技术,其潜力的 ...

  6. 一位经验丰富的程序员如何建立网络初创企业?

    很多程序员都有一个创业梦想,但是面临未知的风险,很多人又只能止步不前.如何降低创业的风险?如何提高创业的成功可能?本 Chat 给拥有创业梦想的人们介绍一个最新的网络企业创业方法-愿景驱动开发(Vis ...

  7. laravel改代码没变化_菜鸡程序员是如何写代码的?

    每个程序员都要历经从菜鸡到大牛过程蜕变胡过程.当初大家起点都差不多,工作多年后,有些人依然停留在菜鸡,有些人却已成为大牛,所有的事情,都是一点一滴习惯养成.让我们看看菜鸡程序员是如何写代码的?有可能找 ...

  8. java面向对象程序练习_5本面向经验丰富的程序员的高级Java书籍

    java面向对象程序练习 Sometimes back I wrote an article for Best Core Java Books for beginners, today I am sh ...

  9. 为什么很多程序员不反感加班?行内人:老板给钱是真的给啊

    为什么很多程序员不反感加班?行内人:说给钱老板真的给! 一提到程序员,大部分人第一反应是加班多.996.脱发,这几乎成了外界对程序员刻板印象的标配.不少知名的互联网大厂也是加班之风盛行,譬如著名的华为 ...

最新文章

  1. [CLR via C#]5.1 基元类型
  2. Android之如何获取手机程序列表以及程序相关信息并启动指定程序
  3. python赋值符号前后的空格_191012 python3关于空格打印、赋值、+=符号的小坑
  4. 四轴飞行器1.4 姿态解算和Matlab实时姿态显示
  5. JDBC操作步骤及数据库连接操作
  6. SQL中Group By的使用,以及一些特殊使用方法
  7. C#中Socket通信用法实例详解
  8. 收件箱java项目源码,Java物资管理系统项目源码(含数据库).zip
  9. atoi函数_每日一道 LeetCode (50):字符串转换整数 (atoi)
  10. Win11更新22000.71:优化任务栏、右键菜单视觉风格
  11. 让年轻程序员少走弯路的14个忠告
  12. 【算法】删去k个数字后的最小值
  13. nginx ngx_core_module(main event)
  14. expect - linux远程执行命令
  15. AutoCAD打印设置
  16. OpenGL超级宝典(第7版)之第八章基元处理
  17. Java后端开发框架
  18. CAD中怎么将Z轴归零?CADZ轴归零教程
  19. python snap7 plc_python-snap7-master
  20. 《WinHex》误使用Ghost恢复系统恢复数据图文教程

热门文章

  1. 2.3.6 Federate 远程访问数据库
  2. 9.13-15 runlevel init service
  3. linux week3
  4. spring boot api文档_精讲RestTemplate第1篇-在Spring或非Spring环境下如何使用
  5. asp编程工具_使用ASP.NET Core构建RESTful API的技术指南
  6. 基础练习 字母图形(找规律)
  7. 阿里云边缘云荣获“分布式云创新奖”与“先进边缘云架构奖”
  8. 对人工智能的应用、发展及其影响的思考
  9. 10年后,阿里给千万开源人写了一封信
  10. 游戏UI设计师怎样的作品更值钱?