学生使用 Scratch 和 Finch 进行编程

尚无读者喜欢这篇文章。
open source button on keyboard

Opensource.com

合格程序员、计算机科学家和软件工程师日益短缺的问题正受到媒体和大众的广泛关注。非营利组织 Code.org 近期的努力帮助人们认识到这个问题——软件是 21 世纪的决定性产业,而熟练人才储备却很薄弱。反之,对于从事软件开发的学⽣⽽⾔,就业机会⾮常⼴阔:据估计,到 2020 年,编程岗位将⽐可供选择的学⽣多出⼀百万个

请思考一下程序员所拥有的巨大力量和影响力。消费技术给人一种选择的错觉,但实际上,它更像是一个电子斯金纳箱。软件本质上是一系列预先设置的选项,由程序员预先选择来创建预制体验。Facebook 就是一个很好的例子。表面上看,这个社交媒体网站就像一本“选择你自己的冒险”故事书;人们可以自定义封面照片,填写时间线,或编译最喜欢的书籍或电影列表。然而,对网站框架的更改是被禁止的。Facebook 用户不允许重新排序内容部分,更改网站颜色,尝试其他网站图形设计或摆弄整体布局。你可以随意住在这所房子里——只是不要重新布置家具或粉刷墙壁。

当然,并非所有技术都施加如此严苛的界面限制。然而,所有软件从根本上都将最终用户限制在一系列由程序员预先确定的选择和选项中。道格拉斯·拉什科夫在他的书《程序化或被程序化》中深入探讨了这一观点。拉什科夫雄辩地告诫说:“在数字时代,我们必须学会如何制作软件,否则就有变成软件的风险。否则,我们将受制于那些编写程序的人、付钱给他们的人,甚至技术本身。”

在我们计划的 1:1 高中生笔记本电脑项目 的背景下,我和我的团队一直在深入思考如何将创造性和建设性的自主权还给我们的学生。我们最近见证了 学生学徒程序员 的惊人影响力。作为教育领导者,我们如何打破常规,帮助更多学生掌控他们的数字生活?是否有简单、引人入胜的学生工具用于编码、创造和学习?

过去,我曾写过关于 Raspberry Pi 作为教授学生编码的入门工具。还有其他几个额外的起点可以帮助学生从软件消费者转变为创造者,并可能开启职业生涯:Scratch 和 Finch。

略懂皮毛

Scratch 是麻省理工学院媒体实验室为 8 至 16 岁儿童设计的免费编程工具包。Scratch 友好且直观,是一个易于学习的环境,孩子们可以在其中构建交互式游戏、动画、模拟、故事和艺术作品。为了鼓励创造性协作,项目可以通过在线社区与其他“Scratch 玩家”共享和混音。在 Penn Manor,学生们一直在使用 Scratch 来学习编程和游戏设计的基础知识,作为我们中级技术课程的一部分。

Scratch 曾经以 Linux、Mac 和 Windows 的本地应用程序形式提供,最近已更新并作为云服务发布。2.0 版本的工具包可以从任何启用 Flash 的 Web 浏览器访问。对于教育工作者来说,ScratchEd 社区 是一个宝库,其中包含来自全球各地的项目想法、资源和最佳实践。

欢迎 Finch 机器人

放下幻灯片,拥抱自动化时代。从今年秋季开始,微型 Finch 机器人将受 Penn Manor 学生的指挥。Finch 是卡内基梅隆大学为计算机科学教育而设计的可编程机器人。Finch 与教育工作者和学生合作设计和开发,是一个引人入胜且低成本的实用编码和工程入门工具。

Finch 内置了一套环境传感器,用于感应光线、温度和方向。一个学生入门示例项目将包括对 Finch 进行编程,使其在教室地板上漫游时避开地面障碍物。随着学生掌握基本的编程原理,他们可以轻松地继续设计更复杂的行为,例如通过内置笔架进行跳舞或几何绘图。还记得最初的 Logo Turtle 吗?Turtle 已经进化成 Finch 了!

十几种编程环境 的支持使 Finch 成为满足各种教学需求和软件舒适度水平的多功能选择。虽然高级学生可以直接开始用 Java 编程,但对于年幼的学生来说,最容易入手的软件起点是加州大学伯克利分校的 Snap!,它是 Scratch 的修改后继版本。Snap! 基于使 Scratch 如此直观的相同熟悉的拖放界面,学生可以快速将他们现有的知识转移到 Snap! 程序中。与 Scratch 一样,Snap! 是免费和开源的;它可以在 Linux、Mac 和 Windows 系统上运行。

Finch 售价 99 美元,如果 批量购买 则更便宜。

最初发布于 Penn Manor 技术博客。经许可转载。

User profile image.
Charlie 是宾夕法尼亚州兰开斯特县 Penn Manor 学区的首席信息官,《开放学校》的作者。

4 条评论

我真的对 Scratch 2.0 是基于 Flash 的 Web 应用程序感到失望。这确实给那些在家有电脑但没有良好互联网连接的孩子设置了障碍。我认为可以肯定地说,很多人是通过在其他课程(相对于仅仅是课堂学习)的基础上进行大量的实验来学习编程的,因此在家中无障碍地访问编程环境是一个巨大的福音。值得庆幸的是,Scratch 1.4 仍然可以下载,即使这两个版本不兼容。(Scratch 2.0 项目无法在 Scratch 1.4 中打开,但 Scratch 1.4 项目可以在网站上共享。)

对于使用 Linux 的学校和学生,<a href="http://gambas.sourceforge.net/en/main.html">Gambas</a> 是一个很棒的进阶选择,可以从 <a href="http://scratch.mit.edu/">Scratch</a>、<a href="http://www.squeakland.org/">Etoys</a> 等工具进阶。它是一个类似 Visual Basic 的环境,有很多不错的选项。在您开始使用像 Zed A. Shaw 的 <a href="http://learnpythonthehardway.org/book/">“笨办法学 Python”</a> 这样的东西之前,它可以更循序渐进地介绍编程。;-)

乍一看,我也对 2.0 版本是基于 Flash 的 Web 应用程序感到失望。我们的目标是农村社区的孩子,对我来说,Flash 是我尽量避免使用的专有软件。这是一个开源论坛。幸运的是,对于开源来说,总是有分支选项!
我们必须让我们的年轻人接触时髦的玩具!:)

Scratch 2 的离线编辑器可用。它目前处于测试阶段,但看起来进展顺利:http://scratch.mit.edu/scratch2download/。

感谢你的 Gambas 建议,Joshua!

感谢您指出离线编辑器。

不幸的是,离线编辑器需要 Adobe Air,因此 Linux 用户必须安装不受支持且过时的软件才能使用它。Air 的当前版本是 3.9,但 2.6 版是 Linux 上可用的最新版本。

Scratch 仍然非常好,但是 Flash 和 Air 的要求确实是开源方面不幸的倒退。

© . All rights reserved.