Career Trajectories: A Study in Change -...

51
© 2017 IBM Corporation Career Trajectories: A Study in Change Paul E. McKenney, IBM Distinguished Engineer, Linux Technology Center Member, IBM Academy of Technology OSU EE 111, November 2, 2017

Transcript of Career Trajectories: A Study in Change -...

© 2017 IBM Corporation

Career Trajectories: A Study in Change

Paul E. McKenney, IBM Distinguished Engineer, Linux Technology Center

Member, IBM Academy of Technology

OSU EE 111, November 2, 2017

© 2017 IBM Corporation2

Education: A Foundation For Your Career

Important Software Tools In My Early Career

© 2017 IBM Corporation3

Education: A Foundation For Your Career

Important Software Tools In My Early Career

Image courtesy of Konstantin Lanzet, CC BY-SA 3.0.

© 2017 IBM Corporation4

Education: A Foundation For Your Career

Important Software Tools In My Early Career

Image courtesy of Konstantin Lanzet, CC BY-SA 3.0.

© 2017 IBM Corporation5

Education: A Foundation For Your Career

Important Software Tools In My Early Career

Image courtesy of Konstantin Lanzet, CC BY-SA 3.0.

Because you should never trust bits that are not visible to the naked eye!

© 2017 IBM Corporation6

Education: A Foundation For Your Career

Project Running Out of Core Memory (4096 Words!)

The Retro-Computing Society of Rhode Island, Inc. http://www.rcsri.org/collection/pdp-12/

© 2017 IBM Corporation7

Education: A Foundation For Your Career

Our Editor? An ASR33 Teletype!!!

By Marcin Wichary, User:AlanM1 - Derived (cropped) from, CC BY 2.0, https://commons.wikimedia.org/w/index.php?curid=20744606

© 2017 IBM Corporation8

Education: A Foundation For Your Career

1977 PDP-12 System: Vital Statistics

Memory: 4096 12-bit words (two characters per word)

256Kword “mass storage”: Two DECtape drives–Extremely robust: Could punch holes in tape and read without errors–Networking: 110 baud serial connection to teletype

Two (count them, two!) registers: A and Q–Oh, and a one-bit “link” register for overflow/carry detection

Add, AND, rotate, and multiply instructions–You want floating point? Then implement it in software!

CPU Clock Frequency: 625 kilohertz

© 2017 IBM Corporation9

Education: A Foundation For Your Career

But We Achieved Full-Rate Video: >20 FPS

© 2017 IBM Corporation10

Education: A Foundation For Your Career

But We Achieved Full-Rate Video: >>20 FPS

© 2017 IBM Corporation11

Education: A Foundation For Your Career

But We Achieved Full-Rate Video: >>20 FPS

© 2017 IBM Corporation12

Education: A Foundation For Your Career

Highly Optimized Sine and Cosine Functions

/ RETURNS SIN(AC), AC IS IN 128­THS/ OF A CIRCLE, SINE IS OF FORM/ +­S.BBBBBBBBBBB        SINSRC, 0        AND TRGMSK        TAD SNTABL        DCA TRGSTO        TAD I TRGSTO        JMP I SINSRC        SNTABL, SINTBL        / RETURNS COS(AC)        COSRCH, 0        AND TRGMSK        TAD CSTABL        DCA TRGSTO        TAD I TRGSTO        JMP I COSRCH        CSTABL, COSTBLTRGMSK, 0177

Bryan Miller and Paul E. McKenney, 1977

© 2017 IBM Corporation13

Education: A Foundation For Your Career

1977 PDP-12 System: Vital Statistics

Memory: 4096 12-bit words (two characters per word)

CPU Clock Frequency: 625 kilohertz

Two (count them, two!) registers: A and Q–Oh, and a one-bit “link” register for overflow/carry detection

Add, AND, rotate, and multiply instructions–You want floating point? Then implement it in software!

256Kword “mass storage”: Two DECtape drives–Extremely robust: Could punch holes in tape and read without errors

Networking: 110 baud serial connection to teletype

Low low price of $25K!!!

© 2017 IBM Corporation14

Education: A Foundation For Your Career

Much Better Than 1949 CSIRAC!

https://en.wikipedia.org/wiki/CSIRAC Photo by John O'Neill under GNU FDL v1.2

© 2017 IBM Corporation15

Education: A Foundation For Your Career

1949: CSIRAC Vital Statistics

CSIRAC: Oldest intact electronic stored-program computer–Operational in November 1949 at University of Melbourne

2,000 Vacuum tubes: Each an incandescent lightbulb in size–And less capable than a transistor: Need more tubes than transistors

768 words of memory, 20 bits each, in mercury delay lines–Hence “surviving” rather than operational

• 2017 safety regs unforgiving of metallic mercury and exposed 600V wiring

CPU core clock frequency of... 1KHz

Energy-efficient design sips only 30kW

Price? $10,000,000 AU

© 2017 IBM Corporation16

Education: A Foundation For Your Career

2017 Smartphone SoC Vital Statistics

Samsung Galaxy S8

8-core 64-bit CPU

Several gigabytes of DRAM (but only eight bits wide)

CPU core clock frequency of... 1.7GHz - 2.3GHz

Energy-efficient design sips way less than 30W–Let alone 30KW – call it 3W

Price? $750 US

Plus has cellular modem, WiFi, camera, display, touchscreen, audio, Bluetooth, DSP, GPU, GPS, NFC, USB, Flash, ...

© 2017 IBM Corporation17

Education: A Foundation For Your Career

What a Difference 68 Years Makes!!!

CSIRAC Galaxy S8 OOM Doublings

CPUs 1 8 0.90 3.00

CPU Clock 1KHz 1.7GHz 6.23 20.70

RAM (bits) 15,360 17,179,869,184 6.05 20.09

Power 30KW ~3W 4.00 13.29

Price $10,000,000 $750 4.12 13.70

Overall 21.31 70.78

Not allowing for cellular modem, WiFi, camera, display, touchscreen, audio, Bluetooth, DSP, GPU, GPS, NFC, USB, Flash, …

Not allowing for currency conversion or (much more important) inflation, which is another factor of 10

© 2017 IBM Corporation18

Education: A Foundation For Your Career

2016 IBM Q

© 2017 IBM Corporation19

Education: A Foundation For Your Career

Killer App: Quantum Mechanical Dynamics (QMD)

0 1 2 3 4I n t e r a t o m i c d i s t a n c e ( A n g s t r o m )

- 1 . 2

- 1

- 0 . 8

- 0 . 6

- 0 . 4

- 0 . 2

0

0 . 2

0 . 4

Ener

gy (H

artre

e) 0

5 0

1 0 0

1 2 3 4 5I n t e r a t o m i c d i s t a n c e ( A n g s t r o m )

- 8

- 7 . 8

- 7 . 6

- 7 . 4

- 7 . 2

- 7

- 6 . 8

- 6 . 6

Ener

gy (H

artre

e) 0

2 0

4 0

CR

2-1

Q1

Q2

Q3 Q4 Q5

Q7

Q6 Q 1

Q 2

Q 3 Q 4 Q 5

Q 7

Q 6

H H

H Li

1 2 3 4 5I n t e r a t o m i c d i s t a n c e ( A n g s t r o m )

- 1 5 . 5

- 1 5

- 1 4 . 5

- 1 4

- 1 3 . 5

- 1 3

- 1 2 . 5

- 1 2

Ener

gy (H

artre

e) 0

2 0

4 0

CR

2-1

C R 4 - 5

Q 1

Q 2

Q 3 Q 4 Q 5

Q 7

Q 6

Be H H

a b c

IBM used up to six qubits of its superconducting quantum processor to address electronic structure problems for the molecules H2, LiH and BeH2

50-qubit system performance/scalability PoC planned

A. Kandala, A. Mezzacapo, K. Temme, M. Takita, M. Brink, J. M. Chow, J. M. Gambetta, arXiv 1704.0518,Nature (2017, in press embargo)

© 2017 IBM Corporation20

Education: A Foundation For Your Career

But the Progress is Not Just in Computing!!!

© 2017 IBM Corporation21

Education: A Foundation For Your Career

But the Progress is Not Just in Computing!!!50 Years of Progress in Mathematics

1970: Proof that Hilbert’s 10th problem is unsolvable

1976: Proof of the four-color problem (stood for centuries)

1984: Polynomial-time algorithm for solving linear programming problems

1994: Proof of Fermat’s Last Theorem (stood for centuries)

1998: Proof of Kepler’s conjecture (sphere packing, stood for centuries)

2002: Proof of Catalan’s conjecture (23 and 32, stood for centuries)

2002: Polynomial-time integer primality test

2003: Proof of the Poincaré conjecture (topology)

2004: Proof of the classification of finite simple groups

2013: Proof that there is no bound on the values of pairs of primes differing by a finite number (first real progress in more than two millennia)

© 2017 IBM Corporation22

Education: A Foundation For Your Career

But the Progress is Not Just in Computing!!!50 Years of Progress in Mathematics

1970: Proof that Hilbert’s 10th problem is unsolvable

1976: Proof of the four-color problem (stood for centuries)

1984: Polynomial-time algorithm for solving linear programming problems

1994: Proof of Fermat’s Last Theorem (stood for centuries)

1998: Proof of Kepler’s conjecture (sphere packing, stood for centuries)

2002: Proof of Catalan’s conjecture (23 and 32, stood for centuries)

2002: Polynomial-time integer primality test

2003: Proof of the Poincaré conjecture (topology)

2004: Proof of the classification of finite simple groups

2013: Proof that there is no bound on the values of pairs of primes differing by a finite number (first real progress in more than two millennia)

You are living in

a golden age

You are living in

a golden age

surpassing all golden ages!!!

surpassing all golden ages!!!

© 2017 IBM Corporation23

Education: A Foundation For Your Career

Computing Mostly Here

Where Might Your Career Go?

Ask Tell

People

ThingsResearcher Superprogrammer

© 2017 IBM Corporation24

Education: A Foundation For Your Career

Where Might Your Career Go?

Your career might go a lot of different places

No education system on this earth can prepare you for all the different things you might need to do

–In 1976-1981, would OSU have prepared me for the Web? Mobile? Open-source licensing? Other legal issues?

Your education is a foundation to support life-long learning

© 2017 IBM Corporation25

Education: A Foundation For Your Career

Expanding Our Educational Foundations

© 2017 IBM Corporation26

Education: A Foundation For Your Career

Education Is A Foundation

And foundations need maintenance, repair, and sometimes expansion!

http://www.fixmyfoundation.com/

© 2017 IBM Corporation28

Education: A Foundation For Your Career

Expanding My Educational Foundation

BS Mechanical Engineering, Oregon State University, 1981

BS Computer Science, Oregon State University, 1981

© 2017 IBM Corporation29

Education: A Foundation For Your Career

Expanding My Educational Foundation

BS Mechanical Engineering, Oregon State University, 1981

BS Computer Science, Oregon State University, 1981

MS Computer Science, Oregon State University, 1988

© 2017 IBM Corporation30

Education: A Foundation For Your Career

Expanding My Educational Foundation

BS Mechanical Engineering, Oregon State University, 1981

BS Computer Science, Oregon State University, 1981

MS Computer Science, Oregon State University, 1988

Ph.D. Computer Science and Engineering, OGI School of Science and Engineering at Oregon Health & Sciences University, 2004

© 2017 IBM Corporation31

Education: A Foundation For Your Career

Expanding My Educational Foundation

BS Mechanical Engineering, Oregon State University, 1981

BS Computer Science, Oregon State University, 1981

MS Computer Science, Oregon State University, 1988

Ph.D. Computer Science and Engineering, OGI School of Science and Engineering at Oregon Health & Sciences University, 2004

But I have never taken a course on artificial intelligence, C language, hardware architecture, version control, software validation, IP law, or thread-based parallel programming

© 2017 IBM Corporation32

Education: A Foundation For Your Career

Expanding My Educational Foundation

BS Mechanical Engineering, Oregon State University, 1981

BS Computer Science, Oregon State University, 1981

MS Computer Science, Oregon State University, 1988

Ph.D. Computer Science and Engineering, OGI School of Science and Engineering at Oregon Health & Sciences University, 2004

But I have never taken a course on artificial intelligence, C language, hardware architecture, version control, software validation, IP law, or thread-based parallel programming

–I instead learned these critically important topics on the job

© 2017 IBM Corporation33

Education: A Foundation For Your Career

How My Career Evolved

1977-1980–Business applications in FORTRAN and COBOL

1981-1985–Soft real-time systems in PASCAL, assembly, and C

1986-1990–UNIX systems administration, networking research in C on SunOS

1990-1999–Parallel UNIX kernel hacking in C on DYNIX/ptx

1999-2000–Parallel UNIX kernel hacking in C on AIX

2001-present–Parallel, real-time, and energy-efficient kernel hacking in C on Linux

© 2017 IBM Corporation34

Education: A Foundation For Your Career

How Might Things Change in the Future?

If you are 18 years old and plan to retire at age 70: 2069!!!

© 2017 IBM Corporation35

Education: A Foundation For Your Career

How Might Things Change in the Future?

If you are 18 years old and plan to retire at age 70: 2069!!!

Not much is known about the year 2069–Anyone who will be over 50 has already been born

© 2017 IBM Corporation36

Education: A Foundation For Your Career

How Might Things Change in the Future?

If you are 18 years old and plan to retire at age 70: 2069!!!

Not much is known about the year 2069–Anyone who will be over 50 has already been born–Unless someone invents a time machine

© 2017 IBM Corporation37

Education: A Foundation For Your Career

How Might Things Change in the Future?

If you are 18 years old and plan to retire at age 70: 2069!!!

Not much is known about the year 2069–Anyone who will be over 50 has already been born–Unless someone invents a time machine

But we can look at changes since 1965:

© 2017 IBM Corporation38

Education: A Foundation For Your Career

How Might Things Change in the Future?

If you are 18 years old and plan to retire at age 70: 2069!!!

Not much is known about the year 2069–Anyone who will be over 50 has already been born–Unless someone invents a time machine

But we can look at changes since 1965:–Windows and icons and mice created and took over the world–Ethernet created, took over the world, supplanted by WiFi–Intel x86 was created and took over much of the world–LEDs red/infrared lab curiosities to pretty much any color at low price–DOS created, took over much of the world, obsoleted by Windows–Cellphones were created and took over much of the world–UNIX and then Linux were created and took over much of the world–World wide web was created and took over much of the world–Smartphones were created and took over much of the world–Self-driving cars were created, and might be taking over the world

© 2017 IBM Corporation39

Education: A Foundation For Your Career

But Some Things Never Change

© 2017 IBM Corporation40

Education: A Foundation For Your Career

But Some Things Never Change

Quality is always critically important–But what constitutes “quality” varies over both time and space

Communication, both verbal and written is critically important–Beyond a certain point, an idea you cannot communicate is useless–And there is a big advantage of written communication as you age...

Your job will probably become more about people over time–Hence the “communication” point above and the “scope” point below

Your scope must increase over time–What was good enough then is probably not good enough now...

© 2017 IBM Corporation41

Education: A Foundation For Your Career

How Can You Increase Your Scope?

© 2017 IBM Corporation42

Education: A Foundation For Your Career

How Can You Increase Your Scope?

Over time, anyone in a technical field must increase their scope just to maintain a constant level of seniority:

–Move to management or program management–Move to “hot” field du jour (for example, evangelist or trainer)–Training (both giving and taking)–Move to sales, technical sales support, technical marketing–Increase technical skill/efficiency–Practice, practice, practice: strive for fluency–Create artifacts that are widely used

© 2017 IBM Corporation43

Education: A Foundation For Your Career

One Way To Increase Your Scope

Computing Mostly Here

Ask Tell

People

ThingsResearcher Superprogrammer

ManagerProfessor

AnalysisInbound Marketing

© 2017 IBM Corporation44

Education: A Foundation For Your Career

Another Way to Increase Your Scope

© 2017 IBM Corporation45

Education: A Foundation For Your Career

“Scope” Means Different Things In Different Areas

Hardware

Firmware

Operating-System Kernel

System Libraries

Frameworks/Middleware (e.g., NoSQL)

Applications

Web/Mobile

ProductivityP

erfo

rman

ce Gen

e rality

© 2017 IBM Corporation46

Education: A Foundation For Your Career

How Can You Increase Your Scope?

Over time, anyone in a technical field must increase their scope just to maintain a constant level of seniority:

–Move to management or program management–Move to “hot” field du jour–Training (both giving and taking)–Move to sales, technical sales support, technical marketing–Increase technical skill/efficiency–Practice, practice, practice: strive for fluency–Create artifacts that are widely used–Avoid carrying the burdens of the past

© 2017 IBM Corporation47

Education: A Foundation For Your Career

Software Quality and Burdens of the Past

Software's master or software's prisoner?–Hard to increase your scope while a prisoner of your SW's bugs!!!

© 2017 IBM Corporation48

Education: A Foundation For Your Career

Software Quality and Burdens of the Past

Software's master or software's prisoner?–Hard to increase your scope while a prisoner of your SW's bugs!!!–But there is a time and place for “fast and dirty” software...

© 2017 IBM Corporation49

Education: A Foundation For Your Career

Summary

© 2017 IBM Corporation50

Education: A Foundation For Your Career

Summary

Education is a foundation for your career–You will need to maintain it, add to it, and build on top of it–The world will change, and your skill set must change with it

But some things never change–Importance of communication and quality, the need to increase your

scope over time, and the need to increase your people skills over time

You will need to let go of some of the past to grasp the future–Which of today's technologies are tomorrow's core memory?

© 2017 IBM Corporation51

Education: A Foundation For Your Career

Summary

Education is a foundation for your career–You will need to maintain it, add to it, and build on top of it–The world will change, and your skill set must change with it

But some things never change–Importance of communication and quality, the need to increase your

scope over time, and the need to increase your people skills over time

You will need to let go of some of the past to grasp the future–Which of today's technologies are tomorrow's core memory?–Tell which is which and you'll be rich!!!

© 2017 IBM Corporation52

Education: A Foundation For Your Career

Questions?