摘要

一句话总结 作者分享了通过开发实用浏览器插件、与 AI 结对编程以及运用费曼学习法,教零基础大一孩子高效学习编程的实践经验。

核心要点

  • 教学背景:利用两周春假,教零基础、即将上编程课的大一孩子入门编程。
  • 需求驱动(学以致用):从实际需求出发,确定开发一个可随时查看学校网站通知的浏览器插件。
  • 基础工具入门:教授最基本的技能,如使用 Chrome 开发者工具查看网络请求并获取 fetch 代码。
  • 与 AI 结对编程:让孩子直接向 AI 描述需求,借助 AI 解决问题,在几小时内完成第一版可用程序。
  • 运用费曼学习法:要求孩子将代码逐行解释给别人听,遇到不懂的地方向 AI 或家长请教,并通过修改代码对比效果来加深理解。
  • 版本迭代:在初始版本上不断增加新功能(如显示图片、本地存储、未读条数等),通过迭代实现“在做中学”。

风险/不足

  • 如果仅依靠与 AI 结对写代码,会导致无法真正理解代码的工作原理(必须配合向他人解释代码的过程来解决此问题)。

正文

春假两周在家教孩子编程,刚上大一,对编程没兴趣所以以前没学过我也没教过,但明年要学编程课了想提前跟我学一点,我教编程的方法很简单直接:

  1. 首先找需求,看能做点什么自己用的上的东西 学编程最好是能学以致用,做一点能自己用的上的东西是最好的。最后一起讨论定下来做一个浏览器插件,点击插件可以显示学校网站的通知,这样就不用打开网站去看通知了,随时查看。

  2. 跟 AI 结对,让 AI 帮助完成第一版本 最开始先教一点最基本的,通过 Chrome Dev Tool 去看网络请求,去找到相关API请求,复制fetch的代码出来,然后就自己去向 AI 描述需求,然后遇到问题让 AI 帮助解决。几个小时后就自己借助 AI 搞定了一个可用的版本。

  3. 去解释代码是如何工作的 如果只是跟 AI 结对写代码,并不会理解代码,所以最好就是去向别人解释代码是怎么工作的,因为要解释清楚得先学习搞清楚。一开始是解释不清楚的,不清楚就是去问 AI,中间我也会帮助解释一下,反复几次把每一行代码都讲一遍,中间再对代码做一些修改对比看修改后的效果加深理解。

我是费曼学习法的忠实信徒,一直坚信最高效的学习方法就是把学到的东西解释给别人听,能把代码从头到尾讲清楚就能学到东西。

  1. 迭代增加新功能 最初的版本只有显示文字版的列表,基于它之上再加上显示图片、增加本地存储、显示未读条数等等功能,通过迭代,一方面让程序更实用,另一方面也是做中学。继续跟 AI 结对,继续讲解代码。

我教编程的方法总结下来就是:做点能用的上的东西,跟 AI 结对编程,不懂的让 AI 教,写出来的代码要能解释给别人听,通过版本迭代不断完善不断学习。

关联主题