Title: Making Computer Science Fun Again
1Has anyone considered the possibility that its
just not fun anymore?
Don Knuth, October 11, 2006
Making Computer Science Fun Again
Informatics Education Europe II Thessaloniki,
Greece November 29, 2007
Eric Roberts Professor of Computer Science,
Stanford University Past Chair of the ACM
Education Board
2The Crisis in Computing Education
- As everyone has now been aware for some time,
computing enrollments in the United States and
most of Europe have plummeted since 2001.
- This drop is of significant economic concern
because those same countries are training far
fewer people than they need to fill the available
positions. In the United States, there are now
many more jobs in the IT sector than there were
at the height of the dot-com boom, with all
projections pointing toward continued growth.
- This decline has been even more rapid among women
and minority students, reducing diversity as the
pool shrinks.
3Reframing the Issue
- All too often, those of us who teach computing
have looked at the declining interest in the
discipline as an enrollment crisis.
- This characterization is self-defeating and makes
it harder to attract allies to our cause. - In a typical university, every department wants
to increase its enrollment, and we become merely
another player in a parochial game of resources. - The real concern is that we have a pipeline
crisis in that we are producing far too few
graduates to fill the growing number of positions
that require computing skills. Judging by
demand, we were producing too few graduates even
at the top of the boom. - Failure to respond to the pipeline crisis will
place significant constraints on the computing
industry and compromise national competitiveness.
4A Graphic Indication of the Shortage
Graphic created by Greg Lavender at the
University of Texas.
5BS Degrees in Computer Science
SOURCES
Susan T. Hill, Science and Engineering Degrees
1966-96. Report number NSF 99-330.
National Center for Education Statistics, Digest
of Education Statistics, March 2002.
The last five years represent an interpolation
based on the CRA Taulbee data.
6The Conventional Wisdom
- Just as pretty much everyone now recognizes the
existence of an enrollment crisis, most everyone
has a favorite totalizing explanation. The
leading theories include - Fears about job security after the dot-com bust
and offshoring - Negative images of those who work and study in
the field - A broken curriculum that does not appeal to
todays students
- While there is truth behind each of these
theories, none of them can serve as a
comprehensive explanation of the student behavior
we see today. Even when taken together, these
theories overlook several important factors that
are at least as important as underlying causes
for enrollment decline.
- The factors that lead to declining enrollments
are complex and highly interconnected. Solving
the problems depends on developing a better
understanding of those factors and how they
interact.
7Outline
- I will start by examining the three most
prevalent theories
- I will then consider three additional
possibilities
- I will conclude by offering some ideas about how
we might address these problems.
8Myths of a Jobs Crisis Persist
There is no shortage of evidence that people
believe the myths about the lack of jobs and the
danger of outsourcing.
Why would any smart American undergrad go into IT
when companies like IBM and HP are talking of
stepping up their off-shoring efforts in the
coming years? They want cheap labor, no matter
the real cost.
I have been very successful in IT, but I
certainly wouldnt recommend it today to anyone
except people who are geeks. . . .
I think the latest figures from the U.S.
Department of Labor are not correct.
9But Data Show Job Prospects are Excellent
- Although there was a slight dip in IT-sector
employment after 2000, recent data show that this
decline ended quickly and that there are now more
computing jobs than at any time in history. - Projections from the Bureau of Labor Statistics
indicate strong growth over the next decade
- Money magazine identified software engineer as
the 1 job, anticipating employment growth of 46
over the next decade.
10A Thought Experiment about Offshoring
- Suppose that you are Microsoft and that you can
hire a software developer from Stanford whose
loaded costs will be 200,000 per year. Over in
Bangalore, however, you can hire a software
developer for 75,000 per year. Both are equally
talented and will create 1,000,000 annually in
value. What do you do?
- Although the developer in Bangalore has a higher
return, the optimal strategy is to hire them
both. After all, why throw away 800,000 a year? - Any elementary economics textbook will explain
that one hires as long as the marginal value of
the new employee is greater than the marginal
cost. The essential point is that companies seek
to maximize return, and not simply to minimize
cost.
11Unravelling the Paradox
- The enormous gulf between perception and reality
about the strength of the job market in computing
is surprising.
- Myths tend to persist for a long time only when
it is in the interest of powerful constituencies
to maintain the mythology. In this case, every
easily identifiable constituency would like to
dispel the misconception - Companies want to hire more workers in the area.
- Governments want to enhance economic
competitiveness. - University computing departments want to attract
more students. - Students themselves would presumably like to find
greater job security.
- After thinking about this issue for some time, I
believe that the final assumption may be
incorrect - Talking about job security does not seem to boost
the number of majors. - Students are often most captivated by
high-risk/high-return employment. - The prospect of wealth is often a more potent
motivator than stability. - Enrollments track the NASDAQ, not the Bureau of
Labor Statistics.
12The Single Best Enrollment Predictor
A statistical analysis undertaken by my
colleague, Mehran Sahami, found that 88 of the
1993-2003 enrollment variance at Stanford can be
explained by the NASDAQ average of the preceding
year.
13The Image Problem
- There is no question that both computing work
(and computing students and workers) have a
negative image. The prototypical image of the
pocket-protector-wearing, socially inept geek
is deeply ingrained in our culture.
- The problem with positing image as the reason
for the current decline is that it fails to
explain the high enrollments of the boom years.
The cultural images at these two different times
were largely the same, leading one to conclude
that - Rich geeks are cool.
- Well-paid geeks with high job security are
boring.
- Studies of current student interests supports
this theory - Economics and business majors are generally on
the rise. - Hedge-fund management and investment banking are
top career choices. - The resurgence of the NASDAQ has caused
enrollments to rebound.
14Google Buys YouTube for 1.65 Billion
Dot-Com Boom Echoed in Deal to Buy YouTube By
ANDREW ROSS SORKIN Published October 10, 2006
A profitless Web site started by three
20-somethings after a late-night dinner party is
sold for more than a billion dollars, instantly
turning dozens of its employees into paper
millionaires. It sounds like a tale from the late
1990s dot-com bubble, but it happened
yesterday. Google, the online search behemoth,
agreed yesterday to pay 1.65 billion in stock
for the Web site that came out of that
partyYouTube, the video-sharing phenomenon that
is the darling of an Internet resurgence known as
Web 2.0. YouTube had been coveted by virtually
every big media and technology company, as they
seek to tap into a generation of consumers who
are viewing 100 million short videos on the site
every day. Google is expected to try to make
money from YouTube by integrating the site with
its search technology and search-based
advertising program.. But the purchase price
has also invited comparisons to the mind-boggling
valuations that were once given to dozens of
Silicon Valley companies a decade ago. Like
YouTube, those companies were once the Next Big
Thing, but some soon folded.
15The Curriculum Has a Second-Order Effect
- The computing curriculum as traditionally
implemented has clear deficiencies and could
certainly bear improvement.
- As an explanation for declining enrollments, the
curriculum is broken theory has serious
shortcomings
16The Problem Starts Early
The UCLA HERI study shows that students have
already made their decisions before they reach
university.
Source Higher Education Research Institute at
UCLA, 2005
17Computing Faces Huge Challenges in Schools
- People who have software development skills
command high salaries and tend not to teach in
schools.
- In many schools, computing courses are seen as
vocational rather than academic. - Students who are heading toward top universities
are advised to take courses other than computer
science to bolster their admissions chances. - Because schools are evaluated on how well their
students perform in math and science, many
schools are shifting teachers away from computer
science toward these disciplines. - Computing skills in generaland programming in
particular have become much harder to teach. - Teachers have very few resources to keep abreast
of changes in the field.
18CS is Losing Ground
- The Computer Science exam is the only Advanced
Placement exam that has shown declining student
numbers in recent years.
19CS Is Tiny Compared with Other Sciences
20Complexity and Instability
- Complexity. The number of programming details
that students must master has grown much faster
than the corresponding number of high-level
concepts.
The number and complexity of topics that entering
students must understand have increased
substantially, just as the problems we ask them
to solve and the tools they must use have become
more sophisticated. An increasing number of
institutions are finding that a two-course
sequence is no longer sufficient to cover the
fundamental concepts of programming.
Computing Curricula 2001
- Instability. The rapid evolution of the field
creates problems for computing education that are
qualitatively different from those in most fields.
21The March of Progress
22The Pace of Change
- The pace of changeparticularly in terms of its
effect on the languages, libraries, and tools on
which introductory computer science education
dependshas increased in recent years.
- Individual universities and colleges cant keep
up. - In a survey by the Computer Science Teachers
Association, secondary school teachers cited the
rapid pace of change as the most significant
barrier.
23The Vilification of Programming
- Those who argue most strongly for the broken
curriculum theory often blame programming for the
woes of the discipline, decrying the widely held
view among students that
computer science programming
This view is indeed too narrow.
24Dangerous Trends
We have met the enemy and he is us.
Walt Kelly
- As an illustration of this trend, consider the
following post that appeared on SIGCSE-MEMBERS on
August 14, 2006
I have an idea for a panel that Id like to
organize for SIGCSE07. Im asking for
volunteers (or nominations of others) to serve on
the panel. The panel Id like to organize would
have a title something like Alternative
Models for a Programming-lite Computer Science
Curriculum The theme of the panel would be to
share ideas and thoughts on how we might reduce
(or eliminate) the emphasis on programming within
a computer science curriculum. The basic idea is
to cause discussion centered on the knowledge and
skills students of tomorrow will need in the
global economic workspace and the implications
for the CS curriculum. As more and more aspects
of software development of offshored, what kind
of curriculum would allow a student to be
successful in the IT field?
25Industry Is Not Amused
- Every technical person in the industry with whom
Ive spoken is horrified by the prospect of
reducing the emphasis on programming in the
undergraduate curriculum.
- At the ACM Education Council meeting in
September, a panel of technical people from
companies like Microsoft, Google, Amazon, and
Boeing were united in their concern about the
scarcity of competent software developers. I
have summarized their position as the computing
curriculum is not nearly as broken as it seems
likely to become.
- Employers in developed countries with high-tech
sectors are desperate for more people with
programming talent. In his keynote at ITiCSE
2007 in Dundee, Scottish entrepreneur Chris van
der Kuyl said that the lack of programming talent
was the greatest limiting factor in the industry.
He called it coding.
26Programming Remains Central
- As with many of the popular theories for
declining enrollments, the call to reduce or
eliminate programming from computing curricula
arises from some undeniable assumptions - There are more jobs in IT that dont require
programming. - Programming is not particularly popular with
students today. - Offshoring of programming jobs has increased.
- Unfortunately, this analysis ignores the
following equally valid propositions - There are more jobs in IT that do require
programming. - Programming has historically been what attracts
students the most. - Offshoring exists largely because of a shortfall
of skilled employees.
27Programming Has Become Much Harder
- A very real part of the problem, however, is that
programming has become significantly more
difficult than it used to be, both because we use
it to solve more challenging problems and because
the tools we use have much more detail complexity.
- In her interviews with pioneers in the computing
field, SIGCSE Chair Barbara Boucher Owens found
that every person with whom she spoke got into
the field because they were captivated by
programming. That is happening much less often.
- We need to find a way not to reduce or eliminate
programming from the computing curriculum, but
instead to restore the sense of passion, beauty,
joy, and awe that Grady Booch spoke about so
eloquently in his keynote at SIGCSE last year.
28What We Need To Do
- Recognize that the problems extend well beyond
the university.
- Press government and industry to improve
computing education in schools. - Increase public awareness of the range of
opportunities. - Forge alliances with industry to bolster the
image of work in the profession. - Expand efforts to increase diversity.
- Develop tools and materials that can be used off
the shelf. - Improve distribution channels for best practices.
- Promote interdisciplinary curricular connections.
- Continue experimentation in curricular
strategies. - Encourage research into new software paradigms
that can make programming fun again.
29Positive Initiatives
- The National Science Foundation sponsored four
regional conferences on Integrated Computing and
Research (ICER) and has funded several proposals
under a new Computing Pathways (C-PATH)
initiative.
- Several ACM Education Board projects are proving
helpful - A brochure for high-school students
- The CC2001 series of curriculum reports
- The Computer Science Teachers Association
- A community effort to develop Java tools (the ACM
Java Task Force) - There are many interesting ideas in the community
that are showing promise - Mark Guzdials media computation course at
Georgia Tech - Stuart Regess back to basics strategy at the
University of Washington - Jeannette Wings computational thinking
concepts - The Alice Project developed at Carnegie-Mellon
- Various robot-based introductions
- Pair-programming strategies at a variety of
schools
30Some Encouraging Signs
Matt Jacobsen, Senior, UC Berkeley
A common misconception is that many people think
CS means sitting in front of a computer all day
long. This may often be the case for programming,
but CS is a large field. There are many
applications that require CS skills that involve
little or no programming. . . .
From Dan Garcias Faces of CS web site.
31The End