22
The Impact of Computers on our World Eric Roberts Professor of Computer Science Stanford Club for European Affairs Paris, France 3 June 2013 The View from Stanford Computer Science

The Impact of Computers on o ur World

  • Upload
    ranger

  • View
    25

  • Download
    1

Embed Size (px)

DESCRIPTION

The Impact of Computers on o ur World. The View from Stanford Computer Science. Eric Roberts Professor of Computer Science Stanford Club for European Affairs Paris, France 3 June 2013. Employment. (thousands). Top 10 job growth categories (2006-2016). 2006. 2016. Growth. 1. - PowerPoint PPT Presentation

Citation preview

Page 1: The Impact of Computers on  o ur World

The Impact of Computers on our World

Eric RobertsProfessor of Computer Science

Stanford Club for European AffairsParis, France3 June 2013

The View from Stanford Computer Science

Page 2: The Impact of Computers on  o ur World

Why Study Computer Science

262 402 53.41.767 1,156 50.62.787 1,171 48.73.507 733 44.64.71 100 41.05.

176 248 41.06.2 3 39.87.

465 148 35.48.62 84 35.09.

Network systems and data communications analystsPersonal and home care aidesHome health aidesComputer software engineers, applicationsVeterinary technologists and techniciansPersonal financial advisorsMakeup artists, theatrical and performanceMedical assistantsVeterinariansSubstance abuse and behavioral disorder counselors 83 112 34.310.

Top 10 job growth categories (2006-2016) 2006 2016

Employment(thousands)

Growth

U.S. Department of Labor, Bureau of Labor Statistics, Employment Projections: 2006-16, December 2007.

Source:

Google and Facebook are fighting hard to hire this year’s crop of computer science graduates, we’ve heard, and ground zero is Stanford. Most of the class of 2008 already have job offers even though graduation is months away. Last year, salaries of up to $70,000 were common for the best students. This year, Facebook is said to be offering $92,000, and Google has increased some offers to $95,000 to get their share of graduates. Students with a Master’s degree in Computer Science are being offered as much as $130,000 for associate product manager jobs at Google.

• The computing industry offers some of the best employment opportunities for college graduates 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, often exceeding the $100,000 mark.– In 2005, Money magazine rated software engineer as the number one

job in America; careercast.com rates it as #1 in both 2011 and 2012.– Employment in this area is vital for every national economy.

Page 3: The Impact of Computers on  o ur World

Industry Reports a Labor Shortage

Gates Cites Hiring Woes, Criticizes Visa RestrictionsBy David A. Vise

Microsoft Corp. Chairman Bill Gates said yesterday the software giant is having enormous difficulty filling computer jobs in the United States as a result of tight visa restrictions on foreign workers and a declining interest among U._S. students in computer science.<tab>Speaking on a technology panel at the Library of Congress, Gates said a decline in the number of U._S. students pursuing careers in science and technology is hurting Microsoft in the short run, and could have serious long-term consequences for the U._S. economy if the problem is not addressed.<tab>“We are very concerned that the U._S. will lose its competitive position. For Microsoft, it means we are having a tougher time hiring,” Gates said. “The jobs are there, and they are good-paying jobs, but we don’t have the same pipeline.”

— April 28, 2005

http://www.washingtonpost.com/wp-dyn/content/article/2005/04/27/AR2005042702241.html

Page 4: The Impact of Computers on  o ur World

The Demand for Computer Science

31,357

10,075

94,889

49,200

129,045

57,127 55,208

161,857DoctorateMaster’sBachelor’sJob 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/

We are very happy with the students that we get from this university. . . . We just wish we could hire two to three times as many of them.

Bill Gates at Stanford, February 19, 2008

Page 5: The Impact of Computers on  o ur World

Economic Utility of Disciplinary DegreesWorking in the life sciences typically requires a degree in biology or some closely related field, but relatively few biology majors actually end up working in the field.

• 80% of workers in the life sciences have degrees in the life sciences.

• 14% of graduates with degrees in the life sciences work in those fields.

National Science Foundation/Division of Science Resources Statistics, SESTAT (Scientists and Engineers Statistical Data System), 1999, as presented by Caroline Wardle at Snowbird 2002.

Sources:

• 39% of workers in computing have degrees in computing.

• 71% of students with degrees in computing remain in the field.

In computing, the pattern of degree production vs. employment is reversed.

Page 6: The Impact of Computers on  o ur World

Challenges for Stanford• Computer science has become increasingly popular, both as a

choice of major and as a field for elective study.– Computer science is now the largest major at Stanford

Page 7: The Impact of Computers on  o ur World

Top Ten Majors at Stanford(as of Winter 2013)

1.2.3.4.5.6.7.8.9.

10.

Computer ScienceHuman BiologyEngineering IDMs (mostly Product Design)BiologyScience, Technology, and SocietyEconomicsPsychologyInternational RelationsManagement Science and EngineeringHistory

Page 8: The Impact of Computers on  o ur World

Challenges for Stanford• Computer science has become increasingly popular, both as a

choice of major and as a field for elective study.– Computer science is now the largest major at Stanford– More than 90% of undergraduates now take at least one CS course– CS 106A is now the largest course at Stanford by almost a factor of two

• Even though the number of majors and overall enrollments have each doubled in the past five years, the size of the Computer Science faculty has remained essentially flat.– We have hired new faculty (this year, we’ve made offers to seven)– We are losing faculty to industry

• The problem is far more serious at institutions that don’t have Stanford’s capacity to hire.

Page 9: The Impact of Computers on  o ur World

Critical Observations about SoftwareSoftware development is an extraordinarily difficult task, exceeding in complexity most other engineering work. That difficulty, moreover, is intrinsic to the discipline and is not likely to change in the foreseeable future.

1.

Despite advances in tools and methodologies (and because of those advances to some extent), software development and software education have become more difficult over the history of the field.

2.

Software development requires people with an unusual combination of skills. Those people are in short supply, but their economic value is enormous. Experienced programmers differ in productivity by several orders of magnitude.

3.

Page 10: The Impact of Computers on  o ur World

Critical Observations about SoftwareSoftware development is an extraordinarily difficult task, exceeding in complexity most other engineering work. That difficulty, moreover, is intrinsic to the discipline and is not likely to change in the foreseeable future.

1.

Despite advances in tools and methodologies (and because of those advances to some extent), software development and software education have become more difficult over the history of the field.

2.

Software development requires people with an unusual combination of skills. Those people are in short supply, but their economic value is enormous. Experienced programmers differ in productivity by several orders of magnitude.

3.

Page 11: The Impact of Computers on  o ur World

Essential and Accidental ComplexityTo see what rate of progress one can expect in software technology, let us examine the difficulties of that technology. Following Aristotle, I divide them into essence, the difficulties inherent in the nature of software, and accidents, those difficulties that today attend its production but are not inherent. . . .

Fred Brooks“No Silver Bullet”IEEE Computer, April 1987

The complexity of software is an essential property not an accidental one. Hence, descriptions of a software entity that abstract away its complexity often abstract away its essence.

Page 12: The Impact of Computers on  o ur World

Critical Observations about SoftwareSoftware development is an extraordinarily difficult task, exceeding in complexity most other engineering work. That difficulty, moreover, is intrinsic to the discipline and is not likely to change in the foreseeable future.

1.

Despite advances in tools and methodologies (and because of those advances to some extent), software development and software education have become more difficult over the history of the field.

2.

Software development requires people with an unusual combination of skills. Those people are in short supply, but their economic value is enormous. Experienced programmers differ in productivity by several orders of magnitude.

3.

Page 13: The Impact of Computers on  o ur World

The March of Progress

266 pages 274 pages911 pages

1536 pages

Page 14: The Impact of Computers on  o ur World

Sobering Thoughts• There are more public methods in the java and javax

package hierarchies than there are words in Jensen and Wirth’s Pascal User Manual and Report. The amount of explanation once deemed sufficient to teach the standard introductory programming language is thus no longer sufficient for an index of the operations available today.

• Typical software today exists at a level of scale and complexity that would have been unthinkable a generation ago. The most common operating system used in mobile phones, for example, contains approximately 100 million lines of code.

• Given the scale of modern software systems, it is typically impossible for students to develop projects as extensions to existing code frameworks. An academic term is now barely sufficient to understand what is already there, leaving no time for further development?

Page 15: The Impact of Computers on  o ur World

Critical Observations about SoftwareSoftware development is an extraordinarily difficult task, exceeding in complexity most other engineering work. That difficulty, moreover, is intrinsic to the discipline and is not likely to change in the foreseeable future.

1.

Despite advances in tools and methodologies (and because of those advances to some extent), software development and software education have become more difficult over the history of the field.

2.

Software development requires people with an unusual combination of skills. Those people are in short supply, but their economic value is enormous. Experienced programmers differ in productivity by several orders of magnitude.

3.

Page 16: The Impact of Computers on  o ur World

Variations in Programmer Productivity• In 1968, a study by Sackman, Erikson, and Grant 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 studies [Curtis 1981, DeMarco and Lister 1985, Brian 1997] 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.

Page 17: The Impact of Computers on  o ur World

For the most part, Microsoft (along with Google and other first-rank companies) are seeking to hire the Einsteins, which explains the fact that these companies hire only a tiny fraction of their applicant pool.

The Microsoft Programming PersonaeMicrosoft’s cultural lore defines three types of programmers:

Mort is your most common developer, who doesn’t have a CS background, may even be a recent newcomer, and doesn’t quite understand what the computer is doing under the covers, but who writes the dinky IT programs that make businesses run. Elvis, more knowledgeable, cares about code quality, but has a life too. Einstein writes some serious-ass piece of code like device drivers, wants to get things done, needs to be able to go low level and high level, needs a language without restrictions to get his job done.

Mort is your most common developer, who doesn’t have a CS background, may even be a recent newcomer, and doesn’t quite understand what the computer is doing under the covers, but who writes the dinky IT programs that make businesses run. Elvis, more knowledgeable, cares about code quality, but has a life too. Einstein writes some serious-ass piece of code like device drivers, wants to get things done, needs to be able to go low level and high level, needs a language without restrictions to get his job done.

Mort is your most common developer, who doesn’t have a CS background, may even be a recent newcomer, and doesn’t quite understand what the computer is doing under the covers, but who writes the dinky IT programs that make businesses run. Elvis, more knowledgeable, cares about code quality, but has a life too. Einstein writes some serious-ass piece of code like device drivers, wants to get things done, needs to be able to go low level and high level, needs a language without restrictions to get his job done.

Wesner Moise, “Who are you? Mort, Elvis or Einstein,” September 25, 2003 http://wesnerm.blogs.com/net_undocumented/2003/09/who_are_you_mor.html

Page 18: The Impact of Computers on  o ur World

Productivity Variations Are Common

• The idea that individuals might differ in productivity by two orders of magnitude or more initially seems hard to believe.

• In fact, such differences in effectiveness occur across a range of occupational categories:– Mathematicians– Creative artists (writers, composers, poets, painters)– Performers (musicians, actors)– Motion picture directors– Financial wizards, CEOs– Professional athletes

• No one achieves mastery in any of these fields on the basis of raw talent alone. Training and practice are essential.

• This fact suggests that the education of software developers may need to adopt pedagogical strategies from these disciplines.

Page 19: The Impact of Computers on  o ur World

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 20: The Impact of Computers on  o ur World

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 21: The Impact of Computers on  o ur World

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 22: The Impact of Computers on  o ur World

The End