fcn从头开始

by Steve Krouse

史蒂夫·克劳斯(Steve Krouse)

从头开始有营销问题 (Scratch Has a Marketing Problem)

At first, I avoided MIT’s Scratch programming language.

起初,我避免使用MIT的Scratch编程语言。

It seems childish. When you load the Scratch homepage, you’re greeted by friendly cartoons that seem appropriate for preschoolers. The programming language itself isn’t even a proper language. Instead of typing, you drag and drop pre-made blocks into place. It’s more reminiscent of LEGO than real engineering.

看起来很幼稚。 当您加载Scratch主页时 ,您会看到似乎适合学龄前儿童的友好卡通片。 编程语言本身甚至都不是一种合适的语言 。 无需键入,而是将预制块拖放到位。 它比真实工程更让人联想到乐高。

Every student over the age of 12 seemed to agree with my diagnosis. “I did that in 2nd grade. It’s not real coding.” So I taught students Python, Java, HTML, CSS, and JavaScript — real programming languages that you type, not silly blocks.

每个12岁以上的学生似乎都同意我的诊断。 “我在二年级时就做到了。 这不是真正的编码。” 因此,我教了学生Python,Java,HTML,CSS和JavaScript-您键入的真正编程语言,而不是愚蠢的块。

However, there was a problem.

但是,有一个问题。

It’s hard to teach “real coding.” Really hard. With some students, it seemed impossible.

很难教“真实的编码”。 真的很难。 对于一些学生来说,这似乎是不可能的。

Before my eyes, the students that were excited to do “real coding,” began to label themselves as “bad at coding” the same way students have learned to label themselves “bad at math.” I felt like I was doing more harm than good, teaching students coding languages they weren’t ready for.

在我眼前,那些热衷于进行“真正的编码”的学生开始将自己标记为“不好编码”,就像学生学会了将自己标记为“数学不好”一样。 我觉得我在弊大于利,教学生编码他们尚未准备好的语言。

重新看一眼 (Giving Scratch a Second Look)

So I went back to the drawing board, looking for the right programming language for my students. I scoured the Internet for books and tips on how to teach kids to code and everywhere I looked, there was Scratch. So I gave Scratch a try.

因此,我回到了绘图板上,为学生寻找合适的编程语言。 我在Internet上搜索了有关如何教孩子们编码的书籍和提示,在我看来,到处都是Scratch。 因此,我尝试了Scratch。

It turns out, typing is overrated. Programming isn’t like English. There aren’t a million different words, phrases, and sentence structures. There are only a few dozen, so creating blocks for them saves time, and more importantly, prevents 70% of errors new programmers face. In text-based coding, if you forget a semicolon, your program might not even run, but Scratch won’t even let you make that mistake. Block-based programming enables beginner programmers to focus 100% of their mental energy on the design and logic of their programs, not the semantics.

事实证明,打字被高估了。 编程不像英语。 没有一百万个不同的单词,短语和句子结构。 只有几十个,因此为它们创建块可以节省时间,更重要的是,可以防止70%的新程序员遇到错误。 在基于文本的编码中,如果您忘记了分号,则程序甚至可能无法运行,但是Scratch甚至不会让您犯该错误。 基于块的编程使初学者可以将100%的精力集中在程序的设计和逻辑上,而不是语义上。

Even better, Scratch was designed to create video games and stories. Students enjoy making video games almost as much as they love playing them. This means that you don’t have to motivate students with the carrot and stick approach of homework, grades, and tests to use Scratch. It’s intrinsically motivating to make something that you can immediately share with your friends and family, so students continue to work on Scratch projects at home simply for the fun of it.

更好的是,Scratch旨在创建视频游戏和故事。 学生喜欢制作视频游戏几乎和玩游戏一样。 这意味着,您不必通过作业,成绩和测验的硬性方法来激励学生使用Scratch。 可以立即与您的朋友和家人分享的东西具有内在的动机,因此,学生仅出于乐趣就可以继续在家中进行Scratch项目。

After this revelation, I was excited to share Scratch with the world, “Hey everyone! The search for the best first programming language is over. We’ve found it!”

揭露之后,我很高兴与世界分享Scratch,“大家好! 寻找最好的第一编程语言的工作已经结束。 我们找到了!”

从头开始似乎太容易了 (Scratch Seems Too Easy)

As it turns out, I was late to the party. Everyone already knew about Scratch. Even worse, they actively avoided it because it’s “babyish.”

事实证明,我来晚了。 每个人都已经知道Scratch。 更糟糕的是,他们积极避免使用它,因为它是“婴儿的”。

“No! You don’t understand,” I pleaded with students. “It’s actually really challenging. There’s a lot for you to learn in it before you’ll be ready for JavaScript.” But nobody wanted to hear it.

“没有! 你不明白。”我恳求学生们。 “实际上,这确实具有挑战性。 在准备好使用JavaScript之前,您需要学习很多东西。” 但是没人愿意听。

Last month, this brought a 12-year-old boy to tears in my class.

上个月,这使我班上的一个12岁男孩流泪了。

Sam represented himself as a true nerd, proudly telling the class he memorized over 150 digits of pi, and has been to many technology and science camps. When I suggested he start in Scratch, he shrugged.

Sam表示自己是一个真正的书呆子,自豪地告诉全班同学,他背诵了150位数的pi,并且去过许多技术和科学营地。 当我建议他从头开始时,他耸了耸肩。

“It’ll probably be too easy for me. I haven’t done it since I was in 3rd grade.”

“这对我来说可能太容易了。 自从我读三年级以来,我还没有做过。”

“Just give it a shot,” I said. “If it’s too easy, we’ll move you to JavaScript.”

“试一试,”我说。 “如果太简单了,我们将带您使用JavaScript。”

Ten minutes later Sam was crying. As I walked with him out of the classroom, I asked what was wrong.

十分钟后,山姆哭了。 当我和他一起走出教室时,我问哪里出了问题。

“I’m terrible at this,” Sam shook his head. “I can’t do it.”

“我很糟糕,” Sam摇了摇头。 “我做不到。”

“Why do you think you can’t do it?” I asked, “It’s only been a few minutes.”

“为什么你认为自己做不到?” 我问:“只有几分钟。”

“Scratch is supposed to be easy and I couldn’t even do the first step.” Sam sighed heavily. “I really thought I was good at this.”

“从头开始应该很容易,但我什至不能做第一步。” 山姆沉重地叹了口气。 “我真的以为我擅长此事。”

“I know it looks easy,” I said. “But Scratch is actually really hard. You can do incredibly complex stuff with it.”

“我知道这看起来很容易,”我说。 “但是Scratch实际上真的很难。 您可以用它来完成难以置信的复杂工作。”

“But, but, but…” Sam sobbed, looking hurt, “But why would they make it look so easy then? They make it look like it’s for babies!”

“但是,但是,但是……” Sam痛苦的抽泣着,“但是为什么他们会让它看起来那么容易呢? 他们使它看起来像是给婴儿的!”

从头开始有营销问题 (Scratch Has a Marketing Problem)

Everywhere they look, students get the impression that Scratch was designed for young children and is easy. While this does a great job of making it seem inviting for younger students, it has a perverse psychological effect on older kids.

在他们所看到的任何地方,学生都会给人留下Scratch专为幼儿设计的印象,并且操作简单。 尽管这样做对使年幼的学生看起来很吸引人是一项巨大的工作,但对年纪较大的孩子却产生了有害的心理影响。

Older students don’t want to use Scratch because there’s nothing to gain from it and plenty to lose. If they’re good at it, congrats on being good at a little-kid language. If they’re bad at it, there’s no hope for them. They must be pitifully stupid.

年龄较大的学生不想使用Scratch,因为它没有任何好处,也有很多损失。 如果他们擅长,那就恭喜您能使用一种小孩子的语言。 如果他们不好,对他们来说就没有希望了。 他们一定很愚蠢。

Even code.org, a wonderful organization that’s done amazing work to promote CS education, makes this same mistake with their tagline, “Code.org: Anybody can learn.” They might as well say, “Code.org: You’d have to be an idiot not to get it.”

甚至code.org这个出色的组织在促进CS教育方面做得很出色,但他们的标语“ Code.org:任何人都可以学习。”也犯了同样的错误。 他们可能会说:“ Code.org:您必须是个白痴才能得到它。”

学生们暗中渴望挑战 (Students secretly crave challenges)

When a student says, “I can’t do it. This is too hard,” it’s difficult not to reflexively reply, “No, it’s not. Look, it’s easy. You can do it.”

当一个学生说:“我做不到。 这太难了,”很难不反身地回答,“不,不是。 看,很简单。 你能行的。”

In our adult brains, this seems like the logical thing a student would want to hear. Easy is better than hard, right?

在我们成年人的大脑中,这似乎是学生想要听到的合乎逻辑的东西。 容易胜于艰难,对吧?

Wrong! Students crave hard. They seek it out wherever they can find it, athletic competitions, video games, chess, and debate. Hard things are great because:

错误! 学生渴望努力。 他们在任何可以找到它的地方,体育比赛,视频游戏,国际象棋和辩论中寻找它。 艰难的事情之所以伟大,是因为:

  1. If you complete them, you’ve proven yourself. You did something that was outside of your ability, and that some of your peers couldn’t do. There’s a rewarding emotional high from completing a difficult task.如果您完成了它们,就证明了自己。 您所做的事情超出了您的能力范围,而您的某些同行则无法做到。 完成一项艰巨的任务会带来令人振奋的情绪高涨。
  2. However, if you fail at a hard task, it means nothing. After all, it wasn’t easy. Many people can’t do it. Maybe if you practice some more and come back later, you can give it another go.但是,如果您在艰巨的任务中失败,则没有任何意义。 毕竟,这并不容易。 许多人做不到。 也许如果您多练习一些,然后再回来,可以再试试。

So what do we do when a child comes to us, whining that a problem is too hard? We agree with them wholeheartedly. “Yes, this problem is really hard. You might not be able to complete it this time. Many students can’t do it. But if you keep working at it, I think you can get it.”

那么,当一个孩子来找我们,抱怨问题太难了,我们该怎么办呢? 我们完全同意他们。 是的,这个问题真的很难。 您这次可能无法完成。 许多学生做不到。 但是,如果您继续努力,我认为您可以实现。”

It’s not always the case, but students are usually excited to rise to the challenge.

情况并非总是如此,但学生通常会为迎接挑战而兴奋。

The marketing solution for Scratch is counter-intuitive, but not impossible: tell kids Scratch is hard. This means removing all of the bright, primary colors, and childish cartoons. Replace them with harder, more standard adult colors and photos. Eschew rounded blocks for ones with hard edges.

Scratch的营销解决方案是违反直觉的,但并非不可能:告诉孩子们Scratch很难。 这意味着删除所有明亮,原色和幼稚的卡通。 用更硬,更标准的成人颜色和照片代替它们。 对具有硬质边缘的块不做圆角处理。

Basically make Scratch look more like what kids imagine adult coding to look like.

基本上使Scratch看起来更像孩子想象的成人编码看起来的样子。

However, if coding seems impossible, it could turn some students off from it entirely. Part of Scratch’s appeal is it’s accessibility. Potentially this means we should break Scratch into two products: leaving it the same for for true beginners that are younger than 12, and creating a new product that’s similar but seems more serious and real.

但是,如果似乎不可能进行编码,则可能会使某些学生完全无法使用它。 Scratch的吸引力之一就是它的可访问性。 潜在地,这意味着我们应该将Scratch分为两种产品:对于12岁以下的真正初学者来说,应将其保留为同一产品;以及创建类似但看起来更真实的新产品。

WoofJS (WoofJS)

I now use WoofJS, a JavaScript framework we created at The Coding Space, to address this very program. It’s very similar to Scratch, but from within JavaScript, a “real” coding language. This way, students that think they are “done with Scratch” or “too old for Scratch” can get on board with learning similar concepts under new clothing. Woof serves as the bridge between Scratch and JavaScript that students are eager to walk across.

我现在使用WoofJS (我们在The Coding Space创建JavaScript框架)来解决这个程序。 它与Scratch非常相似,但它来自JavaScript内部的一种“真实”编码语言。 这样,认为自己“被抓破”或“太老而不能抓破”的学生可以在新的服装下学习类似的概念。 Woof充当了Scratch和JavaScript之间的桥梁,学生们渴望穿越它们。

When I asked one of our 11-year-old students why she liked Woof better than Scratch, she said, “It’s more challenging.”

当我问一位11岁的学生为什么她比Wocrat更喜欢Woof时,她说:“更具挑战性。”

“Oh, is that because you have to learn JavaScript syntax?” I asked.

“哦,那是因为您必须学习JavaScript语法吗?” 我问。

“No,” she thought for a moment. “I’m not really sure why it’s hard. But it just seems harder which is cool.”

“不,”她想了一会儿。 “我不太确定为什么会很难。 但是看起来更难,这很酷。”

翻译自: https://www.freecodecamp.org/news/scratch-has-a-marketing-problem-f84626bd18ef/

fcn从头开始

fcn从头开始_从头开始有营销问题相关推荐

  1. fcn从头开始_从头开始:简单游戏系列1-抓鱼

    fcn从头开始 Recently, I've decided to take a break from coding on IDE's and go back to the basics of exp ...

  2. fcn从头开始_如何从头开始构建基本的聊天机器人

    fcn从头开始 Be it a Whatsapp chat, Telegram group, Slack channel, or any product website, I'm sure you h ...

  3. fcn从头开始_如何使用Go从头开始构建区块链

    fcn从头开始 介绍 (Introduction) With Web 3.0 and blockchain becoming more mainstream every day, do you kno ...

  4. 33岁想从头学做网页设计_从头到头的10位客户我如何设计和推出saas产品

    33岁想从头学做网页设计 Creating a successful software as a service (SaaS) product is the dream for many entrep ...

  5. java \t怎么从头开始_通过这些简单的步骤从头开始学习Java

    java \t怎么从头开始 Java是用于软件开发的最受欢迎的编程语言之一. 无论您的最终目标或技能水平如何,学习和掌握Java都将为您作为开发人员打开大门. 今天,我们将讨论一些原因,我们认为您应该 ...

  6. 数据分析从头学_数据新闻学入门指南:让我们从头开始构建故事

    数据分析从头学 by Mina Demian 由Mina Demian 数据新闻学入门指南:让我们从头开始构建故事 (A Beginner's Guide to Data Journalism: Le ...

  7. flutter 获取定位_从头开发一个Flutter插件(二)高德地图定位插件

    在上一篇文章从头开发一个Flutter插件(一)开发流程里具体介绍了flutter插件的具体开发流程,从创建项目到发布.接下来将会为Flutter天气项目开发一个基于高德定位sdk的flutter定位 ...

  8. java \t怎么从头开始_如何从头开始以正确的面向对象方式创建Java Web Framework

    java \t怎么从头开始 您如何用Java设计Web应用程序? 您安装了Spring,阅读了手册,创建了控制器 ,创建了一些视图,添加了一些注释 ,它就可以工作了. 如果没有Spring (Ruby ...

  9. 33岁想从头学做网页设计_从头开始设计精美的移动应用

    33岁想从头学做网页设计 by Harshita Arora 通过Harshita Arora 从头开始设计精美的移动应用 (Designing beautiful mobile apps from ...

最新文章

  1. 22 面向对象 名称空间 类与对象
  2. 每日一皮:千万别和杠精一般见识...
  3. ES6之Promise
  4. 支持M1芯片mac 达芬奇17中文版(详细安装教程) DaVinci Resolve Studio 17.3.1b5
  5. For in + 定时器
  6. java架构之路(多线程)synchronized详解以及锁的膨胀升级过程
  7. Windows Terminal v0.7 发布:支持分屏、重排选项卡和改进 UI
  8. 自minibox-b配置说明
  9. NLTK was unable to find the megam file!
  10. 学习计算机组装与维护的意义,计算机组装与维护课程学习体会
  11. 5000的台式计算机,预算5000的台式组装机配置清单_预算5000的台式组装机配置
  12. 中级微观经济学笔记整理
  13. 解决 无法删除文件夹 “文件夹访问被拒绝 你需要权限来执行此操作“ 的问题 理论上还可以使用本方法删除任何文件夹
  14. [C++]实现memcpy
  15. 架构之占位式插件化框架 --组件通信
  16. Weblogic服务器证书安装配置 | Weblogic SSL
  17. 点或积分区域的对称性,积分结果的对称性
  18. 从普通 Msconfig 启动选择转为选择性启动
  19. android通知栏样式自定义,如何给状态栏上的时钟自定义样式或位置?(位置篇)
  20. 年底了,PPT怎么做?用数据给老板讲故事,在职场上无往不利

热门文章

  1. git-分支的冲突与冲突的解决
  2. linux-权限操作,数字法
  3. javascript-变量的作用域
  4. chrome浏览器允许跨域
  5. 国家网络安全事件应急预案,你需要知道哪些重点
  6. 苹果新款iPad或将于下月在新总部发布
  7. 首个诞生于长期支持计划的版本Node.js 4.2 “Argon”正式发布
  8. 在 java 的 bin 目录下,jdk 提供了很多使用的工具,下面学习一些监控和故障处理的工具。...
  9. Climbing Stairs leetcode java
  10. asdm不能登录问题;浏览器必须是ie,不能是chrome或者firefox;java的版本,尤其是安全等级和例外需要调整...