OMooC
~ 开智微课的重构
背景
某个夜里,有人提及了 Python ,于是有人提及了 大妈, 然后就变成了集体意愿...
经过 志平仁波切 的炸裂营销,变成了
- 盲目相信
- 主动报名
- 竞争交费
- 大妈课程
现象
- 通过 极简 Python 上手导念 的引导
- 获得的提问却都是这样的 ~ 极简编程导念
- 感觉哪里有不对...
所以
不过,根据当前的已知, 俺建议:
- 脱离微信,回归邮件列表为主要沟通场景
- 和对照组拉开距离
- 所有沟通记要,有自然的归档,永远可查阅
- 即:学员列表先封闭,结业后开放
- 课程的具体形式,最好和现行的都不相同
- 无论文本/视频/直播,都无法快速形成自有版权的内容
- 而且和当前学员习惯的课程形态相同,无法形成全新经验
综上,俺建议,课程发展形式反转:
- 前两周: 教大妈安装/使用 Py
- 俺给出学业目标
- 学员在规定时间里通过自学/合理提问 完成目标
- 并总结为一篇教程
- 大家相互传阅,评选出最好的 top3 教程
- 交大妈自学:
- 进一步提出问题
- 形成新的学业目标
- 后10周: 教大妈开发 **
- 通过前阶段教程编写,大家熟悉了:
- git
- markdow
- 团队协同
- 邮件列表
- python
- 常见资料
- 有了基础自信,自发组成 3人以下的开发团队
- 在第一周里,讨论选择软件/服务/产品, 并形成说明书
- 由大妈以及导师们逐一评定:
- 修订目标
- 给出大致的学习路线/技术方案
- 之后8周,进行迭代开发
- 大妈们,在列表随时答疑
- 学员日常开发
- 周末定时,进行路演
- 展示开发成果,给出技术周报,公开寻求帮助
- 最后一周为演示周:
- 每天一个团队的全方位展示成果
- 全员参与评分
- 通过前阶段教程编写,大家熟悉了:
- 以上过程中的:
- 邮件
- 问答
- 教程
- 周报
- 都是最后成书的最好原材料
- 同时,所有产品通过开源仓库形式延续下去,可由学员继续开发,或是下期学员接手
工作量
- 大妈以及其它导师:
- 每天 1~2 小时列表回答问题+整理为维基
- 周末 3~4 小时微信/网络会议 实时指点
- 每周 10+ 小时
- 学员:
- 每周3~4个技术命题
- 每个命题用 2~3 个自然小时, 0.5~1 个 flow 小时完成
- 另外用 1~2 个小时,进行文档化反省,以及团队交流
- 每周 15+ 小时
- 观察员:
- 所有渠道的交流文字/代码变化的整理,实时分析
- 从内部和导师们沟通,及时调整任务难度
- 每周 10+ 小时
预期:
- 导师 2~3 名
- 学员 50
- 观察呗 2~3 名
-
总人时:
12((211)+(5015)+(210)) ~= 9504
其实
从根儿上,俺的上手课程,根本就不是教 Python 语言,而是:
- 分享编程思维/视角/基础能力, 还给大家互联网时代的基本人权
- 从学员那儿学习如何建立编程思维,从中发掘规律,向 MOOC 机构反馈
其实,一切的基础是假设:
- python 非常容易学习,可以立即上手使用
- 每个人其实都需要解决的个性需求,只是从来不知道可以通过自我开发软件来完成
整个儿过程,唯一的难点是:
- 大家兴冲冲组成团队后,每个团队都想开发一个巨NB 的东西出来
- 因为没有任何软件工程经验,大家无法想法一个看起来很简单的功能需要多少工作量
- 比如说:
我要开发 she 中的那种人工智能!
所以,以往这种项目策划的评估,都是现场当面进行,提高效率
- 现在 50 人,至少 15 个团队,以及项目的评点,
- 俺建议,可以在立项周分散开, 每天晚上三个项目的节奏,
- 通过网络会议进行
然后,就可以全部通过网络进行远程支持了
- 不建议使用微信的原因,在微信中的问答,
- 对于不在的人是不存在的,
- 即使有机械人记录下来,也无法简单的区分不同问题的线索
- 所以,主要沟通在邮件中,通过列表自然的形成全员周知的线索集合,也避免相似问题的反复解答
目标
首次 开智微课
学员们的最终目标是什么?!
俺建议:
- 50位学员,每人都写下自个儿的期待
- 导师根据经验,以及课程设计,取中值
- 厘定目标
- 过程中,学的快的教学的慢的
所以, OMOOC 的整体图景,大家还没有形成正确的概念,
- 但是,整体目标之一:
形成世界上最好的 Python 入门教程
- 这个教程,不是大妈写的,而是所有学员共同完成的
- 其实,整体上类似 构建之法 (豆瓣)的教学方式
- 只是我们的目标不是专业级的工程师;而是: 获得编程思想的文科专家
- 所以,直接在 软件工程 情景中,引导大家建立各自独特的编程理解就好
- 而不是通过严密的学科课程,让大家背一堆,专有名词,能和程序猿徦徦聊起来就好
类似:
俺只坚持一个课堂准则:
- 将你一路上的折腾记录下来,
- 这是你独有的最高效的学习模式,
- 怎么加强,得有个可复盘的记录提供给导师们
只期望达成的 MIND HACKING
- 学员不再对编程有好莱坞式的想象
- 能独立通过现有的互联网资源,解决主要的任何领域的问题
- 能习惯先经过充分的思考/探索/反省后
- 问对问题,
- 以对的形式,
- 向对的人/群
参考:
细思
王国维在"人间词话"中说,古今之成大事业,大学问者,必经过三重境界:
第一境界:昨夜西风凋碧树,独上高楼,望尽天涯路 第二境界:衣带渐宽终不悔,为伊消得人憔悴 第三境界:众里寻他千百度,蓦然回首,那人却在灯火阑珊处
志平仁波切 也曰过:
正确的练习方式应该是这样: 1. 只在'学习区'练习; 2. 把要训练的内容分成有针对性的小块,对每个小块进行重复练习; 3. 在练习的过程中,随时能获得有效的反馈; 4. 练习时注意力必须高度集中.
所以,针对编程练习:
- 前三点,是依赖本地交互环境,和编译器实时对话,独立思考完成一系列递进式的小任务,来保证的
- 后一点,可能更加重要
- 所以,微信为主的交流界面不合适
- 因为,微信的沉浸式环境,是对交流本身,而不是交流内容
- 随时,都有其它人更加有趣的消息涌入,根本无法保持自个儿的思考线索
- 综上,安静的异步的礼貌的强制完备思考的 邮件列表,更加合适编程交流
- 其实,github 之后的 pull-request 关系的代码交流模式,也是同列表的异步/完备/礼节 格调的
参考: 如何正确地练习写作 - 简书
mailling-list
前期准备
1. 学员将 常用邮箱 给助教 2. 助教将大家追加到专用列表后,大家将收到欢迎邮件 3. 收到欢迎邮件的那一瞬间,你就正式进入了 OMMOC 首届 Pythonic上手班
邮件中有关列表,只需要说明:
- 学员所有任务/讨论,都通过 [email protected] 邮箱和大家交流
- 所有学员的正式技术讨论,也都必须通过 [email protected] 进行
- 意思是:
- 发送到 [email protected] 的邮件,所有人都将看到
- 任何人回复邮件到 [email protected] 也将所有人收到
- 推荐使用 gmail 来管理来自 [email protected] 的邮件
- 因为会很多
- 而且,其它客户端,不保证能良好的组织各种讨论线索
即 groups 的 web 页面,根本就不应该是大家应该关心的地方!
参考: 有关邮件列表 | PyChina.org Static Wiki
禁止事项清单
一些禁止事项要求要求:
- 永远不用中文名来作任何命名
- 永远不用拼音来作任何命名
- 永远使用 UTF-8 编码
- 永远使用 unix 分行
- 尽可能不使用 全角标点
- 尽可能使用 sublime text 等现代编辑器
- 配置编辑器将 tab 替换为 4个空格
- ...
week9d5 QA
- Q: 什么样的人能教 py ?
- A: 目测是同理心强大,中文好的
- 同理心= 对于小白问题有耐心
- ~~> 记得当初自个儿的迷妄,能给出合理的比喻/隐喻
- 中文好= 表达能力好,不会因为说不出来而发火?
- ~~> 接收能力也好,能从对方的反馈中,抓住关键困惑,给予合适的引导
参考:
- 海选文章:18 学习,学习,再学习 | GDG Livin ZhuHai Life;-)
- PythoniCamp/PythoniCamp - GitCafe
- 最好的学习方法,就是教别人,嘉力丰大课堂,人才中心,GAREFU嘉力丰
- 重新思考最好的本科教育:The Minerva Project-评论-教育思想网
资源
根据预先规划,在试验课程结束后,应该形成可出版的图书! 当前基调是:
世界上最好的非专业 Py 入门自学指南
主要资源:
- OMOOC.py 首期学员所有作业和文档
- 俺私人记要: ls /omooc Zoom.Quiet Personal Static Wiki
- 助教文案集(公开部分): 介紹 | OMOOC.py
- 草稿仓库: ZoomQuiet / omooc_py_book — Bitbucket
- 以及所有远程分享的录音: Index of /res/tapes {gen. by gen4idx.py v13.4.18 from Zoom.Quiet}
Author: /mail / gittip / github