转载

你的每行代码值多少钱?

你的每行代码值多少钱?

  英文原文:How much do you pay per line of code?

  我知道,“line of code”(LoC)是一种非常愚蠢的计量方式。不要急着喷我,请大家先听我讲讲我最近参与的两个项目,看一下一些非常有意思的数字。

  项目#1:传统的同地协作

  第一个项目是由一组程序员通过传统的同地协作来执行的。人数为 20(不包括项目经理、分析人员、产品负责人、SCRUM 大师等等)。该项目是一个大流量的网络拍卖网站(每天有超过 200 万的页面访问量)。

  代码库的大小约为 20 万行,其中 15 万是 PHP,3 万 5 是 JavaScript,其余则是 CSS、XML 以及 Ruby 等。这 20 万行只包括使用 cloc.pl 的非空和非注释行代码.

  这是一个商业项目,所以具体名字我不便透露。

  大家在欧洲的同一个办公室里,每个人都“朝九晚五”地工作。我们可以一起开会、吃饭、面对面聊天以及通过其他多种非正式方式沟通。所有的任务都使用了 JIRA 跟踪。

  项目#2:分布式

  第二个项目是一个开源的 Java 产品,通过一个约 15 人的分布式团队开发。我们没有任何的交流也不做任何非正式的沟通。我们都是在 Github 上讨论问题。代码库明显要小很多只有大约 3 万行,其中约 90%Java,其余则是 XML。

  成熟的开发

  这两个项目都是托管在 Github 上的代码库。

  两个团队都使用了自动化构建、持续集成、静态分析和代码审查。这表明这两支项目团队都已经比较成熟。

  这两个项目都满足了用户的需求。我提这一点是想强调,这两个项目的代码,都是有价值的。没有废物,也几乎没有重复的代码。

  看看项目回报

  在这两个项目中,我的角色是首席架构师。除此之外,我还有权限访问两者的 Git 代码库。所以我可以知道在某段时间内,比如说三个月时间里,代码库中新添加(或者改动)了多少行代码。

  现在,让我们来看看这些数字。

  第一个项目一个优秀的开发人员每年可以拿到大约 50,000 欧元,也就是约 5600 美元每月或 35 美元每小时。第二个项目则只需要对于已完成的任务支付 20-35 美元每小时。

  第一个项目,在三个月内,写了 59000 行新的代码,并在改变主分支时删除了 29000 行,那么总计就是 88000 行代码。此过程历时约 10000 个工时(20 程序员,三个月,每月 170 个小时)——相当于约 35000 美元。因此,每行代码的价格为

  3. 98 美元

  第二个项目,在同样三个月时间里,新代码产生了 45000 行,删除了 9000 行,也就是 54000 行。为了完成这项工作,根据 XDSD 原则,我们只花了 7000 美元(约用了 350 个工时完成了 650 个任务)。因此,该项目一行代码的成本仅仅是:

  13 美分

  $35000 VS$7000,3.98 美元 VS0.13 美元,你有何感想呢?

  结论

  我将这些数据公诸于众是为了告诉大家,分布式编程比传统的同地协作团队更为高效,也更节约资金。你看,0.13 美元与 3.98 美元,相差 30 倍呢!

  怎么做?

  当然,你说你为了达到分布式合作的目的,决定让你的程序员在家工作而不必来办公室的话,那我就该笑你只会硬搬硬套了。可以实行 XDSD 这个严格的质量原则,整个团队都应该遵守的原则。

  如果这些原则都能应用到位的话——那么你所需要付出的资金将会减少 30 倍。

  顺便透露给大家以下这些项目的成本:

  $12-103:crazyontap.com

  $15-40:betterembsw.blogspot.nl

  超过$5:joelonsoftware.com

  如果大家有不同意见,欢迎指教。

  译文链接:http://www.codeceo.com/article/how-much-do-you-pay-per-line-of-code.html

  翻译作者:码农网 – 小峰

正文到此结束
Loading...