我们的组内成员都是有多年竞赛与竞赛教学经验,并且想一直试图用技术去普及编程教学。
在出发来上海的前一天,某组员在杭州某初中教竞赛。在 3 小时的教学中,居然消耗了一多半的时间教授学生们如何搭建运行环境,安装 python,安装 ide。
在我们看来,让小朋友们过早的接触繁杂的运行环境安装是可以用技术避免的。在学习编程的初期阶段,我们希望通过一些前沿的技术去屏蔽掉一些技术细节。让小朋友们更快乐,更快捷高效的去入门编程。避免产生为难情绪。
参考市面上的一些主流 Web IDE。为 k12 量身订造一套 Web IDE(可以说就是 Playground)。
其中最为核心的 「运行代码」 功能,使用两种方法实现。
- 需求:
不能和传统的 Online Judge 一样,局限语言,局限代码,局限思想。需要给用户创作的空间;
构架要简单,用起来要够简单,使用者不需要了解过多细节,才能将 Delight 大面积普及;
在保证 前2条的情况下,需要安全。更需要廉价。作为一个公益组织,资金及其宝贵。
- 我们使用:
IBM BluMix 经过前端封装后,可直接在 openwhisk 上运行代码,按运行时长收费。无后端存在,简单高效又便捷,可无限弹性分布式弹性部署。
基于 青云,Azure api,启动vm,运行 CodeVS Judge(基于runc 0.0.7)更高效的性能,成本更低,更适合教育场景。(注,CodeVSJudge 已在Hackathon 自研完成,hackathon主要做的事情是利用 CodeVSJudge,在青云,Azure按需动态弹性扩容)。
干掉繁杂低效无趣的纸质教程。新一代交互性的电子出版物。
因为各家的api非常给力,尤其是 IBM 的api 超出预计的好用。周六中午 v0.1 就完成了。 于是我们继续完善我们的idea。从一个 web ide => 变身 playgroud
首先,在这里定义我们的
- 需求:
作为一个playgroud。构架要简单,用起来要够简单,使用者不需要了解过多细节。但是,需要有高扩展性。
在大家熬夜开发后,在周日夜间还是完成了 v0.2 ,我们进入了 0.3 的开发阶段。
我们利用 MicroSoft botFramewrok 作为整个人机交互的平台。嵌入进 v0.2 中。完成从学生身上获取信息。
我们利用 blueMix 的 tradeoff-analytics 更科学有效的帮助学生决策如何进行下一步学习的方向
利用BlueMix tone-analyzer和 MicroSoft Knowledge,感知学生在学习中的状态和情绪,动态的调整教程与教学策略。
- 综述:
我们需要摸索并打造一个轻量级的高效k12编程学习平台 或 规范。
以一种标准件的形式,降低老师的学习成本,避免了极大的东西部教学能力差距而难以普及的问题。并规范流程,让更多人可以来出 高效的教程。使k12编程入门 可以大规模的普及
利用 AI,利用 认知 API,动态感知每个学生的学习状况。为其自动量身定制个性化的学习方案。
- 利益相关:
开发者多数为公益项目 codevs 成员,积累千万人次的k12在线编程教学数据与相关经验。立志于更好的推广编程教育。