1 / 22

The Impact of Computers on o ur World

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.

ranger
Télécharger la présentation

The Impact of Computers on o ur World

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Employment (thousands) Top 10 job growth categories (2006-2016) 2006 2016 Growth 1. Network systems and data communications analysts 262 402 53.4 2. Personal and home care aides 767 1,156 50.6 3. Home health aides 787 1,171 48.7 4. Computer software engineers, applications 507 733 44.6 5. Veterinary technologists and technicians 71 100 41.0 6. Personal financial advisors 176 248 41.0 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. 7. Makeup artists, theatrical and performance 2 3 39.8 8. Medical assistants 465 148 35.4 62 84 35.0 9. Veterinarians 10. Substance abuse and behavioral disorder counselors 83 112 34.3 Source: U.S. Department of Labor, Bureau of Labor Statistics, Employment Projections: 2006-16, December 2007. Why Study Computer Science • 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.

  3. Industry Reports a Labor Shortage —April 28, 2005 Gates Cites Hiring Woes, Criticizes Visa Restrictions By 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.” http://www.washingtonpost.com/wp-dyn/content/article/2005/04/27/AR2005042702241.html

  4. The Demand for Computer Science Phil Levis, http://csl.stanford.edu/~pal/ed/ Doctorate 161,857 Master’s Bachelor’s Job openings 129,045 94,889 57,127 55,208 49,200 31,357 10,075 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. 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

  5. In computing, the pattern of degree production vs. employment is reversed. • 39% of workers in computing have degrees in computing. • 71% of students with degrees in computing remain in the field. • 14% of graduates with degrees in the life sciences work in those fields. Sources: National Science Foundation/Division of Science Resources Statistics, SESTAT (Scientists and Engineers Statistical Data System), 1999, as presented by Caroline Wardle at Snowbird 2002. Economic Utility of Disciplinary Degrees Working 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.

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

  7. Top Ten Majors at Stanford (as of Winter 2013) 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Computer Science Human Biology Engineering IDMs (mostly Product Design) Biology Science, Technology, and Society Economics Psychology International Relations Management Science and Engineering History

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

  9. 1. Software 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. 2. 3. 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. 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. Critical Observations about Software

  10. 1. Software 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. 2. 3. 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. 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. Critical Observations about Software

  11. Essential and Accidental Complexity To 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. . . . 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. — Fred Brooks “No Silver Bullet” IEEE Computer, April 1987

  12. 1. Software 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. 2. 3. 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. 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. Critical Observations about Software

  13. 1536 pages 911 pages 274 pages 266 pages The March of Progress

  14. 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?

  15. 1. Software 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. 2. 3. 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. 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. Critical Observations about Software

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

  17. 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. The Microsoft Programming Personae Microsoft’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. — WesnerMoise, “Who are you? Mort, Elvis or Einstein,” September 25, 2003 http://wesnerm.blogs.com/net_undocumented/2003/09/who_are_you_mor.html 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.

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

  19. 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. Dick Gabriel’s Proposal for a Software MFA Dick Gabriel software wizard prizewinning poet http://www.dreamsongs.com/MFASoftware.html

  20. SEMESTER AT SEA 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.) 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. SEMESTER AT C++

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

  22. The End

More Related