在AlphaDog击败李世石之后,突然变得很清楚,机器取代人类的时代即将到来。库兹韦尔在《奇点临近》中提出,现在人们可以控制机器,并且在不久的将来(约年),机器可以控制人。软银的孙正义也发表了有趣的演讲:在未来的30年中,超智能将诞生。智能机器人的数量将超过人数,所有对象将彼此连接,超功能将移至云端并进入自动驾驶,医疗保健,客户体验,工业制造等领域。
10年前,大家都在学习文字、表格和幻灯片等计算机基础操作。反观现在,如果你还不会或不能熟练使用计算机电脑进行日常工作、生活乃至娱乐。可想而知,就业、工作或生活会有多么枯燥和吃力。据推测,十年后,如果您当时不了解某些程序设计或算法思想,您可能会被淘汰或边缘化。吴军在《智能时代》中提出:“在未来的智能革命和社会中,一个人,一个公司和一个国家只能选择两条道路:要么加入浪潮,成为富有的2%的人;要么观望徘徊,被淘汰。”听着有些危言耸听,但是仔细琢磨,在互联网已成为一种基础设施的今天。在计算就像用电一样成为能耗的明天,无论你是程序员也好,不是程序员也好,编程和算法都应该是未来肯定需要的基础技能。不懂编程的朋友一定认真考虑他们是否应该开始学习编程。尤瓦尔·哈拉里(YuvalHarari)在“人类简史”中对算法的未来给出了更可怕的定义,“一切都是算法,数据就是宗教”。
对于计算机程序员来说,更重要的技能是解决自己和他人的问题。编程就像一把瑞士军刀,可以完成数不清的任务。许多人花上数小时点击鼠标键盘,你给计算机一个正确指令,几秒钟就完成任务。多酷!比如,编个程序控制玩具无人机定时定期定速在自己楼周围飞两圈,有条件的可以在村里试试控制手扶拖拉机或联合收割机。在我的世界(minecraft)里,孩子们可以程序化并自动生成复杂环境和各种生物,避免复杂的操作,在游戏中实践罗列些虚拟梦想,这些东西现实里很难实现,也可以为火爆的《王者荣耀》写个小提示、小脚本或小挂件。Ruby应用一问世,于是乎边学边用,2个小时写了段丑陋ruby代码,解决了我一个人月填报数字表格的海量任务。事实证明,学习程序设计的过程是锻炼问题解决能力的一个更佳机会。
程序是一系列说明如何算数(