证明更换硬件将提高开发人员的表现

时间:2009-11-01 22:21:53

标签: visual-studio performance developer-machine

现在我们被迫使用的机器是2GB Ram,Intel Core 2 Duo E6850 @ 3GHz CPU ......

公司内部的政策是每个人都拥有相同的计算机,无论他们处于3年的刷新周期......意味着我将在未来2年拥有这台机器......:S

我们一直在疯狂地抱怨,但是他们说他们想要证明升级机器会在做任何事情之前提供正确的X节省时间......而且他们只是半考虑给我们更多的RAM ......

即使您提出开发人员资源比硬件昂贵得多,他们首先会说要离开,然后过一段时间后他们会证明这一点。就他们而言,支付工资来自机器上不同的钱,他们不关心(即可以更换机器的人,因为支付工资不是来自他们的口袋)...... / p>

那么我怎样才能证明通过在新硬件上花费Y来获得$ X的好处......

我正在使用的堆栈如下:VS 2008,SQL 2005/2008。由于职责要求我们是SQL管理员以及Web / Winform / WebService开发人员。因此,非常典型的是同时打开2个VS会话和至少一个SQL会话。

干杯 安东尼

9 个答案:

答案 0 :(得分:5)

实际上,老板的主要成本并不是生产力的损失。这是他的开发人员不喜欢他们的工作条件。这导致:

  • 失去动力和生产力
  • 更多压力导致疾病
  • 导致开发人员离开的外部机会

答案 1 :(得分:3)

这听起来像是一个体面的机器。您是否已经向自己证明了使用真实世界的测试可以获得更好的性能?

与您的IT人员核实,看看您是否可以对磁盘进行基准测试,并最大限度地提高内存。管理层应该更愿意首先采取这些渐进的步骤。

答案 2 :(得分:3)

除RAM之外,机器看起来很好。

如果你想要证明这类事情是你所等待的所有事情(通常是加载时间和编译时间),那么就把它全部加起来,然后花多少钱来坐下来。从中可以猜出你会节省多少时间(除非你能比较喜欢,否则必须进行猜测,如果他们不升级你的系统就很困难)。你可能会发现他们至少会在不久的将来把钱还给内存 - 而且在你开始考虑人们在等待事情发生的时候徘徊的思维方式中丧失生产力之前。 / p>

答案 3 :(得分:2)

不幸的是,如果他们持怀疑态度,那么你不可能单独以量化方式向他们证明这一点。即使你想出了数字,他们也可能质疑这种方法。我建议你看看他们是否愿意观看10分钟的演示(可能称之为演示),并向他们展示在VS实例之间切换的体验(同时解释为什么需要切换以及频率),向他们展示构建过程(再次解释为什么你需要创建一个构建和多久)等等。

答案 4 :(得分:1)

询问他们是否允许携带自己的硬件。如果你真的相信它可以提高你的工作效率,那么你自己升级,当你开始生产更多要求加薪或报销时。

尽管如此......

我不得不问:你还在跑什么?我对那个堆栈并不是那么熟悉,但它确实不应该那么费力。他们是否强迫您运行某种系统减速监控或防病毒应用程序?

你可能有更好的运气说服他们让你改变它,而不是让他们推出新的更新。

如果您真的必须说服他们,那么您最好的选择是尽可能准确地对您的机器进行基准测试,并确切地确定您需要升级的价格。让它们同意一些确切(和低)的美元金额比一些开放式升级更容易

答案 5 :(得分:1)

慢速开发人员机器的主要成本来自慢速构建和“上下文切换”,即您需要在所需任务之间切换的时间:

  • 启动VS的第二个实例并等待它加载并构建
  • 签出或更新源树
  • 启动另一个VS实例或签出一个干净的源代码树,以“快速查看”已分配的一些错误
  • 修复困难错误的多个构建/调试周期
  • 不同任务之间切换的心理开销,不应低估

我做了一个案例,不久之后我就为等待机器赶上的浪费时间细分了新硬件。在典型的一天,我们可能需要在每个半小时完成2或3个完整版本。链接时间大约为3分钟,在构建/调试周期中,您可以每天执行40次。所以每天3.5小时等待机器。其中很大一部分是2或3分钟的小口袋,这个口袋不足以让你进行环境切换并做其他事情。它足够长,可以检查你的邮件,检查stackoverflow,吹鼻子,这就是它。因此,那段时间你无能为力。

如果您可以证明新机器将在15分钟内构建完整项目并在1分钟内建立链接,那么理论上每天可以给您额外2小时的生产力(或者更实际的是,可能会有更多的构建周期)。

所以我会得到一些客观的时间表,显示工作周期的不同部分需要多长时间,然后尝试在具有4GB RAM,第二驱动器(例如像WD Raptor一样快速的东西)的机器上进行比较计时,无论如何,要想出一些简单的数据来支持你的案例。

编辑:我忘了提及:提出这一点,因为您当前的硬件会让您失去工作效率,并通过将其乘以典型的开发人员每小时费率来计算损失的时间。在此基础上,我能够证明一台新PC将在几个月内收回成本。

答案 6 :(得分:1)

即使与他们进行超过五分钟的讨论也不仅仅是打电话给当地的PC经销商并从自己的口袋里购买RAM。询问项目负责人是否可以将其作为另一个“开发工具”放在项目选项卡上。如果(s)他不能,不要打扰和咳嗽

当他们来抱怨时,请将会议时间用于预算(因为他们哭了)。看看他们可以花多长时间。

当我们遇到同样的问题时,我的老板从他自己的口袋里为整个团队购买了更好的gfx卡,然后去了PC工作人员,让我们每个人都成为第二台显示器。几天后,他又去了我们每人2GB的RAM。

答案 7 :(得分:0)

定期执行一项可以通过更快的硬件改进的任务 - 例如:运行测试套件,运行构建,启动和关闭虚拟机 - 并测量当前硬件和更好的硬件所需的时间。
然后计算每月或每年的成本:每月多少次x获得x小时工资的时间,看看这是否足以构成案例。
例如,假设您每月赚10,000美元,并且每天使用更好的机器获得5分钟,每月损失到您的公司(每天损失5/60小时)x 20个工作日/月x 10,000美元/ 8小时/天= 105美元/月。或者因机器而损失大约1200美元/年(假设我没有弄乱数学......)。在与您的经理交谈之前,请考虑这个数字是否重要 现在假设1)你可以测量改进,即使你没有更好的机器,2)当你每天“浪费”你的5分钟时,你没有做任何有效的事情,这是不明显的。
对我来说,慢速机器的成本更具心理性,但很难量化 - 经过几天不得不等待PC上的事情发生后,我开始变得暴躁,这对我的关注都不利,我的同事们!

答案 8 :(得分:0)

这很容易; hardware is cheap, developers are expensive。在机器上投入合理数量的资金应该是绝对没有道理的,如果您的管理层不理解并且不会受到您的专业意见的指导,那么您可能在错误的工作中。

至于你的机器,在它上面增加一些RAM并使用快速磁盘(看看使用资源监视器的VS在磁盘IO上的密集程度 - 它非常饥饿)。这些天很多人都会转向10,000 RPM甚至是SSD,他们会对你的工作效率产生 差异。

试试这个;以你需要的硬件价格(比如快速磁盘和更多RAM)为基础,将其分成六个月(合理的时间段来收回投资)并在每天的“开发时间”中查看它的价值。你可能会发现它只需要每天给你几分钟的回报来支付自己的费用。再一次,如果您的管理层无法理解或支持这一点,那么请问您是否在正确的位置。