为何还有这么多编程工作?[关闭]


28

我不知道为什么由于软件的发展,编程工作还没有“枯竭”。例如,我本人是一名开发人员,这意味着我确实在乎软件(我的意思是我不是那种只需要计算机才能浏览Internet的人),但我仍然不介意我从不在我的Ubuntu计算机上接收更多更新。

我发现它提供了我需要的一切,而更新提供了各种错误修复/改进,但是我一辈子都不会介意将其与当前状态一起使用。在使用Ubuntu的两年中,我从未遇到过严重的错误/问题。

另一个例子是Windows。它几乎一半的用户仍使用Windows XP,这实际上是古老的,但他们发现Windows XP可以满足他们的所有需求(我也同意)。

我可以列举更多示例,但是到目前为止,您已经理解了我的观点和问题。尽管新的“趋势”(如新的移动操作系统)一直出现在新平台上并需要一些新的开发工作,但大部分软件工作仍在我认为是“已完成的项目”或至少足以视为已完成的项目状态。

你有解释吗?


4
我曾经以为Facebook和手机是没用的:)而且我仍然这样做。顺便说一句,我认为原因是人类容易感到无聊。顺便说一句,你不是人类。
工作

9
这些XP用户为什么不使用286s运行DOS?
爱德华·斯特兰奇

3
@Crazy Eddie 286和2.5GHz的双/四核之间存在巨大差异。这种差异是“完成”状态。2.5的四核与6 GHz的32核之间的差异无关紧要。您不需要(不会实际使用)时速可达200​​0 mph的汽车
jd_505 2011年

4
不会,您的汽车是否可以达到1000,2000英里/小时或更高的时速并不重要,您仍然找不到充分利用其潜力的方法(一条路)
jd_505 2011年

4
@ jd_505,只是因为您无法想象它,并不意味着它没有用。

Answers:


33

世界上有数十亿未完成的问题。更不用说人类贪婪了,它每天都需要新的工具来满足自己的幻想。

如果您确实认为不存在任何尚待解决的问题,请尝试解决其中的一些问题:

  1. 当敌对政府关闭电信网络时,可帮助人们进行大规模交流的软件。
  2. 食品和其他必需品分配系统的软件固有地堵塞了印度和乌干达等国家的系统泄漏。
  3. 使能力各异的软件享有更好的生活质量。

我希望这能给您一些视角。


1
点1只能用硬件解决。
Thomas Stock

2
软件可能会对“能力不同”的人有所帮助,但恐怕没有太大帮助。我是小儿麻痹症的幸存者,软件对我的主要作用是给我一种我可以在家完成的职业。
迈克·邓拉维

1
@Thomas:如果不启用软件,硅片将无济于事。您已经在这里有了硬件,但是一旦选择了服务对象,软件就需要大量工作。
Fanatic23 2011年

@Mike:视障人士的文字转语音?
Fanatic23 2011年

26

作为反例,请在街上的鲜花店购物。他们在软件方面的经验可能类似于:

  • 安装一些会计软件-比纸质账本好得多
  • 设置公司电子邮件
  • 建立一个小手册网站,因为其他人都是
  • 添加POS系统
  • 在网站上添加简单的客户订购表
  • 购买一个简单的CRM工具来管理公司客户
  • 与国家和全球销售网络集成,接受非您网站的销售
  • 整合公司电子邮件和CRM
  • 为在线回头客添加特殊的订购工具
  • 在线刊登送货司机广告
  • 通过同意使用分销商订购软件来更便宜地购买鲜花
  • 通过在线管理福利来降低员工福利
  • 在线申请所需的政府许可证
  • 使用软件工具对新员工进行简单的背景检查
  • 让顾问在您的库存系统和分销商之间架起一座桥梁,以便每周自动下订单
  • 电子纳税
  • 将GPS设备添加到可以在办公室跟踪的送货车上。
  • 使用映射/路由软件设计最佳的交付路线
  • 浏览行业数据以确保您的表现符合预期
  • 将包裹跟踪添加到在线客户工具
  • 使用社交网络和评级网站扩展您的网站形象
  • 提供一些免费的移动应用程序,用于订购和检查订单状态(主要针对大客户)。
  • 使用软件为最忠实的客户管理奖励计划
  • 集成会计,库存,客户订购,订单跟踪和分销商订购
  • 通过Groupon促销吸引新客户
  • 必要时更新所有这些系统

对于这样一个简单的业务,这是一项非常糟糕的技术,而今天却似乎都不是太荒谬了(我怀疑这条街上的小花店正在做所有一切,但我敢肯定我们会感到惊讶)。有人必须构建所有这些软件。

我怀疑花店是否会预料到他们将需要如此多的技术,就像我们无法预知明天将可用的技术一样。


12

在过去十年中任何一辆汽车都足够的情况下,为什么汽车公司寻求改进其设计?当咖啡店的新混合已经令人满意时,为什么还要寻找它们呢?当我们所穿的衣服绰绰有余时,为什么时装设计师会创造新衣服?

虽然可能有足够的好,但没有最好的 -只有更好

任何为自己的工作感到自豪的人总是在寻求改进,完善工具,寻求完美。这就是推动科学进步的动力,这是激励艺术家的动力,也是激励企业家的动力。没有最好,只有更好。


1
我同意改进部分,但是考虑到我们已经处于“良好”状态(这是产品的最大百分比),您是否对需求实际上在上升(需要更多人)有一个解释,并且我们只需要一些改进?与在2008年和2009年的模型之间进行一些调整相比,创建汽车设计需要做更多的工作。可能是由于遗留代码所致,因为它们越大,就越难升级/维护?:)
jd_505 2011年

@jd我们在Facebook之前处于良好状态吗?在Google之前?总会有一些可以创建的新东西。您是正确的,软件也需要大量维护,尽管我认为当雄心勃勃的职业目标受到打击时,这些工作只是暂时的回落。
chrisaycock 2011年

11

人们一直在思考与计算机有关的新事物,而硬件也在不断发展,以使您能够做以前无法做的事情。

很难知道从哪里开始,但让我们以看电视为例。

1965年10月,如果您想观看“珍妮的梦”,则必须在正确的时间打开正确的电台。没有其他选择:您无法录制,购买或任何其他东西。而且,如果您错过了,那就太糟糕了。也许几年后,他们会联合起来(如果幸运的话),您可以收看1970年某个时候错过的节目。

哦,在1965年,除了公司和大学以外,没有人拥有计算机,它们通常至少和小型汽车一样大,并且在电视播放中使用计算机纯粹是科幻小说。

到1996年,您可以在VHS上购买“珍妮的梦”,然后可以在可能具有嵌入式CPU的VHS播放器上播放,也可以在可能还具有嵌入式CPU的CRT电视上播放,当然,程序。您可以使用某些设备将VHS的视频输出捕获到计算机中,但是当时的消费者级别的硬件功能非常低,您可能会吞噬大量最新的硬盘驱动器一集,然后只能在屏幕上的小窗口中播放。

2006年,他们开始在DVD上发行“珍妮之梦”情节。当您播放它们时,您的DVD播放器和纯平电视都需要一个嵌入式CPU,这两个都必须有人编程。或者,当然,您可以在计算机上播放DVD,而有人必须对此进行编程

DVD发行后不久,人们开始使用有人必须编程的 DVD翻录软件翻录DVD 。然后,他们将片段编辑为片段(使用某些人必须编程的非线性视频编辑软件),并使用他们的浏览器(某人必须编程)将其视频上传到YouTube(某人必须编程)给其他人以在视频播放浏览器插件中查看(有人必须编程)。

现在,您甚至不必翻录DVD!您可以使用iTunes(需要编程)和iTunes Store(需要编程),购买和下载140集《珍妮之梦》(I Dream of Jeannie),您可以使用计算机上的软件进行播放(这不得不节目某人

虽然我没有对此进行检查,但我强烈怀疑您还可以将那些iTunes版本的“珍妮梦”(I Dream of Jeannie)并在iPhone或iPod Touch上播放,当然,这需要某些人进行编程

而且我完全不知道下一步“ Jeannie的梦想”将出现在哪里。也许在我的手表上,或某种可穿戴的织物上,或投影在我的眼镜镜片上。但是无论它出现在哪里,都必须有人对其进行编程

办公应用?嗯 从90年代初开始我仍然使用Word 5.1,我会非常高兴。

但是还有其他吗?我从事编程工作已有40年了,我希望编程工作的市场会不断增长。


6

因为我们对无用废话的无休止的饥饿,我们已经必须满足。

同样,如果没有软件行业推动对越来越快的计算机的需求,就不需要进行硬件升级。然后我们会在哪里?中国所有这些电子垃圾回收镇将做什么?有毒垃圾的山很快就会变成小山。我们根本无法拥有。


“软件行业推动了对越来越快的计算机的需求”-软件行业?Erm不,需求来自人们
Rocklan

5

Ubuntu和Windows XP仍然足够,因为操作系统和一般的桌面软件已变得不那么重要了。我们不想错过的东西太多了,发生在网络上,例如本网站,FacebookYouTube。那就是构建新软件的地方。智能手机和平板电脑是许多编程的另一个领域,发生了很多令人兴奋的事情。


2

在您的帖子中,您提到了两个操作系统(Ubuntu是Windows XP),说明他们的用户对OS的当前形式非常满意。

Ubuntu和Windows XP是成千上万个创意的结晶。

许多想法(无论是将“开始”菜单放置在屏幕的左下角,还是设计Microsoft Excel)都经过了如此彻底的开发。是的,它们确实已经达到令人满意的状态,但是请考虑一下我们当前的软件以及软件工程构想将在未来带来什么。

我们的需求和希望随着技术的发展而变化。我们想充分利用技术的潜力。Ubuntu和Windows Xp只是正在进行中的垫脚石(或里程碑)。


2

对于人们实际使用的应用程序和系统:

软件产生更多软件。

形式为:

  • 新的功能
  • Bug修复
  • 竞争对手的业务和应用

2

移动和社交应用程序的开发人员似乎有很高的需求。到处都有启动程序,对于Ubuntu和OS来说,总是有错误-尚无完完全全的内容。只要有人有想法,他们就需要开发人员。


2
我认为开发移动/社交应用程序的开发人员所占的比例很小。在全球范围内,大多数开发人员都在为大型企业或“本地”小型公司工作,这些公司致力于与本国的业务状况相关的某种产品。
jd_505 2011年

1

18年前,我坐在学校图书馆使用Windows 3.1的新286台计算机前。这很酷!比旧的BBC显微镜好得多...但是我完全忘了从那时起我已经坐在18年前的位置了,谁会对我们今天使用的东西有任何线索?我什至不认为我能说出当时的互联网...

我的观点是,我认为我们当中没有多少人有远见或想象力甚至无法猜测从现在起的18年后计算机将是什么样。计算机一直在不断发展和进步,需要不断发展才能实现这一目标。

目前,您想对Ubuntu感到满意,但是当其他所有人都在使用他们的新超级Hokey Cokey 5000或将要使用的任何东西时,您会在10或20年后继续使用它吗?


1

问题可能有解决方案,但始终有优化解决方案的空间。解决方案的使用量越大,即使是很小的优化也可以带来更大的差异。

这似乎是一个抽象点。但事实并非如此。例如,我的一项技能就是A / B测试。我可以从经验中告诉您,成功的A / B测试很少会引入主要的新功能。但是,小的措词更改可能会使更多的人注册您的网站,这可能意味着数百万美元的额外收入。差异是如此之小,几乎没人注意到。然而,这是一个重大的进步,可能找到这样的前景将支付很多薪水。

此外,企业在不断变化。数量惊人的更改要求更改其内部操作方式。随着时间的流逝,他们发现内部效率低下,更好的工具可以缓解这种效率低下的情况。这种不断的搅动和优化是需要真正的人来完成的实际工作。许多工作需要有编程能力的人来完成。(实际上,这是雇用大多数程序员,在企业内部做内部工作的地方。)

此外,趋势是随着时间的流逝,程序员完成我们的工作变得越来越容易。对我们来说,工作越容易完成,让程序员编写程序来做的事情就越有意义。我们发现自己需要更多的程序员。这种趋势能持续多久?我不知道。但自50年代后期以来,这种情况一直在持续,并且没有丝毫放缓的迹象。


1

那里的信息量呈指数增长。您可以期望有用于收集和组织它的工具,现在您可以期望有可以根据特定需求将其过滤掉的工具。

软件顺应社会趋势和需求,随着信息越来越成为社会和工业因素,需求不会下降。信息的形式不计其数,其用途不断扩展,软件开发距离绝种还有很长的路要走。


1

您可以将计算机(及其上运行的应用程序)的用途解释为与优化过程一样狭窄。
这样做,您会看到,有很大的改进空间,而且将永远存在。

同样,在可用性,可靠性,功能和性能(或至少在一定范围内)方面,所有计算机应用程序中的绝大多数都是可怕的。尽管应用程序很少,但质量却在缓慢提高,但平均值却以惊人的速度下降。
仍然要进行大量编程工作的另一个原因是糟糕的设计和糟糕的实现。Jeff Atwood 在此发表了一篇文章,您可能会觉得值得一读。


1

软件仅使我们能够表达针对现实问题的解决方案。鉴于总会有新的问题需要解决,因此总会需要新的软件,因此开发人员总是会工作。


1

就我而言,直到完成其中之一,我们还没有完成。

但更严重的是,计算机科学领域还有许多尚待解决的问题,或者距离“好”还不够的地方。这些问题包括图像识别,自然语言处理,语音识别,以及许多其他“模糊模式识别”类型的问题,人类通常会表现出色,但机器故障严重。与1960年代的野心相比,人工智能的状态相当可悲。总而言之,还有很多工作要做,还有很大的改进空间。

顺便说一下,甚至Ubuntu也可以使用一些改进。对64位吮吸的Flash支持。


1

我想我是从进化的角度来看的。如果社会是静止的,我们最终会想出如何满足我们的实际需求的,那很好。

推动发展的是挑战,通常是非常艰巨的挑战,例如自然界或坏人决定他们要夺走我们拥有的东西和/或谋杀我们。我们必须考虑新的方法来克服这一问题。这就产生了对包括软件在内的新技术的需求。对娱乐的渴望也产生了永不满足的需求,见证了从罗马马戏团到现代媒体的一切,但这仅仅是为了娱乐。真正的挑战来自诸如饥饿和危险之类的事物。


1

软件的意义在于,它将随着它所操作的硬件而不断发展。目前,我们只在编写已预先编程到一定级别的软件,而在大多数人编写“ AI”软件之前,这还需要很多年。

当您将Google之类的东西与用于操作车辆中触摸屏界面的软件之类的东西相提并论时,您会发现该技术存在许多空白。

直到我们拥有能够在不断变化的物理和智能世界中扩展和发展自己的软件为止。我们将有大量工作要做。

编辑..当出现新技术或新概念时,许多现有软件会立即过时,并且该类型中的大多数都需要重新创建/发布。假设两年内我们通过思维/思想接口使用计算机取得了重大突破。

即使您可以为大多数操作系统制作一个简单的插件,以将思想/命令转换为键盘/鼠标操作。技术将永远进步,我们不知道在12个月内将有什么可用,而仅在10年内将可用。

甚至不会在量子计算机上开始


-1

总会有新的应用程序,要解决的新问题和新的平台。


1
我之所以这样问是因为,正如我所看到的完全相反,所有问题(用户可能需要使用计算机来解决)都已经解决。很少引入新的应用程序(至少成功的应用程序,例如MS Office / OpenOffice仍然是管理“办公室”工作的最佳解决方案)。新平台一直在推出,但它们只占全球开发人员总数的一小部分。
jd_505 2011年

3
许多新的软件产品本身并不能解决问题(Facebook,Farmville,Twitter等)。
詹姆斯·麦克劳德

3
而且计算机的用途已远远超出了家庭消费者(工业,商业,医疗等)。
James McLeod

我不仅在为家庭用户服务,例如,机场的软件具有所需的功能(显然飞机并不会一整天都在坠毁),而且已经使用了很多年。无论如何,由于我在问这个问题,所以我不能完全确定自己是对的,也许我是错的。
jd_505 2011年

1
@ jd_505,飞机没有从天上掉下来这一事实并不意味着我们的空中交通管制和航空电子系统正在做所有需要的事情。这只是在避免最大的失败。考虑一下:由于调度软件无法立即考虑风暴对机场容量的影响,因此乘客被困在飞机上将近24小时。在9-11时,ATC和军方完全失去了对其中一架被劫持飞机的跟踪,因为他们共享信息的唯一方法是人们在电话会议上互相大喊大叫。
查尔斯E.格兰特
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.