1.GPU会成为下一个CPU
还记得人们吹嘘CPU的日子吗?现在,即使是最好的CPU很少会超过200$,而上等的显卡(CPU)通常都在500$、600$,甚至更多。对于游戏玩家来说,他们更喜欢吹嘘自己的显卡性能,而不是CPU。
越来越多的软件使用GPU,诚然,也有些早期就使用图形处理的,比如Web浏览器中的那样,但是,我们看到越来越多的应用虽然无需绘制精美的图片,但仍然被改写以利用GPU的并行架构。物理学家用GPU研究物质;化学家用他们研究化学反应;天文学家用显卡模拟星系;生物学家在热门研究中用GPU处理统计数据。今年开始,大家又用GPU来开采比特币了。
存储好你的比特币,或许哪天就成真了。
2.数据库将会做更加复杂的分析
数据库将会以更加高效的性能设计问世,他们能够非常有效地使用RAM和玩转存储层次。未来的数据库不光是存储数据,许多数据库系统都内置了成熟的报告引擎(商业智能),能够运行更加复杂多变的算法,能够分析数据、在数据模式下更有效地搜索数据,以及做更多目前被吹捧的“大数据”相关工作。
3.一切皆为JavaScript
“ 一切皆为JavaScript”,未来,JavaScript将不仅仅是一门编程语言。它除了在客户端占据主导地位外,它还拥抱服务器端,比如Node.js。在智能手机领域,越来越多的HTML5本地应用诞生。此外,许多流行的编程语言都可以编译为JavaScript,比如Java代码可以编译为JavaScript、C/C++代码、Python代码等。
4.Android无处不在
Android几乎可以在每个设备上运行,它除了应用在手机上,它还将被应用在相机,比如即将上市的Instagram相机就是采用Android系统;Android电视、手表、汽车、甚至是耳机。这一些都说明Android将越来越融入人们的生活。
5.物联网——比以往都多的平台出现
Android(Linux)统治世界的一个作用是越来越多的对象都将会被联入物联网,并且会有越来越多的平台出现,其中一个重要的平台就是汽车。导航和购物仅仅是个开始,而无人驾驶汽车的推出将会为开发者带来更多的获利机会。
Android系统可以提供一个统一的内核,而每个平台上都需要一些定制的功能,其中的核心是要弄清楚新领域需要哪些必不可少的新功能。例如机器人玩具,可能需要内容过滤器,以提供与年龄相适应的内容;恒温器则需要与天气预报交互。
6.开源将会找到新的方法盈利
对于许多成功的开源项目来说,例如Android、Ubuntu或MySQL,它们仍然存在一个棘手的问题,就是如何赚钱来支持发展。这或许也是许多开源人的困惑,如何通过开源项目赚钱,将来肯定会有新法子出现。最好的开源项目就是在维护好用户的基础之上拧紧螺丝,搭建一个相对稳定的开源生态系统。
7.WordPress Web应用程序将比比皆是
WordPress是一个以PHP和MySQL为平台的自由开源的博客软件和内容管理系统。WordPress具有插件架构和模板系统。 Alexa排行“前100万”的网站中有超过16.7%的网站使用WordPress。
8.插件将取代成熟的项目
许多软件的成功都得益于拥有大量优秀的插件,比如Photoshop。现在,在应用程序上安装/更新插件都非常简单,例如MagicHour用户可以像分享照片那样共享过滤器。此外,大多数平台都提供了一个很好的插件API,这些肥沃的生态环境上充满着成千上万的模块、库和插件。
9.命令行将长存
命令行既简单又可扩展,还十分灵活。如果你有一个脚本,你可以轻松地对它进行扩展,并且可以黏贴到其它脚本上。
10.编辑技能将会逐渐普及,但真正的程序员仍将是少数
在过去50年里,人们努力试图使编程变的简单,好让更多的人来学习编程。但人们学会的仅仅是一些最基础的技能,有95%的人都能弄清楚if-then-else结构,但程序员不仅仅需要懂这个,教会更多的人理解if-then-else结构是好事,但这并不意味着他们就可以成为程序员。
一个真正的软件开发者是有很多类型的,编写代码只是最基础的技能。真正的程序员能够深入程序内部一探究竟,能够把客户需求转化成具体的功能等等。
11.外包和内包将会陷入僵局
外包和内包现象还会继续存在。外包队伍将会通过低价来赢得工作,但他们也会遭到一些自动化工具带来的威胁。一些基础、低端工作将会被自动化工具所取代。真正的工作将会留给那些懂得深入业务的人员来做。
12.管理层将继续误解程序员和编码
对程序员来说,最痛苦地事情莫过于服从没有技术背景的人领导,如果对业务不了解,无法把客户的需求转换成具体的业务设计那就更加悲剧了。现实中这样的管理层的确存在,并且还会继续存在。
以上仅是对未来编程发展的预测,当然,作为程序员必须始终紧跟不断发展变化着的编程技术趋势,否则就无法保持自己在这一活跃领域中的竞争力。