TED演讲:世界上没有现成的答案,编程也不是魔法,而是下一个世界通用语言!
70年代,朋克音乐燃起了一代人的热情;80年代,人们最看重的大概是金钱;但对于我们这代人而言,软件是我们想象世界和现实世界之间的接口,也就是说,我们需要更加多元化的一群人来创造这些产品。
在他们眼中,电脑不再是无聊空洞、复杂神秘的机器,而是可以随意摆弄自由操作的玩意儿。
1.编程助力自由表达
我最早开始接触编程技术是在14岁的时候。那时年少的我疯狂的迷恋着一个老男人,也就是当时的副总统AI Gore先生。我做了和其他单身少女一样想做的事情,我想将这种爱慕之情表达出来,所以我为他创建了一个网站。那年是2001年,还没有Tumblr、没有Facebook、也么有Pinterest,所以我得学习写代码,借以表达这种渴望和爱慕之情,我就是这样开始学习编程的。
起初是作为一种自由表达的方式,就像我更小的时候用蜡笔或乐高表现,长大之后,我以上吉他课、参加戏剧表演来表达一样。但是后来我有了其他更感兴趣的事情,比如诗歌、织袜子、学习法语动词不规则变化,筑造自己的幻想世界。读罗素和他的哲学等。后来我也开始和其他人一样,觉得电脑技术无聊复杂没意思,但今天我是这样想的。
2.编程不是魔法,也不复杂
小女孩并不知道她们不应该喜欢电脑。
女孩子的真的很神奇,她们真的非常善于全神贯注,总爱刨根问底,问一些有意思的问题,比如“是什么、为什么、怎么样、假如等等”,她们并不知道她们不喜欢电脑,实际上有这些想法的是她们的父母。
家长们感觉计算机科学是一门深奥古怪的学科,只属于那些神秘的制造者,它和日常生活的距离太远了,就像核物理一样,他们的想法也有一些道理,编程中确实涉及很多句法规则、控制程序、数据结构、算法、惯例、以及协议和范式,并且我们现在将计算机越做越小,我们将一层又一层抽象的概念叠加,阻隔在人与机器之间,渐渐地我们不再了解计算机如何运作,也不知道如何与计算机交流。
我们教孩子们人的身体如何运作,教他们内燃机的工作原理,我们甚至还告诉他们,你若真心想成为一个宇航员,你也一定可以。但当孩子们走过来问到“什么是冒泡排序算法?”或者“当我按下播放键,电脑是怎么知道的?他怎么知道播放哪一个阶段?”又或者“Linda,互联网是一个地方吗?”我么成年人往往尴尬地无言以对。有人说“这是魔法”。也有人说,“这个太复杂了。”
实际上都不是,它既不是魔法,也没有那么复杂。它只是运转的速度特别特别快。计算机科学家们制造出了这些神奇而美丽的机器,让我们觉得格外陌生。我们和电脑之间的语言也非常地晦涩难懂,以至于如果没有特意设计的用户界面,我们根本不知道如何与计算机交流。这也是为什么没有人意识到当我在学习法语不规则动词变形时,是在锻炼我的模式识别技能。
当我对编织着迷时,我实际是在遵循一系列象征性的指令,包括不断地内部循环,还有罗素毕生所追寻的英语与数学之间连接的语言,最后在计算机里得以实现。那时候我就是一个程序员了,但是没有人知道。
今天的孩子通过点击、滑动、缩放的方式认识世界,但如果我们不给他们提供工具,教他们用电脑创作,那我们只是在培养消费者而不是创造者。
3.不是幻想,每个孩子都可参与
这样的想法让我找到一个小女孩,她的名字叫Ruby,今年6岁,她天不怕地不怕,充满想象力,爱指挥人。
每当我自学编程碰到一些问题,比如“什么是面向对象的设计,什么是无用单元收集”时,我就会想象这个6岁的小女孩会怎么解释这个问题。我写了一本关于她的书,书中有很多插图,还有Ruby教会我很多事情,比如她教我不应该害怕自己床下的虫子,还有即使再大的问题也只是一堆小问题堆积起来的。
Ruby还介绍她的朋友给我认识,带我看到网络文化多姿多彩的一面,她的朋友中有漂亮但不愿意与其他孩子一起玩耍的雪豹,有非常热情但超级凌乱的绿色机器人,有做事雷厉风行但总让人难以理解的企鹅linux,还有理想主义的狐狸等等。
在Ruby的世界里,你可以边玩边学(编程)。比如计算机非常擅于重复,所以Ruby就这样来教大家循环,这是Ruby最爱的舞步,动作是“拍手,拍手,跺脚,跺脚,拍手拍手跳”,重复4次你就学会了“计数循环”。
当你重复这套动作时,我正在金鸡独立,你就知道了什么是“当型循环。”你一直重复这套动作,知道妈妈变得非常生气,这就是“直到型循环”。最重要的是你学会了世界上没有现成的答案。
在编制Ruby的世界的课程表时,我会亲自去问孩子们他们如何理解这个世界,他们有什么问题,然后我会组织游戏测试环节,给孩子们展示四幅图画,给他们的图片中有汽车、杂货店、小狗和厕所,然后我会问他们“你们觉得这些东西中哪个是电脑呢。
孩子们会非常保守的说,“这些都不是电脑,”我知道电脑是什么,它是个发光的盒子,爸爸妈妈每天花好多时间在它面前。”我们继续聊天,他就会发现,世界上,汽车也是一个电脑,因为车内有导航系统。小狗本身可能不是电脑,但它脖子上戴了个项圈,项圈里面可能有电脑;在杂货店里有各种不同类型的电脑,如收银系统、防盗系统。接下来我给孩子们发了写印有开关图样的小贴纸,告诉她们今天你们每个人都有魔法,可以将这个房间里的适合东西都变成电脑。‘’
孩子又说“感觉好难啊,我不知道怎么做事对的。”我安慰她们不要担心,你们的爸爸妈妈也不知道正确答案。她们也才刚刚听说这个叫做互联网的东西,但是孩子们你们将会是生活再一个到处时电脑的世界里,有一个小女孩子逗乐过来,她手里拿着一个自行车灯,说“这个车灯要是电脑的话,就可以变颜色。”我说,“那真是一个不错的想法,还有什么其他的作用吗?她想了又想说,如果这个车灯是一个电脑的话,那我和爸爸骑自行车旅游,然后晚上住帐篷的时候,可以用这个车灯放映电影。这就是我想要达成的效果。
我希望孩子可以认识到,这个世界还有很多需要改善的地方,而改善世界的一个非常棒的方法就是改变技术,而我们每一个人都可以参与到这个改变中来。
4.不同视觉,拥抱力量把握机遇
最后再说一个故事,我们还会自己制造电脑,我们需要了解CPU多爱指挥人、RAM和ROM在帮助记忆上有多有用,组装完电脑之后,我们还给它设计了一款应用。我最喜欢的故事是一个小男孩,他最想做的就是成为一个宇航员,他头戴一个头盔,完全沉浸在手里的纸电脑上,他给自己设计了一套星际行星导航应用。因为他的爸爸,一个独自工作在火星轨道上的宇航员,正待在另一边而小男孩的任务就是安全的将爸爸带回地球。
这些孩子以完全不同的视角看待这个世界,以及我们运用技术的方式,最后技术世界越容易接近,越包罗万象和多元化,这个世界就会更加的多彩和美好,所以大家清河我一同试想一下,加入这个故事中这个世界创事物的不仅有二十来岁的硅谷男孩们,还有肯尼亚的女学生,挪威的图书管理员,试想一下在这个世界里,这些明日的小Ada Lovelace(世界上第一位女程序员)可以永远的生活在真实的0和1中,长大之后的他们,面对技术肯定充满乐高与勇气,他们拥抱力量、把握机遇,挑战世界的局势。
这样的科技世界非常的美好,可以天马行空地发挥,也带着一点与众不同的古怪。
当我是一个小女孩时,我想长大成为一个讲故事的人,我喜欢筑造和幻想世界,其中我最爱的部分就是早上在moominvalley(姆明谷)醒来,下午在Tatooines(塔图因星球)漫步,夜晚在纳尼亚进入梦乡,事实证明,编程对我而言是最完美的职业。现在我还在筑造世界,但不是以故事的形式,而是以代码的方式,编程赋予我神奇的力量,使我又能力建立自己的小宇宙,按照自己的规则和惯例运行,仅以逻辑的力量就可以从无生有,创造事物。