返回到【全文目录】
目录
7.3 习而学与CDIO,来自工程教育思想的启示
IT行业的业绩,是在几十年的时间里通过几代人的实干做出来的。扎实肯干,勇于创新,锐意进取,是这个行业的传统。计算机类的专业,普遍被称为工科的专业,少数毕业生被授予理学学位,大部分得到的是工学学位。我们要从事的,是一项实践很强的工作。
工业化的浪潮仍在推进,信息化的震荡也接踵而至。高等教育需要给现代社会输送能够引领未来的领军人物,更加需要不断突破制约,把握机会,在完成教育使命的过程中,赢得主动。因此,高等工程教育的改革一直是教育界的热点。在参加各种教学改革研讨会,以及在阅读教育类的书籍时,我常想:这些专家、学者眼中的研究成果何时能让我的学生受益?教育界的研究成果能够落实到学生身上,中间还隔着制度、设施、师资等重重障碍,除了我自己有限度地在教学中实施试行之外,更多的只有感慨。于是,在一而再的临渊羡鱼中,我突然意识到我所关注的话题,大学生其实可以去关心,教育家们给出的指导很多涉及的是办学、教学层面的事,学生却也可以从中直接找到学习需要的营养和启示。于是,摘取中外高等工程教育的改革思路中两朵靓丽的浪花,展示给工程学科的学子。
践行“习而学”的宝贵思想
“习而学”工程教育思想是由茅以升先生早在20世纪30年代提出来的。
茅以升先生不仅是著名的桥梁专家,还出任过多所大学的校长,也是知名的教育家。他认为旧教育的弊病是理论与实际脱节,通才与专才脱节,科学与生产脱节,片面追求理论教育的“质”,严重忽视培养人才的“量”。他于1926年发表论文,主张“先授工程科目,次及理论科学,将现行程序完全倒置”,并且从学制、招生、课程等多方面,提出了大破大立的改革方案。新中国成立后,他撰写的《习而学的工程教育》等文章,强调按照人的认识规律,由感性知识入手,进而传授理性知识,先让学生“知其然”,而后逐渐达到“知其所以然”。所谓习而学,就是让学生先通过实践获得感性认识,然后再进行理论学习,做到理论与实践的相互统一。这里的“学”和“习”,和孔夫子在“学而时习之”中的含义是一致的,核心是先有实践(习),再谈认知(学)。
茅以升先生在教学实践中实施了这一想法,他甚至以桥梁建筑专业为例,拟出了一个支持“习而学”教学计划:大学一年级先学施工条例,二年级则学设计规范,不解释条例和规范的理论基础,只说明其内在的联系,而到三年级可以学结构力学,四年级则学微积分、线性代数、概率论和普通物理。学生越是到高年级,越是明白自己在低年级所学的道理,进而明白还有哪些道理至今在科学上还没有办法解释。于是学习成为一个自然的延续过程,成为一种终身的事业:活到老、学到老。
茅以升先生“习而学”的教育思想,体现的是中国古代“致知在格物”的思想,具体落实到“先习而后学,便是先知其然,再知其所以然”、“先习后学,是将理论来贯穿实践”、“先习后学,是为了获得最全面的知识”、“先习后学需要在实践与理论方法,有彼此呼应,由浅而深的步骤”等一系列观点上。“习而学”的教育思想是从“感性知识”到“理性知识”,然后再回到“感性知识”,以此循环发展。尽管“习而学”提出的年代久远,但却突破了西方传统上的行为主义和认知主义学习理论的束缚,与最新的建构主义学习理论采取了相似的立场,是一种以学习者为中心的教育模式,尤其在工程教育中,有其明显的优势。
茅以升先生的工程教育主张,在当今时代仍有重要的现实意义和理论价值。这一扎根于中华传统文化,起源于本土的工程教育思想理应该得到重视,需要我们这些后来人在继承的同时,予以发扬光大。
习而学工程教育思想,在宏观上,可以推动教育管理者主导的工程教育模式的改革,但这样的工作不是一蹴而就的,作为影响全局的改革,往往也不宜轻易改变。这个话题或许离本书的读者有些远了。实际上,我主张在校的学生和刚参加工作的年轻人也能多读一些关于工程教育的书籍。很多教育思想,学习者是可以直接作用到自己的学习中去的,在我们可以参与到的微观层面,有的是发挥的空间。邹欣是微软亚洲研究院的首席开发经理,长期在清华、北航等大学兼职讲授“现代软件工程”课程,他写过一篇《习而学的软件工程教育》的博文,提出了对软件工程专业培养方案的改造。在我的“程序设计基础”课的教学中,我也抓住了实践这样一个核心,带着我的一批批菜鸟学生,利用CSDN博客中将积累代码量的任务有效地执行下去,抛弃“讲了才可以练”的思维,不少内容先练后讲,有的是只练不讲,留给以后顿悟。还有不少不认识的编程爱好者和大学生,利用我在课程中建设的资源学习,走的也是习而学的途径。
将眼光转向更广泛的大学生的学习,“习而学”的思想可以用于主动性的自学,并将习得的体验与自己的课程学习挂起钩来。围绕一门课程,在老师讲课之前提前阅读一些背景资料,尝试做一做本课程中要求的实践项目,这也是一种习而学。我的学生中,有个别同学养成了在我讲课之前,就试着完成课后的编程习题的习惯,这也是一种习而学。这些方法有些类似传统的预习,但预习的目的仅限于温习老师要讲的,目标是听懂老师的讲课,而这种明显带着“习而学”味道的往前学,则完全让自己的学习占据了主动的位置,在听课的时候,不仅是去听懂,而且真正能与老师所讲的内容产生交互。
“习而学”的思想还可以用于自主性的自学中,其中时间、内容掌控的余地也将更大。例如,在学习程序设计之前,尝试玩玩RoboMind之类简单的教育性质的编程环境,在用语句指挥机器人实施行动中,去寻找编程的感觉。选择合适的软件,学一学图片、声音、视频的编辑,既增加计算机应用的技能,也无疑在为将来学习多媒体数据编码、压缩知识积累了直接的体验。在学习了程序设计语言之后,试着完成一个通信录管理、信用卡业务之类的小“项目”,这将给以后学习数据结构找到感觉,体会到选择良好数据组织及合适的算法具有的重要意义。就基于已有的程序设计基础,读一些开源项目的源代码,这将给学习软件体系结构积累宝贵的感性认识。积累逐步地加深,始终坚持主动地往前走一走,整个的学习进程和速度将会快起来,课外的自主性自学将突破培养方案中课程设置的限制,形成有特色的知识结构。
“习而学”的思想对于现代大学生养成良好的学习方法,形成良性发展的学习动机方面,提供了一条可行的道路,也具有明显的优势。我们可以偷着乐的事情还有,从事桥梁工程专业的学生在实践中需要到设计和施工现场,这当中存在诸多不便,对计算机类专业却并不重要。我们实践的条件的确可以是非常简单的,一台计算机,一个善于改变的脑袋,最好有网络。奢侈一些,有几个志同道合的好朋友组成一个学习的小团队,能够得到某老师支持,或者在某个实验室里能拥有一个角落。有网络在,无论从获得资料,还是找到能够帮助的人,时间和空间上的障碍已经不是问题。这是专业特点和时代进步给我们的额外眷顾,辜负了这份好意那就太惭愧了。
知道了习而学,有些人会觉得这个真好,会期盼我们的学校什么时候能够实施习而学。现行教育的体系已经非常庞大,让这艘大船就此掉头,不可能。教育体制不能这样大变,即使听起来完全合理的方案,也不能走这种突变,这是危险的,甚至是毁灭性的。然而,恰是个人的自主学习,能够走“小快灵”的路线,能够将这种思路,有效地实施下去,这是个人成才,教育格局改变的希望。
国际工程教育的前沿——CDIO
CDIO工程教育模式是近年来国际工程教育改革的最新成果。从2000年起,麻省理工学院和瑞典皇家工学院等四所大学组成的跨国研究组织在巨额资助下,经过四年的探索研究,创立了CDIO工程教育理念,并成立了以CDIO命名的国际合作组织。
CDIO代表构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate),CDIO工程教育改革的基本思想是,以能够领导现代工业产品、过程或系统开发的现代工程师所需要具备的知识、能力和素质为目标,以现代工程实际为背景,采用相互联系、相互支撑的课程体系培养学生,并让学生在现代学习和实践环境中取得丰富的设计、制作和主动学习的经验,促进学生知识、能力和素质的一体化成长。这一教育改革模式包括了三个总目标:熟练掌握技术基础知识、领导和参与新产品和新系统的开发和运行、了解技术的研究与发展对社会的重要性和战略影响。
CDIO引领着当前工程教育改革的前沿,本书无意对CDIO的标准、教学大纲等进行转述和讨论,这或许是教学管理人员和教师的事。面对大学生,我想借此引出我们该如何认识未来的IT工程师,以及将要进入IT行业的从业人员所面临的任务,以及我们该如何为之做出的准备。
关于工程。工程是使自然界的物质和能源的特性,通过各种结构、机器、产品、系统和过程,以最短的时间和精而少的人力做出高效、可靠且对人类有用的东西。工程的核心任务是设计和实施尚不存在的问题或任务的答案,以直接或间接的方式服务于社会。工程在不同领域创造不同的事物。在CDIO中,使用产品(Products)、流程(Processes)、系统(Systems)来代表工程师所要创造的东西。产品是任何有形的商品或可被转化的实体;流程是为了生产产品或完成任务而采取的一系列行动或变换,如工业生产中的工艺;而系统是为了产生某种所需结果的实体和流程的总和。这种表达概括描述了各种工程师的创造性活动成果:化工工程师谈论工厂、产品和项目,生物工程师创造新的分子,材料工程师创造新的材料,土建工程师制造出高楼大厦,而计算机工程师则创造出计算机、网络和软件系统。不同领域的产品形态会有所不同,生产出产品都需要一定的生产和管理流程,这一切不是相互割裂的,而是彼此联系形成为一个系统。
关于工程师。工程师通过建造东西而服务社会,“科学家发现已有的世界,而工程师创造未有过的世界”。无论什么领域,工程师角色的核心就是设计和实施任务及问题的解决方案。现代工程师需要参与产品、流程和系统整个生命周期各个阶段的工作,涉及非常简单到特别复杂的范围。一个好的工程师,需要有非常强的综合能力和适应能力。有机构指出,我国在21世纪发展中迫切需要五种类型的工程师:一是以解决实际工程技术问题为主的专业技术型工程师;二是以科技研发为主的研究导向型工程师;三是以多种专业知识交叉应用为主的技术集成创新型工程师;四是以创新设计为主的产品创意设计型工程师;五是侧重于创业与市场开发能力的经营管理型工程师。这个关于工程师的分类很值得参考,工程师也并不只是传统观念中,趴在桌子上画图设计,或者戴着安全帽现场施工建造的形象了。生产、经营的全过程和所有方面,都有工程师的用武之地。在按照同一个培养方案进行“存同”学习的过程中,大学生完全可以利用选修课的机会,以及课外自主性的自学,着意地将自己往某一个方面引导,从而实现“求异”,创造出向自己愿意的方向发展的机会。
而CDIO,正是将培养学生能够参与工程的整个生命周期和各个阶段的工作的能力作为目标的,CDIO为我们从另外一个角度提供了参考。现在可以谈CDIO中构思—设计—实现—运作的完整链条了。
工程师创造的是世界上从未有过的事物,需要有人提出需要什么样的新事物,按术语说,这就是需求。好的工程师细心观察和倾听各种方面的意见,以确定、理解和定义他们的需求。而现实的需要是,在很多时候,工程师直接参与产品的构思,这一点在现代社会已经显现了其价值。最经典的案例正如老亨利•福特(Henry Ford)所言:“如果你问你的顾客需要什么,他们会说需要一辆更快的马车。”福特的构思使这个世界上有了汽车。最近的传奇包括苹果公司创造性地引入了触摸的操控方式,手机就此被重新发明,引领了世界新的时尚,也获得了商业上的巨大成功。过去,工程师自己参与工程项目的构思常被指闭门造车,而如今却成了最具生命力的品质。在不少IT企业,产品研发策划需要那些具有“极客”品质的人才去担当,能“构思”的工程师价值连城。
现代工程师设计具有技术含量的产品、流程和系统,有时要用到当前最先进的技术,完成开创性的工作或突破性的创新。不过,大多数的工程设计通过应用和改进现有技术来满足社会不断变化的需求。对于一个计算机类专业的大学生而言,核心的竞争力不在于用编程语言写出解决问题的方案,更核心的能力是完成方案设计的方法和技术。
产品由工程师设计,并且在很多情况下也是在工程师的主导下成为产品的,这就是实现。在大的企业,设计和实现的工作常常由不同的工程师完成,在设计和实现之间需要的交接有严格的规范和要求。在传统工程领域,以图纸为核心表现这些设计成果,也通过图纸指导施工。有的工程师专注于设计,有的工程师专职于实现。IT公司的技术人员,需要完成产品的设计,要按行业标准写各种设计说明书,也有的完成编码工作,用某种或某些语言实现设计要求的任务。司职设计的,称为系统分析员、系统架构师、软件设计师等,而实现产品的,是程序员。对于不少小型的项目,设计人员和实现人员有时并不严格分工。
有时产品是由用户来操作的,如个人电脑、汽车、房屋、运动器材。而一些复杂的系统,经常由专业人员来操作,如飞机、工业生产线等,也有大量的工程师从事安装、维修和系统升级换代的工作,他们的工作是运作。在IT行业中的运维人员完成这样的任务,从事信息系统和信息技术应用的专业人员的工作也属于运作。这是让计算机技术真正发挥其作用的环节,需要大量的人员来参与,在就业市场上也有很大的需求。
在我国,汕头大学从2005年起率先引入并实施CDIO工程教育模式。近几年来,也成立了一些全国性的组织,研究国际工程教育改革情况和CDIO工程教育模式的理念及做法,组织开展CDIO工程教育模式的研讨与交流活动,已取得明显效果。在计算机教育界,也出现了不少大到培养体系,小至课程和教学环节实施CDIO模式的教学。
CDIO是工程教育中“做中学”原则和“基于项目教育和学习”的集中体现。CDIO的培养方法关注整个的教育过程,要求学生秉承构建主义教育理念,要求以学生为中心,以丰富的学习经验构建学生的知识体系。作为对IT学子的建议,首先从CDIO中可以看出作为现代工程师需要的全面进步,以及发现自己需要关注的环节。其次,在学习的各个环节中,可以着意抓住某些学习活动,以实践的方式,提升自己的能力。CDIO的理念可能并没有在你所在的学校和学科推广,做一个有心人,其实可以在自主性的学习中实践。例如,在IT界有很多大学生可以参加的学科竞赛,尤其是一些IT业大企业提供的竞赛,紧贴市场,注重应用,包括了创意(构思)、设计、实现等诸多环节,除了丰厚的奖品、实习机会以外,还有机会获得产品推广的帮助。这是以前的大学生不曾拥有的机会。