Google 的12条开发程序的准则

March 9th, 2008 刀马

这是从一张ppt的slide(需穿墙访问)里透露出的 Google 的12条开发程序的准则,挺有借鉴的。简单翻译下,译文括号内为我的感想:

原文:

1. All developers work out of a ~single source depot; shared infrastructure!
2. A developer can fix bugs anywhere in the source tree.
3. Building a product takes 3 commands (”get, config, make”)
4. Uniform coding style guidelines across company
5. Code reviews mandatory for all checkins
6. Pervasive unit testing, written by developers
7. Unit tests run continuously, email sent on failure
8. Powerful tools, shared company-wide
9. Rapid project cycles; developers change projects often; 20% time
10. Peer-driven review process; flat management structure
11. Transparency into projects, code, process, ideas, etc.
12. Dozens of offices around world => hire best people regardless of location

译文:
1:所有程序员基于一个 source depot 工作,所以整个架构是共享的。
2:有了第一条,程序员可以修改任何一颗代码树上的 bug。
3:编译执行一个项目只要三条命令:get, config, make(o, my god! 节省了不知多少时间)
4:整个公司使用统一的编写代码的格式。(我们公司5个人各自的代码风格已经乱的一团糟了)
5:对所有的check in 强制要求 code review(以前在微软的经历是,code review一直不是很被重视)
6:程序员写Unit test成一种习惯(不写Unit test,developer 和 tester 就扯皮去吧)
7:Unit test始终被运行,遇到问题发封 email 给你
8:强大的工具,要在全公司分享
9:快速的项目开发周期;开发人员经常变更项目;开发人员有20%的自由支配时间。(不知道这20%到底指的是什么,可能理解的不对)
10:(这句翻译不来)同伎评审,扁平管理(感谢网友page)
11:项目,代码,过程,点子等等都是透明的
12:全世界都有很多办公室,用最棒的人,不管他们在哪里

另一篇译文

还是忍不住要谈Google

March 22nd, 2007 刀马

最近重装了操作系统,顺便也重装了Firefox,惊奇的发现新版的Google Toolbar for Firefox有了很大的升级。

整合几乎无处不在。我最喜欢的是书签功能,保存书签到google的账号,而不再是当前使用的浏览器,这对于像我这样每天要和三台电脑打交的人来说是极大的便利,时刻同步网页。并且即使重装系统,也不用劳神备份和还原了。软件越来越成为调用某项互联网服务的接口,数据的保存和实现的代码都在浩瀚的互联网上了。

另一项神奇的功能,是整合了大量第三方网站的站内搜索。本来要搜索某个网站的内容,可以通过在关键词后加入site:domain来实现,可是这不够方便。那好,google来整合,提供API,哪个网站想提供站内搜索就提交给google。于是,用户,网站,google三者就被绑在了一起,而且搜索也正是google的强项。我添加了搜索firefox的插件,以后就一键搞定了。

添加了gmail的自动check的button,也是蛮有趣的。gtalk当初发布的时候主要就实现了两大功能,一是聊天,另一是邮件实时提醒,以至于广大用户因为没有传文件的功能,而抱怨google的不专业。聊天功能在一开始就被web化了,就是我们可以在gmail的网页中聊天,这已经被广大白领视为突破公司防火墙的一条小道。而邮件实时提醒,现在是被整合在toolbar里了。那么这意味者,软件版的gtalk已经是可有可无的了,只要你想。

还有什么没有整合呢?下一个是不是youtube呢?还是calender?是不是看视频都不用安装windows media player了呢?youtube还不够清晰?谁知道接下来会怎样呢。看看google labs还有哪些好玩的东西。

提到google就不得不提到微软,看看下面的对比:

  微软 google
书签 浏览器 google书签
文件 office google docs
翻译 金山词霸,babylon google翻译
发送邮件 outlook gmail
拼写检查 word自带 google自带
股票信息 第三方软件 google自带

整合使得google的拼图越来越完整,或是直接替代基于PC的软件,或是慢慢改变使用习惯,这两者都是桌面,都是微软的领地。很难讲这对微软是好还是坏,当互联网变得诱人的时候,微软也能卖出更多的Windows。虽然Vista也在整合,可是很难保证一张光盘里的新元素能保持持久的新鲜感(从XP到Vista,花了5年)。微软习惯性的把开发软件的经验应用到开发互联网,也许是微软落后于google的一方面。至少现在看来,在互联网,google要比微软来的专业。