// 下一篇:分数和checklist
如何设计题目
教学中的一个问题是老师出题太简单了,题目设计一开始上来就不紧凑,我认为一个好的课程应该上来就给你紧凑感,而不是先上来“轻松2-3周”。目前见到的程序性题目有几类,都可以分别作不同层度的扩展设计。
问答类型题目,这类题目最好要有进阶,否则容易变成水题:
- 基础知识问答
- 扩展知识问答
- 高级深度问答
工具类题目,这类题目最好有明确要求:
- step by step的操作记录,这也是以后写specification的基础训练
- 对工具原理的理解和探索
- 通过工具的使用,产出实际的作品,不能只是简单的Hello world
- 能否自己做一个?怎样做?最小迭代是怎样的?
- 对同类型工具做对比分析,学会做案例分析
语言语法类型题目,这类题目也要串起来,否则容易分散:
- 从第1到第N道题目最好是同一个场景和上下文
- 第i+1道题目最好能利用到第i道题目的结果
- 最后一道题目最好是综合利用前N-1道题目
- 第m次作业最好能利用到第m-1次作业
数据结构与算法题目,这类题目最好结合实际:
- 有实际生活中的应用场景,例如北京地铁,电梯等
- 从简单版本到复杂场景
- 实现上要求进阶:
- 算法,基本实现
- 封装成类库,针对类库做好单元测试
- 做成完整的App或者WebServer
- 交付真实用户使用,反馈,改进
例如:
如何点评
有价值的点评是重要的工作,因为点评是对问题的反馈,反馈的越及时,反馈的质量越高,问题的迭代和改进就有越多丰富有内容的外部刺激。
点评应该有哪些目标呢?
- 消灭零点评,这需要课程教师和课程助教的联合作业,意义在于有教无类
- 带着问题点评,带着问题,才能让作业进入深水区
- 做追加点评,如果点评收到回复,则应该进一步点评,不设上限
- 带上相关链接点评,每个作业伴随丰富的外部链接,做到开放性和深度性
- 主题反复,如果一个主题本身会随着作业的演化进阶,点评要前后连贯,甚至反复。
例如,这个学生回答的详细,我给他扩展了一些问答,如果题目设计不足,在点评环节可以做深度和广度发散:http://www.cnblogs.com/fantasticlzs/p/6432989.html
如何评分
评分是教学中重要的一环,评分是教学中迭代的最小粒度。
- 评分应该要有具体的评分点,遵循对评分点加权平均的计算方式,具体参见构建之法
- 评分应该有能区分好坏优劣,正确反应作业质量
- 评分应该严格对照截止日期,过期0分,超过1周没交倒扣分数
- 评分应该带着启发性小结、问题、新的超链接(参考点评一节)
例如: