发表时间:2022-03-25来源:网络
到目前为止小码王一直定义着少儿编程的行业标准,有众多的模仿者。但模仿者们只知道小码王开了Scratch、Python和C++的课程,却不知道我们的为什么开这些课,只知道小码王的教学效果好,却不知道我们是怎么做到的。这篇长文,是小码王首次向行业揭秘我们的武功心法,以此推动整个行业的进步,从而惠及更多的孩子。

01
Scratch ——让编程像说母语一样简单
Scratch被定义成一个“拿来玩的技术”,很多培训机构不屑于讲授,因为它不是商用编程语言。但对小学阶段的孩子而言,商用化强语言的挑战太大了,且不论小学生能不能掌握,就连大学生也只有不到20%的学习成功率!目前普遍的教学能力,根本无法确保小学生高完课率地学习,于是,出现了退而求其次的解决方案——让小学生从H5入手学习编程。
由此可见,培训机构以培养软件工程师为发心,碍于小学生学不了,却又不想丢掉这个年龄段的市场。这是商业利益和狭隘教育目标共同作用的结果。

如果将编程归于理科,多数人不会反对——程序员在人们心中的印象已根深蒂固;可一旦将编程归于文科,大部分人便不认同了。其实,编程语言就是一门语言,跟英语、日语、法语没什么区别,也是由单词和语法构成的,只不过它是和计算机交流的语言,是伟大的哲学的产物!不错,每一门编程语言的发明者都是哲学家,他需要经过一个上帝视角的思考过程,设计最简明的规则,去解决计算机中几乎全部的问题。如此看来,孩子选择了一门代码编程语言,也就接受了语言发明者的哲学思想,虽然每一门流行的编程语言都是伟大的,但不同的语言“性格”非常不同:Pascal就像处女座的桌面一样完美、规则,而H5的桌面则一片混乱。
我们希望,孩子不仅仅学习编程语言的规则,还要去梳理和思考发明编程语言的思想。来读读这首《Python之禅》吧,Python的发明者将Python的“性格特点”融入开发环境中:
Beautiful is better than ugly.
# 优美胜于丑陋(Python以编写优美的代码为目标)
Explicit is better than implicit.
# 明了胜于晦涩(优美的代码应当是明了的,命名规范,风格相似)
Simple is better than complex.
# 简洁胜于复杂(优美的代码应当是简洁的,不要有复杂的内部实现)
Complex is better than complicated.
# 复杂胜于凌乱(如果复杂不可避免,那代码间也不能有难懂的关系,要保持接口简洁)
Flat is better than nested.
# 扁平胜于嵌套(优美的代码应当是扁平的,不能有太多的嵌套)
Sparse is better than dense.
# 间隔胜于紧凑(优美的代码有适当的间隔,不要奢望一行代码解决问题)
Readability counts.
# 可读性很重要(优美的代码是可读的)
Special cases aren't special enough tobreak the rules.
Although practicality beats purity.
# 即便假借特例的实用性之名,也不可违背这些规则(这些规则至高无上)
Errors should never pass silently.
Unless explicitly silenced.
# 不要包容所有错误,除非你确定需要这样做(精准地捕获异常,不写except:pass风格的代码)
In the face of ambiguity, refuse thetemptation to guess.
# 当存在多种可能,不要尝试去猜测
There should be one-- and preferably onlyone --obvious way to do it.
# 而是尽量找一种,最好是唯一一种明显的解决方案(如果不确定,就用穷举法)
Although that way may not be obvious atfirst unless you're Dutch.
# 虽然这并不容易,因为你不是 Python 之父(这里的Dutch是指Guido)
Now is better than never.
Although never is often better than *right*now.
# 做也许好过不做,但不假思索就动手还不如不做(动手之前要细思量)
If the implementation is hard to explain,it's a bad idea.
If the implementation is easy to explain,it may be a good idea.
# 如果你无法向人描述你的方案,那肯定不是一个好方案;反之亦然(方案测评标准)
Namespaces are one honking great idea --let's do more of those!
# 命名空间是一种绝妙的理念,我们应当多加利用(倡导与号召)
03
C++——深入技术体会算法之美
经过了两年发展,Scratch + Python + C++的少儿编程课程体系已经渐渐统一了这个行业,我不想强调这个标准是小码王定义的,这不重要,但是标准的抄袭者并不清楚如此定义的逻辑。

不可否认,C++是信息学奥赛的竞赛语言,然而当整个行业都将C++课程定义为信息学奥赛课程,这将成为噩梦。另一个噩梦,是信息技术纳入高考,少儿编程将从素质教育变成应试教育。我不知道这样改变后,我们还剩多大的空间做真正的教育,纯然地让孩子得到发展。
为什么我们要教孩子C/C++?虽然C/C++语言不是第一个高级编程语言,但是它们深刻影响了后来出现的高级开发语言,C++甚至影响着计算机开发语言的整个世界。
计算机技术的每一步演变,都是技术的进步,思想的革新,对问题的解决,对局限的打破。如果一个人有机会学习两种不同年代的编程语言,就会深入地理解,这些人类历史上最聪明的人,他们的反思和对技术的认识。
另外,由于C++彻底兼容了C语言,而C语言有能力操作计算机硬件中几乎每一个资源,所以深入学习免不了要知悉计算机体系结构,这是一个有机会打开CPU外壳去看内核的技术。因此,让孩子去参加信息学奥赛,我们并不聚焦于取得奖项荣誉,更希望孩子在学习过程能够深入技术,体会算法之美,思考C/C++发明者的思想,得到人生真正宝贵的财富。
04
小码王的教学技术选择逻辑
Scratch语言作为少儿编程学习的入门语言趋近完美,对学生实施案例的挑战和获得成就感的支持趋近完美,经过任务驱动建构主义教育的指引,课程的研发、教师的培养和学生学习的宽容度都相对容易实现。但是,也只能无限地趋近完美,因为只能无限地趋近对孩子真正的了解。

从Python开始,编程教育进入了真正的挑战。即使大学,目前的教学成功率也只有20%左右。然而,个人的学习能力存在很大的差异,无论课程内容、授课能力多么差,完课率多么低,也会有学生跟着学会,甚至50元的一本的技术书都能让个别天才学会编程。
但是我们不一样,我们追求的是95%以上的学习成功率。为什么我们能做到呢?
我们发现,学生对编程的理解分成几个层次:知识,认知,编程能力,编程经验,新技术获取能力,协作能力,创造力。
其他机构之所以目前学习的成功率比较低,是因为多数教学停留在知识阶段。但对于学生来说,实践过程形成的对知识的理解程度远高于单纯知识的学习,他们进行代码编程的挑战在于编码能力和排错能力的提升,从而编码量的积累才是关键。
为帮助多数学生突破这个阶段,我们创造了任务驱动、小组协作、圆桌讨论和课后知识整合的教学模式,课上50%是代码实现和探索,25%是讨论和分享,剩下25%才是知识讲解和代码示范,最大程度地推动了学生主体的教学实施。
对C++课程,我们有更高的培养期待。我们不但提供同行都有的竞赛辅导、考题训练,还提供和Python类似的语言基础课程,根据学生的认知特点,挖掘C++知识点背后更深一层的计算机文化和计算机组成原理,让学生不仅能应对信息学奥赛,还拥有深入学习编程的基础。
05
小码王的教研心法
现在,我把我们课程设计的秘密心法告诉你。我们认为:发自内在的建构主义教育,将引导和激发孩子的内在成就感作为核心动力推动孩子学习。
从2004年起,小码王的管理团队成员便在成人编程教育中进行探索,直至将该思想贯穿在小码王所有课程设计和授课过程中,奠定了整个行业任务驱动教学法的基础,开启了编程教学领域的新篇章。从我们倡导开始,编程第一课的“Hello world”逐渐消失。
2005年,基于认知曲线模型设计每日课程,我们又提出了编程学习的认知曲线,系统地分析和描述了学生认知模型中的知识运用能力、代码实现能力、排错能力、逻辑能力和学习能力的变化过程。
事实上,每位优秀的教师在教学经验达到一定程度时,都会有一个认知曲线去引导他上课,但是教师的认知曲线是隐性的,我们成功地在组织层面将隐性知识显性化,使我们的教师通过专门的培训讲授课程,从一开始就像一位有经验的老教师那样了解学生的认知状况。基于建构主义教育定义我们的课程,意味着学生是学习的主体,而教师只是支撑他们探索的助手,加之将编程作为实施建构主义教育的最佳课程载体,我们获得了近乎100%的完课率。
我们在以前的文章中提到,学习效果取决于以下因素:
学生的学习能力教师的授课能力课程研发的成熟度和学习内容本身的挑战性。
为衡量学习效果,教育体系通常采用两种思路,一是选拔制,二是培养制。高考体系、竞赛体系大体走的是选拔制路线,将学生的学习能力进行分层,但对授课能力、课程研发水平和学习内容的选择都不够重视,学生学不会就是学生差。
学生家长的痛苦和焦虑也源于此,因为家长要的是培养制,理论上社会培训机构属于培养制,所以家长觉得和培训机构合作是唯一的救命稻草。但是,并非每个机构都有实力、教育理念和教学经验,应对授课能力和课程研发带来的巨大挑战,即使小码王也付出了巨大的努力。
现在,我们拥有人均超过30000小时代码编程授课经验的核心课研团队,我们拥有曾任纳斯达克上市编程教育企业的首席讲师,我们真正站在教育的角度,最早在行业中提出了任务驱动、认知曲线、游戏入门等等概念。所以,我们希望家长们与我们一起共同培养孩子面向未来的能力!也进一步希望通过我们的努力,帮助前期和后期进入的部分友商摆正方向,共同为学生提供丰富多彩的教学服务。
皓盘云建最新版下载v9.0 安卓版
53.38MB |商务办公
ris云客移动销售系统最新版下载v1.1.25 安卓手机版
42.71M |商务办公
粤语翻译帮app下载v1.1.1 安卓版
60.01MB |生活服务
人生笔记app官方版下载v1.19.4 安卓版
125.88MB |系统工具
萝卜笔记app下载v1.1.6 安卓版
46.29MB |生活服务
贯联商户端app下载v6.1.8 安卓版
12.54MB |商务办公
jotmo笔记app下载v2.30.0 安卓版
50.06MB |系统工具
鑫钜出行共享汽车app下载v1.5.2
44.7M |生活服务