怎样学编程:比学习代码更重要的事
最近计算机编程的学习运动如火如荼,硅谷的IT公司们也在现实中给我们指出了一条发家之路,家长们对codemonkey和scratch之类的编程教育产品十分热衷。在教育上,总有家长担心自己的孩子在学习编程上落后了,就好比以前大家喜欢让孩子学习奥数,一旦自己的孩子考试的分数不高,就担心孩子是不是没有“别人家的孩子”聪明。其实我觉得大可不必。
我们不能否认计算机编程的前景,但我们也需要警惕,学习计算机编程不是为了学习写代码。我们学习编程,就和我们学习数学一样,是训练解决问题的思维方式,目的并不是为了掌握那些解决问题的工具。
我并不是说写代码不值得学习,恰恰相反,现在很多的工作都需要写代码,或者会写代码会让我们的工作变得更加轻松,但我们并不需要在一开始学编程的时候就抱着将来以写代码为生的心态。但是,我们写代码是为了解决问题,那么在解决问题的过程中,我们需要深思问题本身,而不是解决问题的工具。举个简单的例子,我们购买手机的时候,重点应该是选择自己喜欢或者适合自己的手机,而去哪里买和如何购买是相对次要的东西。更没必要为了买个老款的手机写个代码实现自动购买并付款的功能,我相信除了极客之外,大多数人都不会这么去做。在解决实际问题的时候,理解问题本身就对解决问题更有帮助。重视如何更好写代码而忽略如何更好地解决问题,就会有点顾此失彼。
在现实世界中,我们不能从编程中学到任何事情。孩子们需要学习数学,去理解数字的逻辑;需要学习物理,去理解重力和速度;需要学习生物,去理解呼吸和生长;需要学习艺术,去理解情绪和情感;需要学习心理,理解快乐和积极;需要学习历史,去理解变化;需要学习金融,去理解增值;需要学习传统文化,去理解“忠孝礼义信”。现实的世界并不是机器和机器之间的对话,我们需要让孩子学会学习,学会思考,学会表达,而学习编程是学习,思考,表达的众多途径之一。仅此而已。
就算孩子将来想做一个计算机专家,可以,那么就让孩子自己去探索计算机里的种种奥秘。但是前提是要让TA明白:学习写代码并不是成为一个计算机专家的标志;当别人愿意买你的代码的时候,你才能说自己是一个可以靠编程养活自己的人;而当你写的代码解决了人们关心的问题的时候,你才能说自己在计算机领域小有建树;当计算机里的很多知名国际机构给你颁奖的时候,你才能说自己是这个领域里的权威人士。但是这一条路,非常漫长也非常艰辛,其艰辛程度并不亚于任何其他行业,如果孩子了解这一点,还坚持要在这条路上发展,那么我们当然应该给他提供这方面的支援。
如果孩子想成为一个计算机专家,我们需要给他们普及计算机科学,需要让他们理解什么是计算机科学,如何用计算机去解决问题,计算机的基本运行逻辑是什么,什么是数据,以及如何用计算机的逻辑从数据中挖掘出问题的答案,也就是如何像一个计算机科学家一样思考。这些是比学习写代码更重要的东西。
--end--
声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com