文章转自开源中国社区,编译自:Quora

Quora上有个有趣的问题:Google工程师们每天写多少行代码?

Google 的 AdMob 全栈工程师 Raymond Farias 在 Quora 发表评论表示:“我的同事最近和我分享了一组调查研究数据,一名高效的工程师每天能写100-150 行代码,我嘲笑了他,并表示这项预估值绝对要比实际值低很多。”

Raymond Farias 为了证明上述估计值的错误,决定以他在谷歌工作效率最高的一个月为例,并使用了 Google 的一个内部工具来查看每天代码的增量(包括添加、删除和更改的代码行数)。

最后他将一个月的数据汇总,除以总的工作天数 20 天,最后得出的数据是 ——150!随后,他也对其他同事进行了检测,最后得出的数据基本一致。

Oak Lomonosovas 曾在 Quora 上对 Google 有多少名软件工程师进行了回答,它估计Google 有 4 万工程师。

其中有部分工程师的代码产出量比较少,像技术主管等可能会因为会议或假期而减少代码产量,因此,每位工程师每天 100 行代码的估计会比较准确。

所以,Google 代码量可粗略估计为每天 400 万行代码。

有人说,一天写 100 ~ 150 行代码,怎么能算高效?

1、一天工作 8 小时里,你有多长时间在写代码?

2、工作中平均每天写的代码里,

有几行能通得过 code review 的有测试的 production quality 的代码?

网友评论

@晓唦

额,想写的时候,一天几百行,不想写,一条0行……(つД`)

@Jn xyp

编程五分钟,扯淡两小时

@评论专用

靠代码量衡量工作量是相当傻逼的行为,把程序员当流水线拧螺丝的

@酱油攻城狮

代码行数写多容易,写少难~

@山雨欲来

在中国,一天就100行代码?明天不用来上班了!!差距

@南望山阿飞

通过代码行数来判断一个程序员的工作,真的是愚蠢至极;就好像评价一个作家,是看他写了多少文字一样。大神固然写的多,但是写得多不一定是大神

@落风月

假设Google工程师日新1000.那么一行代码就值6-10块钱。想起曾经某人跟我说一行代码只值5毛钱我就想笑。

@屠诽

“大神,你一天写多少代码啊?“ “2个G左右吧~~”

@cjmmx

码码5分钟,修bug两小时

@Eric

100行代码可以装下整个宇宙,夸张了。但是100行代码可以做很多事了,像谷歌这种大公司,100行代码一天真的不烂,如果没有bug。看代码行数来评价一个人的技术就像看一个人的外表来评论内在,一个菜鸟写100杭代码可能一行就解决了,所以你能说菜鸟更牛?

@少年子弟江湖老

高效
就是代码行数写得多?

曾经把接受的一堆三千行代码
推掉重写
八百行实现全部功能

怎么看?
冗余
倒是高效咯?

我一直都是坚持用最少的代码实现相同的事情
越少越好,越简洁凝练越好

@Kit_lee

靠代码量衡量工作效率的说法较容易引起开发人员反感,所以我看到评论中还是有不少负面内容。但其实代码量对于项目管理来说,确是做成本估算的一项重要参考指标。相近的一个功能,总代码行数大概是可参考其他同类型项目估算出来的,那么这个开发人员平均一天的代码行数,作为一个参考指标就可以用来做开发工时预估,从而计算出多少工期内我要投入多少开发人员。不然大家以为都是拍脑袋估的?

-End-

关注Java技术栈微信公众号,在后台回复关键字:Java,可以获取一份栈长整理的 Java 最新技术干货。

最近干货分享

写代码注意了,打死都不要用 User 这个单词

Java 12 骚操作, 文件比对居然还能这样玩

Java 12 骚操作, String居然还能这样玩

Spring Boot 1.x 正式退役,2.x大步向前

分享一份 2019 最新 Java 架构师学习资料

点击「阅读原文」加入栈长的战队~

厉害了,Google大神每天写多少行代码?的更多相关文章

  1. 不写1行代码,在Mac上体验ASP.NET 5的最简单方法

    昨天微软发布了ASP.NET 5 beta2(详见ASP.NET 5 Beta2 发布),对ASP.NET 5的好奇心又被激发了. 今天下午在Mac OS X上体验了一下ASP.NET 5,而且借助Y ...

  2. 只写104行代码!在nopCommerce中如何实现自动生成网站地图

    表告诉我说你不知道nopCommerce是什么.它是目前.NET中最流行的完全开源网上商城,由俄罗斯的团队在2008年开始立项一直开发到现在已经是3.3版本了.代码目前托管在codeplex上,有兴趣 ...

  3. Unity中的ShaderToys——将大神们写的shader搬到unity中来吧

    http://lib.csdn.net/article/unity3d/38699 这篇文章翻译自国外的一篇文章(这里是原文链接),正在使用unity的你是否在shader toy上发现很多牛逼哄哄的 ...

  4. 【python】抄写大神的糗事百科代码

    照着静觅大神的博客学习,原文在这:http://cuiqingcai.com/990.html 划重点: 1. str.strip() strip函数会把字符串的前后多余的空白字符去掉 2. resp ...

  5. 大神Java8写了一段逻辑,我直呼看不懂

    业务背景 首先,业务需求是这样的,从第三方电商平台拉取所有订单,然后保存到公司自己的数据库,需要判断是否有物流信息,如果有物流信息,还需要再进行上传. 而第三方接口返回的数据是 JSON 格式的,其中 ...

  6. 今天看了shell大神的写的一个统计脚本

    通过nginx日志统计接口耗时排行 grep '/bigbox?' access_log | awk '{print $7"&process="$NF}'| sed -r ...

  7. SQL 分组排序分页(大神帮写的膜拜一下)

    查询全部: SELECT P3.ID, P3.Name, P3.AddTimeFROM (SELECT Name, MAX(AddTime) AS MaxAddTime FROM Product AS ...

  8. 90%的人说Python程序慢,5大神招让你的代码像赛车一样跑起来

    1.for 循环 我们大部分的时候代码里面都有for循环,然后里面嵌套一段逻辑处理,下面有两种方法来完成: 二者的性能差距有多大呢,一般我们用内置的timeit模块来量化比较: 把传统的for改成推导 ...

  9. “使用多target来构建大量相似App”,唐巧大神理论验证(附工程代码地址)

    无意间看到巧神的文章时,感觉非常兴奋,此文章正好解决了公司目前项目的痛点. 读到以下关键一段时,不甚明了,故自己做了实验分享给有缘人. "我们的每个课程的资源文件都具有相同的文件名,例如首页 ...

随机推荐

  1. 前端之CSS基础

    前端之CSS 1. CSS CSS定义如何显示HTML元素. 当浏览器读到一个样式表,他就会按照这个样式表来对文档进行格式化(渲染). 3.CSS语法 1)CSS实例 每个CSS由两部分组成: 选择器 ...

  2. Spark 计算人员三度关系

    1.一度人脉:双方直接是好友 2.二度人脉:双方有一个以上共同的好友,这时朋友网可以计算出你们有几个共同的好友并且呈现数字给你.你们的关系是: 你->朋友->陌生人 3.三度人脉:即你朋友 ...

  3. ulimit 管理系统资源

    具体的 options 含义以及简单示例可以参考以下表格. 选项 含义 例子 -H 设置硬资源限制,一旦设置不能增加. ulimit – Hs 64:限制硬资源,线程栈大小为 64K. -S 设置软资 ...

  4. python3.7爬取墨菲定律保存在本地txt

    #!/usr/local/bin/python3.7 # -*- coding: utf-8 -*- # @Time: 2019/07/15 # @Function 获取在线文本内容 import r ...

  5. django权限之二级菜单

    遗漏知识点 1.构建表结构时,谁被关联谁就是主表,在层级删除的时候,删除子表的时候,主表不会被删除,反之删除主表的话,字表也会被删除, 使用related_name=None   反向查询,起名用的 ...

  6. Atcoder2134 Zigzag MST

    问题描述 We have a graph with N vertices, numbered 0 through N−1. Edges are yet to be added. We will pro ...

  7. 【ElasticSearch】概念

    小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了. 对小史面试情况感兴趣的同学可以观看面试现场系列. 随着央视诗词大会的热播,小史开始对诗词感兴趣 ...

  8. python学习笔记(十六)python操作redis数据库

    Redis是一个key-value存储系统,它支持丰富的数据类型,如:string.list.set.zset(sorted set).hash. Redis特点 Redis以内存作为数据存储介质,所 ...

  9. mysql版本

    $ mysql Welcome to the MariaDB monitor.  Commands end with ; or \g. Your MySQL connection id is 4791 ...

  10. [hadoop](1) MapReduce:ChainMapper

    前言 本章主要讲述的是对于hadoop生态系统中,MapReduce写的ChainMapper的学习.MapReduce是hadoop集群数据处理的默认框架.而对于数据集中所有的数据必然有一些不友好的 ...