代码之家  ›  专栏  ›  技术社区  ›  Jon Onstott

软件开发会合并吗?

  •  1
  • Jon Onstott  · 技术社区  · 16 年前

    在系统管理部门,服务器和IT基础设施正被转移到数据中心,IT人员有时会被裁减。同样的事情也可能发生在软件开发人员身上,世界上的软件可以由几个大公司而不是由这么多的开发人员来生产吗?

    10 回复  |  直到 16 年前
        1
  •  3
  •   Nate    16 年前

    不。

    构建软件并不是一个可以很好扩展的活动。如果一个女人生孩子需要9个月,那么一个月需要18个女人吗?上面有人提到了“神秘人月”——这个问题首先在那里被讨论过。在某一点上,团队中开发软件的通信和管理成本实际上开始阻碍前进的势头。

    还有一种观点认为,伟大的程序员和普通程序员(或者那些浪费时间在StackOverflow上发布的程序员和那些没有发布的程序员)之间的生产率有10倍的差异,这也是神话(或者也许不是神话)。 净负生产力程序员 -那些通过不好的实践,不好的设计决策,或者以某种方式破坏团队士气的人 消极的 生产力。

    此外,大多数软件公司专门从事一种类型的软件或一种语言,而且总是有新的东西出现。”创新发生在其他地方”-一旦你足够大,你就可以安心地做你一直做的事情,所以你不会去寻找可能破坏你当前模式的新事物。

    开放源码现在已经很大了-所以你不能真正得到一个大公司,它会把所有的软件都锁起来,除了他们的软件。(不管微软有多想…)

        2
  •  1
  •   ist_lion    16 年前

    从短期来看,我会反对。有了TDD、配对编程和其他东西,看起来更小型、更敏捷的团队是可行的。

    我总是回到“神秘人月”之类的事情。我可以有一个拥有1000名开发人员的大公司,但这并不意味着一个1000人小时的项目可以在一天内完成。

    只是看起来不太管用

        3
  •  0
  •   u07ch    16 年前

    有些人会去看看印度的大型开发公司,一旦所有的问题都解决了,他们就会认为这是一种可能。

        4
  •  0
  •   Janusz Daniel Rindt    16 年前

    总是有人试图自动化软件的生成。只需编写UML,然后就可以从程序中神奇地编写软件。

    但是系统管理员总是需要的,也许不再那么多了。还有成千上万的小型IT基础设施和服务器托管公司。

    软件开发也是如此。随着工具和框架的改进以及对实际程序员的所有需求都将减少。但总会有小公司在做定制工作,而像SAP这样的大公司在构建大框架。 而且还必须有人编写框架。

    所以不要害怕你的工作。)

        5
  •  0
  •   Joonas Pulakka    16 年前

    可能部分,但不完全。

    除了各种规模的软件公司(主要生产软件),还有许多公司需要定制软件 部分 例如,雷达设备的固件。这样的公司雇佣了许多独立的开发人员,而将这些工作外包既不实际也不有效,因为这需要有人为需要的东西创建精确的规范。创建好的规范可能比创建软件更困难。

        6
  •  0
  •   Peter    16 年前

    我认为廉价商品硬件和资源(如“云计算”)的可用性 增加 发展的动力更加分散。拥有巨大资源的大型企业,再也无法享受到比独立或小型开发团队更大的优势。

    从某种意义上说,这就像是有几个大出版社,但仍然有许多独立的作者(或作者团体)在那里。例外的是,像所有新的“汤姆·克兰西”系列小说,都是用笔名写的,笔名代表了无数的无名作家。

        7
  •  0
  •   17 of 26    16 年前

    我不认为我们会看到这种情况发生。

    开发软件的很大一部分是对您正在工作的问题领域有深入的了解。一家大公司不可能对许多行业都有重大的问题领域知识。

    与IT或HR等外围支持功能不同,软件开发往往是使公司有价值的核心的一部分。外包核心竞争力是一个非常危险的提议。不仅存在巨大的知识产权问题,而且处理外包的公司很可能会离开或决定不再做这项工作。如果发生这种情况,外包工作的公司基本上已经死了。

        8
  •  0
  •   dkretz    16 年前

    好的软件旨在提高用户的生产效率,这主要意味着理解人们的工作以及他们是如何工作的。考虑到组织和工作流程的巨大多样性,这就要求设计人员和开发人员尽可能接近应用程序的工作点。将这些工作流程规范化为单个应用程序的所有尝试都不可避免地以不匹配任何人工作的软件而告终。

    我不会很快担心它,基于任何软件开发过程目前可用,或已实现。

        9
  •  0
  •   Joeri Sebrechts    16 年前

    服务器的管理是可以自动化的。一个运行良好的现代服务器场不再有系统管理员直接登录服务器。一切都是通过自动化进行部署和管理的。

    与软件开发相比,每个程序都必须由实际的人来编写。创造行为没有自动化。由于这个原因,软件开发更像是一门手艺,而不是一个产业。一个行业可以扩大和扩大。一个工艺只能通过分割成独立的组进行缩放。这就是1000个开发人员项目的工作原理。他们完全由六个人组成的小组组成。

    所以,不,除非有人发明了一种真正的自动化软件创建行为的工具,并把它从一个工艺变成一个行业,否则你不会看到和系统管理员一样的趋势。你所看到的是,这种手工艺品正在低工资国家被采用,雇佣廉价的手工艺品更划算。注意我说的是“能”,不是“会”。软件开发的最大成本是通信,而通信最有可能在离岸时失控。

        10
  •  0
  •   Tim    16 年前

    大公司将不得不这样做,但它永远不会被完全拥有。首先,大型企业将面临一系列困扰大型企业的问题。

    千万不要和一个有着明确目标和编写好代码的技能的开发人员或小团队打赌。最佳实践、优秀工具和知识很容易被所有人访问。没有理由(实际上有很多理由不这样做)将开发转移到集中的组织。