在软件行业中最普遍的虚假经济情况是什么(即节省金钱的最终成本高于储蓄的方式),以及您如何与之抗衡?
#1 楼
技术债务即“只要快点做,我们以后再重构”。首先,因为我还没有看到有人从事这种行为,实际上后来才进行重构。其次,因为做事快而不是好事,所以增加将来的功能或解决将来的bug变得更加困难,因此从长远来看最终会浪费时间。
可悲的是,许多人仍然认为这样做可以节省时间开发人员周期让他们快速执行某些操作。我想这是可能的,但我还没有在实践中看到它。
评论
我无法统计我见过管理人员一天停止开发人员(2到3),然后由部署专家崩溃修复某事(并在产品的生命周期内进行多次)的次数,而不是花2倍的次数。 4天做对了。好答案。
–DevSolo
2010年11月17日在12:22
如果修复时间以美元衡量,例如错误修复股票交易系统,然后管理决策将倾向于降低成本。我发现提议“现在进行修补以保持运行,同时我们确定正确的修补程序以确保不会再次发生”,这满足了成本驱动的紧急情况,并且得到了正确的结果,但是有时您必须为此奋斗。
– JBR威尔金森
2010-11-17 14:25
我们到处都有代码,上面写着“这是一个hack,请在演示之后替换”之类的注释,该注释已经存在了3至5年。甚至没有人记得它是在这一点上完成的,因此直到有人(我)正在修复错误并在其中运行该漏洞之前,没人能找到它。毋庸置疑,如果我有能力做到这一点,那么本对象课程已经很好地教会了我第一次正确地做到这一点。
– CodexArcanum
10 Nov 17 '20:34
老实说,我一直为它甚至没有节省短时间而震惊!
– PeterAllenWebb
2010-11-17 23:35
@Jorg-嗯? “技术债务和设计债务是同义词,是一种神经病的隐喻,指的是slapdash软件体系结构和草率的软件开发的最终后果。” en.wikipedia.org/wiki/Technical_debt这正是我所指的。更具体的标题可能是“无意偿还而招致技术债务”,但是,在这种情况下,许多人告诉自己,他们确实确实打算偿还(但不偿还),我希望输入一个有力的标题。顶部的粗体字。 “技术债务”似乎是一个很好的总结。
– Inaimathi
2010-11-20在16:13
#2 楼
雇用2个便宜的开发人员而不是1个真的很棒。 (相同的价格)评论
这至少似乎是有现实依据的。请记住,非技术人员无法确定谁是优秀的开发人员(因此,他们向随机的咨询白痴支付的费用比向真正的超级巨星支付的费用高出两倍)。
– Inaimathi
2010年11月17日在12:22
或可悲的是,只租了1个便宜的...
–DevSolo
2010年11月17日在12:24
...或者聘请一位古鲁,两个假人将以古鲁的薪水的1.0来做古鲁的1.5的工作:/
– bobah
10 Nov 17'在12:31
您不会从虚拟对象那里得到75%的专家,任何真正优秀的程序员都会做所需的事情而不会对此产生任何偏见。
– Peter Boughton
2010-11-17 14:05
10倍或100倍的程序员真是物超所值。他们只获得1.5倍的报酬,可能是2倍。正如迈克尔·洛普(Rands in Repose)所说的那样,如果您在整个职业生涯中只雇用其中一位,那将是一场净赢。
–蒂姆·威利斯克罗夫特(Tim Williscroft)
2010年11月18日,0:27
#3 楼
我的示例将与NimChimpsky的示例完全相反,即:尝试内部开发可以直接购买的产品。
通常,这是由于由于无法实际检查市场以查看是否存在可以解决问题的东西。喜欢进行任何研究之前先“深入研究”编码的开发人员,以及那些没有考虑到那段时间=金钱的项目经理,都会使情况变得更加复杂。
我见过的最常见的例子之一在我的领域,网站开发是尝试开发内部CMS系统的公司。这些功能一开始都是很小的,但随着功能的不断完善,它们很快就会变得肿且失去控制,而始终都有大量的免费产品和框架可供使用,因此更适合。
评论
仅仅因为可以,并不意味着应该。基本的CMS,是的,为什么要重新发明轮子。但是,当您开始谈论大型系统并为复杂的业务流程建模时,为什么要在方孔中安装圆钉呢?特别是如果您拥有内部开发人员和技能。
– NimChimpsky
10 Nov 17 '12:19
@NimChimpsky-我认为两者都有有效的例子。我当然已经看到人们破坏了他们的业务流程,并试图通过使它们适合于现成的软件而失去了优势,但是我也看到了开发人员遭受“他们不是在这里发明”综合症代码,而他们本可以下载这些东西,因为对他们来说更有趣。
–乔恩·霍普金斯(Jon Hopkins)
2010-11-17 12:23
@NimChimpsky如果规范需要定制开发,那就很好-它可以使我们继续工作:)问题出在人们不首先检查是否已经开发出符合要求的产品而直接投入开发时。进行一点研究可以大有帮助!
– Dan Diplo
2010年11月17日在12:26
为什么要重新发明轮子?因为你是车轮工程师。或者因为您的车轮比下一个家伙的车轮更好。或者是因为轮子不适合。参见:mostlymaths.net/2010/03/…
–德里克
2010年11月18日,0:03
在我工作的地方,几乎所有东西都可以买到OTS,而且几乎所有东西都在公司内部进行了重新发明,因为根据我们的无畏领导者(tm),“我们的环境是如此复杂,市场上没有任何东西可以应付它”。 fe!但是,嘿-它付账单。昨天我们被告知,我们的软件的主要组成部分将在明年重新编写-具有图形界面!噢噢!我都是个推特...(
–鲍勃·贾维斯(Bob Jarvis)-恢复莫妮卡
2010-11-19 2:55
#4 楼
没有专用于项目管理的资源我已经经历过几次与一些程序员签约的经历,并且已经有高要求的日常工作的人本来可以管理项目,但是实际上太忙了其他任务,因此该项目从未真正获得动力。程序员制作了“原型”之类的东西,但是没有铅,很多东西都围成一圈,看上去很忙。
新程序员的设备很差
我曾经一家公司经历过这样的政策:“新程序员必须在带有小屏幕的旧PC上工作,直到他们证明自己有价值为止”。毫不奇怪,这样的政策会导致否定选择,从而淘汰了总是有权选择在更加理智的环境中工作的优秀人才。
评论
+1。没有为您的员工提供良好的设备已写成“注定要失败”。
–特伦斯·庞塞
2010年11月17日15:07
+1。但是请注意以下几点:在许多公司中,硬件预算属于基础架构之内,与开发预算分开。基础架构经理不会对其预算造成任何打击,以帮助减轻开发经理的预算。我已经看过几次这种令人讨厌的政治事件。
–填写
2010-11-17 18:59
对所有程序员来说,坏设备怎么样?我的前雇主付给我们硅谷的工资,让他们在五年前表现平平的台式机上编写代码。由于期限的延长,他们在一年前解雇了一半的员工,其余的大部分在7月解雇了-但是,男孩,他们节省了设备成本吗!
–鲍勃·墨菲(Bob Murphy)
2010年11月17日在20:08
卡兹:每个开发人员都应该有一台合适的机器。如果购买新硬件意味着新开发人员的PC比其他开发人员的PC更好,那么,在最坏的情况下,如果您是精通Dick的人,则可以购买交换机。普通人根本不会在乎,只要拥有使他们高效工作的设备即可。在我目前工作的地方,我的电脑比雇用我的人的电脑更新(可能更快)。追随我的人拥有更新的,可能更快的PC。你猜怎么了?没人在乎,因为我们所有的机器都足够快。
–user281377
2010-11-18 10:02
当硬件不足时,我通常会通过做一些有用的工作(例如修剪我的脚趾甲或在长时间编译期间阅读论文)来告知管理人员。我有旧的慢速机器吗?当然,没有问题。哦,您有个紧急错误修复程序,而我必须进行构建吗?当然,Mr-Manager-bwana-sahib-dude先生-90分钟后见! (曾经有一位经理问我一整天的工作-我告诉他“重新构建应用程序。四次。”“八小时?!?”他大声喊道。“不,当然不行,”我说。那花了10个小时。”新机器出现不久……:-)
–鲍勃·贾维斯(Bob Jarvis)-恢复莫妮卡
2010年11月19日,2:50
#5 楼
我们可以通过让程序员兼任测试人员/技术作家来节省金钱如果您为测试人员/技术作家的工作付出程序员的薪水,那您就是在浪费金钱,并且可能会得到比那些拥有致力于他们的职业。同样,当程序员面临紧迫的最后期限时,测试和文档很可能会被丢弃或半途而废。
顺便说一句:开发人员总是在紧迫的最后期限之内。
评论
聪明的人可以做任何好谬论。
–乔恩·霍普金斯(Jon Hopkins)
2010-11-17 15:33
我已经完成了数据输入,尽管我当然不会降低它的费率。他们希望有人能够快速准确地输入一些关键数据,而且他们不介意支付至少三倍的数据输入速率。他们的选择。
– David Thornley
2010年11月17日17:39
我认为测试代码是程序员的工作,但是我不确定这是否是您所指的。
– dreadwail
2012年6月18日23:42
程序员应该测试自己的代码,而不排除拥有专门从事破坏软件工作的测试人员。
– JohnFx
2012年6月18日23:44
同意技术写作,不同意测试。测试是编写优秀软件的自然部分。技术写作与编码的转变太大了。我发现我需要从编码转换为技术写作,需要改变许多方式,这感觉像是在浪费我的时间。
–亚当·布鲁斯(Adam Bruss)
2012年10月30日在16:40
#6 楼
研究/读取/编写与产品开发无关的代码是浪费资源。一些程序员甚至经理都相信这一点。通常,他们只是基于头脑中的知识进行编程,并在遇到问题时进行研究并寻找答案。他们不会持续不断地主动提高自己的知识。我认为,我们应该始终保持最新状态,我们收集的知识将对我们解决现有和将来的问题有用。当然,您必须明智地分配时间。
这也与Dan的答案类似。有些经理只是希望开发人员根据需求快速投入并开发产品,而无需研究市场上现有的产品。
评论
我希望我可以多次投票。
– MAK
2010年11月17日在20:08
让我们编写一个GUI库。让我们构建一个消息传递工具包。如果您不出售软件,那只是更大的一部分,出于天生的缘故,请使用其他人的实现。使用开源解决方案的安全点,如果需要,您可以随时对其进行修复和支持。如果您有足够的钱购买包含源代码的解决方案,请这样做,但要提防商业软件组件的质量很差。供应商很少向您出售该组件两次,因此一旦拥有该组件,您可能会感到失望(我知道我以前曾在此工作过,所以对此很痛苦)
–蒂姆·威利斯克罗夫特(Tim Williscroft)
2010年11月18日,0:33
#7 楼
在许多情况下,离岸业务要花更多的钱。在我的公司中,很难获得新的员工,我们被迫大力外包。也很难得到现场承包商;他们应该维持的海上与陆地比例为3:1。因此,许多团队只雇用了十几个离岸人员,几乎根本不使用它们,这样他们就可以得到4个现场承包商。评论
+1。我在离岸外包方面的经验是,它不可避免地要花费比节省的资金要多得多的钱。
–亚当·克罗斯兰(Adam Crossland)
2010-11-17 14:14
+1,但如果正确使用,海上作业也可以工作
–user2567
10 Nov 17 '21:38
+1。在每个新项目中,我们似乎都有不同的离岸开发人员,这意味着除提供技术支持外,在岸开发人员将大部分时间用于培训新的离岸开发人员业务和技术领域模型。项目结束后,他们又去了别的地方,我们从下一组“便宜”的开发人员重新开始。
–克里斯·奈特(Chris Knight)
2010-11-17 23:57
许多团队只雇用了十几个离岸人员,而他们几乎没有使用它们,这样他们就可以得到4个现场承包商。哇。
–池
2010年11月18日,0:10
忘记了离岸业务本质上会延长截止日期。我们有离岸质量检查,可能需要3-4天才能完成,因为同一办公时间可能会导致同一办公室的人员在一个小时内重新整理。
–HLGEM
2012-02-16 18:38
#8 楼
反馈循环很长!它发生在每个人身上:您构建了您认为很棒的东西,结果证明您错了。那不是问题。问题是您花了多长时间才发现应该停止构建。
从较高的层次来看,发布周期长会遇到此问题。如果您在没有反馈的情况下进行了一年的建设,那么您就整整一年都在赌博。您释放的次数越多,赌博的次数就越少,并且您越会赌博。
但它也发生在最低级别。作为开发人员,我真的很喜欢频繁的代码审查(或者更好的是,配对编程),因为它限制了我可以继续做一些愚蠢的事情的时间,直到有人说:“嘿,有一种简单的方法!出于同样的原因,我希望我的单元测试能够快速且频繁地运行,这样我就可以在bug滋长之前捕获并杀死它们。它无处不在。例如OODA循环的军事概念。
评论
+1。另外:反馈循环越长,您对任务的记忆就越少。在极端情况下,您需要重新使自己重新熟悉整个代码库。
–约瑟夫·塔南鲍姆(Joseph Tanenbaum)
2010年11月17日在22:36
虚假的经济状况如何?打算节省多少钱?
–克里斯·皮特曼
2012年2月16日19:15
目的是节省您在每个循环中所做的事情“浪费”的时间。例如,构建,测试,发布,关注用户。无论如何,这就是借口。我认为这真的是根源于避免不适。
–威廉·皮特里(William Pietri)
2012-2-28的1:15
这就是为什么审稿人和结对伙伴必须尽可能谦虚并尊重编码者的原因。一位麻烦的审稿人对编码器的处理不善,您可以保证反馈循环会大大增加。
–乔纳森·诺伊费尔德
15年3月13日在0:07
#9 楼
不是我自己的轶事,但我确实听说过一家商店停止向开发商提供免费咖啡,而是告诉他们,只要他们想买咖啡,他们就可以自由地步行到最近的咖啡店(大约十分钟)每种方式都行),并购买一些。错误经济的定义差不多。
评论
那很特别。与伦敦的一些商业银行进行比较和对比,伦敦的一些商业银行在大楼内建有补贴的星巴克,以消除外出喝咖啡所需的时间。
–乔恩·霍普金斯(Jon Hopkins)
10 Nov 17 '13:43
我不同意这自然是错误的经济-在户外散步时购买咖啡的10分钟新鲜空气会充实员工的精力并提高他们的注意力,并且(虽然有限)社交互动将减少抑郁症,尤其是在冬天。那些不免费喝咖啡而无法喝咖啡的员工,由于咖啡因摄入量减少,可能会准时回家,睡得更多并且健康状况更好。
– JBR威尔金森
2010-11-17 14:18
-1,步行20分钟非常适合解放您的思想,并对问题有新的认识。
–激进主义者
2010-11-17 14:21
@Malfist:据我了解,这不仅是步行20分钟,而且还需要15分钟才能真正拿到咖啡,这打断了工作。在一天中的任何时候休息45分钟,几乎会破坏一个半小时以上的生产力。所有人每个月可以节省100美元的咖啡费用。
– EricBoersma
2010-11-17 14:42
20 + 15 = 35 [还有六个字符]
–激进主义者
2010年11月17日14:48
#10 楼
提供单屏工作站,因为第二台监视器过于昂贵。即使每年仅节省一个小时的工作,第二个屏幕仍然是不错的投资。我肯定知道我的这项工作为我节省了很多很多时间。多监视器设置可以使几乎所有任务变得更有效率,而不仅仅是开发任务。三台显示器甚至比两台更好,但是每增加一个屏幕,效果就会变得不太明显。
多显示器设置:
减少窗口切换开销
让您随时注意后台运行的内容(邮件,编译等)。
给您带来自由的感觉。就像在中庭与在扫帚壁橱里一样。
等...
评论
曾经正好面对这个问题。给我们的一位首席执行官写了一封邮件,明确地计算出,如果效率提高5%,相对于我的净收入,我将在大约半个月的时间内为监视器节省下一笔钱。这个计算几乎是铁定的……但是……我想你已经知道故事的结局了:)
–拉斐尔
2011年9月7日在8:26
#11 楼
当顾问每小时花费超过150美元时,为顾问提供的最便宜的硬件。透视一下,更好的硬件至少可以使工作效率每天提高30分钟。这将使30分钟*每月工作20天=每月600分钟= 10小时/月>超过1天的工作= 10小时* 150 $ /小时= 1500 $
现在就不再是顾问如果他/她拥有一台1500美元的计算机,工作效率就会更高?用于PC硬件。
评论
作为顾问,我去过那里,做了那件T恤。 (尽管每小时只有80美元。)但是,这就是我喜欢按小时签订合同的原因之一。与有薪职位不同,如果咨询客户选择浪费我的时间,而我不得不付出额外的努力来弥补这一点,那么我的口袋里就会有更多的钱。
–鲍勃·墨菲(Bob Murphy)
10 Nov 17 '22:45
没有冒犯,但如果我为一名顾问支付每小时150美元的费用,他最好拥有自己的计算机。
–史蒂文·埃弗斯(Steven Evers)
2010-11-18在16:41
@SnOrfus:在企业环境中,这通常是行不通的,因为在企业环境中,必须严格控制域中允许使用的PC。您必须为他们提供硬件。
–硬编码
2010-11-18 22:04
@HardCode-是的,我想。我现在明白了这一点。
–史蒂文·埃弗斯(Steven Evers)
10 Nov 19'5:42
@HardCode在最近的项目中,他们没有将我们(承包商)添加到其内部公司网络中,而是将我们隔离到了自己的DSL线路中。面向3个开发人员的专用DSL线路(每月40美元)是一项巨大的改变,它使我们可以轻松地远程推送更新,而不会使IT员工感到恐慌。另外,如果运行我们代码的生产PC受到感染并崩溃,则由于我们负责通信和个人笔记本电脑的安全,这自动是我们的错。你能说双赢吗?
–伊文·普莱斯
2010-11-19 17:53
#12 楼
几个月的工作可以节省几天的计划(没有在计划上投入足够的时间)
评论
在研究生院里,有句话说,在实验室里呆几个星期可以为您节省一小时的图书馆时间。
– David Thornley
10 Nov 17 '17:42
对。当我上大学本科实验班时,我们发现了未知的化学物质时,教授告诉我们“在图书馆里花一个小时可以在实验室里为您节省四个”。我认真对待他,让华尔兹每周进入实验室一个小时,并从每周花费12个小时对显然不是胺类化合物进行胺测试的医学前医那里获取令人讨厌的表情,真是好笑。几年后,当我在同一个实验室任教时,我给了学生相同的建议,而实际上却很少有人接受。
–鲍勃·墨菲(Bob Murphy)
10 Nov 17 '22:51
如果您计划失败,您计划失败
–user7197
2011年6月19日在16:41
#13 楼
我怀疑最普遍的是经理们根本没有为开发人员提供有效完成工作所需的工具。基本上是Joel测试中的第9点。
评论
我一直在进行一些项目,这些项目会使我们浪费一两个星期而不是购买,例如,一个已经完成工作的图书馆要花300美元-更好的是(我们在工作的地方不是“控制开发人员”。)或者选择一些软件工具,“因为它是由“这家”或“那家”公司制造的”,而不是寻找是否有更好的选择,然后让我们的生活陷入困境。
–金属迈克斯特
2010-11-17 12:59
我自己遇到了那个人。项目经理/客户的推理是,我们没有一个预算项目可以为客户购买东西(联系变更是个bit子),所以我们不得不(重新)重新发明轮子。
–肯·亨德森
2010年11月18日,0:05
#14 楼
不幸的是,“将(足够的)尸体扔到问题上”可能仍在某些地方使用。尽管有些人需要经验来学习本课程,但《布鲁克法则》确实与《神话人月》相反。通常,这不是我能阻止的事情,因为管理层可能会相信关于增加人员而不必为此付出代价的虚假陈述。评论
+1。哦,是的。目前,在我工作的一个大型项目中,这是史诗般的规模。
– Bobby Tables
2010年11月17日在20:14
我与许多项目负责人,经理等一起工作,他们所有人都拥有非常出色的项目管理证书(无论这叫什么鬼话),在我介绍他们之前,没有一个人听说过《神秘人月》对此。嘘!
–鲍勃·贾维斯(Bob Jarvis)-恢复莫妮卡
2010年11月19日,下午3:01
我曾经听到过一个很好的报价:9个女人一个月内无法生育
–理查德
2012年2月16日在13:56
@Richard我在会议中使用了那个。给了我极大的快乐!
– Tjaart
2012年8月16日15:08
#15 楼
日常会议:(meeting duration in hours) x (Y team members) x (average salary per hour) = ...
评论
开会只是为了开会...
–甘
10 Nov 18'在15:34
今天的议程:明天会议的议程将是什么?
– Mark C
2010-12-23 4:24
如果时间较短,可以每天开会; Scrum式的3分钟站立会议不会浪费很多时间,但是可以让每个人都知道其他人的发展。但是,与众多无私的参与者进行长时间的会议是有毒的。
– 9000
2011年9月7日下午1:38
@Mark C-听起来像是在开玩笑,但实际上我已受邀参加会议,以计划接下来几天会议的议程...
–加文·科茨(Gavin Coates)
2011年9月7日在8:36
@Gavin Coates这是真实的情况... :)
– Zzz
2011年9月7日在8:40
#16 楼
购买现成的软件而不是在内部开发。我有企业规模管理系统的经验,主要关注于HR和Biological Laboratories。
现成的解决方案成本为50-100k英镑,需要进一步开发和定制才能满足业务需求。
内部开发的解决方案花了(<6)个月的开发时间并与其他项目并行进行,并雇用了已经雇用的开发人员。
我从公共部门开始运作,而内部拥有我们内部开发的LIMS(实验室信息管理系统)并正在运行。大型国际制药公司,其解决方案的实施已经花费了一年多的时间,而且还没有完成。
(已经雇用了六个月的开发人员同时从事其他项目。大约1万。不包括与现有解决方案相关的支持费用)。重点是实际上正在使用内部开发的系统!因此,您将获得与此相关的增加的成本收益,而我无法计算。
我同意基本的网站等信息,为什么还要自己开发。但是对于任何大型复杂系统,如果您已经具备内部技能,我会自己构建。
评论
我敢打赌,也有很多相反的例子。
–乔恩·霍普金斯(Jon Hopkins)
10 Nov 17 '11:52
购买或发展取决于正确的人进行尽职调查。就那么简单。三思而后行。 (+1)
–DevSolo
2010年11月17日在12:24
@DevSolo:当场。构建或购买决策应以成本效益分析为依据,而不是出于情绪化的“未在此处发明”或“我爱XXX的软件”的态度。
– JBR威尔金森
2010-11-17 14:22
如果要对构建与购买进行全面说明,则应该是:宁愿购买解决方案,以解决不属于公司核心竞争力的问题。这并非总是正确的答案,但这是一个明智的默认位置,并且几乎与陈词滥调一样可靠。不过,说购买现成的软件是一种虚假的节约,这甚至不是一个有用的陈词滥调。到“ E”解决方案(本来意味着“企业”,但实际上意味着“昂贵”)。但是,糟糕的选择并不意味着没有好的选择。
–evadeflow
10 Nov 17 '21:50
我认为问题在于购买,然后仍然需要进一步的开发和定制,在大型引入的系统上进行少量定制的成本通常可能会超过编写自己的小型系统来满足您的需求。因此,如果可以按照您要购买的系统期望的方式工作,请购买,但是购买和自定义可能会使双方的情况更糟!
–伊恩
2012-02-16 14:54
#17 楼
当开源替代方案更好且免费时,购买昂贵的现货产品。有多少公司使用git?有多少公司使用一些糟糕的企业版本控制?
评论
嗯,这可以被视为“最严重的虚假经济”吗?也许您需要详细说明...?
–甘
2010年11月18日,1:16
我不确定我是否至少完全同意源代码控制的示例。 Git专为解决开放源代码问题而设计:许多开发人员,很少的中央控制,许多分支机构等。“ enterprisey”软件在不同的假设条件下工作:跨业务,安全性,工作流程等
– PeterAllenWebb
10 Nov 18'2:24
@甘:他们认为使用开源是虚假的经济,但他们却倒退了。
–hasen
10 Nov 18'2:53
我是X11和GNOME的贡献者,并且非常擅长使用git和管理gitosis服务器。但是,今年夏天,我将咨询工作从git切换到了个人付费的Perforce服务器,因为它会自动执行很多事情,而您必须使用git手动进行。由于我为交付代码而不花钱使用版本控制而获得报酬,因此使用和支付“糟糕的企业版本控制”的费用比使用git更具成本效益。
–鲍勃·墨菲(Bob Murphy)
2010年11月18日,下午5:36
根据我的经验,开源与商业产品的确是“逐案”的基础。
–金属迈克斯特
2010-11-18 12:27
#18 楼
是的,使用没有太多表现力的“简单”语言,是的,它使得找到程序员来维护代码变得更加容易,但是,这使找到不仅仅学习最新术语的优秀程序员变得更加困难。是的,它使单个位的代码更易于理解,但也使其与2x4一样僵硬,并增加了需要理解的代码量。是的,它得到了一家大型公司的支持,但表示大型公司的创新是缓慢而官僚的。
评论
@burnt_hand:就语言选择而言,我基本上是指管理层过度的风险规避。
–dsimcha
2010年11月17日在20:10
+1:只需继续使用C,因为“我们掌握了这些技能,而学习一些新奇的语言(如Python / Perl / PHP)会增加很多风险”。听到了不止一次。这是否意味着团队太笨了,无法学习一种新语言?
– S.Lott
2010年11月17日在21:15
@ S.Lott招聘代理商认为你是!!但这是另一回事
–丹
10 Nov 17 '21:58
即那些坚持使用Java和C#并且过于害怕触摸python或ruby的公司,因为它们不是“行业标准”,这使我想起了:paulgraham.com/avg.html
–hasen
10 Nov 18'2:54
@hansen:Paul Graham的文章部分地启发了我写这篇文章。我的另一个灵感是我为D编程语言开发库(包括标准库)的工作。
–dsimcha
2010-11-18在3:16
#19 楼
糟糕的项目经理/团队负责人。由于一个不称职的人有权破坏一群人的工作。最后,如果没有高层管理人员(项目/团队负责人)的决定,该项目会做得更好。
决定“只要快做,我们以后再重构”即可。
评论
我同意会有糟糕的经理人,但是“如果没有高层管理者的决定,该项目会做得更好”?通常,这些人是赞助该项目的人。在我看来,这听起来像是我遇到的开发人员,他们认为了解技术比了解业务更重要,而忘记了真正的客户是谁。
–乔恩·霍普金斯(Jon Hopkins)
2010-11-17 14:11
@乔恩·霍普金斯(Jon Hopkins)在高层管理人员的帮助下,我不会介绍客户。关键是“糟糕的项目经理”是指那些接连犯错并与一群人相抵触的人。您认为谁决定“尽快完成,以后再进行重构”。阅读率最高的答案!
–阿米尔·雷扎伊(Amir Rezaei)
2010-11-17 14:19
嗯,比较清楚。我删除了-1。
–乔恩·霍普金斯(Jon Hopkins)
2010-11-17 14:23
我注意到一个令人不安的趋势,即项目经理认为时间和成本高于质量。我确定我不是唯一的一个。采购经理喜欢使用上面带有成本/质量/时间的三角图,但质量始终优先启动。很可悲,在像软件这样复杂的事情上制度化和强制执行项目管理(PMI)的指标似乎只会使事情变得更糟。
– Bernard Dy
2010-11-18 4:35
@Bernard-时间和成本都是可以衡量的。质量?没那么多。可悲但海事组织是真的...
–鲍勃·贾维斯(Bob Jarvis)-恢复莫妮卡
2010年11月19日,3:03
#20 楼
缺少用户要求设计软件产品的一个重要而困难的步骤是确定客户实际想要做什么。
/>
信不信由你,有时候这部分缺失或过时。
涉及成本的是,它创建了最终用户从未要求的功能。
评论
我认为这应该在顶部!
– Roopesh Shenoy
2010-12-7 11:08
#21 楼
生产力比创造力更有价值在软件开发中,创造力通常很难衡量,而且通常无法观察甚至不用衡量。另一方面,生产率可以衡量(通常很差),并且可以观察到。
结果,与那些使用更少的开发者相比,那些能够(更快地编写更多行代码|更快地编写代码|更快地引用技术小题以响应问题|更明显地提高生产力)的开发人员的价值更高。解决同一问题的代码行|花费更长的时间编写代码,但是产生的结果更可靠|主题足够好,可以简单,易懂地用英语回答问题(创造性地解决问题)。
#22 楼
以下所有内容在使用时或在使用不当时可能会很糟糕外部软件与内部软件
符合ISO 9001(经济-如果产品质量下降,可降低MSS损失风险)
开发/质量检查外包
开发/构建/发布/支持程序
评论
ISO 9001如何成为(虚假的)“经济”?
–安德鲁·格林(Andrew Grimm)
10 Nov 17'在12:08
@Andrew Grimm-合规性确保了一定的质量水平,从而减轻了因质量低下(例如MSS损失)而带来的风险,因此潜在的经济状况显而易见。对于小型部门,这可能是不合适的,因为间接费用损失要比潜在风险要高
– bobah
2010年11月17日在12:12
@Andrew-以我的经验,这取决于您想要的用途。如果您希望它提高质量,那可能是一种错误的经济做法,因为它往往很昂贵,并且可能不适合于软件。如果您希望将其用作营销产品,或者因为它只是您所在行业的期望,那么这可能是个好主意。
–乔恩·霍普金斯(Jon Hopkins)
2010-11-17 12:13
@Andrew Grimm-ISO 9001保证的“唯一”是一致的,可重复的质量。它不保证“高”质量。但是,如果公司想要进入市场空间,那么就需要ISO 9001认证,那么这是必需的。
–疫苗
10 Nov 17 '12:56
@增值税:ISO 9001保证的是一致的,可重复的过程。在某些领域,一致的流程可以产生一致的质量,这一点很重要。它不能保证高质量,但是如果客户看到您做得很好并且知道您已通过ISO 9001认证,那么他们会对类似的质量充满信心。
– David Thornley
10 Nov 17 '17:42
#23 楼
几年前,在我们公司里,我们有几个大型预算项目正在进行中,招聘高峰。当时,我们公司雇用了太多的交付经理(其中许多人不是IT人员!),而编码人员/测试人员却很少。经理与程序员的比例实际上为1:2。后来,在完成这些项目之后,我们遇到了这样一种情况,我们有很多这样的经理(其中有些是真正的懒惰者)坐在板凳上无所事事。我们有一个评估周期,每个人的加薪幅度很小/没有加薪(即使我们是努力工作的程序员,也要叹气),这样公司就不必解雇任何人!幸运的是,公司意识到了这种情况,并于今年第一季度进行了RIGHTSIZING!
#24 楼
在进行性能分析之前先进行优化(又称过早优化)。我已经看到很多人寻求一种聪明的解决方案,它以更快的速度为基础,不必要地使维护和可读性复杂化。自然,该代码没有进行基准测试(甚至没有微基准测试),因此在一段代码中,它很快变得“基于更具说服力的论据变得更快”,这很可能不会影响整个代码的整体性能。
因此,这是一种非常虚假的经济,这种虚假的经济有时甚至缠结了经验丰富的职业选手。
#25 楼
互联网访问有限或没有互联网,因为显然您的员工将使用互联网玩Facebook游戏,而不是研究Stackoverflow上技术问题的答案。
当然,实际上互联网可以极大地提高生产力,虽然对于真正狡猾的网站使用某种类型的网站过滤器可能是适当的,但是如果它阻止了Visual Studio自述文件,则可能有问题或出于“性旅游”原因而阻止德福市政府页面
#26 楼
使您的开发人员使用15英寸显示器和低规格PC作为企业标准。合理大小的显示器便宜,安装快捷,使程序员更加高效,并使您的程序员认为自己关心他们。
评论
:(我经常看到很多这样的东西。相关程序员.stackexchange.com / questions / 18585 / ...
@Casey:这有点相关,但不完全相关。您提供的链接直接涉及金钱,而这里的问题答案也涉及金钱和信仰。例如,请参阅我的答案:programmers.stackexchange.com/questions/19573/…
您刚刚访问过我的公司吗?。没关系; P
@Mark-听起来像是个好问题,去吧。不过,还有一些细节可能会很好。