Scratch初体验
3月23日这天我参加了学校的招聘会,顺利拿到一个实习。简单来说我的工作就是教小孩子编程,最近Python火得一塌糊涂,连浙江小学都在学。我所在的机构提供小学这个阶段的编程教育,我很有幸能把自己的知识分享出去,尤其是分享给未来的AI一代。MIT(麻省理工大学)搞了一个叫Scratch的东西,是专门给小朋友设计的可视化编程工具。
Scratch - Imagine, Program, Share
可视化我很熟悉,我上大学三年以来基本都在把各种数据用各种颜色各种图标画出来。不过这编程可视化与数据可视化有所不同。编程可视化或者叫可视化编程,是不需要在编辑器界面打代码的,它用‘积木’来‘搭建’程序。我在第二天去公司面试,当场给老板上手撸了个程序——辛德瑞拉的字符串,就顺利通过了。点击链接可以看到我在Scratch社区发布的项目,还可以在线运行一下试试,按“A”键开始。
打开Scratch3.0的编辑界面就是这样的,他还提供了中文版的,对国内用户十分友好,翻译通俗易懂,我觉得这个简单到真的不需要太多说明了,只要识字就会了。即使零编程基础,随便拖几个积木玩玩,玩着玩着就会了。

而且官方也附带入门教程,还有中文社区,也提供一些优秀作品以供学习。

我的项目就是用了很多的角色控制的模块,核心功能就是那只鸽子做的字符串对比处理的工作,然后加了《灰姑娘》这个故事中的一些情节。字符串处理算是编程的一项基本功了,几乎每一门语言的新手入门教程都会有字符串的内容,当然找素数也是。 好像现代童话的《灰姑娘》删掉了一些情节,我记得我小时候读的《灰姑娘》有继母不让她参加舞会让他捡豆子的情节。现在大概觉得继母这样做有点神经质就取消掉了。哎,多好的教学素材。

假设用字符“X”代表豆子,其他字符代表灰,那么继母的工作就是打乱一碗豆子(“XXXX”)与一堆灰(“SDhjdjgdwebdkwefe”)的排列顺序,这个豆-灰混合物就可以用“XsdadassXadasXXssdad”来表示,而仙女教母派来的鸽子就是把这个豆-灰混合物用经典算法冒泡排序中的方法,比较字符的值,挑出豆子(“XXXX”)。

一开始,我的继母用的是官方的巫婆的那个形象,与目前这个版本比起来,那个后妈比较惊悚。给老板看了以后,她非常喜欢我做的这个项目,然后建议我换一个形象柔和一点,色彩明亮的人物,再加一个漂亮的背景,这样小孩子会比较喜欢。我努力回忆了一下童年看过的动画片,最后还是锁定了迪士尼版本的灰姑娘形象。童话梦工厂真的很梦幻。
目前,这个项目还只不成熟。当时时间紧迫,我暂时随便抠了个图,人物有的地方缺了一大块。而且动画还没有配音,如果加上声音应该会很有喜感。