未来编程的十一个预测

译者注:作者对未来编程的发展趋势提出了十一个预言,包括云、物联网、视频、机器学习、法律问题、容器等各个方面。以下是译文。

技术的进步日新月异。午饭刚吃饭,一位从事芯片设计的朋友就会为自己请求宽恕:摩尔定律要求他必须每周让芯片的速度提高0.67%,即使是在假期。如果达不到这个要求,那么芯片的速度就不会每两年翻一番。

为了能在将来打下基础,现在需要对未来的技术方向做出预判。但是,从物联网日趋严峻的安全问题到遍地可见的机器学习,编程的未来变得越来越难以预测。

云将击败摩尔定律

有的人认为芯片速度的发展不会再像八九十年代那样每两年翻一番了。虽然,这很有可能,但是,却不重要,因为芯片之间的界限变得越来越模糊。

在以前,桌面CPU的速度很重要,每隔几年就要重新购买一个更快的CPU才能提高工作效率。而现在,大部分的工作都可以在云上面完成。当你在使用Google搜索时,Google公司庞大的云端可能会投入10台、20台,甚至1000台主机为你寻找正确的答案。

程序员目前面临的挑战是如何为每个用户部署性能足够的计算能力,让用户能够快速完成计算,而不是让用户等的时间太久,以致于闲的逃到其他竞争对手的网站上去。提供云服务的公司能为你解决计算密集型问题,但是你自己必须去寻找并行计算算法让服务器协同工作。

物联网(IoT)的安全性让人忧心忡忡

Mirai病毒的出现给物联网的发展敲响了警钟,这些聪明的小设备也会像普通计算机一样感染病毒。目前并没有一个有效的机制来修复这些设备的漏洞。我们的烟雾探测器、烤箱、烘干机,以及房子里的一切,他们的的软件未必都是最新的,未必安装了所有的安全补丁。设备数量的增加使得监控家庭网络的智能化变得更加困难,因为你无法分辨出连接到家庭路由器上的所有设备。

物联网平台的开放性能让设备具有更大的灵活性,但是也为病毒开发者提供了更多的机会。他们需要做的就是找一个存在漏洞的小设备,然后就能黑进成千上万个同样的设备中去了。

视频将以新的方式主宰网络

当HTML标准委员会将视频标签加入HTML标准时,他们可能只是为了解决插件带来的问题,而并没有想到要重新定义娱乐。在过去,大多数视频是被动消费的。人们坐在沙发上,按下播放按钮,由视频的作者来决定观众能看到什么。

JavaScript对视频的控制是有限的,但是聪明的网页设计师们正在设计一种巧妙的方法,这种方法可以将视频与网页有机地整合在一起,使得用户可以与视频进行交互,控制故事的发展。但是作家、艺术家和编辑们的想法需要编程人员来实现。

控制台将继续取代电脑

人们都喜欢游戏机,游戏机有着强大的显卡和稳定的软件平台,让我们能在客厅释放压力,在游戏中锄强扶弱,或者是踢足球。

客厅控制台只是开始,房子的其余部分的制造商们也可以遵循类似的路线向前发展。制造商可以选择一个开源的生态系统,但他们目前却在建立属于自己的封闭平台。封闭的平台会破坏市场,可能造成一个开关能控制这个灯,却不能控制另外一个。对于程序员来说,这减少了代码重用的机会,使得他们的工作量大大增加。

数据将继续称王称霸

在2016年的美国总统大选之后,一些人开始嘲笑数据分析专家,称他们的分析统计是一种愚蠢的行为,大数据也是毫无用处的,因为专家们对总统选举的结果预测错了。那他们是如何得出这个结论的呢?通过将一组数字(预测)与另一组数字(选举结果)进行比较。其实,他们这时候就是在用数据分析。

人们可能会根据不完美的数据做出错误的预测,但这并不意味着我们应该停止收集和分析数据。数据的收集、整理和分析是当今企业最重要的工作之一。程序员将继续提供更多、更容易理解的数据给决策者使用。但这并不意味着决策肯定是完美的,因为决策者的知识背景和直觉也会影响最终决策。这对于程序员来说需要更加努力地工作,构建更大、更快、更多的数据密集型软件。

机器学习将成为新的标准功能

当大学生们在学习“数据结构”这门课时,他们了解到祖父母们以前写代码的时候是无法依赖一个名为“数据库”的东西的。真正的程序员必须脱离Oracle、MySQL或MongoDB而对数据进行存储、排序,以及关联数据。

机器学习算法在最近这几年得到了突破性的发展,过去,程序员需要自己编写大量的代码来执行复杂的分析,但是,像R语言这样的商业智能工具逐渐流行起来,并开始成为一些软件的基本功能。

机器学习算法不会在一夜之间发生翻天覆地的变化,目前我也不清楚它的未来会是什么样子,但是很明显,越来越多的商业计划依赖于机器学习算法来找到最佳的解决方案。

随着个人电脑的衰退,UI设计将变得更加复杂

在智能手机、客厅控制台和平板电脑崛起的时候,唯一仍然坚持使用个人电脑的人是上班族和需要交作业的学生。

以前,程序员在制作UI的时候可以假设软件或网站用户都有一个键盘和一个鼠标。但是现在很多用户却没有键盘或者鼠标。智能手机用户用手指触摸一块几乎无法容纳完整的26个字母的玻璃屏幕,而控制台用户正在按遥控器上的方向键。

由于触摸事件与点击事件略有不同,因此,设计一个网站会更加棘手。用户屏幕的分辨率各不相同,屏幕尺寸也差异很大。在将来,UI设计只会变得更加麻烦。

开放性的终结

个人电脑在逐步走向衰退,这也是一个开放而又深受欢迎的市场在走向死亡。

PC的开发人员可以自由地写程序,编译代码,将其复制到磁盘上,然后将这些磁盘打包,向全世界的人销售。而现在,家庭控制台被牢牢地管控着。没有资本投资,就没有人能够进入这个市场。应用商店虽然开放,但它们仍然是一座有着围墙的花园,限制我们能做什么,不能做什么。

我们正在失去共享代码的能力,因为我们正在失去编译和运行代码的能力。PC的终结是开放性终结的其中一个重要的方面。虽然对于现在来说,大多数读者可能还是会有一台可以编译和运行代码的桌面电脑的,但这正在慢慢的发生变化,能够编写并分享代码的人将越来越少。

自主交通就在这里

这不单单是指汽车,一些人想要制造不需要道路的自主飞机,而另一些人想要制造适合简单旅行的自主滑板。

程序员不会控制人们在屏幕上看到的内容,但是能控制人们去哪里,以及如何与世界进行交互。人只是游戏的一部分。所有的东西都会自主移动。

如果你想要吃市中心的某个著名厨师做的食物,那么一个带有保温功能的自主滑板会把食物带到你家里。如果您想要割草,自主割草机将取代邻居家的小孩。

法律会发现新的限制

几年前,最高法院认为对车辆进行跟踪需要有相关的授权,因为当时只有警察会在汽车里装配跟踪器。现在,没有人真的知道哪条规定适用于获取Waze、Google或者其他应用程序的跟踪数据,而这些数据包含了我们的位置信息。警察伪造文件或密码合法吗?如果目标是真正的恐怖分子,或者仅仅是在停车点停车太久而没有及时付费的普通人呢?

这是开发者未来几年的一大难题。软件架构师需要在设计软件地时候提前考虑这些法律问题。在编写任何代码之前,他们需要考虑隐私和法律的问题。如果不这样做,开发者在以后可能会遇到麻烦。

同时,代码本身就是法律的一个版本。程序员定义软件什么可以做什么不可以做。在我们编写代码时,我们实际上定义了世界的某个角落的自由和限制。

容器将占统治地位

理论上我们不需要容器。可执行文件用来运行,操作系统负责权限管理和资源调度,以便让所有的可执行文件可以和平共处。但是,这个梦想的破碎比以往任何时候都要快。可以和平共处的程序逐渐变少,许多程序依赖于各种不同版本的库或其他特殊的环境。即使有“随处可以运行”的技术,例如Java,但也可能会遇到麻烦,因为有各种不同版本的虚拟机。

好的VM可以解决这个问题,但是它们很庞大。容器是轻量级的,易于使用,因此大家都喜欢。我们将在企业的各个角落看到越来越多的容器,因为他们的魅力实在太大了。

作者:雁惊寒译

来源:51CTO

时间: 2024-10-29 04:49:25

未来编程的十一个预测的相关文章

高德发布十一出行预测:全国高速流量增长7%

本文讲的是高德发布十一出行预测:全国高速流量增长7%近日,为更好的服务各地群众十一黄金周出行,高德地图联合交通运输部路网中心.交通运输部规划研究院等权威数据机构,共同发布了<2017国庆节出行预测报告>.报告依据历年国庆.中秋期间的高德地图历史交通大数据.交通运输部规划研究院全国公路历年车流量等权威数据,对国庆期间全国高速拥堵趋势.全国公路流量变化.出行易拥堵收费站.火车站.景区等进行了深入的研判分析及预测,为公众黄金周出行提供了便捷有效的躲避拥堵出行方案及参考. 全国高速流量预计同比增长7%

未来编程的9大猜想

转载:http://geek.csdn.net/news/detail/52753 科学家称时间是匀速前行的,智者称万物以光速而变化--然而科技的瞬息万变仍旧无从求解,一眨眼,又是另一番景象了. 很多人巴不得能够看透未来,但未来五年顶多是猜测而已.预测科技发展简直是天方夜谭,因为创新的影响力足以淘汰当下的很多技能和工具.话虽这么说,我们还是瞅瞅这命运的茶叶渣子,或许能帮我们拨开迷雾,瞥一眼未来,看看科技到那时究竟是什么样的. 站在科技成就的前沿,我们斗胆展望未来.并非所有展望都会实现,甚至连惊喜

雷锋网专访CSAIL主任Daniela Rus:人机关系之未来的最靠谱预测

前言: 人工智能的支持者们和反对者们的争论可能直到强人工智能真的出现的那一天都不会停止,但大众可能并不是非常清楚机器人和AI到底发展到什么程度了,以及认真思考过当机器人和AI真的普及开来,它们到底会对我们产生什么样的影响?很多人对AI的估计要么过于乐观,要么过于悲观.为了弄清楚这些问题,雷锋网采访了MIT人工智能实验室(CSAIL)的主任Daniela Rus,作为全球顶尖高校人工智能实验室之一的主任,Rus教授对AI和机器人的发展有很深的理解,也对人机关系的未来有很深的思考,让我们看看对于这些

陈一舟未来互联网格局分析和预测

DoNews 2月20日消息,据人人公司CEO陈一舟在<情系人人>中回忆,他曾在2007年就预言Facebook未来的商业价值会超过雅虎和Google. 2007年11月29日,陈一舟更新个人日志,对未来互联网格局做出分析和预测.他称,Alexa全球排名前十位的网站中,第6.7.8.10 都是SNS(社会性网络服务),而且market share(市场份额)还在攀升.估计一年之内,这4个 SNS 网站在头十名里要占50% 以上的流量.Facebook(脸谱网) 可能在两年之内成为第一.单位PV

扎克伯格对于未来互联网的3个预测

Facebook联合创始人Mark Zuckerberg今天在哥伦比亚大学进行了一次公开演讲,除了表达自己有为每一个哥伦比亚人提供互联网接入方面的帮助之外,他还发表了有关自己对未来互联网的看法.有人问到Zuckerberg 10年后的Facebook将会变成什么样,于是他利用这个问题谈论了自己对未来社交网络的展望.简单来说,他的论点分为三个部分:1).将会有更多的人使用互联网.2). 我们在发送信息的时候将不再使用传统网页界面,而转向图片或是SMS信息.3). 计算技术的未来将会是增强实境技术.

如何对webbrowser和IE编程(十一)

仅仅用于Internet Explorer的事件 有些是仅仅可用于自动化 Internet Explorer,: ·         OnQuit OnVisible OnToolBar OnMenuBar OnStatusBar OnFullScreen OnTheaterMode 大多数这些事件属于浏览器用户接口. 另外一些必须要先是或者关闭Internet Explorer才发生. 一些情形中,这些事件将在你宿主webbrowser空间的时候发生. 举例来讲,当你在你的应用程序设置Menu

ASP 3.0高级编程(十一)

第四章 服务器进程和ASP Server对象前面的章节已经研究了ASP的一些内置对象.重点介绍的对象有Request.Response.Session和Application对象.ASP中另一个比较主要的对象为Server对象.本章重点介绍这个对象的背景知识和使用方法.Server对象在服务器端脚本中通过实例和使用其他外部对象和组件,提供了一种扩展ASP页的功能的方法.事实上,许多人认为这个对象是ASP之所以能够流行的主要因素.引入Server对象的意义很大,这意味着ASP不必提供人们所需要的所

怡海软件:关于云计算,未来的三个预测

在过去的5年中,云计算飞速发展,并帮助企业成功地改造自身.青云CEO黄允松作为一个在云计算方面有多年从业经验的创业者,分享了他对于 IT 行业过去发展的一些看法以及对云计算未来发展的一些思考,这里怡海软件主要提炼一下他对云计算未来发展的三个预测. 云计算的分工会变得更加细化 云计算未来的分工将会变得更加细化.其实从美国来看"云"的分工已经很细化了,比如说美国的 AWS,看上去它的服务包罗万象,实际上就三大块:对象存储 S3.EC2.Orchestration 编排服务. 再比如Sale

滴滴阿里旅行大数据预测:十一最热城市为丽江 最热景区为西湖

CNET科技资讯网 9月27日 北京消息:十一黄金周前夕,滴滴出行联合阿里旅行联合发布<十一出行预测大数据报告>(下简称"<报告>"),对节前交通状况.热门旅游城市和热门景点做出预测. 预测显示,节前出行高峰将出现在9月30日,当天晚高峰时间将提前2个半小时,主要大城市平均车速同比下降15%,去往火车站.机场耗时将同比增加20%以上.在黄金周期间,境外最热目的地为泰国,国内最热城市为丽江,最热景点为杭州西湖.  9月30日成节前出行高峰 晚高峰车速下降超20%