Title: Rediscovering the Passion, Beauty, Joy, and Awe:
1Rediscovering the Passion, Beauty, Joy, and
Awe Making Computing Fun Again
Eric Roberts Professor of Computer Science,
Stanford University Past Chair of the ACM
Education Board
University of Maryland, Baltimore County April
24, 2008
2The Etymology of the Title
Grady Booch at SIGCSE 2007
3The Paradox of Computing Employment
- The computing industry offers some of the best
employment opportunities for college graduates in
the United States today - The number of jobs in the domestic software
industry are at an all-time high and are
projected to grow dramatically over the next
decade. - Salaries for newly minted B.S. graduates in
Computer Science are high, sometimes exceeding
the 100,000 mark. - In 2005, Money magazine rated software engineer
as the number one job in America. - Employment in this area is vital for national
competitiveness.
- At the same time, student interest in these
disciplines has plummeted. The Computing
Research Association (CRA) estimates that
computing enrollments have fallen by almost 50
percent since their peak in 2000.
- This decline has been even more rapid among women
and minority students, reducing diversity as the
pool shrinks.
4Degree Production vs. Job Openings
160,000
Ph.D.
140,000
Masters
120,000
Bachelors
100,000
Projected job openings
80,000
60,000
40,000
20,000
Engineering
Physical Sciences
Biological Sciences
Adapted from a presentation by John Sargent,
Senior Policy Analyst, Department of Commerce, at
the CRA Computing Research Summit, February 23,
2004. Original sources listed as National
Science Foundation/Division of Science Resources
Statistics degree data from Department of
Education/National Center for Education
Statistics Integrated Postsecondary Education
Data System Completions Survey and NSF/SRS
Survey of Earned Doctorates and Projected Annual
Average Job Openings derived from Department of
Commerce (Office of Technology Policy) analysis
of Bureau of Labor Statistics 2002-2012
projections. See http//www.cra.org/govaffairs/co
ntent.php?cid22.
Sources
5Why this Paradox?
6The Curriculum Has a Second-Order Effect
- The computing curriculum as traditionally
implemented has deficiencies and can always be
improved.
- As an explanation for declining enrollments,
however, the curriculum is broken theory has
serious shortcomings
7Students Like Our Courses But Go Elsewhere
8How Students Choose Their Majors
For the most part, students do not base their
decisions on what they want to study, but instead
on what they want to do.
9Analysis of the Factors
10Myths 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.
11The Truth about Offshoring
- More IT jobs today in US than during boom.
- Employment data suggest that new jobs are being
created more quickly than jobs are being moved
overseas. Thus, offshoring of software seems so
far to have increased the number of jobs, not
only in India and China, but in the United States
as well. -
- Confusion at the Bureau of Labor Statistics
- Projected Job Growth from 2006 to 2016
- Computer programmer below average
- Computer scientists software engineers
above average - Need to create awareness of CS in the large
- CS is increasingly fundamental to work in other
fields
12A 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.
13Analysis of the Factors
14CS is Losing Ground
- The Computer Science exam is the only Advanced
Placement exam that has shown declining student
numbers in recent years.
15CS Is Tiny Compared with Other Sciences
16High-School Education Has Changed
- The AP Computer Science (APCS) program was
introduced in 1984 using the language Pascal. - In 1995, the College Board announced that the
APCS exam and course would change to C. This
transition was implemented in 1998-99, with the
first C exams given in May 1999. - Two years later, the College Board announced that
the APCS program would move to Java in 2003-04.
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. The NCAA has
eliminated academic credit for all computing
courses on this basis. - Students who are heading toward top universities
are advised to take non-CS courses 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. Those
disciplines, moreover, actively oppose expanding
high-school computer science.
J
- Administrators find tools like PowerPoint more
sexy
and
exciting.
- Computing skills in generaland programming in
particularhave become much harder to teach. - Teachers have few resources to keep abreast of
changes in the field.
18Analysis of the Factors
19The Real Image Problem
20The Reality Is Also a Problem
Has anyone considered the possibility that its
just not fun anymore?
Don Knuth, October 11, 2006
- Students at Stanford have expressed the following
concerns - Long hours with little chance for a balanced life
- A less pleasant social milieu than other
occupations - A sense that success in programming is possible
only for those who are much brighter than they
see themselves to be - Work that is often repetitive and unchallenging,
particularly when it involves maintaining legacy
technology - Programming has become more difficult than it
used to be - No chance for a lasting impact because of rapid
obsolescence - Fears that employment with an individual company
is dicey even though opportunities are good in
the industry as a whole - Frustration at being managed by nontechnical
people who make more money but are not as bright
(Dilberts boss)
21Dilberts Boss Has More Appeal than Dilbert
22The Reality Is Also a Problem
Has anyone considered the possibility that its
just not fun anymore?
Don Knuth, October 11, 2006
- Students at Stanford have expressed the following
concerns - Long hours with little chance for a balanced life
- A less pleasant social milieu than other
occupations - A sense that success in programming is possible
only for those who are much brighter than they
see themselves to be - Work that is often repetitive and unchallenging,
particularly when it involves maintaining legacy
technology - Programming has become more difficult than it
used to be - No chance for a lasting impact because of rapid
obsolescence - Fears that employment with an individual company
is dicey even though opportunities are good in
the industry as a whole - Frustration at being managed by nontechnical
people who make more money but are not as bright - A perception that programmers are definitely on
the labor side of the labor/capital divide
23The Capital-Labor Divide
24The Code-Rush Syndrome
25The 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.
26Dangerous 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?
27Industry 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.
28Programming 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.
29What We Need To Do
- Recognize that the problems extend well beyond
the university.
- Press government and industry to improve
computing education at the K-12 level, possibly
through public-private partnerships. - Take creative steps to bolster both the image and
the reality of work in the profession. - Emphasize the fact that programming remains
essential to much of the work in the field. - Encourage research into new software paradigms
that can bring back the passion, beauty, joy,
and awe that can make programming fun again.
30A Pre-College Success Story
- British overseas territory lying 600 miles east
of North Carolina. - Local parliament has had a Labour majority since
1998. - Land area just over 20 square miles (roughly one
third the size of Washington, DC). - Total population of only 62,000 (roughly the size
of Palo Alto).
- Two public high schools Berkeley and
CedarBridge. - Considerable national wealth, primarily from
companies that relocate to Bermuda as a tax
haven. - The CIA World Factbook lists Bermuda as having
the highest GDP per capita in the world.
31Bermuda.edu
32Fixing the Image
In 1998, sixth-graders in selected California
schools were asked to draw their image of a
computer professional. The drawings are for the
most part aligned with traditional stereotypes,
as follows
33Images of Computing (Bermuda)
In Bermuda, the same exercise after the Stanford
curriculum reveals different perceptions
34The End
35The Paradox of the Computing Workforce
36The Image of Computing Remains a Problem
In 1998, sixth-graders in selected California
schools were asked to draw their image of a
computer professional. The drawings are for the
most part aligned with traditional stereotypes,
as follows
37The 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 - Negative images of those who work and study in
the field - Fears about job security after the dot-com bust
and offshoring - 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.
38Grady Booch at SIGCSE 2007
39The Real Image Problem
40Rediscovering the Passion, Beauty, Joy, and
Awe Making Computing Fun Again
Eric Roberts Professor of Computer Science,
Stanford University Past Chair of the ACM
Education Board
University of Maryland, Baltimore County April
24, 2008