我拒绝接受的几个最佳编程实践方法

| 批评评论 | 26条评论
119 最佳实践方法

面向接口编程:这项编程法则要求程序员定义接口,并针对接口来编程,而不是针对实现编程。理由非常简单:容易开发第二种实现,易于测试(真的吗?),更有效的使用代码。

为什么用户总是抱怨

| 批评评论 | 11条评论
44

在我看来,每一次调整,背后总有足够合理的原因。然而,人们就是抱怨。而且这些Gnome爱好者会写博客,在bugtrackers里添加评论,在邮件列表里表明他们的反对理由。人们总是抱怨。

我们不需要代码之外的文档

| 批评评论 | 12条评论
100 文档

如果你是测试人员,或是产品经理,你会说你不理解这些程序,你的工作中需要这些文档。我可能有些粗鲁,但如果你需要这些东西,你应该自己去写。程序员不是技术文档撰写员,写外部文档不是他们的工作,也不是他们感兴趣的。

做正确的事情,等着被开除

| 批评评论 | 38条评论
776 陳一鳴 barack_obama

谷歌新员工(我们称做“Nooglers”)经常会问我是如何让自己做事这么高效的。我半开玩笑的告诉他们这很简单:我选择做正确的事情,为谷歌,为世界,然后回到座位上,等着被开除。如果没有被开除,那我就是做了正确的事情——为所有人。如果被开除了,那选错了老板。

编码规范是技术上的遮羞布

| 批评评论 | 20条评论
108

编码规范真正的罪恶在于,它们在伤你的心,伤整个团队的心。它们是一种耳语在说你不够优秀。他们不信任你。没有监管,你会搞的一团糟。

对“挖坑程序员”的思考

| 批评评论 | 8条评论
42

我在Twitter上看到一幅有趣的图片。我不是来责备发帖的这个人,也不是责备转发的人或图的原作者。但如果不说出我对这个图的背后的一些思考,我会憋得难受。

看不懂自己写的代码,这对一个职业程序员来说是不可饶恕的

| 批评评论 | 23条评论
125

最近遇到一个事情让我大为不解。一个程序员自豪的宣称他完全看不懂自己一周前写的任何代码。我真的想探明他的这种自豪感从何而来,但无解。他是在骄傲每天写如此多的代码吗?有人会愿意聘请这样的人去写程序吗?

一本好书:《谷歌如何测试软件》

| 批评评论 | 2条评论
50

这并不是一本讲“如何做”的书,并不是在说关于如何测试软件的具体步骤。相反,它站在一个更高层面上,大部分的篇幅都在致力于描述谷歌公司里各种不同的测试角色。从这个访谈以及这本书里,我感觉有三个独特的主题呈现在我面前。

程序员如何成功的假装在很努力的工作

| 批评评论 | 6条评论
151

这篇文章要讲的是程序员如何假装在很努力的工作。有两种完全不同的动机会促使一个程序员做这种假装:第一种,你是个懒货——想不劳而获。如果你是这种人,我和你同事都会鄙视你。你不需要看下面的内容了。这篇文章完全不是为你写的!

给Facebook挑刺:三个像素点的差异给人完全不同的感觉

| 批评评论 | 12条评论
26

我很抱歉在这里对Facebook挑刺,可是我无法忍受。我看到这个bug太多次了,我真希望有人能提交Facebook CSS补丁修改它一下。

将死的平台:.Net

| 批评评论 | 18条评论
38 比尔盖茨

最近这些年我一直用C#开发。我认为C#和.net是非常棒的软件开发语言和平台。我感觉C#正是我想要的语言,用它即能开发上层东西,也能开发底层代码。然而,不幸的是,整个世界并不和我有相同的感觉,你可以感觉到.net的活力力正在慢慢的消褪。

软件开发是瓜熟蒂落,不能强迫

| 批评评论 | 4条评论
61 加班

预测一个任务什么时候能够全部完成是十分困难的。所有我见过的软件工程师都为此伤透脑筋,包括我自己。有些人会过高的估计开发某个功能需要消耗的时间,而另一些人会极大的低估他们手头的工作量。但是,这是一个真正存在的问题吗?不,这其实并不是个问题。

软件开发中没有所谓正确的方法

| 批评评论 | 4条评论
55 方法论

但这篇文章后面跟随的评论描述的却是一副完全不一样的景象。如果你不看文章只读评论,你会以为Chris脑子进水了或出来什么其它事。他怎么敢质疑TDD?他怎么胆敢质疑测试驱动文化的有效性?看了这些评论后,我感觉有一股力量在逼迫我去写点什么。但我的这篇文章绝对不是来讨论什么TDD的。我想讨论的是如果成为一名优秀的软件开发人员。

软件设计哲学

| 批评评论 | 3条评论
32

我们备受批评,因为我们在设计Arc编程语言时只考虑了优秀程序员。对于什么是好的设计,有很多争论,很多人认为好的设计意味着你懂得用户的需要,而大多数的程序员都不是优秀的程序员。

全世界只有我们Erlang程序员是正确的

| 批评评论 | 36条评论
131 多核处理器

全世界只有我们是正确的,其他的全错了。我们(Erlang程序员)找到了症结并正确的解决了问题,所有的其他人(非Erlang人)都找错了方向,解决了错误的问题。