标签归档:moodle_using

项目式课程调研报告

本文以对计算机学院09级同学的问卷调查为基础,结合笔者的实际经验,探讨项目式课程成功做到了什么,以及仍存在的问题。

“基于项目的学习”是最近学校大力倡导的一种新的课程建设模式。徐晓飞校长助理的《推行基于项目的学习提高大学生创新能力》一文中谈到:

这一学习方式是指学生以项目(组)形式完成一或多项任务(作品、设计、工艺、模型、装置、软件等),并以书面或口头形式总结表达其过程及产出物。基于项目的学习可使学生围绕具体项目,充分学习、选择和利用各种学习资源,在项目构思设计、实际体验、探索创新、内化吸收的过程中,以团队为组织形式自主地获得较为完整而具体的知识,形成技能并获得发展,能够提高学生提出并解决问题的创新能力及表达能力,培养学生的终身学习技能,使其形成自主合作的学习精神和工作态度。

在徐校长助理任计算机学院院长期间就已在院内试行这种教学方式。09级学生是第一届大规模必修项目式课程的学生。他们已经修习了“大一年度创新项目”和“软件设计与开发实践I & II & III”四门项目式课程,并且即将修习“软件设计与开发实践IV”。这些课程的共同特点是没有课堂授课,学生分成小组,每组配备指导教师,用一个学期(大一年度创新项目是一年)的时间,完成一个完整的工程项目。大一年度项目的主题不限,软开I与数据结构有关,软开II重点是数据库和软件工程,软开III的核心是操作系统,软开IV是编译原理。

笔者亲自组织并参与了软开III的整个教学过程。在课程结束时,在乐学网发布了一份针对这四门项目式课程的调查问卷。本文就是调查结果的分析报告。先介绍一下此问卷的整体情况:

  1. 是匿名调查,并告知了学生
  2. 非强制性参与,所有参与的学生均出于自愿
  3. 课程共有179名学生,83人填写了问卷,占总人数的46.37%
  4. 发布问卷时学生已经获知软开III成绩。176人(3人病事假未参加答辩)中有45人因未做任何工作或存在剽窃行为而得0分。其余131人平均分为81.40分。总平均分60.59。(注:非最终成绩。只是笔者针对答辩情况的评分。最终成绩要结合平时成绩和其它评委的评分)
  5. 参与调查的学生绝大多数是获得了成绩的。也就是说,参与调查的学生以“好”学生为主。在阅读结果时,应该考虑到这层因素。详见第17题的分析。

1. 在这些课程开始之前,你最希望能从课程获得什么?

题目中虽有“最”字,但是多选题,目的是了解学生心中最高的那几个期望是什么。从结果看,多数学生对能力和知识都有渴求。更有1/3的学生期望课程结束能有像样的作品,这是非常好的目标,如果达成,无论教师还是学生都能获得可以对外自豪展示的东西,以证明课程的成功。

很多教师在教学过程中感觉多数学生都是唯分是从、分分计较,没有激情,缺乏主动,但调查结果却与这种感受完全相反。这说明学生的价值取向总体是好的,但在实际实施过程中,未必能坚守住价值观。

2. 从这些课程你获得分数和学分以外的收获了吗?

60.24%的同学获得了一定或更多的收获,87.96%的同学至少有点儿收获。从此比例看,项目式课程是比较成功的。不过,如果考虑到参与人群偏向于“好”学生,实际有收获学生的比例还会有一定的降低。

3. 如果有收获,你收获到了什么?

此题为多选,且没有收获的同学可以不填。在答卷的80位同学中,收获前三甲是自学能力、编程能力和理论知识。其它方面的收获比例不大。与第1题28为同学期望获得作品相比,只有16位收获了作品,这就是理想与现实的差距。

10.13%的同学选择收获了“投机取巧的能力”,这是课程评分把关不严带来的结果。

很遗憾,设计问卷时未加上对创新能力和表达能力的选项。这是下次调查要改进的。

4.  如果有失去,你失去了什么?

共64位同学回答了此题。近1/3的人因为这些课而失去了专业兴趣和自信心,这是非常可惜的。诚实与信任的失去,还是教师把关不严造成的。

选“其它”的最多,说明问卷设计不够全面。细节请看第6题。

5. 你选择了还有“其它”收获,是什么?

只有6位同学给出答案:耐心,执行力;领略了内核版本问题造成的各种麻烦;没多大收获;结识新队友;“应付”的经验;对一些底层硬件驱动的东西有了兴趣

6. 你选择了还失去“其它”,具体是什么?

回答此题的人很多,其中大多数填写的都是“时间”。从付出与回报看,很多同学认为这些课程比较浪费时间。

回答中比较值得玩味的几条是:

  1. 对大学老师的仰慕
  2. 心目中老师公正的形象
  3. 对项目的精益求精精神
  4. 对自己认真做的做法的坚信
  5. 对中国大学的信心

这些“失去”与教师所做是分不开的。接下来几个问题都是针对指导教师的。

7. 在技术方面,你认为哪种风格的指导教师是最好的?

此问反应了学生的期望。可以看出,学生是理性的,并非全都希望老师能手把手来教。指导老师只要做好“导”就可以让学生满意了。但实际情况呢?

8. 你经历的指导教师主要是哪种风格?

只有43.37%的指导老师能达到学生的基本期望。20.48%的老师所指导的项目不是他所擅长的方向。超出1/3的老师愧对“师”字。

9. 你希望指导教师怎样指导项目?

可以看出,有92.77%的学生是希望老师能定期对他们进行督促、检查的。人都有惰性,大多数学生都能正视这一点,并期望教师帮助他们克服惰性。学生够上进,教师做得如何呢?

10. 你经历的指导教师主要是怎样的?

超过1/5的教师不是“师”。近2/3的教师对项目的关注频度较低。

11. 你感觉在最后结题时,多数指导老师对项目进展和团队的了解程度如何?

92.78%的教师对项目和团队成员了解不足,更有近1/3的教师基本不了解。这种情况下对项目评分,偶然性就非常大了,难保公允。

12. 你最喜欢通过什么渠道与指导教师交流?

基本来说,面对面和网络是持平的,所以两个渠道都应该提供。用网络做初步交流,如果有必要再约时间地点面对面交流。软开III提倡的就是这种方式。我们在乐学网为每个小组创建了一个内部讨论区,指导教师可以和小组成员随时讨论。好处是:

  1. 学生提问时心理障碍比较小,不用担心时间是否合适,是否打扰老师
  2. 帖子里可以带截图、链接等面对面未必方便展示的内容
  3. 讨论过程全组成员都能看到
  4. 发帖过程是一个重新思考、总结的过程,能升华知识。比如有的学生发完提问贴后,旋即就回帖说想到答案了。
  5. 讨论过程有详细记录,既能用来证明学生做了实际工作,也能证明教师进行了认真的指导

但从软开III看,多数组并没有形成讨论。一方面是学生还是被动为主,鲜有主动提问;另一方面是很多提问如石沉大海,教师根本不予回复。

13. 你曾主动向指导教师发问或要求检查进度吗?

此结果说明大多数学生非常缺乏主动性。有一些老师采用的“学生来找才指导”的策略,是非常不应该采用的。

14. 你最喜欢哪种项目分配方式?

此题结果从项目分配的角度说明我们的学生多数是有自主性的。可能最佳项目分配方式是允许学生自拟,同时教师提供一定量的可选项目。

15. 你认为项目组有多少人最合适?

由此来看,2-3人的分组是最佳配置。1/3以上的同学选择单人单组,说明他们并没能体会到团队的甜头,在团队合作能力的训练上我们做得很不够。

16. 在软开III之前的项目中,你实际完成的工作量有多少?

此题只针对大一创新和软开I & II。项目组中几乎什么都不做,依靠能力强的同学完成项目,最后也能拿到分数的行为,被学生称为“打酱油”。据这些课程指导老师的普遍感受,非“酱油”的学生数量约等于组数,也就是说多数组是只有一个人干,其它人打酱油。所以此题结果能看出,参与调查的还是“好”学生居多。下一题可以更清晰地证明这一点。

17. 在软开III中,你实际完成的工作量有多少?

首先和16题的结果相比较,软开III所采取的措施让酱油党有所减少。这是发生在大三下学期的事情。相信如果从一开始就能像软开III这样做,酱油党是可以几乎绝迹的。主要做法是:

  1. 课程初大力宣传会严打酱油,并制定相应制度(并隐约渗透一个意思,只要是自己做的,哪怕很简单,也可以及格)
  2. 周报制度,每周要在乐学网报告当周做了哪些工作
  3. 所有代码用github网站管理,更改历史全部保存
  4. 每组2人
  5. 结题时真的严打酱油

结题时,笔者用两天时间亲自检查了176人,共认定45人为酱油党,占25.57%。其中有什么都没做的,也有用他人代码(比如开源软件等)蒙混的。相信之前几门课程的情况只会更糟糕。

此调查的参与者自报只有6.02%的酱油,远低于25.57%这个数字,所以可知参与调查的学生以“好”学生居多。

18. 在每个项目开始时,你希望进度是匀速前进的吗?

此题反应超过3/4的学生的主观意愿并不希望项目是最后突击的。但理想与现实一定是有差距的。

19. 实际上你的项目多数是如何前进的?

只有19.27%的项目在进度上是健康的。这很正常,拖延症是人类通病。但49.4%的项目只用最后一个月,32.53%只用最后两星期,16.87%甚至只用一个星期,就完成一个学期的任务。这里有很多值得思考的问题:

  1. 是否应该把项目时限缩短呢?也许限定为2个月就足够了
  2. 我们对学生的要求是否过低了?他们用不到一半的时间就能达到课程要求,那么课程要求应否加倍?
  3. 要求再低,能力再强,7天也是做不出什么的。这里是否有猫腻?
  4. 教师平时的监督作用在哪里?

20. 每周三学时的实验室时间对项目的影响如何?

软开I & II的实验室时间饱受诟病,很浪费时间。调查结果很好地证明了这一点。所以软开III做了个实验,完全取消了实验室,代之以网上的检查与交流。虽然没有了浪费时间的抱怨,但却削弱了交流效果。

也许实验室时间应该设,但更人性化一些。要求学生必须在指定时间段内到场,向教师汇报,接受检查。检查完毕就可以离开。这样可以把教师和学生的行为都约束一下,还不至于浪费时间。

21. “组中一人不诚信,全组0分”政策有助于减少酱油、火炬等欺骗行为吗?

这是软开III设定的一条恐吓性规则,最后并未实行。其意图是让酱油或火炬手(使用他人代码)在道德上承受更大的压力,从而放弃投机取巧的想法。但实际效果并不明显。

22. 你觉得“周志”有必要继续存在吗?

周志是软开III的一个新要求。学生每周都要在乐学网发个帖子简要说说本周都做了哪些工作,教师原则上必须要回复。它有几个作用:

  1. 督促学生每周必须做一些事情,否则不好写
  2. 相当于学生每周都要向教师报告进度
  3. 教师看没有、回没回,有案可查
  4. 最后成绩评定时,可用周志判断学生的诚信度

在后半段,甚至将周志和平时成绩直接挂钩,指导老师可以直接对每篇周志评分,分数记入总成绩。

从结果看,周志的最大问题是很多同学明明做了工作,但也很懒得写(但也有同学愿意用技术博客来代替周志)。这是技术人员的通病,爱编程,不爱写文档。这大概是48.19%的同学认为周志无必要的原因。但实际上,周志发挥了很大作用。通过对周志的阅读、评分和回复记录,我可以清晰地分辨哪些老师负责,哪些老师在打酱油。最后结题时,通过浏览周志能发现一些酱油党,也为一些不善表达或项目弯路走得较多最后结果不好的同学正了名。

23. 从切身体会看,你觉得Git怎样?

Git是一个非常流行的源码管理工具,非常适合管理团队项目。让学生使用它的原因是:

  1. 让教师可以细致跟踪实际进度
  2. 教师能看到具体代码,可以针对代码做出很具体的指导,如果愿意的话
  3. 解决团队合写代码中的传递、同步等问题
  4. 清晰地统计各个成员工作量
  5. 使用git的技能对求职会有帮助
  6. github上展示的代码对求职也会产生影响

能获得多数学生的认可,这是有些出乎意料的,因为git的学习曲线比较陡,上手不容易。而且我们只提供了若干参考资料,并未做针对性的培训。相信如果从大一开始就培训一下,四年一路用下来,效果好很多很多。

另外,我们并没有对学生使用git做细节的规定,导致很多项目是最后突击传代码,没起到记录历史的效果。有的组还两人用同一账号上传,说不清谁是谁。如果把这些都规定好,并要求提交代码的comment尽量详细,那么git的当周log可以代替周志,也就解决了不爱写周志的问题。

24. 在使用 Git & GitHub 的过程中,你都遇到了哪些想骂人的麻烦?

此题应为多选题,但不小心设成了单选题。结果也有一定的参考价值,这是以后培训时应多加注意的地方。

25. 如果有选择机会,你会选择来自哪里的指导教师?

因为学院实在是缺少能指导操作系统项目的老师,所以我们从安天实验室(主做安全、反病毒产品)邀请了近10名资深工程师。坦率地说,他们的认真、负责程度超过我们,对项目的把握和细节的了解也胜过我们。不过只有不到50名同学是由工程师指导的,这可能是愿意选择企业导师比例偏低的原因吧。

26. 请为“年度创新项目”整体评分。5分为最高

27. 请为“软开I”整体评分。5分为最高

28. 请为“软开II”整体评分。5分为最高

29. 请为“软开III”整体评分。5分为最高

30. 请预测“软开IV”结束时你的评分。5分为最高

以上几个分数权作参考。有甚意义,就看您怎么解读了。

31. 想促进同学在项目式课程中的积极性,你有什么好办法吗?

这是一道问答题,非必答。所有回答如下:

把大家叫来实验室,给时间盯着做,做完走人,课时要长,老师陪学生熬,但不要帮助解决问题。时间不够是不行的。放下去自己做就没人花时间。学生都是练出来的,但中国的学生需要陪练。目标不可太高,一定要一步步慢慢来。

 

我觉得项目式课程中最重要的是1、兴趣2、坚持
所以,从兴趣出发,让学生无限制选题。但是因为大部分学生眼界不够,所以学校可以做很多的引导工作,向学生介绍大量的有用的,新奇的,有锻炼意义,有实际应用的项目。(也可以看看国外大学生都做了什么项目)然后让学生选题。

其实,有兴趣已经足够,只需要老师稍微关注一下就行。

PS:课程多也是阻碍做项目的一个原因

 

给个机会,给个条件,让做自己想做的东西

 

其实大部分同学在没做之前就一定认为自己肯定做不出来了。。。

 

给予很多的能力和技术上的帮助,甚至能够亲自去教会它们一些方法。或者是学习知识的技巧。如果可以甚至可以专门去为它们解决难题。这样反而会引起他们的兴趣和求知欲。就是要真正的和学生多接触,以一亲切的状态去接触学生。

 

变成考试课!!!

 

一人一个项目,不做就挂科。有什么问题找老师找大神问,只要想做谁都能做。
做的内容越有意思越好,越容易产生成就感越好。

 

基础打好了再弄这些东西,专业课一系列下来讲成那么水怎么做项目

 

要求定时检查,明确说明宽松评分条件,可能能使一些知识掌握不怎么好的,但是又想有所改变的学生能够参与进来

 

第一:项目能实现其价值,做完的项目能有用武之地,也许有些人会有兴趣

第二;必要性问题,我觉着如果可以的话,不妨给大家一个选择,一种是混分形式的,分配一些简单的项目,老师按进度给分,会写代码就成。一种自拟题目或者说是做比较难的项目的,老师多给与指导。这样,至少做的那部分人应该会更用心些,而且老师的担子也小了一些。

 

使授课形式多样化,尽可能由学生自主发挥,老师少加限制

 

还是高考取消服从调剂这功能比较靠谱,很多人调剂后一点兴趣都没有怎么提积极性?何况很多人主动报这专业的都没什么积极性,没有兴趣怎么有积极性,这还得从选专业入手吧。

 

经常催促

 

没办法,这样的无营养课程谁有兴趣,敷衍了

 

为想参加项目的同学提供免费培训和实战的机会。不想做项目的学生还是让他们自己干自己的事儿吧。

不如把培训做项目这种事情,作为活动来搞。不带学分,不带分数。学生自愿参加自愿退出。

 

一人一组,严查抄袭
不过我想除了sunner之外,没人下得了狠手

不过事实上,即使是sunner,也有少部分没抓出来的

 

选择学生自己感兴趣的题目。老师能及时给出正确的指导,直至项目结束。

 

其实我一直觉得,没必要逼学生,因为只有很少一部分人是迷失了自己才会让自己变的酱油。到了这时候,很多人已经找准了自己的位置,很多人都是比如家里有条件,毕业家里全权安排,或者就想悠闲的生活,回家离父母近,找份安逸的工作,等等。只有像我这样穷养出来的儿子有时候才会怀着沉重的心情来对待学习。从来到大学,参加了一些这样与学生交流、听取意见来促进学生学习的活动,大一我还天真的以为这是真的,挺好,但现在,我会在想,他们是不是只是为了拍张照,发个新闻来证明自己确实在努力的工作。当然如果学校不逼学生,就会造成只会产生一小批人才,会让我们所谓的哈工大没有颜面,哎,总之,真的没什么必要建议什么的。

 

不要单纯地讲究代码量(基于真的有的同学对写代码不开窍)!
引导同学进行自我能力的认知,在项目中发挥自己的特点!
指导老师在监督项目的过程中,注重学生能力的挖掘和分工。

 

给奖励措施吧,多鼓励,对于编程能力比较差的组,指导教师要多督促,时刻关注进度,给与适当的帮助。放养式对于很多学生都是行不通的。填鸭式教学在一定程度上让更多的人学到了知识

 

建议制定政策的老师不要拍脑瓜就定了,先去看看博弈论吧!

一味地打压学生就能取得好结果吗?

 

从学生角度来说:用不着强人所难,学生不喜欢坐在那里编程,以后不从事相关专业,那为什么非得让他心甘情愿呢。有些人适合做技术,有些人适合做外交,非让姚明学高数,让刘翔当人大代表,不合适吧。
但是从老师的角度来说就不一样了,老师只要提供足够多的资源,适当动员学生就可以了,最好能通过老师带起学生的兴趣。有了兴趣,以后的路就靠学生了。

 

单人单组,选一些学生感兴趣的题目,可以自己命题,不要求非得结合数据库,与操作系统有关等。持续时间可以稍微短点,因为大部分人要么是最后做几周,要么是上网找个,其实可以找个没有考试的时间,比如刚开学的前几周做个什么项目,或者以后有了短学期后可以在短学期的时候做一个什么项目,现在又要忙考试,又要做项目有点顾不过来。

 

鼓励编程能力稍弱的同学,降低难度,培养兴趣为主,编程好的要放低姿态,本着帮助别人的态度,而不是炫耀自己多快多好的完成全部工作。另外我自己的问题是分组时和男同学一组导致我的男朋友心里有疙瘩,所以我和另外同学几乎没有什么交流,这是我们自身的问题,但希望以后分组有些弹性,这样效果会更好

 

项目式课程是有原罪的:没有人有动力做。做项目有什么显而易见的好处吗?没有。既不能学以致用(课堂上学的东西不足以支持一个项目),又不能挣钱或者得到荣耀,纯粹的教师驱动式编程。企业赞助的,有奖学金的比赛性质的软开才是王道。另外,大家水平参差不齐,不应该放在一起比较,让大家做力所能及的工作,得自己愿意得的分数。

 

一人一组,若多人一组,施行带酱油给工资制度。

 

1. 分组要不带有强制性,自由选择组员, 不想跟酱油分到一组。浪费时间,写一天代码,然后给他解释好几天,尤其是快答辩了,勤快的跟啥似的,平时啥都懒得干。
2. 积极性不知到咋提高。 整那些没意义的东西没用,比如我,我是想学这个的,我自然就努力,他不努力你逼他有啥用啊。何必呢? 答辩的时候他不行直接给0分就行, 平时怎么样不应该管,到时後能提交代码就行。
3. 为什么说1个人不成project? 这是李治军老师说的,其实有点不符合具体的情况,组内两个人一起做的情况应该是不多,总是有一个人为主的,而且我觉得18周的时间一个人做一个称为project的项目是完全可以的,这样锻炼的目的才能达到。 所以我建议,以后就一个人一组,什么提高团队能力都是扯淡,酱油们选择弱点的题目,能力强的选择强的题目。指导老师分配也不存在大的问题,2中说了,没啥好监督的,只要有问题去问指导老师就行了。
4. 经历的软二中的老师是王忠杰老师,觉得他就很不错,技术不懂,但是对于整个项目的把握方面很有控制力,这就很够了,能够站在一个系统的角度上给学生做指导,我觉得这是一个很棒的老师,我们需要这种老师,软一或者不需要,软二软三软四已经开始涉足一个系统了,所以这种老师希望能来当指导老师。技术不是重点,google下什么都有了。
5. 请实际考察下,酱油们是怎么工作的, 两人一组,如果其中有个酱油,那么酱油是不会工作的,只是在答辩前的两天让另一个人分配任务,just that simple 。 你能查出来就0分,查不出来就高分,not fair. 另外老师考虑下酱油拖累的问题,答辩的时候看到很多这种情况,感觉十分惋惜,出于人情的考虑,不敢不给酱油代码,但又被酱油拖累。

貌似我说的完全没有什么逻辑性,但是最重要的
1. 在定题方面老师们多多出力,想些好的题目。
2. 分组自由化,人数自由,4人上限。
3. 指导老师工程化,做过工程的,能教你做工程的技巧的。懂软件工程的。

 

如果可以评奖,评出12345等奖,奖金在10W或者20W左右的话,虽说不现实,但可能会有点用。否则多做了那么多工作,最后多得个10分20分的,不能兑换现金,也不能用分换个奖品什么的,没什么用。
说多做了东西,学到了更多的知识,今后的学习工作生活中,没准是3,50年后没准能用到的话,呵呵。
(话说上面5个为什么没有0分……)

 

培养同学们的兴趣,同时给予很多压力,有压力才有动力。

 

首先要让学生有兴趣去做,而且不要占用过多的时间和精力

 

1.强带弱,弱的同学不求太重的任务量,这样弱的同学有退路,有良心的话,至少能做点,避免酱油。
2.指导教师一定要对学生所做的东西有所了解,开题时最好能给学生指出一条路线,现在的设计与实践,老师根本不懂学生要做什么,什么都要靠学生(这是科研,不是学习),学生自然不愿意做,如果老师能给一点思路,学生发现项目不是很难自然愿意做了。俗话讲:与其用大道理进行思想教育,不如指一条明路。

 

1.促进同学在项目中的积极性,我觉得每周一次的教室里上课还是有必要的。首先,同学之间可以面对面的交流,其次,学生在每一次课程中看到其他组的进展,会督促他们跟进。就我所在的班级而言,只有极少的组是均速完成的。基本上都是在最后一周突击的。
2.github是否可以当做一个判定的标准呢,如果同学在平时就进行,github上面肯定会有记录的。但是在答辩过程中,这部分几乎只有很少的影响。

 

告诉同学们,你们以后简历上,可能就只有这些算项目了

还有就是,希望项目还是要有实际内容,主要目的是给同学自己实现某一个软件的经历,就我认为,现在同学们很多基本对软设就是一个蒙骗的态度,谁能花更少的时间更少的精力通过软设,谁就成功了,因为这是个蛋疼的东西,如果最后能用伎俩骗过老师的眼睛,甚至拿到比一些努力做但没做好同学更高的分数(比如说A),那么这就是软设的大赢家了,而这样的赢家我是见过的。当然,我这样通过自己的摸索,能拿到A的(我觉得。。希望能吧。。),也不能算loser。不过,除了大堆的纠结之外,能从项目里获得的东西真的不多,这个东西很费神

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!强烈要求,给类似的软设一个固定的时间,比如连续两个星期
!!!!!!或者是,在每一周,抽出教学表的一两天,集中进行
!!!!!!比如,星期四,星期五,星期六,都不上课,大家集中在某个地方,进行
!!!!!!开发,除此之外的时间,软设可以抛在脑后
!!!!!!如果,老师指望同学们自己没日没夜的做软设,这只会是自欺欺人,顶多
!!!!!!!就有少数几组满足老师的幻想,大多数还是现在停停走走的泥潭里的,
!!!!!!!有些人甚至就不做(有人压根就是以我前面所说的“胜者”姿态为目标的,
!!!!!!!!而有的则是被磨得没了激情。。。)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

 

挑选以前的优秀项目,让同学们在开始的时候知道曾经的“同学们”都干过什么,干到了什么程度。

 

看个人吧,组里比较厉害的基本平时上实验课都在做自己的东西

 

没有办法。
平时课都不上的人,这种所谓的考查课,他们不求高只求过。
临时down一份代码,拼rp,3分天注定,7分师生情。

想做的同学自然会借着这个机会来做。不想做的同学,神也救不了他们。
人各有志,不能说不想做的同学就如何如何。

 

第一:选题时候不能随意选,必须有难度控制,当题目过难时哪还会有积极性。第二:过于重视实践,应该结合科研,毕竟人各有志,这个课设应该为不同的人搭建平等的平台。第三:支援上指导教师要起到作用,监督只是最不重要的部分,希望能在困难时为学生指一条路,给我们方向和希望。第四:随机分组也会有酱油,所以莫不如由老师设计项目,分块,同学根据能力、兴趣选择分工,一个萝卜一个坑,不用想投机的事。第五:有些同学是无可救药了,他们的积极性谁也没法提高,除非把编程改成dota…第六:请给准备考研的同学一条生路,希望能有等效工作量的方式,通过指导老师的监督,用复习的工作量等价替换编程的工作量。

 

不逼自己一下,你永远不知道自己有多优秀。
积极的人像太阳,一个好的队友往往会起到事半功倍的作用,你的队友不一定要有多优秀,只要他(她)足够积极对待工作,只要他(她)敢想敢做敢拼就足够了,这样的队友,他(她)的积极性会感染你,让你在不知不觉中投入工作,在不知不觉中成长。

 

作为一名对计算机兴趣有限的学生,有时候感觉自己的努力真的不少,但是我有时候花10个小时做的东西可能大牛们花不到一个小时就搞定了,而且我最后花费了很多的时间做了一个比较挫的作品,甚至功能都没实现,但是我查阅了很多资料,收获了不少知识。。。就感觉这课的评价标准应该相对的改一下。。而且万一我们功能没有实现,对这课就基本绝望了,好多人都放弃了。。

 

老师的指导是很重要的;要考虑学生的实际情况,例如时间、能力、爱好等;课程设计者要充分从学生的角度来考虑问题,课程改革是必要的,但应该是越改愈好,越改越能让同学接受。

 

多讲一些有意思的程序实例,为大家提供一些可参考的有价值的实例代码,能让我们学习的更有方向性,能更了解我们能做到什么,而不是以极低的效率盲目的自己瞎撞墙,毕竟有些题目能查到的资料很少,也几乎没有人做过。

 

没有,这个只能靠自己,其他人的任何所谓监督都没有办法

 

这是大学生的通病,最好的办法是让课程变成考试课。

 

首先我没有,但是我仍然想说话,我大一的时候什么都不会,当时就想换专业了,后来做了软开一,当时我们三个一组,是这么分活儿的,每人做三分之一(我是第二个,这个很不合理,= = ),第一个做的那个哥们后来证实什么都不会,但我们还有一周就查了才知道,当时就毛了,怎么办,我去图书馆借书,大概看了两天就硬着头皮写了,后来也弄出来一个了,你们可能觉得没什么,但是就是这个软开课,让我改变了对自己不喜欢计算机的看法(其实还是不喜欢,但是不觉得自己不适合)

要是提高积极性的话,我觉得就只能跟新加坡人一样,要有高约束,早约束才能有更好的效果,前面都让某些不懂的老师霍霍了后面怎么做?还有我觉得知道教师别给我们分了,就软件基础教研室的那几个老师学院不知道怎么还让他们教课的,水平差到大一的程度,什么技术不懂。我觉得应该给我们分几个研究生大四保研的学生之类的,我觉得他们更有开发经验,水平也能好一些。

 

对于没有热情的同学没有任何办法

 

我是一个自信心需要成长的人(但我自己的自控能力又不足),所以我更希望直面指导教师的批评挑战与鞭策并由此锻炼自己。而实际上我们的指导老师是几乎无存在性可言的(我到现在不知道我的指导老师是哪一位)。如果本学期我的指导教师是岗哥的话,我觉得我对软开III的评分不会是这些。
所以我的建议主要是关于指导教师,如果每个指导教师如果能多主动与学生沟通,让大多数学生觉得自己“存在”,指导老师“知道我”而且“很负责”,也许大家的积极性会有很大提高。
以上建议其实针对了大多数像我这样的人,我们不够主动又归咎于指导教师不主动,不负责任又指责指导教师不负责任,觉得自己毫无“存在感”又不会通过自己的努力寻找“存在感”,可能是因为学生从小受教育被动惯了,一旦到了自己须要主动的时候,便从心底抵触,寻找各种冠冕堂皇的理由拒绝主动,个人觉得这大概就是每个人的心理防御机制造成的。这种防御机制靠硬攻大概是不能奏效的。而延续以往的教学经验是我唯一能想到的办法。这大概是中国教育和我这类人共同的悲哀之处吧。

 

其实至少我并不讨厌这些东西,或者说也蛮使用的,也只是事情太多,又或者说我不太会安排时间,而且我也想玩的,如果开头我做了,后面我绝对不会完成不了,但是这学期其实只有最后一周我真的看了,我觉得我做的也还可以。所以老师我很希望开头的几周一定要有一些检查要求,什么要求高一点都可以。当然学校一定要给我们时间,那段时间不能安排太多课。进度检查是很重要的,现在的这种情况不得不说流于形式的进度检查贡献了不少帮助。

 

能集中一段时间来进行项目设计,比如集中一个月时间,什么事情都不做,只做项目。这样会让同学很有兴趣而且有效率。

32. 还有什么意见或建议吗?表扬就免了,因为我们对自己的表扬已经足够多了

这是一道问答题,非必答。所有回答如下:

尽量提高同学们的自己思想意识,从根本上减少酱油

 

诶,让老师门都有争议的课,我也真题不出什么有建设性的建议

 

软开课程就是坑爹,连学习其他课程的积极性都被打击的所剩无几,一想到软开就不知道大学该如何继续下去,大四的软开4简直就是个噩耗,整个实践课过程痛苦和纠结居多,鲜有收获。为什么都大四了还要整这么个坑爹的课呢?。。。

 

课程设计者要充分从学生的角度来考虑问题,课程改革是必要的,但应该是越改愈好,越改越能让同学接受。总之,我对软开比较失望,感觉软开I效果最好,接下来是逐一递减的趋势,这是我内心的真实感受!

 

大一的年度创新纯属脑残。软一二三四感觉没完没了的。可以换种形式锻炼能力。

 

缩短开发时间
同班的人同组

 

1.强烈建议取消软件4,软件3也应只对部分学生开设。原因:之所以软件设计与实践不成功,或者说有巨大争议,原因在于,个人的发展计划不同,软件3,4开设的时间(尤其是姜大爷的软件4),正好是学生考研复习的关键时期,对于这些同学,软3,4是十分浪费时间的,学生不可能为了一门课放弃考研,索性60分或酱油了。但对于保研或找工作的学生来说,这是不错的锻炼机会,学院把所有的学生一锅烩了,造成了软件课不成功。
2.还是希望孙老师能继续教下去。

 

1. 指导教师别要,换本科生或者研究生
2. 减少软开的数量,增加工作量,和项目的整合度(也就是多个科目一起软开)
3. 允许打酱油的,但打酱油的要干除了编程以外其他的活,每次都是,一写报告就均摊,一编程就我不会,真受不了
4. 软开别弄那么高年级,都大三大四了,该考研出国的不让人活了?
5. 没了,我要吃饭去了

 

建议老师或者助教在学期开始的时候跟*每个*同学交流确定他的目标分数。如果能达到可以给奖励,如果不能达到则加倍处罚。相信每个同学不会给自己定太低的分数的。

 

大四了,有相当一部分同学考研和实习,虽然这样说感觉不太好,但确实是我内心的真实想法,软4的开设确实意义不大

 

其实我就想骂一顿,刚开始上大学的时候,在自己心里想,大学的老师都是牛逼的。至少对于我们这些初次来大学的小孩子们来说,是这样子的。但是现在,我越来越发现原来那些老师很多自己也是”酱油党“。那些年迈的老师自然是不一样,他们的知识和积累的名望我们自当是要尊敬的。但是很多不算那么老的教师,或者是指导老师就是摆设,老师们拍胸口问问自己,你们一天多少时间在编程(孙老师除外)。你们脱掉身上的光环去企业面试,你们想想自己有多少把握,又有多少竞争力?是的,你们懂写C语言,java。学生做的东西,拿出一行代码来,就算是猪一般的脑袋也能够傻傻的点评一下。有时候我甚至在想什么时候答辩的时候准备一行有trip的代码,让你们解释解释,后来想想算了。那些所谓的指导老师,你们自己问问自己,那些团队所做的事情,你们真的有能力”指导“吗?岗哥,你曾经和我说过,能有个给你提出一点有用的建议的就不错了,当时我想想也是了。但是后来还是觉得不对,我现在还是一个学生,作为老师竟然这么和学生说,大学干什么,学生交的学费干什么?教育又是为了什么?其实这就是大学的现状,一个两个学生出问题,就是学生问题,很多学生出问题,就是老师的问题,最终可能还是社会的问题。开启这些创新和实践课的出发点很好,但是学校没有为这些课找好老师,就是原来的老师顶上……从另外一个方面讲,学生打酱油,老师们应该感到幸运,要是真的每一个学生都是认真的问你,你的日子还能清静吗?那么多学生要做的东西,几乎是覆盖了计算机知识方面的全部领域了。有哪个老师敢于说自己都会?所以有的时候,我会很欣赏像任世军这样的老师,就教自己牛逼的数理逻辑,近世代数。脾气也好,上课还有时候整个linux系统放映课件。用Tex写公式啥的,这才算是教计算机的老师啊。不用全会,但是真的是一种素养。现在那些老师中有几个linux玩的熟的?(别说自己当年怎么样怎么样)。算了,我也是大三的人了,很快也要离开这个学校了。最终我想说,每一个老师只要把自己会的东西都很好的教给了学生,那么就够了。至于学生最终好不好,就看这个大学的老师的水平了。呜呼~~~

 

一,漏网之鱼还很多么。
二,不知道“法不责众”在这儿好使不?

 

周志的问题,这个不考察编程能力什么的,只是在考验很多同学的描述和想象能力,进度这个东西,不可一概而论吧。也许,截止日期之前突击,不是惰性,而是一个没必要性。如果,老师能把最终的标准比较敲定,可以每周或每几周,验收一些项目,我觉着有些项目可以在开题的几周完成,毕竟欠债的滋味不好受,但是,死期债务也就无所谓了。

一些弊病非一时之功,对于孙老师的举措,私下里谩骂似乎远多于了解。我深以为如果所有的老师以您的态度工作,以您对学生的“残忍”面对学生,那样本科的水平决不止于此,但是,学习的习惯,态度,目标早已劣根深种,故而,收效难巨,仅剩下学生们痛苦的呻吟了。

今日见一处世态度:外圆内方。我发觉自己内心的棱角也正在被磨蚀,仅以此勉。当世之外圆内圆之人甚多,方者难存,愿君保有心中之激情。

 

从我了解的范围来看(我们班内吧。。。),这门课作秀的成分太大,而且最后许多“聪明人”确实得到了想要的结果,”老实人”有的劳有所获,而有的甚至是”受伤了”

另外不满的就是,老师们的准备不足,明明说过会整出几个难度适中的题目给我们选,但最后却是开学之后让同学们乱选,我只能认为,这是老师的失职。(另外,选个”聪明”的题目真的很重要,后略)。

不过一个比较有趣的现象是,我认为能在这个项目中取得A的人,在中国这个没有规则的社会里也是更容易找到立足之地的(成功倒不敢说):1.老老实实干活,还能干好的人;2.没有羞耻之心的人,能面无表情(或是很坦然的)说瞎话骗过老师;3.前两种的混合体,自己能做但不一定能做好,要做一点“坏事”,但没有完全丧失羞耻心的人。失败者呢?大概是这样:1. 酱油党,我自逍遥(我应该说麻木);2. 没本事做到前面那个无羞耻状态的酱油党(此为普通人,不是完全不想做,我觉得正常的社会,最应该帮助这样的人,以及3中的人);3. 愿意干活,但是能力经验不足,不能让老师满意的人(我觉得一个室友就是这样,因为基础很差,我觉得他做出的东西已经超出了他自己的极限(也许我鼠目寸光),但是老师还是不满意)。

暂时就想到这么多了,希望工大能多为学生着想,也不枉我们这一届小白鼠白白牺牲。

 

建议以后分组可以让大家先自己组队,然后没有队的同学再随即分组,学不学都是自己的事情,但是如果因为一名组员完全不学而直接影响到另一名组员我觉得不太合适。真正想做点东西在乎这课的多少还是会主动的去找适合自己的组员组队的,剩下的那些没有队的应该也就是不太想学也不太想过的了。

 

希望能自由分组,如果找不到的同学自己一组即可;到时候不想写的直接0分;当前的分组让很多人很难办,出于同学考虑,我们不能放弃他们,但是他们又不想写,无论怎么说都没办法,所以苦的只有会得会的同学

 

表扬?亏你想的出,这个开发的重点应该放在让更多不会编程的同学开始尝试编程,进入编程中来,而不是找谁是大神,谁是混子。

 

建议就是可以把平时你做了什么发到周志上,以具体的实物或者总结为依据,对最后结果的实现放宽一点。

 

最好是一个人一组。老师多给一个可以选择的项目

 

不要整什么小组了,同学之间水平差距太大,不像工作单位里面,组队太勉强了。
如果说让学生自己定题目是为了达到不想限制学生的目的的话,那么其实可以让老师从自己比较擅长的地方选100个或者更多的题目让学生来选,这样甚至可以把每个题目第几周要完成到什么程度都列出来让学生看,就最好了。
否则不做限制的话,有些东西老师都不懂,学生就算讲错了也不知道,我们软开I的老师就不懂网络方面的东西,做了都感觉白做了。
说多做了东西,学到了更多的知识,今后的学习工作生活中,没准是3,50年后没准能用到的话,呵呵。

 

作为老师的你们,只注重最后的结果,只看最后的代码量。自然而然的将代码量和工作量化为等价,完全不在乎学生中间所经历的,所纠结的。继而就导致很多人找份代码读懂了,就可以拿着去充数了。。。有些东西看起来很简单,想着也简单,但往往实现的时候就不会顺利了。
这课就感觉没时间去理他,平时也有很多事,不能去专心做。建议:开题结束后,能留一段时间(很长一段),给我们一个知识积累和资料查阅的的时间。然后在后期,集中两到三周完全停课,一心一意的做这个。

 

希望能给学生一些资源 比如教师培训 或者书籍视频推荐之类,学生自己闭门造车是造成代码抄袭的关键

 

取消软开四
建议:再加个问题,或者再开一个问卷,统计有多少人想上软开四,并上交给学院

 

1. 表扬不能免 。
2. 坚持。

 

意见就是:
以后自己一人一组,完成的效率会很高,相信可以做出来很多东西。
对于对cs有兴趣的同学,肯定一个人能搞出来,没有所谓的组员的拖累,也不用担心我做了也是白搭,会信心百倍,反正是自己的。
学校和公司不同,公司团队是因为大家做不出来就没有钱拿。学校的组员,毫无压力,反正这种课一般都没有人会挂我们,当然了,软设三是第一门。

 

取消最终评价制度,项目都是自己的项目,写成什么样完全是自己决定的。

 

这个系列课打从开课起,就应该做好饱受舆论的准备。总结起来就是:总把学生一概而论。从软开1到3,实现的效果肯定是忙的更忙,闲的更闲,而软开4只是把这个矛盾激化了而已。抱怨软开4的基本上都是本来下学期计划很明确,却被强制受到干扰的同学。开课的人估计是认为普遍大四学生存在闲得蛋疼的情况,从而能督促督促,一懒散之后很难再收紧了。而实际情况恰恰是真的闲得蛋疼的根本不会来这儿抱怨软开4的吧。
我个人来说,从软开1到3,收益不少,失去更多。软开把时间均匀化这点让我饱受苦恼。实验室本来有一些十分有趣的项目可以做,但总是因为抽不出大把的时间,最后实验室老师都不想让我们分心做了。这点其实软开3还算好,不用上课,但是周志显得蛋疼,Github的记录已经很好了。软开2的时候时不时交报告真是让人发毛,我大计算机院真是越来越向软院靠拢。
因此,我的第一点建议是:从时间上集中式开发,去除繁琐的报告,周志模式。就像当初的金工实习那样,我现在还记忆犹新。我个人认为本科生没必要会写漂亮的报告,能够体验技术的亲手实现才是最重要的。写报告,周志以及一些GTD的事情都是以后随技术进步,为了提高效率而自发产生的需要。而集中式开发,不仅效率高,成就感强,而且记忆深刻。
我也喷喷软开4吧。本来写编译器这个项目对于计算机专业的学生来说是非常有意义的,至少在能力的提高上应该会是软开4个系列中帮助最大的。不过时间真的不太妥当。具体说吧,今年是IT界巨萎的一年,大批量的裁员,各公司处于观望状态,谁也不想像前两年那样招人,导致今年校招的压力非常大,实习的同学都非常珍重来之不易的机会。然后导致很多学生咬咬牙,还是考研吧。然后再造成今年考研的压力也非常大。事有轻重缓急,做编译器能力提升大,但是想要达到那样的效果,付出的时间也是要成正比的。这么一想就觉得不太划得来了。说现实点就是写编译器对于找工作和考研帮助不大,伤害不小。
因此我第二点建议是:改成选修吧。虽然说出来我自己都不太好意思,但是这应该能缓解一些矛盾吧。当然选这个课要有足够的吸引力,不然估计谁也不会选。比如说可以适当加学分什么的。对于考研或工作的人或许没有什么吸引力,这也正好把下半年最忙的两类人给划开。

 

学完软开1-3,收获甚微,失望。
软开1做的是数据结构和图形化,这次课程实现了许多算法,从周围的同学的表现来看都比较认真,但程序基本上是组长一个人写90%。那一个学期本人实现了10000行代码,不管是算法还是界面都非常用心,最后大project也得到了老师的肯定,获得了很多的自信…但这也是埋下祸根的地方,没有在大三前考完GRE。很早以前就听学长们说计算机学院的很多课程都是在扯淡,你应该循着自己的想法不断求索,我以前一直不相信,一直觉得老师的思路是对的,学长们的想法只是因为他们没用心而已。直到上了到了大三,上了计算机设计与实践,上了软开2,上了数理逻辑,上了软件工程等等,因为我并没有感觉从这些课程中学到更多自己 ”感兴趣“ 的东西,因为这些东西和自己的 ”前途“ 并没有很大的关系,渐渐发现拿到 ”高分“ 才是王道,直到接触了机器学习,上了很多很多的公开课,比如斯坦福的Machine Learning:cs229.stanford.edu,斯坦福的mining massive datasets:cs246.stanford.edu,斯坦福的Probabilistic Graphical Models:pgm-class.org这些课程都非常精彩,不仅非常有难度,编程作业很有挑战,而且很 有趣 ,是现在整个硅谷最热门的技术,比如cs246就用Hadoop来进程大规模的机器学习。看到这些课程中的内容给我更多的是一种恐惧,人家在跟我们同龄的时候就做了这么多有趣的事情了,而我们还在做这种 ”上网翻翻文档,搜代码,图形界面,写个小网站,写文档,数据库整么连,怎么帮同学过关“ 码农干的事情,能不恐惧吗???瑟瑟发抖….
而相比之下,计算机学院的软开1-3只是要求实现1.数据结构,用GUI画出一棵树,2.做一个xxx类型的网站,用到数据库,3.写一个与内核相关的程序。这些东西虽然很基本,但是却着实是 码农 的工作,因为 不深入 每个东西都是浅尝辄止,因为每个方面都只做一个学期,效果必然不好,而且比较 脱节 ,前一段的东西没整么用上,即使没学软开1,一样能写好软开2,没学软开2一样能写软开3,就像每个方面都会一点,是盾,我们都希望成为长矛,在某一领域成为”专家“。就算是工作的话,也会有明确的分工,而且企业更倾向于招在某个领域有独门绝技的人,全会多种语言的必然不精;如果是要出国的话,这些都扯淡,GPA,论文才是王道;如果保研的话,你们希望自己的学生们数学不好么???受如此摧残???
其实工大的本科生都是非常非常优秀的,不管说是创造力还是学习能力,可以说比工大的研究生都要优秀(研究生生源不好,他们读研的目的大多在找工作;能够净心做科研且能出好文章的大多是优秀学校的优秀本科生),只是很多人都在迷茫的时期(大二)没能得到高人正确的指导,而学生办那帮导员们总是做非常非常2的事情来摧残他们。如果实验室的老师们能够让更多的本科生在大二下就加入实验室,加一些正确的引导,让他们软开1-4都做感兴趣的项目,跟着兴趣走,做系统的一直做系统,最后能做出一个牛x的开源软件;做硬件的就专门做硬件,最后能做到Robotics;做机器学习的就一直做机器学习,软开1就做个非常简单的字符识别,用matlab实现各种监督学习的算法;软开2就做难度稍微大一些的,比如微博方面的啊,这样一年时间必然能够全面了解所有的基本算法,同时学好数学;软开3能做个Hadoop相关的,渐渐的在这个领域就有一定的想法了,说不定最后还能提出个模型,在ICML,KDD等牛会上占一席之地。如果说老师们觉得学生们都没有兴趣,希望用软开1-4两年的时间来“激发”学生们的兴趣,让他们看到这个“精彩”的计算机世界的话,那代价就太大了,老师们还是轻视了本科生的实力。
吐了这么多槽了,言辞比较犀利,相信也没有人能够坚持到这,不过我还是想给出一些建议:
学校2013年要进行改革,但 不分xx track的自主选课的改革都是耍牛氓 ,sunner就要离开了,09级明年也要走了,这个世界会变得无比寂静。改革者都是伟大的,历史上的改革者大都死的非常惨,但却建功立业,青史留名。相信老师们身体里都流淌着热血,于无声处听惊雷。
怕老师们没时间看,直接列出建议:
1)软开1-4可以有,很好的想法。但不应让学生4次做不一样的,可以让学生在大二下就进入实验室,根据学生自己的兴趣选择一个领域深挖下去,实验室专门有老师考核与指导,分组上可以让大三的带大二的。至于数据结构,操作系统,编译原理,软件工程与数据库,在正常课程中解决;
2)尽早实现xx track,自主选课,提高课程深度,编程作业有挑战,结合当下热门技术;
3)不要轻视本科生。

 

平时分不要给的过于死板,期末做出来的平时就应该满分。

 

我想说有个同学他没怎么做,只是代码看懂,拖了个界面,到了现场比较会说,他得了个B,他只花了一周的时间。而另一个同学他认真做了,从头到尾,虽说也没花太多时间在上面,但一行一行代码敲出来的,但是他以前基础不行,而且做的可能也烂了点,还有他可能说的不太好(注意叙述中的“可能”),只得了个C+。我总觉得应该是有哪里有问题。我还是想说酱油党还是有漏网的,而且洞还挺大的。还有这种交谈中,表达好与坏太重要,这个老师是不是考虑如何加重一下真实实力的在成绩中的比重。以上,就这些,其他的一时也没整出来。还有谢谢老师,让我感觉到我们国家的教育还是有人热心于的,而不是一个混文凭的地方。虽然大学还是离我想象中的美好差太远了。我一点都不以我是大学生而感到自豪,也不再以为大学生和大学是国家的希望和未来。老师,祝你未来能达成你的想法。我就不知道我自己了……

 

尊重学生自由,允许自由组队

另外,哈工大没有自由开放的土壤,就种不出原味的成果,南橘北枳相信您也是明白的!

 

个人认为没有监管的/实力不均衡的/非自愿的/不能一个人一组的分组就是老师推卸责任的一种形式,学费又不是交我手里,为什么我要负责指导酱油,还说神马“毕竟在未来的工作岗位上,最初我们是没有选择团队成员的权力的,必须有能力与完全陌生的人快速相处,并一起向着一个共同的目标前进,哪怕过程中发现那个人是如此的不堪”,公司招人难道在大街上随便挑一个就行么?别扯什么能力越大责任越大,酱油对计算机根本就没有兴趣,你能指望什么,选错了专业责任在他们自己,但是酱油还能一直以酱油的水平正常混到大三甚至毕业就是学校的不负责任。

软I II居然能做到5人一组,真是奇葩,2人开发,1人UI,1人销售,1人跑杂活么?5人开发!严重怀疑所谓的老师根本没有实际项目经验,不会写工程性代码!(或者说不会写代码?)

另外我特别支持老师在临离开前搞的happy一点,争取挂掉一半或者更多,如果真的可以做到,那么这件事在这样一个学校的历史地位从一定程度上就可以与近日某地一票人从一个地方蹓跶到另一个地方相媲美了。但估计也就能止步于历史地位了。

软IV的内容还是挺好的,但那个蛋疼的课程时间到底是谁想出来的,大四不用实习么,不用准备考研么,某些老师居然还说什么将来公司来招人也能拿软IV的项目跟人吹一吹,你当我不知道大公司招人在软IV结题之前早就完事了么?另外那些去MSRA的同学不用做这个吧,那是不是也应该有针对去其他地方实习的人政策呢?

 

我知道开这个软件设计实践课时想提高我们的编程能力,但是我不知道为什么大四上学期还有软件设计实践。不知道老师知不知道这对于想要考研的同学意味着什么。准备考研是需要时间的。学校老是说我们本校的考研学生考不过外校的,但是有没有反思过有没有给学生时间去准备。回头自己培养出来的学生又和外校学生一样的考试待遇甚至更差(至少我听到的基本都是)。我不理解,为什么自己培养出来的学生学校不要,宁愿要分数高低。第一时间不足,第二你们用这些时间来开课程,学生学完你们又不要了。

 

意见挺多的,一个一个来说吧:
软开1,数据结构与算法,非让写图形界面!实践数据结构用图形界面展示,那能练习啥?结果这门课就是在整界面,跟数据结构没啥关系。老师很多问题也不懂,什么都信息都不提供,老师到课程快结束了,才介绍编图形界面的有哪些方式,老师应该叫收作业的助教吧。谁界面好看老师喜欢谁。what the fuck!
软开2,数据库,我想好好练练SQL语句,想知道数据库相关的设计与实现。上学期讲数据库,下学期讲讲原理不挺好吗?我还想表扬一下这课安排的合理,结果呢?80%工作量都在写报告,对,软件工程报告。画大量的图,这是软件工程设计与实践吧???跟数据库屁关系都没有!软开1我理解,刚开课,很多问题需要磨合,结果软开2这么扯淡,我知道我对这课失望了。
软开3,操作系统,挺好,我算是比较满意了。为什么?我真正学到了知识,学到了技术。但是很多老师依然打酱油,工大的老师还不如安天工程师提供的信息多呢。好多老师周志也不回,问的问题都快课程结束了才回答,请企业的工程师来指导很好,应该发扬。但是中期最好有个督促,不然学生都没动力了。
软开4,编译原理?这学期就听到姜老师说下学期的报告至少5000字?好吧,我无力吐槽。我承认我痛恨写报告。但是我更痛恨这课的安排时间。大四上学期,实习的,考研的时间全给占了,08级都没这样,当时安排这课的老师是不是根本就没考虑这些问题啊?就因为这一门必修课,耽误了学生很多事情。
说了很多意见,甚至是牢骚,没有建议。真心希望下学期的软开4,取消吧!

 

恨少!恨少!(针对表扬而言)
臣以待罪之身侍奉陛下几分钟(去年还有大半学期),深体陛下天恩,臣如沐秋风(没有打错)。陛下刚毅英断,明察秋毫,雄才大略,雷厉风行,实堪千人一帝(志岗之后,再无志岗?)。衮衮诸侯,俯首系颈,委命朱笔,一庭内外,莫不宾服。臣本山野之人,愚鲁拙钝,蒙陛下不弃,悉以指教,使臣或可一用,恩泽浩荡,臣虽汲汲而难报万一。今陛下一旦离去(巡狩四方),臣踟蹰不知所以,诚惶诚恐。临表涕零,不知所言。
不送。不送。(缺乏送人之必要信息)

 

如果想完全消除酱油党要从每节课,每个老师,大一入学第一天开始,这样可能老师和学生也会更容易接受

 

想不出什么好的建议了,要是指导老师再给力5倍左右应该会更不错。

 

取消平时检查。。。不用GITHUB。。。最好能集中,比如说19-21周做项目。。。题目不要自己选。。。最好老师指定。。。因为自己根本不会选,
做完一点收获都没有。

 

github很虐心…

 

跪掉总不是办法的,虽然现在也没有什么好办法的说(确实怕被骂啊)。
当然如果这样的课生在大一就可能不一样了,那时候够傻够听话,也不像现在油水这么多,而且学长童鞋神马的资源也没那么丰富(当年多少人通宵熬个赛马呀,换是现在肯定没人了)。。。总不能说之前一直水过了现在突然强求下大家就统一都听话呢,何况还是在大三下?为神马这个学期交流出去的人那么多,大家都懂的吧。就是想说一门课这样是完全解决不了问题的,大家养成了这样的习惯怎么是一门课程可以改变的呢,网络啊,童鞋啊,多少资源在那等着多数人都不会勤快到自己再动手弄个新的,费力还未必讨好,而且还总有一堆乱七八糟的各种事情。
最后总结下吧,这种课程可以而且应该存在,但是仅此一个,又来的太晚。。。

 

跪掉总不是办法的,虽然现在也没有什么好办法的说(确实怕被骂啊)。
当然如果这样的课生在大一就可能不一样了,那时候够傻够听话,也不像现在油水这么多,而且学长童鞋神马的资源也没那么丰富(当年多少人通宵熬个赛马呀,换是现在肯定没人了)。。。总不能说之前一直水过了现在突然强求下大家就统一都听话呢,何况还是在大三下?为神马这个学期交流出去的人那么多,大家都懂的吧。就是想说一门课这样是完全解决不了问题的,大家养成了这样的习惯怎么是一门课程可以改变的呢,网络啊,童鞋啊,多少资源在那等着多数人都不会勤快到自己再动手弄个新的,费力还未必讨好,而且还总有一堆乱七八糟的各种事情。
最后总结下吧,这种课程可以而且应该存在,但是仅此一个,又来的太晚。。。

 

感觉做项目的时候比较难的是开始部分,大部分同学根本就不知道如何开始做自己的项目,根本就不知道从何入手,即使现在软3结束了也一样,基本就是用最简单的方法,实现开题时的功能就OK了,其实和自己开始的预想并不同。所以其学到的东西并不多,甚至让自己的兴趣就在每周琢磨怎么写周志时磨灭了。

 

最开始的想法是好的,不过实践过程不如人意,太流于表面了

 

话说软开3我觉得教师立题可能会更好,比如要求都写一个能真正启动的具有简单功能的完整的操作系统,我觉得写个这样的如果有指导的话能非常好的增进学生对操作系统各方面的了解.我本来想立个这样的,但是队友不赞成.
自由立题的结果就是有些题目只有在快写完的时候才真正知道题目的难度还有实现的方法.
我们小组的题目我直到最后几周才把一些对项目来说是灾难性的问题给解决了.虽然最后的解决方案是如此简单,大概就10行代码,加了个内核timer来调用某个内核接口.但是在解决这个问题前由于对内核某些方面缺乏总体的了解我一度觉得可能解决不了了.

另外开始的时候可以先上上课讲讲内核编译 安装,内核模块和内核头文件等基本知识.我盲人摸象了好一段时间,最后发现我做的根本就不需要编译安装内核,有内核头文件写个makefile就行了

 

这个课就不应该开设;
为什么要强制呢?
例如下学期的软开4,绝对的是弊大于利,都大四了,同学们有自己的打算,决定工作的要准备实习,决定考研的要认真复习,哪有时间上这课?
还强制的必须每周都到实验室,事实证明这是没有一点儿用的,同学们该做的工作几乎没有一点是在实验室完成的,所以这个是没有一点必要的,反而对同学们造成了一种束缚。
强烈建议学院取消软开4的开设,如果不可以的话也希望学院作出让步,能允许学生在网上提交实验成果,老师也可以在网上给出指导(虽然是近乎于零点),都二十一世纪了,没有必要那么落后。

 

时间上,像这样拖一整个学期非常没有意义。要么像别的学校那样早放假一个月,开小学期整这种项目,要么像别的专业课设那样学期中单提出俩礼拜不上课专门做项目,时间上都足够。像现在这样就是15周的时间,如果是大腿,1周用来查资料配环境,1周用来写项目,剩下13周用来焦虑或酱油(主要区别在于先完成还是后完成);如果是酱油,15周用来酱油。

人数上,以现在的项目难度来说,一到两人一组就可。为了增加每组人数而增加项目代码量要求,只是在增加大腿的工作而已。

以我个人的经历来说,写了三个学期的项目,刷了三份不同的成就,收获颇大,感谢这个课程的加入。但是如果想要更多的同学收益于此,还需要很大的改进。

给教师的 Moodle 2 功能向导

两年前曾经有一个很火的《Moodle Tool Guide for Teachers》,被翻译为 12 种语言,可以很方便地帮助教师根据想做的事情找到最适合的工具。最近 Gavin Henrick 针对 Moodle 2 改编了它,原文在此。这么好的东西不译成中文实在太可惜了,所以,请下载,并欢迎纠错!

下面是第一页预览图(原文件有两页)

新安装 Moodle 应该选择哪个版本

Moodle 从 2.0 开始,采用了新的开发过程。从用户角度看,最大的变化是版本发布的频度提升了。现在,每年6月和12月左右会各发布一个新的 2.x 版;每 1-2 个月会为最近的 3 个 2.x 分支各自发布新的稳定版,也就是 2.x.x 版;每星期还会为每个分支发布一个 2.x.x+ 版,包含最新的更新。比如现在(2012/6/12)在官方下载页面就可以看到 2.0.9、2.0.9+、2.1.6、2.1.6+、2.2.3 和 2.2.3+ 六个版本(1.9.x 系特例,本文不讨论),而且它们都在被继续维护。其中最新的 2.n.x 分支叫做“Current stable”,次新的 2.n-1.x 分支叫做“Other supported stable”,最旧的但还维护的 2.n-2.x 分支叫做“Security fixes only”。为方便起见,后文就称它们为 C、C+、O、O+、S 和 S+ 版。更老的版本官方已停止支持,不建议使用,就不涉及了。

多数新安装 Moodle 的用户都会自然地选择版本号最高的 C+ 版。如果只是试试、玩玩,或者只提供短期、小用户量服务,那么这个选择无可厚非。但如果面向的是长期、大用户量服务,我建议您一定认真做一下评估。要知道,以前 Moodle 会在 C+ 后面标注“新安装的最佳版本”,但最近已经悄然删除了此话。原因就脑补吧。

下面我结合我的经验,先谈谈不同版本的特点,然后再谈谈如何选择最适合的初装版本,最后谈维护过程中如何决定是否升级。

版本间比较

从功能性角度看,显然 C+ >= C > O+ >= O > S+ = S。其中 X+ 和 X 之前的差异随着时间的推移逐渐加大,但最大时也不会有多少喜人的改变,待到小版本号提升,就又回到同一起跑线。例外是 S+ 和 S 之间只有安全相关的更新,所以功能上没有区别。它们之间的功能差异,可以看 Release notes

从安全性角度看,排序是 S+ > S > O+ > O > C+ > C。一般来说,低版本有的漏洞,高版本往往也有,一旦发现就会一起修复。而高版本新增功能引入的漏洞,在低版本未必存在。所以大方向上看,版本越低,安全性就越好。但 X+ 版因为包含最新的安全修复补丁,而且新增功能也不激进,所以通常比 X 版更安全。

从稳定性角度看,排序是 S+ > S > O > O+ > C > C+。S 版虽然声称只修补安全漏洞,但据我观察,很严重的 bug 也会被修复,所以 S+ > S。O+ 每周都会更新几十个补丁,其中大多数都是修 bug。C+ 版初期每周会有近百甚至过百的补丁,后期和 O+ 基本持平。从表面看,有这么多补丁,稳定性应该是提升的。理论上确实如此,但实际感受却不一样。

每个 bug 的修复,可能还会引入新的 bug。bug 修复得多,虽然整体上让软件更加稳定,但某些局部可能反倒更糟糕。比如说,某软件有十个功能,我只用其中两个,那么其余功能的 bug 与我无关,但如果恰好这两个功能引入了新的大 bug,会严重让我感到更不稳定。最近大半年,乐学网一直在用 2.1 分支。从它是 C+ 状态时开始,现在已降到 O+。一开始,我每周都是第一时间更新 + 版,但没多久就变保守了,总要等上几天,而且养成了 review 与常用功能相关的补丁的习惯。坦率地说,+版的补丁多数和乐学网关系不大,有关的里面又大多数没有问题,所以我仍坚持每周更新。但只要出现一个与我有关的小问题,就会狠狠折腾我一下。出新问题的频度有多大呢?印象中 Moodle 2.1 过去一年至少有三次 emergency release,就是刚发布新版本,24小时内又发布一个,修复严重 bug。这是 bug 严重到 Moodle HQ 很重视才会发生的情况。有些 bug 重视度不够,就修补得不及时了。比如我发现的这个 bug,把条件表达式里的“or”写成了“of”,很是吓人。在 release 后 4 小时我就提交了报告,但要一周后才修复。

所以,我认为在稳定性方面,从实际使用的体验看,O > O+,C > C+,除非 O 或 C 版中的某个 bug 会非常严重地影响使用。不过,对非 + 版也别太信任。比如我报告并全程参与的这个 bug,由一次 O 和 C 版的发行引入,影响面很广,优先级很高,但下一次发行也没解决。现在三个月过去了,仍然 open(倒不是开发者不上心,而是确实涉及面太广,所以非常慎重,reopen了若干次)。要不是有自制的山寨小补丁,还真顶不住。

所以,综合来看,S+ 版是最值得信赖的。

选择初装版本

初装的最佳版本就是当前的 S+ 版,原因有二:

  1. 最稳定、安全,如前述。所以日常维护的工作量最小,基本可以无负担每周更新。
  2. 从低版本升级到高版本如行云流水,数据都在;反之,几乎不可能。所以如果 S+ 不够用,随时可以升级。可一旦踏入高版本,发现不合适,想降级,可真没后悔药

当然,如果想得明白,考虑得周全,那么也可以直接装 O 或 C 版。先解释一下为什么不推荐 O+ 和 C+。首先是稳定性因素,当然选更稳定的(但如果某不能忍 bug 在+版修复了,可以升到 + 版,但后续还是尽量稳定到非 + 版)。其次看安全性。虽然 + 版更安全,但 Moodle 很负责,会先用 email 通知管理员一定要升级到最新的非 + 版,两周后才会公开安全漏洞细节,所以用非 + 版在大多情况下都是安全的。而且,漏洞这词听起来可怕,但实际上其中多数就算被黑客利用,也干不了太大坏事。如果有很严重漏洞,Moodle 会打破常规发行规律,马上更新非 + 版的。

好,接下来说选择 O 或 C 版的依据。

其实主要依据就一条:功能。这里主要考虑三个问题:

  1. 高版本是否有一定需要的新功能。比如 Moodle 2.2 有针对手机和平板设计的主题,如果很需要这个,就必须上,哪怕它还是 C 的状态(题外话,有 2.0/2.1 版可用的第三方移动主题,是 2.2 官方移动主题的前身。虽有问题,但凑合凑合也勉强能用)。
  2. 是否要做大量的定制开发。C、O 和 S 版之间的内部差异不能算很小,如果在它们之间升级,所有定制开发的东西都得或多或少地更新,搞不好还得重写。重新定制的工作量和日常维护的工作量相比较,当定制量比较大时,可以考虑上高版本,避免重复开发。
  3. 高版本的界面是否有巨大变化。这主要是从网站用户培训的角度考虑。Moodle 确实不是一个很容易掌握的东西。如果教师用户费劲巴力地刚勉强学会某版本,下学期一升级,又要重学,那可苦了他们了。本着“苦了我一个,幸福千万人”的精神,管理员得担起担子,优先选择高版本,减少用户的麻烦。

还有一个选择依据是安装的时间。比如在 5 月末安装,按 Moodle 路线图,很快有新的大版本发行,当前的 C 会降为 O,O 降为 S,而 S 被抛弃,不再维护。那么所有的选择就都可以向上提一格了。

升级规划

按照 Moodle 的发行周期,我们每半年就要做一次大升级。其间,如果使用 + 版,每周都要小升一次;非 + 版,每 1-2 个月小升一次。小升没得说,必升。大升得看当前状态。假如用的是不再维护的版本,得马上升;假如用的是仍在维护的版本,就得理智决定是否升级。理智的依据与新安装的选择依据倒是差不太多。

拿乐学网为例。1.9 版用了两年有余,仍可再坚持。但在 2.0 还是 O 状态的时候就冒进,纯因为 1.9 和 2.0 界面变化巨大,而预计很快就会有新用户井喷,所以选择了后天下之乐而乐。随后很快又升到 C 状态的 2.1,是为了少做一次定制开发。这些虽然让我整一年的维护都在提心吊胆中度过,隔不太久就要救一次火,但把所有人的工作量加到一起看,还是划算的。未来,我一定要等到 2.2 成为 S 时才做下一次大升级,虽然那些新功能都挺诱人的。

最后说一句经验之谈:一定要用 git 下载和管理源代码。初次接触 git 可能会遇到一些痛苦,但与日后长久的高效相比,这些痛苦不值一提。用任何其它方式下载代码,都是让痛苦成为日后的顽疾。

网络改变教与学——教书十年的总结

很庆幸,从自己开始了解并尝试改变这个世界时起,互联网就出现了。感受着它对周围的人与事的改变的同时,也感受着它对我的改变。

做为一名教育工作者+IT工作者,能亲自参与到网络改变教育的革命历程,是非常非常有成就感的。在快十年的教书匠生涯中,超过80%以上的时间是在做这件事。此前,我是把网络当做辅助手段,体味它为传统课堂教学创造的各种可能。现在,我已经把目光放得更远,将投身以网络为主导的新教学革命中(相关想法正在总结,近期会发系列博文探讨)。

去年11月份在《计算机教育》上发表的文章《网络改变教与学》就是我过去全部经验的总结。PDF版在此:网络改变教与学。它其实是这篇博客内引报告的整理、扩充与凝练,同时吸收了一些车万翔老师和西安交大程向前老师的经验。

文章其实写得很一般般。我对教育学、心理学、认知学等等知之甚少,完全不知道怎么找理论来支撑我的实践。而就算实践做得很多,但也一直没注意收集数据,也就不会有科学、客观的分析。所以整篇文章仰仗的只有我的直觉和真真实实、认认真真做过的事情。

《计算机教育》虽不是什么大牌期刊,但在计算机专业的教育领域据说是很有地位的。原来还梦想此文能引起轩然大波,但实际上一点儿水珠都没见到。于是发在这里,估计应该比期刊有更好的传播效果。同时这也是个人的一个总结,且是未来的开端。

用乐学网提升课堂交互性

在以前,乐学网只是在课外使用。某一天突然领悟到它应该也能在课内做些事情,于是最近的两年做了一些尝试,看到了它提升课堂交互性的美好前景,将经验总结一下。共包括“课上/课前投票”、“热点提问”和“分数卡”三个部分。

课上/课前投票

课堂上经常有这样的情景:

老师:这个问题听懂了吗?

学生:……(沉默)

老师:那请听懂的同学举下手

学生:……(星星点点地举手)

老师:这么少人?不举手的都是没听懂吗?请没听懂的举下手

学生:……(星星点点地举手)

老师:不举手的是什么意思?!!

对于确实在认真听课的学生来说,不举手的主要原因是“不好意思”。承认自己听懂了,好像很“得瑟”;承认自己没听懂,又显得自己很笨。于是就不表态了,至少能显得很酷。

“课上投票”意图解决此问题。它利用Moodle的“投票”或“反馈”功能,教师课前设计好投票内容和选项,适时地发布到网上,让学生即时投票,根据结果实时了解学习情况。这是目标,但因为教室里网络不给力,学生也不愿意只为了一门课而拎着笔记本,所以此功能变化为“课前投票”。

课前投票

在每次课开始前,将该次课的核心内容凝练成如上图所示的“课前投票”,让学生先投一票再上课。学生可以根据直觉投,也可以仔细想想再投,还可以看看书然后投。不管怎样,在他的头脑中一定已经思考过此问题,一定程度上相当于做了预习。而且,教师可以从投票的结果了解学生的基本想法,在授课中能更有针对性。

热点提问

热点提问”是我们自己开发的开放源码项目。期望它能解决教师问“有什么问题没有?”学生以沉默来回答的尴尬景象。它的主要功能有两个:“提问”和“顶”。

热点提问

学生在课堂上不爱提问,很多时候并不是没有问题,而是社会、文化和习惯等因素造成缺乏提问的勇气。有了“热点提问”,学生提问时就不用再担心是否会影响别人,是否显得太突出,是否问题很傻等等;“顶”这个功能让相同的问题汇聚,让没问题的同学也能发问,让教师知道哪些问题是最普遍的,值得优先处理。

“热点提问”对网络和上网终端的依赖比较大,所以目前在我的课堂上还没有发挥出像样的威力。但它在早已信息化到每张课桌的国外院校颇受欢迎,很多用户对它提出了各种建设性的建议。

分数卡

在不断争创世界一流的工大,多数教室上校园网是不可能的,少数教室是很不稳定的,没有教室是可以舒服使用的。所以前两项功能达到的效果非常有限。但“分数卡”并不依赖教室网络,也许能有很大做为。

分数卡”是一个尚在计划中的功能,灵感来自于“游戏点卡”,意图将现实的教室和虚拟的网络结合到一起。它的使用包括三步:

  1. 教师在线生成和打印分数卡,每张卡上有唯一的密码,代表一定的分数
  2. 课堂上教师将卡发给该得到分数的学生
  3. 学生上网输入密码,相应分数记入成绩单

卡片发给谁、发几张,完全教师说得算。比如发给积极发言的、帮忙擦黑板的、到场听课的、认真记笔记的、从不睡觉的……一切实体行为都可以便捷地与分数挂钩,用分数鼓励学生在课堂做正向的事情。

如果您迫不及待地想使用这个功能,请参与我们的志愿者计划

“成绩异议期”的非凡效果

这个世界的好多事情,其实并不是我们想象的那样复杂。

假如在将成绩通过教务处正式发布之前,先向学生预发布,留24小时的异议期,允许学生对评分提出异议,会怎样?我想大多数人可能都和我当初的想象一样:邮箱爆掉、短信爆掉、电话爆掉、门槛踩破……所以,这件事我犹豫了很久,直到这学期才鼓起勇气做了一次尝试。结果,让我兴奋不已。

经过是这样的。

期末考试是开卷考试,一共六道开放式的大题。结束当天晚上,先在乐学网上传了考题和参考答案,然后通知所有学生先到论坛补充、挑战答案,避免评卷人犯错。同时预告了会有24小时的成绩异议期。

评卷结束后,并没有和分,而是将每人每道大题的得分直接录入乐学网,再通知开始成绩异议期,同时给出规则,要点如下:

  1. 必须在乐学网的论坛公开发表成绩复核申请
  2. 每份申请只能复核一道题
  3. 每份申请内容都不能少于100字,主要描述复核理由

异议期结束,轻击几下鼠标,便将学生已经认可的成绩导出到教务处。再将考试总分抄写到卷面上,顺利结课!

以上描述忽略了最重要的事情,就是那24小时之内都发生了什么?让我列举几个数字:

  1. 课程共有116名学生
  2. 抄袭扣分等要到最后才酌情恢复,所以当时有近40人“不及格”
  3. 共收到19份申请,其中7份挑战成功,加上了分数
  4. 只收到一封希望获得不法分数的email,少于往年
  5. 非学生本人来讨分的行为在考前就已发生;异议期内不仅没出现新人,反而有人虽未如愿但保持沉默

异议期使我获得了对最终分数正确性的绝对信心。评卷过程中我和所有助教尽管已做足准备、非常认真,但最后还是有不少错误。在以前,这些错误几乎永远不会被纠正。

异议期让学生在考试后还会回味一下考题,思考、了解自己失分所在。这在以前是不可能发生的。

异议期没有为我增加多少额外工作,反倒节省了自己复核试卷、算总分、复核总分的时间。

谢谢我莽撞的胆量,让我做了这次尝试。这个世界的好多事情,其实并不是我们想象的那样复杂。斗胆试试就会明白。

乐学网首次网上考试备忘录

2011年11月9日晚18:30-20:30,在二区青年公寓机房,软件学院的《软件工程导论》课使用乐学网(Moodle)的“测验”功能进行了一次网上考试。

做为这门课的主讲教师之一,我鬼鬼祟祟地提了建议,结果软件学院领导们迅速表示支持,相关教师马上开始可行性论证,旋即确定了实施方案,各方分头准备,然后就有了这次考试。

考试很成功,各方都满意,记录一些经验,以备参考。

优点

  1. 题目创建和修改非常方便,题干和答案同时设定,钩钩选选形成考卷,比传统的出卷方式要方便很多
  2. 题目直接形成题库,日积月累,便于平时练习、重用、改进等等
  3. 客观题自动评分
  4. 主观题在线评分,可写评语,不受时间和地点限制
  5. 学生能回顾自己的考卷,了解自己具体的得失分情况。教师的反馈和评语可以给学生切实的指导
  6. 成绩统计功能异常丰富,能细化到每一道题,并有区分度等等各种统计结果
  7. 不需要跑教务处、教材科办试卷印刷手续
  8. 不需要做收卷、排顺序、搬卷子、装订卷子等体力活
  9. 无纸化,环保(不知道计算机电力开销对环境破坏是否更大)
  10. 打字比写字快,可以考更多的题

缺点

  1. 首次使用有一定的学习成本
  2. 必须有一定容纳能力的机房
  3. 如果不是标准化考试机房,互相偷看屏幕的行为不好防范
  4. 死机、断网、服务器宕机等影响网上考试的风险多于地震、停电等影响教室考试的风险
  5. 虽然经历过网上模拟考试,但现场仍要对个别学生做关于系统使用的辅导
  6. 需要用画图回答的题,不好弄。也许只能和纸质试卷结合,该道题在机房用纸答

经验

  1. 考试要用单独服务器,关闭站内消息功能,关闭所有与考试无关的课程,关闭课程内讨论区、聊天室等能互相通讯的功能
  2. 考前要设计一次模拟考试,主要目的是让学生熟悉操作
  3. 机房代理网关要限定只能访问乐学网考试服务器和统一身份认证平台
  4. 测验要限定只能从机房的IP访问,甚至限定整个服务器
  5. 测验要设定严格的开始时间和结束时间,但答题时间可以比正常时间稍微延长一点,可以舒缓因意外造成的心理压力
  6. 限定每人只能答题一次。如因意外断掉,在结束时间之前是可以重新进入并继续答题的
  7. 分数、反馈、答案等要设定为测验结束后才显示
  8. 让学生尽早进考场,登录系统,进入模拟考试,确认无误
  9. 开考的一瞬间因为频繁刷新,会给服务器突发的压力,得预留至少两倍考试人数的处理能力。考试过程中压力基本与人数相当
  10. 如果必要,可以设定测验密码,并在不同考场错开公布密码的时间,降低突发压力
  11. 题目和选项都采用随机顺序,降低作弊可能性

软件学院全面杀入乐学网

今天听到一个激动人心的消息,软件学院领导层要求所有教师必须使用乐学网。这是工大第一个以行政力量推动网络化教学的学院。

提到网络教学,很多人都有个印象——花架子。

这种印象的产生是因为数量不菲的教学网站都是为了评奖、讨好专家而建设的,在实际教学中对学生和老师的帮助非常有限。乐学网不是这样。从一开始它就是面向教师和学生设计,丝毫没有考虑专家组检查这种情况,以至于很多课程报奖时想利用乐学网,但发现它太不“专家友好”了,只得自己再另建网站。

所以,软件学院选择乐学网,强制推行,不是为了做面子功夫,而是实实在在想利用它提高教学质量。一个网站而已,怎会提高教学质量?

乐学网基于开源软件Moodle构建。Moodle并不是技术的产物,而是教育理念的产物。它的创始人Matin Dougiamas建构主义教育学的忠实信徒。基于该理念,他总结了5条观点,以它们为核心思想开发的Moodle。这5条观点并称为“社会化建构主义”:

  1. 我们每个人都既是教师,又是学生。在一个充满合作的环境里,我们两者都是
  2. 相对单纯的学习过程而言,在向他人创造或表达一些事物的过程中,我们能领会到更多
  3. 只需观察同学、同事所做的事情,我们就能学到很多
  4. 了解学生的知识及能力水平,可以让我们用更适合的方式教课
  5. 一个学习环境应该是灵活的,能够针对学生需求的不同而快速响应

简而言之,就是教师构造一个充满交流与合作,具有适应性的学生环境,让学生在创造中学习。这在课堂上,尤其中国的课堂上,是很难实现的。而Moodle通过各种技术手段,使我们能够在网络上,快捷且高效地建设这样的环境。所以,Moodle为我们提供了打破传统课堂的桎梏,让课程更有活力的机会。利用好网络,就能提升教学质量,这是已经被世界各国普遍接受的观点,在工大,在乐学网上,也有很多先例。

某种程度上,乐学网甚至还能提高科研工作的质量。

“重科研、轻教学”,这绝对是工大的真实写照。其实并不是教师们骨子里轻视教学,而是教学中各种乏味、繁琐、重复的事务性工作太多,消耗人的精力和耐心,久而久之兴趣就被磨没了。乐学网针对工大实际,设计了非常多的功能减轻教师的工作负担,比如作业收缴、批改、存档,成绩统计、提交等工作,网站都有相应的功能帮助教师轻松应对。节约了时间和精力,就能把更多心思放在科研上,成果也就相应提升了。

使用乐学网不需要任何特别的计算机和网络知识,会用浏览器,能打字就行。课程初建过程确实要消耗一定的精力,但因为可以循序渐进及无限复用,所以前期投入的精力在后期都能得到补偿,整体看来是节约精力的。细节请看FAQ入门教程

软件学院以前使用过乐学网的教师并不多。如此大规模强制使用,领导层一定承担着不小的压力,冒着相当的风险。化解风险的唯一途径,就是我们必须给出十足的技术支持,极力降低新教师的学习门槛。这就算我们的一点点回报吧。

使用Moodle的四层境界

一件工具是否是革命性的,要看它能否让我们已经习惯了的事物发生变化。“革命性”是否能发挥出来,要看使用者是否乐于去拥抱变化。比如iPhone,革命性已经毋容置疑,但不少拥有者只是喜欢炫耀它的外观,从来不用打电话、发短信以外的功能,那么这种“革命性”在他身上绝对不会体现。这样的人往往还会故作谦虚,其实是装牛X地说:“真没觉得这苹果手机有啥特别的”。Moodle也在遭遇这样的境遇。

本文的目的是想帮助初识或者不识Moodle的人一步步了解它到底能给我们带来什么。文中观点相信对blackboard、sakai、claronline等其它课程管理系统(CMS)或学习管理系统(LMS)一样适用。

第一层:资源发布

这一层是使用Moodle的第一步,也是很多人接受Moodle的最初原因。发布的资源主要两类:课件等资料,关于课程的信息和通知。

经常能见到教师通过博客和ftp等发布课件;没有博客或ftp的教师,会注册一个公共邮箱,把密码告诉学生,让大家到信箱下载;QQ群也是很多教师向学生发布信息和文件的基地。从这一点看,对信息化教学的需求其实是很巨大的。

上面这些手段没有一个是专门为课程设计的,所以总会遇到各种不便,比如不易查找、容量限制、密码被改、信件被删、不易重复利用等等。尽管诸多不便,很多教师仍能自觉坚持使用,很令人感动。

Moodle是专为课程设计,所以它更方便。除了完全克服上述缺点,还能轻易控制可见范围,更新、维护方便等等。基本上做一次,就可以用百次。

第二层:收取作业

网络相对传统媒体的一大优势就是信息能双向流动。开始在网上收作业,这个优势就开始被利用了。

收作业的需求也不少。最早,就是这个需求驱使我去寻找合适的系统,进而开始建设乐学网。在此之前,曾经用email收作业一次,其它很多教师也用过email。当课程的学生数不多时,用email收作业也还算不错。但学生数较多时,email附件的下载、整理,回信确认,信件丢失,迟发作业,以及没发还是丢失的扯皮,是能让教师疯掉的。

Moodle有专门的作业模块,将这一切轻松化解。作业在线布置,学生在线提交,超过截止时间自动关闭提交功能,教师在线浏览作业、评分、写评语,学生即时收到反馈,成绩自动归档统计,作业文件可以可以永久保存……

第三层:交互

老师讲,学生听,那不叫交互,甚至连“交流”都算不上。课堂是个很好的、不可被完全替代的交互场所,但它的时间与空间都是严重受限的。网络可以完全打破时间与空间的界限,实现无时无刻、无所不在的交互。

如果教师和学生,以及学生和学生之间能在QQ群讨论关于课程的问题,那么QQ群也是一个便捷交互式教学的场所。但它毕竟是为聊天设计,形式过分活泼,交流又只限于在线的人群,回顾旧话题非常不便。

Moodle中也有类似QQ群的聊天室,可以开展实时在线答疑。也有点对点的消息系统,可以单对单地沟通。但对教学最有突破意义的,是“讨论区”。

讨论区就是我们常用的论坛、bbs。每门课程都可以根据需要建立多个讨论区,对应不同的话题。缺省只能课程成员参与讨论,也可以限制只有课程成员才能看到帖子。不管你在线、不在线,看帖、不看帖,帖子都在那里,回复也都在那里,随时可以看到。精华的讨论可以永久保留,让一代代的学生受益。还能给好帖子打分,成绩可以记入课程成绩。我写过一篇专门的文章《moodle里如何活跃讨论区》,值得感兴趣的人参考。

第四层:协作

这是我能理解到的,使用Moodle的最高境界。但很可惜,这一层我暂时还没有做到,贡献不出第一手的感受。

据我了解,Moodle最有代表性的两个协作功能是Wiki和互动评价(Workshop)。

Wiki是一个类似维基百科的功能。在其中,学生可以彼此合作(当然,教师也可以参与),共同在线撰写文档,实现高效的协作。曾见过国外使用它的案例,用Wiki教小学生写作,效果特别好。

互动评价强调的不是共同完成一件事,而是通过互相评分达到共同提高的目的,同时还能节约教师时间。它的后台算法会尽量避免故意给高分或低分的情况,尽量只保留客观的评分。围绕它,甚至还有很多高水平的教学论文发表,比如这个,还有这个

总结

网络是个革命性的工具,基于网络的课程管理系统对教学是个革命性的工具。所有革命被广泛接受都需要一定的时间。让我们慢慢来,一层层地做,在Moodle中,潜移默化地改变我们的教学手段和方法,进而改变我们的教学思维。改变的过程中也许会有些许的阵痛,但最后的结果一定是皆大欢喜的!

这样公布成绩能比较有趣

现在考试成绩发布的官方流程是:

  1. 教师把成绩登录到教务处;
  2. 学生到教务处网站查询成绩;
  3. 如果学生对成绩有异议,向教务处提交书面查考卷申请,教务处将申请转给教师,教师回复一个“成绩无误”。

当然,如果发现错误,教师通常也是不会承认的,因为这是在向教务处承认错误啊。实际上,如果真的仔细推敲,评卷中的错误肯定不会少,无论评分错,还是算分错,都会有。

上学期,我将每道大题的分数都录入到了moodle,这样让计算机计算总分,再将成绩自动传往教务处,避免了低级错误的发生,同时还能让学生知道自己每道题的得分,从而了解自己的学习情况。但这样公布成绩却勾起了学生“找分”的欲望,一下子让我应付不过来,急忙发了篇博客《不要为了维护一个讨厌的,而去破坏一个喜欢的》,以平民意。民意是平了,但这样其实是在回避直面自己的错误的机会,不好。所以有了下面的想法:

  1. 依然在moodle公布每道大题得分
  2. 公布后留出24小时让学生提交查卷申请
  3. 申请通过支付宝提交,每笔申请只能查一道题,并要转给我<1元的钱,钱数做为和学生本人对照的密码
  4. 24小时结束后,不再接受申请,开始查卷。多给的扣掉,少给的加上

这样便有了一个弥补错误的机会;收的钱数不高,不至于造成经济问题;支付宝转账还是有点小麻烦的,能保证提交申请的基本都是认真的;收入的钱足够平衡评卷用笔的开支。

收钱方式上还可以搞些花样,比如收50元,如果成绩有变化,退回,没变化就不退。在淘宝上开个店就可以非常方便地实现这个流程。

你觉得怎么样?有啥好建议吗?

下学期一定要试试!这学期如果有同事这么玩了,一定要分享经验啊!