数学教学的声誉很差,尤其是对于那些像传统方法那样遇到麻烦的人(如我),这种方法强调死记硬背和理论,似乎与学生的现实世界相去甚远。

在教给对数学课感到困惑的学生时,Python开发人员和数学老师Peter Farrell决定尝试使用Python向男孩传授他学习困难的数学概念。

Peter受到Logo编程语言之父Seymour Papert的启发,该语言一直存在于Python的Turtle模块中 。 Turtle的隐喻让Peter迷上了Python,并用它教数学,就像我被Python吸引一样。

彼得在他的新书《 Python中的数学历险记 :用代码探索数学的插图指南》中分享了他的方法。 而且,我最近采访了他以了解更多信息。

唐·沃特金斯:您的背景是什么?

彼得·法瑞尔(Peter Farrell):我曾任数学老师八年,此后我为数学课辅导了十年。 当我还是一名老师时,我读了Papert的Mindstorms ,并受到启发将我所有的数学课程介绍给Logo和Turtles。

DW:为什么您开始使用Python?

PF:我当时正在和一个在家上学的男孩一起上一本非常枯燥的,由教科书驱动的数学课程,当时对我来说这似乎是一个诅咒。 但是我找到了潜入徽标龟的方法,他是编程迷,所以他很喜欢。 一旦我们进入函数和实际编程中,他问我们是否可以继续使用Python。 我不了解任何Python,但它与Logo似乎没什么不同,所以我同意了。 我再也没有回头!

根据牛顿的公式,我还一直在寻找3D图形包,可用于对太阳系进行建模,并引导学生使行星移动并被物体之间的吸引力吸引。 许多图形程序包都需要使用C或其他硬语言进行编程,但是我发现了一个非常好用的名为Visual Python的程序包。 在那之后的几年中,我一直使用VPython 。

因此,在与学生一起学习数学的背景下向我介绍了Python。 在那之后的一段时间里,他是我的编程老师,而我是他的数学老师!

DW:您对数学有什么兴趣?

PF:我是用老式的方法学的:用手在纸上和黑板上。 我擅长操纵符号,因此代数从来都不是问题,并且我喜欢绘图和作图,因此几何和三角函数也很有趣。 我在大学时曾用BASIC和Fortran进行过一些编程,但从未启发过我。 后来,编程极大地启发了我! 我仍然对编程使您轻松完成数学课中繁琐的工作的方式感到不安,这使您可以腾出更多精力来进行探索,绘图,调整和发现。

DW:是什么促使您考虑使用Python进行数学计算的?

PF:当我教家庭学生时,我为编写一个简单的函数然后使用循环用不同的值多次调用它而感到惊讶。 手动将花费一个半小时,但计算机会立即将其吐出! 然后我们可以寻找模式(数学系学生应该做的),将模式表示为函数,然后进一步扩展。

DW:您的教学方法如何帮助学生,尤其是那些数学困难的学生? 它如何使数学更相关?

PF:学生,尤其是高中生,对在21世纪需要手工完成所有这些计算,绘图和求解的问题表示怀疑,我并不反对他们。 例如,学会使用Excel来计算数字应该被视为在办公室工作的基本必要条件。 学习任何语言的代码,已成为公司的一项非常宝贵的技能。 因此,对我来说是一种现实世界的吸引力。

但是用代码制作艺术的想法可以彻底改变数学课。 仅在屏幕上放置形状就需要数学运算-位置(xy坐标),尺寸甚至颜色都是数字。 如果要移动或更改某些东西,则需要使用变量,而不要使用“猜测x等于”的变量。 您将使用变量或更有效地使用向量来改变位置。 [这使]向量和矩阵等数学主题被视为您可以使用的有用工具,而不是您永远不会使用的必需信息。

那些在数学上挣扎的学生可能会被拒绝使用“学校数学”,这是沉重于记忆,遵循规则以及对创造力和实际应用的轻描淡写。 他们可能会发现自己实际上擅长数学,而不仅仅是在学校教授数学。 我曾经让父母看到他们的孩子用代码创建的很酷的图形,然后说:“我不知道这就是正弦和余弦的用途!”

DW:您如何看待数学和程序设计方法鼓励学校的STEM?

PF:我喜欢将以前分开的主题组合成诸如STEM或STEAM之类的想法! 对于我们数学人员而言,不幸的是,“ M”经常被忽略。 我看到STEM实验室中进行了许多有趣的项目,即使是很小的孩子,显然他们也在接受技术,工程和科学方面的教育。 但是我在项目中看到了一些宝贵的数学资料。 我和STEM / 机电一体化老师非凡的肯·霍索恩(Ken Hawthorn)正在创建项目来尝试对此进行补救。

希望我的书有助于鼓励学生(男孩和女孩)以真实和虚拟的技术发挥创造力。 本书中有许多精美的图形,希望它们能启发人们经历编码冒险,并加以制作。 我使用的所有软件( Python Processing )都是免费的,可以在Raspberry Pi上轻松安装或已经安装。 进入STEM世界不应对学校或个人造成成本限制。

DW:您想与其他数学老师分享什么?

PF:如果数学机构真的很认真地向学生教授他们同意的标准,例如数值推理,逻辑,分析,建模,几何,解释数据等等,那么他们将不得不承认编码可以帮助这些目标中的每一个。 正如我之前所说,我的方法源于尝试丰富一种干燥的传统方法,我认为任何老师都可以做到。 他们只需要一个人就能向他们展示如何做他们已经在做的事情,只需要使用代码就可以使费力的工作自动化。

免费的图形软件的可用性使我的大量图形处理成为可能。 可能需要向人们展示在哪里可以找到这些软件包以及如何开始。 但是,数学老师可以很快带领学生通过使用21世纪技术解决问题,并可视化进度或结果,并找到更多的学习模式。

翻译自: https://opensource.com/article/19/1/hacking-math

用Python破解数学教育相关推荐

  1. 小学生python编程教程-小学生python编程在线教育-小码精灵编程线上教育机构

    导语概要 为什么要学习少儿编程?能培养孩子的耐心与专注能力.编程的严谨性决定了任何小的失误都将导致程序无法正常运行.因此在编写程序的过程中需要不断地调试.试错,无形之中就可以提高孩子的耐性和专注力.如 ...

  2. python中小学生编程学习-小学生python编程在线教育-小码精灵编程线上教育机构...

    导语概要 为什么要学习少儿编程?能培养孩子的耐心与专注能力.编程的严谨性决定了任何小的失误都将导致程序无法正常运行.因此在编写程序的过程中需要不断地调试.试错,无形之中就可以提高孩子的耐性和专注力.如 ...

  3. 从小害怕数学的他,却成为了科普数学教育的数学家

    谈到数学,你们会想到什么? 也许部分模友们会想到数学上的公式.定理.几何图形.微积分等等, 也许会有模友们想到高数,(多数大学生的痛) 也许大家还会想起高中数学老师课堂上的"循循教诲&quo ...

  4. 中国AI技术领先,是因为数学好?美国杂志直指中美数学教育差距

    (给机器学习算法与Python学习加星标,提升AI技能) 本文由机器之心(nearhuman2014)整理 美国 CS 专业超过 64% 博士生和近 70% 的硕士生是留学生,数学博士学位有一半授予了 ...

  5. python画函数曲线-使用Python画数学函数曲线

    import numpy as np import pandas as pd import matplotlib.pyplot as plt plt.figure(1) # 创建图表1 plt.fig ...

  6. 转:V.I. Arnold 论数学教育

    V.I. Arnold 论数学教育 2011-03-14 08:42 V.I. Arnold 论数学教育  地点: Palais de Découverte in Paris 时间 1997年3月7日 ...

  7. 陕西师范大学 渝粤教育 《学前儿童数学教育》作业

    <学前儿童数学教育>作业 一.填空题 1.学前儿童时间概念发展的一般特点是(   )(   )(   )(   ). 2.幼儿学习排序的方法有(    )(    )(    ). 3.幼 ...

  8. 数学教育中的AI:NeurIPS’21 Workshop 欢迎投稿!

    Workshop主页: https://mathai4ed.github.io 数学推理是一种人类独特的智慧能力,也是人类在对科学和知识的探寻道路上不可缺少的基石.不过,数学学习通常是一项极具挑战性的 ...

  9. 华罗庚先生的数学教育思想

    我虽然从学生时代起就多次见过华罗庚先生,但并无机会当面聆听他的谈话.这里提到的华先生的数学教育思想,都已经公开发表.这些耳熟能详的名言,已经深刻刻印在中国数学教育的历史上.我只是千千万万受益者中的普通 ...

最新文章

  1. VMware vSphere开发(1)安装配置VMware vSphere Web Services SDK的运行环境
  2. with as 用法_介词with用法
  3. 配置管理-SVN使用指南-Linux
  4. 推荐40个优秀的免费CSS工具
  5. 【跃迁之路】【523天】程序员高效学习方法论探索系列(实验阶段280-2018.07.13)...
  6. 微信公众号运营推广基础入门知识
  7. Qt 之转盘实现C++语言
  8. windows组策略_Windows中的“组策略”是什么?
  9. IIS 访问页面出现500 – 内部服务器错误的解决方案
  10. 在iOS应用中使用字体图标及制作字体库
  11. 树莓派开机发ip到邮箱
  12. 网电空间战 3-战斗空间
  13. 有赞android电话面试,挖财 / 有赞电话面试 题目分享
  14. 学生信息管理系统的设计与实现
  15. 计算机如何识别这是一个键盘,键盘两个键同时按下时计算机如何识别被按下的是哪个键...
  16. C: error: incompatible types when initializing type ‘int’ using type ‘atomic_t’ {aka ‘struct <anonym
  17. 应用回归分析(基于R) R语言的假设检验(一)
  18. 这里有你所不知道的手机诈骗类型
  19. JAVA程序员面试至尊宝典
  20. jsp页面显示源码实现

热门文章

  1. kafka消息确认机制
  2. IBM 340亿美元收购红帽,开源史上最大交易!
  3. 私有CA的创建和证书的申请
  4. MySQL中GTID的几个限制和解决方案(r13笔记第21天)
  5. Linux sgid功能
  6. KeyMob具有手机广告优化的管理平台
  7. 如何通过link_to传递一个post请求
  8. asp.net 中RadioButtonList的选项改变事件处理(采用jquery操作)
  9. HDF及HDF-EOS数据格式简介
  10. Nginx 快速安装手册及如何修改端口号