2010-07-C9会议发言

作者:马克.古士德奥 佐治亚理工 教授
2010.7 西安C9会议上的发言
EDUCATION
TEACHING COMPUTING
TO EVERYONE
communications of the ACM | may 2009 | vol. 52 | no. 5
推荐者:程向前
西安交通大学 计算机教学实验中心
COLLEGE OF COMPUTING AND SCHOOL OF ELECTRICAL AND
COMPUTER ENGINEERING
AT GEORGIA TECH
10 YEARS AGO


all students must take a course in computing.
We started before publication of the National
Research Council (NRC) 1999 report


Being Fluent with Information Technology (美版《大
学计算机基础》基本要求,类似“白皮书”)
部分译文参见:http://blog.sina.com.cn/xqcheng
Though that report significantly influenced
implementation.
THE OUTCOME
Students would be able “to make algorithmic
and data structures choices” when writing
programs
 That simple phrase describes a serious
introductory course

TEACHING EVERYONE IN ONE CLASS
CS 1321
 2/3 students at Georgia Tech
 teaching everyone on campus meant well over
1,200 students a semester.
 Textbook

 Shackelford
《pseudo-code approach to learning》
 Felleisen et al.’s 《How to Design Programs text
using Scheme》
BY 2002


CS1321 may have been the most hated
course on campus
the overall success was 78%




46.7% of architecture,
48.5% in management,
47.9% in public policy.
females failed at nearly twice the rate of
males.
CRITIQUING REPORT

several studies were published critiquing
computing courses,


including the AAUW’s Tech-Savvy report and
Unlocking the Clubhouse
These reports describe students’ experiences
in computing as “tedious,” “asocial,” and
surprisingly, “irrelevant.”
REASONING




How could computing be “irrelevant” when it
pervades so much of our world?
Perhaps the problem was that our course had
little connection to the computing in our students’
world.
While students are amazed at the Web, handheld
video games, and smartphones
Most introductory courses introduce students to
the computing concepts behind these wonders
with Fibonacci numbers and the Towers of Hanoi.
CONTEXTUALIZED COMPUTING EDUCATION
to teach computing in terms of practical
domains (a “context”) that students recognize
as important.
 The context permeates the course, from
examples in lecture, to homework assignments,
and even to the textbooks specially written for
the courses.
 We decided to teach multiple courses, to match
majors to relevant contexts.

IN SPRING 2003 (THREE COURSES DONE!)



CS 1321 for Computing and Science
CS1321 * 75%+ MATLAB for College of
Engineering(jointly with the schools of aerospace, civil,
mechanical,and chemical engineering.)
a new course for students in the colleges of liberal arts,
architecture, and management using a context of
manipulating digital media.

a programming language that was perceived as being easy
to learn but was not associated with “serious” computer
science: We chose the Python
IMPACT OF CONTEXTUALIZED
COMPUTING EDUCATION


Faculty and students are happier with the new
courses. The success rates rose above 80% in
both the engineering and media courses.
When comparing success rates to those same
majors mentioned previously, we found the
average success rate in the first two years for
architecture students rose to 85.7%,
management to 87.8%, and public policy to
85.4% per semester.
IMPACT OF CONTEXTUALIZED
COMPUTING EDUCATION (CONT.)





New opportunities appear on campus when all
students succeed at computing.
Introduced a minor in computer science.
Students interested in computing after the media
course , now offer a second course, on data
structures within a media context.
A second course was also developed for
engineering students,
we now teach three second computing courses,
as well as three introductory courses.
LESSONS LEARNED


Developing contextualized courses is
challenging and expensive (for example,
writing textbooks, developing new integrated
development environments),but the results
can be shared.
We recommend involving faculty from the
other departments in building courses for nonmajor students.
LESSONS LEARNED(CONT.)




building successful, high demand courses for noncomputing majors gives us a different perspective on
the current enrollment crisis.
Students want these courses.
Other schools on campus want to collaborate with us
to build even more contextualized classes.
While we still want more majors, we have an
immediate need for more faculty time to develop and
teach these courses that bring real computing to all
students on campus.
Q&A
美版《大学计算机》蓝皮书
信息技术基础委员会成员
BEING FLUENT WITH INFORMATION
TECHNOLOGY

在报告中,该委员会将现代高等教育中,受教
育者的计算机或信息技术的应用能力分别定义
为:
 智力性能力、信息技术的概念
 和信息技术技能三个方面
 每个方面10项具体内容,共30项
INTELLECTUAL CAPABILITIES

智力性能力,是指在复杂和支撑性环境中应用
信息技术





1) Engage in sustained reasoning (持续运用推理能力)
2) Manage complexity (管理复杂性)
3) Test a solution (测试解决方案)
4) Manage problems in faulty solutions (在失败的解决
方案中寻找并解决问题)
5) Organize and navigate information structures and
evaluate information(组织和导出信息结构并评估信
息)
INTELLECTUAL CAPABILITIES(CONT.)
 6)
Collaborate(合作)
 7) Communicate to other audiences(与他人沟通)
 8) Expect the unexpected (准备应对预料之外、
情理之中的情况)
 9) Anticipate changing technologies(预见技术的
变化)
 10) Thinking about information technology
abstractly(关于信息技术的抽象思维)
INFORMATION TECHNOLOGY CONCEPTS
1) Computers (计算机)
 2) Information systems (信息系统)
 3) Networks (网络)
 4) Digital representations of information(信息
的数字化表达)
 5) Information organization(信息组织)

INFORMATION TECHNOLOGY CONCEPTS
6) Modeling and abstraction(建模和抽象)
 7) Algorithmic thinking and programming(算
法思考与程序设计)
 8) Universality (普遍性)
 9) Limitations of information technology (信息
技术的局限性)
 10) Societal impact of information and
information technology(信息和信息技术的社
会影响)

INFORMATION TECHNOLOGY SKILLS





1) Setting up a personal computer (设置个人计算机)
2) Using basic operating system features (使用操作系统
的基本功能)
3) Using a word processor to create a text document (使
用文字处理器来创建文本文件)
4) Using a graphics and/or artwork package to create
illustrations, slides, or other image-based expressions of
ideas (使用图形和/或艺术创作软件包创建插图作品,幻
灯片,或其他基于图像的思想表达)
5) Connecting a computer to a network(将计算机连接到
网络)
INFORMATION TECHNOLOGY SKILLS






6) Using the Internet to find information and resources (利用因特
网来查找信息和资源)
7) Using a computer to communicate with others (使用计算机与
他人交流)
8) Using a spreadsheet to model simple processes or financial
tables(使用电子表格建立简单的程序模型或财务报表)
9) Using a database system to set up and access useful
information(使用数据库系统,建立和访问有用的信息)
10) Using instructional materials to learn how to use new
applications or features(使用教材来学习使用新的应用程序或功
能)
SAMPLE CLASS
根据这个报告要求,开设非计算机专业计算机或
信息基础课程的学校在美国较为普遍,较为著名
的有华盛顿大学的 CSE100: Fluency in
Information Technology。
 FIT 100: Fluency in Information Technology 课程网
站首页:
 http://courses.washington.edu/fit100/wi10/

