it-swarm.cn

您如何评价乔尔测验?

乔尔测试 是一种众所周知的测试,用于确定您的团队的水平。您如何看待这些要点?您不同意其中任何一个吗?有什么要补充的吗?

52
Casebash

Jeff Atwood具有 程序员权利法案

从帖子:

  1. 每个程序员应有两个监视器
  2. 每个程序员都应有一台快速的PC
  3. 每个程序员都应选择鼠标和键盘
  4. 每个程序员都应该有一个舒适的椅子
  5. 每个程序员都应具有快速的互联网连接
  6. 每个程序员都应有安静的工作条件

我似乎想在Joel的清单上看到一些物品。特别是在硬件领域(双显示器,快速PC,鼠标/键盘,舒适的椅子,快速连接)。

唯一没有提到的就是拥有舒适且可调的办公桌

所有这些都可以通过更改来添加:

当前问题9:您是否使用金钱可以买到的最好的工具?

改进的#9:您是否使用金钱可以买到的最好的工具和设备

41
spong

有趣的是,第8点现在显示为:

8. Do programmers have quiet working conditions?

当它用来阅读时(类似)

8. Do programmers have their own office?

最后一段仍然开始:

现在,让我们将它们移动到有墙和门的独立办公室中。

我一直对此测试感到怀疑,因为在我工作过的所有地方(包括员工和访客),唯一拥有自己办公室的人是董事和高级经理。

在现实世界中编写软件通常是团队活动,您需要与您的队友交谈以交流想法等,而即使是使用即时消息传递系统,也很难与单独办公室中的人进行交流。能够绘制出东西并向人们展示代码和图表很有帮助。这并不是说分布式团队无法工作-他们显然可以并且可以这样做,这只是一组不同的问题。

我要说的是,每个团队都必须在自己的6-8人办公室中(假设这是团队的规模)。这样,他们可以进行交互而不会打扰其他团队(如果有),并且可以继续进行工作而不会受到销售团队或访客的打扰(在我工作过的某个地方,您从前门直接进入开发区域)。

如果您正在与其他开发人员一起工作,但是每个人都在各自的项目上工作,则共享办公室can很有用-但前提是您必须严格遵守在会议室开会并遵守其他人的截止日期等条件。

其他大多数都是不言而喻的真理。

13
ChrisF

我喜欢它,但是如果我用它来评估一家公司,我将不会平等地权衡所有项目。没有源代码控制是一个更大的问题,而不是没有钱就能买到的最好的工具。

10
JeffO

对我来说唯一的破坏因素是:

 8. Do programmers have quiet working conditions?

有趣的是,这个问题很可能会因Stack Overflow职位发布而失败。

有些问题很难解决,特别是如果公司中有多个程序员:

 1. Do you use source control?
 2. Can you make a build in one step?
 4. Do you have a bug database?

我并不十分在乎的其他大多数。老实说,我的意思是:

12. Do you do hallway usability testing?

有一个可以检测骗子的人:

 5. Do you fix bugs before writing new code?
9
Tom Hawtin - tackline

我必须说这是一个很好的“基准”,但是使用任何度量工具都存在其他因素。例如,我工作过的公司中没有一家完成过Daily Build(我知道,我知道),但是其中一些公司做得很好。

我个人还有其他一些要添加到列表中的项目。

  1. 您是否通过参加会议,购买书籍或类似性质的东西来支持开发人员教育?
  2. 您是否有一个简单的,有据可查的流程来根据需要采用新工具来完成工作职能
  3. 您是否为开发人员提供设备和环境,使他们能够提高工作效率?.

这些东西比以前的雇主更“惹恼我”,而且现在它们是我快速询问的有关每个机会的问题。

6
Mitchel Sellers

乔尔测试(Joel Test)不测试团队的实力。它测试您的团队对Joel测试的坚持程度。

这是对您团队实力的更好测试。我称其为GrandmasterB测试。它有一个问题。

1)您编写的软件好吗?

无论您是否进行“走廊测试”,是否拥有源代码控制,或者您的构建过程是什么(如果有一个-并非每个语言都具有它们),这与我无关。团队的真正衡量标准是他们创建的软件的质量。

基本上,您可以按照Joel测试的每个步骤进行操作,但最终仍会得到一些垃圾代码和永远不会交付的产品。例如,源代码控制并不能使一个更好的编码器变得神奇。它使代码更易于管理。并且拥有最新版本的Visual Studio并不意味着您的应用程序会比使用 Visual Studio 2005 编写的应用程序更好地运行。

5
GrandmasterB

尽管我认为从一般意义上讲是很合理的,但是我发现列表完全集中在 Fog Creek Softwareshrinkwrap )的特定种类的软件上。这并不令人感到意外,因为他还在另一篇文章中谈到五个世界。那个世界之外还有很多发展。

例如,如果您为卫星或自动售货机开发 嵌入式软件 ,则某些条件实际上并没有多大意义,例如日常构建(3)或可用性测试(12)。

5
Khelben

我同意乔尔的大部分观点。我不太确定“走廊可用性测试”。当然,要进行可用性测试,但实际上不是从他们的工作中,而是从走廊上抓住某个人并让他们测试您的程序吗?这似乎是勾引别人的好方法。

5
Tim Goodman