快捷搜索:

从 MicroBlocks 开始你的硬件编程之旅

从MicroBlocks开始你的硬件编程之旅

  种瓜系英荔教育架构师,同时为英荔官方合作伙伴非营利编程教育组织 CodeLab 创始人、CodeLab Adapter 核心开发者、国内人工智能学术社区 PaperWeekly 联合创始人、在线教育开源社区 Open edX Authors & 中国社区发起人之一。

  英荔教育与 CodeLab 均为 MicroBlocks 官方合作伙伴,将共同面向全国推广这一小巧、快速、用户友好的图形化硬件编程平台,让其惠及更多编程群体。

  MicroBlocks 是硬件编程(物理计算)领域的 Scratch, 它是第一个具有 Scratch 临界质量的硬件编程平台,能够帮助数以千万的新手真正入门。

  我跟老杨便决定好好学习单片机编程(或者叫它硬件编程/物理计算),那时我已经有一些软件编程经验,但只是初学者。很快我们就发现,学习单片机太难了!可怕得像一场灾难。

  翻了后一页,就忘了前一页的内容,因为每一页都有无数细节,根本记不住。也不知道哪些重要哪些不重要,作者只是一股脑都告述你。玲琅满目的新名词,看起来完全不像中文,读起来像生造词。每一个概念又牵扯出一大堆其他概念,好像永远没有尽头。我们这本看不懂,就看那本,但都差不多。

  多年后,我在阅读《Mindstorms》时, 几乎感动得落泪,这是一个何等慈悲善意的心灵,为初学者少受些苦难,对教育界宣战,“要改变的是学校的教育机制,而不是孩子”。Seymour Parpert 所抨击的计算机教育里的那些灾难性想法/做法,我大多都亲历过,尽管这本书在我上学时,已经出版了 30 年(40 年后才有中文版),但整个计算机教育领域好像闻所未闻似的(今天基本依然如此)。可想而知,主流计算机教育领域到处都是车祸现场(今天基本依然如此)。

  当我遇到 MicroBlocks,我突然意识到,这可能是我十年前跟老杨一直寻找的东西。十年过去,它终于出现了。如果我们在上学时遇到它,能用它来做多少有趣的东西呀!

  正在阅读文章的你可能是一个有经验的 Maker(创客),觉得 Arduino 已经很好地解决了入门困难的问题,它让业余爱好者也可以很好地玩转硬件。的确,Arduino 是硬件编程领域的重大进步,让这个领域不再那么令人生畏。在 Arduino 之后,MicroPython 又进一步降低了门槛。

  随着 Maker/STEM/少儿编程在教育领域引发越来越多的关注,更多的人试图进一步降低编程的门槛,让新手不仅能进行软件编程,也能成为 Maker,对现实世界的硬件进行编程,进而制作各种有趣的小发明。

  Scratch 在帮助新手入门编程方面取得了巨大成功,截至今天(2022.11.22),单是 MIT Scratch 社区就已经有 9958 万的用户,年龄段分布从 4 岁(22 万)到 80 岁(1.2 万)。

  也许是受到 Scratch 的鼓舞,人们想把 Scratch 的成功经验移植到硬件编程领域,他们的想法是,使用图形积木来控制硬件!

  图形化编程环境通过减少编程过程的语法错误来帮助学习,一些研究表明,学习语法的困难只在早期阶段会遇到,学习编程的一个更大挑战是,学习者需要能够正确预测源代码的更改对程序运行行为的影响。

  MicroBlocks 通过提供拥有活性(liveness)的编程环境,缩短了反馈循环,从而鼓励学习者通过「试错」进行实验和编程。这些改进极大提升了编程的「可理解性」。

  MicroBlocks 相较于其他编程平台具体优越在哪些地方?我在比较图形化硬件编程平台做了细致讨论。

  我曾经在硬件编程上吃了太多的苦,这正是我如此热衷于分享 MicroBlocks 的原因:不希望新手们再去忍受那些不必要的痛苦!

  种瓜系英荔教育架构师,同时为英荔官方合作伙伴非营利编程教育组织 CodeLab 创始人、CodeLab Adapter 核心开发者、国内人工智能学术社区 PaperWeekly 联合创始人、在线教育开源社区 Open edX Authors & 中国社区发起人之一。

  英荔教育与 CodeLab 均为 MicroBlocks 官方合作伙伴,将共同面向全国推广这一小巧、快速、用户友好的图形化硬件编程平台,让其惠及更多编程群体。

  MicroBlocks 是硬件编程(物理计算)领域的 Scratch, 它是第一个具有 Scratch 临界质量的硬件编程平台,能够帮助数以千万的新手真正入门。

  我跟老杨便决定好好学习单片机编程(或者叫它硬件编程/物理计算),那时我已经有一些软件编程经验,但只是初学者。很快我们就发现,学习单片机太难了!可怕得像一场灾难。

  翻了后一页,就忘了前一页的内容,因为每一页都有无数细节,根本记不住。也不知道哪些重要哪些不重要,作者只是一股脑都告述你。玲琅满目的新名词,看起来完全不像中文,读起来像生造词。每一个概念又牵扯出一大堆其他概念,好像永远没有尽头。我们这本看不懂,就看那本,但都差不多。

  多年后,我在阅读《Mindstorms》时, 几乎感动得落泪,这是一个何等慈悲善意的心灵,为初学者少受些苦难,对教育界宣战,“要改变的是学校的教育机制,而不是孩子”。Seymour Parpert 所抨击的计算机教育里的那些灾难性想法/做法,我大多都亲历过,尽管这本书在我上学时,已经出版了 30 年(40 年后才有中文版),但整个计算机教育领域好像闻所未闻似的(今天基本依然如此)。可想而知,主流计算机教育领域到处都是车祸现场(今天基本依然如此)。

  当我遇到 MicroBlocks,我突然意识到,这可能是我十年前跟老杨一直寻找的东西。十年过去,它终于出现了。如果我们在上学时遇到它ASP编程,能用它来做多少有趣的东西呀!

  正在阅读文章的你可能是一个有经验的 Maker(创客),觉得 Arduino 已经很好地解决了入门困难的问题,它让业余爱好者也可以很好地玩转硬件。的确,Arduino 是硬件编程领域的重大进步,让这个领域不再那么令人生畏。在 Arduino 之后,MicroPython 又进一步降低了门槛。

  随着 Maker/STEM/少儿编程在教育领域引发越来越多的关注,更多的人试图进一步降低编程的门槛,让新手不仅能进行软件编程,也能成为 Maker,对现实世界的硬件进行编程,进而制作各种有趣的小发明。

  Scratch 在帮助新手入门编程方面取得了巨大成功,截至今天(2022.11.22),单是 MIT Scratch 社区就已经有 9958 万的用户,年龄段分布从 4 岁(22 万)到 80 岁(1.2 万)。

  也许是受到 Scratch 的鼓舞,人们想把 Scratch 的成功经验移植到硬件编程领域,他们的想法是,使用图形积木来控制硬件!

  图形化编程环境通过减少编程过程的语法错误来帮助学习,一些研究表明,学习语法的困难只在早期阶段会遇到,学习编程的一个更大挑战是,学习者需要能够正确预测源代码的更改对程序运行行为的影响。

  MicroBlocks 通过提供拥有活性(liveness)的编程环境,缩短了反馈循环慧鱼机器人编程,从而鼓励学习者通过「试错」进行实验和编程。这些改进极大提升了编程的「可理解性」。

  MicroBlocks 相较于其他编程平台具体优越在哪些地方?我在比较图形化硬件编程平台做了细致讨论。

  我曾经在硬件编程上吃了太多的苦,这正是我如此热衷于分享 MicroBlocks 的原因:不希望新手们再去忍受那些不必要的痛苦!

您可能还会对下面的文章感兴趣: