what happens when we end up eric roberts professor of computer science stanford university teaching...

29
What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education Orlando, Florida January 8, 2014

Upload: meghan-chase

Post on 23-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

What Happens When We End Up

Eric RobertsProfessor of Computer Science

Stanford University

Teaching All Students Computing

Future Directions in CS EducationOrlando, FloridaJanuary 8, 2014

Page 2: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Grady Booch at SIGCSE 2007

Page 3: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Passion, Beauty, Joy, and AweThat there is currently a crisis in computing education is not in doubt.

McGettrick et al., SIGCSE 2007—

—From my SIGCSE PBJA panel presentation in 2008

• 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.

Page 4: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

What a Difference a Year Makes That there is currently a crisis in computing education is not in doubt.

McGettrick et al., SIGCSE 2007—

• 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.

• In Silicon Valley and at Stanford, the answers are clear:– Demand for talented software developers is as high as ever.– CS enrollments are skyrocketing, nearly erasing any previous loss.

Are enrollments still falling?

Is this still true after the meltdown?

—From my SIGCSE PBJA panel presentation in 2009

Page 5: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

The Demand for Computer Science

31,357

10,075

94,889

49,200

129,045

57,127 55,208

161,857Doctorate

Master’s

Bachelor’s

Job openings

Physical Sciences Biological Sciences Engineering Computer Science

The educational data comes from the National Center for Education Statistics IPEDS (Integrated Postsecondary Education Data System) Data Center. The data used is for degrees granted in the 2008-2009 academic year.

The employment data comes from the Department of Labor’s Occupational Outlook Handbook for 2010-11. This handbook includes employment for 2008 as well as a 10-year projection to 2018. I manually selected which occupations mapped to which degrees. I calculated job openings per year as 10% of the expected job growth over 2008-2018 plus 2.5% of the number of jobs in 2008. This second term describes the number of jobs opening as people retire. It assumes that people work for 40 years and leave a job at a uniform rate; the latter is of course not true in difficult economic times.

Phil Levis, http://csl.stanford.edu/~pal/ed/

Page 6: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Top Ten Majors at Stanford(as of July 2013)

1.2.3.4.5.6.7.8.9.

10.

Computer ScienceHuman BiologyEngineering IDMs (mostly Product Design)Science, Technology, and SocietyBiologyEconomicsManagement Science and EngineeringMechanical EngineeringInternational RelationsPsychology

Page 7: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Top Majors at Stanford(as of July 2012)

Page 8: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Top Majors at Stanford(as of July 2013)

Page 9: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

The Student Growth Is Now Common

• The problem of the 2000s was insufficient student demand.• The problem of the 2010s will be insufficient faculty capacity.• What we face is a “success disaster” in the making.

Page 10: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Success Disasters

Page 11: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Success Disasters

"success disaster"

Page 12: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Success Disasters

"success disaster"

Page 13: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Success Disasters

"success disaster"

Page 14: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

We’ve Been Here Before• The situation that Computer Science is likely to face over the

next five years is not unprecedented. Much the same situation occurred in the 1980s.

• In the early 1980s, the availability of personal computers led to an explosion of student interest in computer science. At some universities, student demand doubled in a single year.

• Unfortunately, universities did not have the capacity to satisfy the growing demand.– Workloads for faculty increased substantially.

– Some faculty members began to leave for greener pastures.

– Replacement faculty were nearly impossible to find.

– Graduate students turned away from academic careers.

Page 15: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

The Kent Curtis Report

Page 16: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

The Kent Curtis Report

Page 17: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

The Kent Curtis Report

Page 18: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

The Kent Curtis Report

Page 19: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Proposed Research Questions for NSF

What challenges make it difficult for institutions to build the necessary capacity?

1.

Page 20: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

We Need a New “Kent Curtis” Report• In a time of significant downward pressure on educational

funding, we will need as much solid data as possible to convince university administrators and legislators to increase funding for computer science.

• Satisfying the demand from technology-related industry will require enormous changes in hiring priorities for universities that will not always be politically smooth.

• Both industrial demand for software developers and student demand for computer science degrees are historically cyclic, which makes it harder for policymakers to fund CS education at what appear to be periods of peak demand. Unfortunately, this approach is a self-fulfilling prophecy.

• Both industrial demand for software developers and student demand for computer science degrees are historically cyclic, which makes it harder for policymakers to fund CS education at what appear to be periods of peak demand. Unfortunately, this approach is a self-fulfilling prophecy.

Page 21: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Proposed Research Questions for NSF

What challenges make it difficult for institutions to build the necessary capacity?

1.

How can we maximize the production of students with the exceptional levels of talent that the industry demands?

2.

Page 22: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

The Long View of History

Page 23: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Variations in Programmer Productivity

• In 1968, a study by Sackman, Erikson, and Grant1 revealed that programmers with the same level of experience exhibit variations of more than 20 to 1 in the time required to solve particular programming problems.

• More recent studies2, 3, 4 confirm this high variability.• Most industry insiders believe that the productivity variance is

even higher today. In 2005, Google’s VP for Engineering, Alan Eustace, told The Wall Street Journal that one top-notch engineer is worth 300 times or more than the average.5

1 H. Sackman, W. J. Erikson, and E. E. Grant. Exploratory experimental studies comparing on-line and off-line programming performance. Communications of the ACM, January 1968.

2 W. Curtis. Substantiating programmer variability. Proceedings of the IEEE, July 1981.

3 T. DeMarco and T. Lister. Programmer performance and the effects of the workplace. Proceedings of the 8th International Conference on Software Engineering. IEEE Computing Society Press, August 1985.

4 G. E. Bryan. Not all programmers are created equal. In Richard Thayer, Software Engineering Project Management (second edition), IEEE Computer Society, 1997.

5 T. Pui-Wing and K. Delaney. Google’s growth helps ignite Silicon Valley hiring frenzy.Wall Street Journal, November 23, 2005.

Page 24: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Proposed Research Questions for NSF

What challenges make it difficult for institutions to build the necessary capacity?

1.

How can we maximize the production of students with the exceptional levels of talent that the industry demands?

2.

What strategies — including those outside traditional academic programs and curricula — will help to expand the pipeline of students in this critical area?

3.

Page 25: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

The Ultimate Answer?

Education and the French mindset

Bangalore-sur-Seine?May 11, 2013

WHEN French entrepreneurs decided in March to launch a swanky new school for software developers, they thought they were on to something. But even they were startled by its popularity. For 1,000 student places starting this autumn on a three-year course, they have fully 50,000 applications.

France has a skills mismatch. Joblessness has reached 10.6%, a 14-year high. For the under-25s, it is 26%. Yet, according to a poll by the French Association of Software Publishers and Internet Solutions, 72% of software firms are having trouble recruiting—and 91% of those are seeking software engineers and developers.

Page 26: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Dick Gabriel’s Proposal for a Software MFA

http://www.dreamsongs.com/MFASoftware.html

Dick Gabriel

Software education today is embodied in Computer Science and Software Engineering programs, supplemented by informal mentoring on the job. I find this approach unsatisfactory. Software development is a performance exhibiting skills developed by an individual—often in groups of teams in order to achieve the scale of software required. In this way, software development is like putting on a play, which requires the skills and performances of a number of people working in tandem on stage and behind the scenes. Such skills can be developed in isolation through practice with other amateurs or even by putting on plays in public without any training at all. But how much faster could talent be developed in a educational program that recognized that writing software has enough of an arts-like performance component that the program was tailored to it?

Another apt comparison can be found in the creative writing arts. It is entirely possible to become an extraordinary writer by one’s self, by simply writing and reading, and many excellent writers progress this way. A faster way to gain competence is through a Master of Fine Arts program, which is designed to rapidly increase one’s skills and to get one prepared to bring to bear critical thinking to the process of continuing improvement. Some believe that all aspects of software design and development are really engineering or scientific disciplines where the models of engineering and science apply, and I will not quarrel with them nor try to convince them otherwise. . . .<tab>This proposal is predicated on the belief that being a good software designer and developer requires talent, and that talent can be developed. We explicitly liken the practice of software to the practice of fine art.

software wizardprizewinning poet

Page 27: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

Alternative Models of Software Education

Although Dick Gabriel’s model of an MFA in software is worth investigating, it may be more appropriate to create “conservatories” for the teaching of software arts, similar to music conservatories. One possibility might be some sort of New England Conservatory of Coding. Or perhaps a Hogwarts School for Software Wizardry.

Although Dick Gabriel’s model of an MFA in software is worth investigating, it may be more appropriate to create “conservatories” for the teaching of software arts, similar to music conservatories. One possibility might be some sort of New England Conservatory of Coding. Or perhaps a Hogwarts School for Software Wizardry.

Although Dick Gabriel’s model of an MFA in software is worth investigating, it may be more appropriate to create “conservatories” for the teaching of software arts, similar to music conservatories. One possibility might be some sort of New England Conservatory of Coding. (Or perhaps a Hogwarts School for Software Wizardry.)

SEMESTER AT SEASEMESTER AT C++

Another model might be to create intensive programs that encourage students to focus on the art of software development, in much the same way that programs like the University of Virginia’s Semester at Sea program offers a concentrated immersion in oceanography, geography, and cultural anthropology.

Page 28: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

ReferencesKent Curtis. Computer manpower—Is there a crisis? National Science Foundation, 1982.http://cs.stanford.edu/Curtis-ComputerManpower/

1.

Peter Denning. President’s letter: Eating our seed corn. Communications of the ACM, June 1981.http://dx.doi.org/10.1145/358669.358672

2.

Richard P. Gabriel. Master of Fine Arts in Software. 2002.http://www.dreamsongs.com/MFASoftware.html

3.

Eric Roberts. Meeting the challenges of rising enrollments. ACM Inroads, September 2011.http://dx.doi.org/10.1145/2003616.2003617

4.

Ed Lazowska and Dave Patterson. Letters: Students of all majors should study computer science. Chronicle of Higher Education, November 26, 2013.http://chronicle.com/blogs/letters/students-of-all-majors-should-study-computer-science/

5.

Page 29: What Happens When We End Up Eric Roberts Professor of Computer Science Stanford University Teaching All Students Computing Future Directions in CS Education

The End