Two Solitudes
Greg Wilson
Mozilla Foundation
SPLASH 2013
October 30, 2013
You are free to:
Copy, share, adapt, or re-mix;
Photograph, film, or broadcast;
Blog, live-blog, or post video of;

this p...
A Quick Quiz
Given the statement:

for x in [10, 20, 30]; y in [1, 2]:
print x+y

Would you expect to see:
A) 'x' and 'y' ...
I Used to Be a Prof

before

after
4
But Before That, I Shipped Code

5
And These Days, I'm a Teacher

6
What I've Seen

academia vs. industry

7
What I've Seen

academia vs. industry

8
What I've Seen

academia vs. industry
research vs. practice

9
What I've Seen

academia vs. industry
research vs. practice

10
More Specifically
smart young people get CS degrees

11
More Specifically
smart young people get CS degrees
and never pay attention to CS again

12
More Specifically
me
so

smart young people get CS degrees
and never pay attention to CS again
t
os
m

13
More Specifically
me
so

smart young people get CS degrees
and never pay attention to CS again
t
os
m

Why?
14
Once Upon a Time...
1986: Start programming for physicists on
first-generation parallel computers

15
Once Upon a Time...
1986: Start programming for physicists on
first-generation parallel computers
1992: Realize I'm doing ...
Once Upon a Time...
1986: Start programming for physicists on
first-generation parallel computers
1992: Realize I'm doing ...
See a Problem, Fix a Problem
“I don't know what to teach scientists
about how to build software.”

18
See a Problem, Fix a Problem
“I don't know what to teach scientists
about how to build software.”
“I'll go learn from expe...
See a Problem, Fix a Problem
“I don't know what to teach scientists
about how to build software.”
“I'll go learn from expe...
See a Problem, Fix a Problem
“I don't know what to teach scientists
about how to build software.”
“I'll go learn from expe...
Ninjas and Rock Stars
If big companies are doing it wrong,
agile startups must be doing it right.

22
Ninjas and Rock Stars
If big companies are doing it wrong,
agile startups must be doing it right.
(pause for further laugh...
Meanwhile...
1996: “What Should Computer Scientists
Teach to Physical Scientists and
Engineers?” (IEEE CS&E)

24
Meanwhile...
1996: “What Should Computer Scientists
Teach to Physical Scientists and
Engineers?” (IEEE CS&E)
1997: John Re...
Meanwhile...
1996: “What Should Computer Scientists
Teach to Physical Scientists and
Engineers?” (IEEE CS&E)
1997: John Re...
What I Learned
The problem with teaching scientists is
they expect evidence

27
What I Learned
The problem with teaching scientists is
they expect evidence
The problem with being a computer scientist wa...
But Then...

29
But Then...

How come I didn't know we knew stuff about things?
30
So Ten Years Ago...
1. I had learned most of what I knew about
building software on the job

31
So Ten Years Ago...
1. I had learned most of what I knew about
building software on the job
2. Most of my colleagues knew ...
So Ten Years Ago...
1. I had learned most of what I knew about
building software on the job
cared

2. Most of my colleague...
So Ten Years Ago...
1. I had learned most of what I knew about
building software on the job
cared

2. Most of my colleague...
As Doomed as Doomed Can Be
From the people who
brought you UML...

35
As Doomed as Doomed Can Be
From the people who
brought you UML...
...a re-founding of
software engineering...

36
As Doomed as Doomed Can Be
From the people who
brought you UML...
...a re-founding of
software engineering...
...that does...
Computer Science Isn't

38
Computer Science Isn't
●

How many experiments did you do as an
undergraduate?

39
Computer Science Isn't
●

●

How many experiments did you do as an
undergraduate?
How much experimental data did you
analy...
Computer Science Isn't
●

●

●

How many experiments did you do as an
undergraduate?
How much experimental data did you
an...
Computer Science Isn't
●

●

●

How many experiments did you do as an
undergraduate?
How much experimental data did you
an...
Where Are Our Examples?
It's how everybody else teaches...

43
Where Are Our Examples?
It's how everybody else teaches...

44
Where Are Our Examples?
It's how everybody else teaches...

This is not a new observation
45
From: Greg Wilson
Subject: Beautiful Code
Date: May 17, 2006
I hope you don't mind mail out of the blue, but I'm working o...
I expected
From: [name withheld]
Subject: re: Beautiful Code
Sorry, I'm too busy. Good luck.

47
I expected
From: [name withheld]
Subject: re: Beautiful Code
Sorry, I'm too busy. Good luck.

Most people said
From: [name...
I expected
From: [name withheld]
Subject: re: Beautiful Code
Sorry, I'm too busy. Good luck.

Most people said
From: [name...
Beauty Takes Many Forms

50
Beauty Takes Many Forms

But it's not beautiful
if nobody uses it.
51
If At First You Don't Succeed...
To: Practitioner
From: Researcher

2010
52
If At First You Don't Succeed...
To: Practitioner
From: Researcher

2010

To: Researcher
From: Practitioner

2011-13
53
Impact

54
Impact

Yup, that's it,
right there

55
Two Solitudes
Academics don't respect practitioners'
timescales

56
Two Solitudes
Academics don't respect practitioners'
timescales
●

16 months to clear the Intellectual Property Office

57
Two Solitudes
Academics don't respect practitioners'
timescales
Also don't care if practitioners can't read
academic work
...
Two Solitudes
Academics don't respect practitioners'
timescales
Also don't care if practitioners can't read
academic work
...
Two Solitudes
Academics don't respect practitioners'
timescales
Also don't care if practitioners can't read
academic work
...
Two Solitudes
Academics don't respect practitioners'
timescales
Also don't care if practitioners can't read
academic work
...
Two Solitudes
Academics don't respect practitioners'
timescales
Also don't care if practitioners can't read
academic work
...
How have other people solved this problem?

63
How have other people solved this problem?

64
It Took Medicine 200 Years

Seven Years' War (actually 1754-63)

65
It Took Medicine 200 Years

Seven Years' War (actually 1754-63)
Britain lost 1512 sailors to enemy action...
66
It Took Medicine 200 Years

Seven Years' War (actually 1754-63)
Britain lost 1512 sailors to enemy action...
...and almost...
It Took Medicine 200 Years
1747: James Lind does the
first controlled medical
experiment in history

68
It Took Medicine 200 Years
1747: James Lind does the
first controlled medical
experiment in history

1950: Hill & Doll's c...
Findings
1. Smoking causes lung cancer

70
Findings
1. Smoking causes lung cancer
2. Most people would rather
fail than change

71
Findings
1. Smoking causes lung cancer
2. Most people would rather
fail than change

“What happens 'on average' is of no h...
Like Water on Stone
Doctors know:
1. what science looks like

73
Like Water on Stone
Doctors know:
1. what science looks like
2. what it has to do with them

74
Like Water on Stone
Doctors know:
1. what science looks like
2. what it has to do with them

So they make the next generat...
Like Water on Stone
Doctors know:
1. what science looks like
2. what it has to do with them

So they make the next generat...
I Have a Cunning Plan
Stop asking students to
try to do something our
system won't let them do

77
I Have a Cunning Plan
Stop asking students to
try to do something our
system won't let them do

D.L. Parnas and P.C. Cleme...
I Have a Cunning Plan
Stop asking students to
try to do something our
system won't let them do
Have them do science instea...
I Have a Cunning Plan
A new scientific truth does not
triumph by convincing its opponents
and making them see the light, b...
I Have a Cunning Plan
A new scientific truth does not
triumph by convincing its opponents
and making them see the light, b...
I Have a Cunning Plan
A new scientific truth does not
triumph by convincing its opponents
and making them see the light, b...
I Have a Cunning Plan
A new scientific truth does not
triumph by convincing its opponents
and making them see the light, b...
Assignment #1
You have been given 80K lines of C, and the output
of a static analysis tool that identifies lines containin...
Assignment #1
You have been given 80K lines of C, and the output
of a static analysis tool that identifies lines containin...
Assignment #1
You have been given 80K lines of C, and the output
of a static analysis tool that identifies lines containin...
Assignment #1
You have been given 80K lines of C, and the output
of a static analysis tool that identifies lines containin...
Assignment #1
You have been given 80K lines of C, and the output
of a static analysis tool that identifies lines containin...
The Biggest Challenge
http://tinyurl.com/nwit-randomo
Stefik et al: “An Empirical Comparison of the Accuracy Rates of Novi...
The Biggest Challenge
http://tinyurl.com/nwit-randomo
Please read the comments

90
The Biggest Challenge
http://tinyurl.com/nwit-randomo
Please read the comments
I never thought
I'd say that

91
The Biggest Challenge
http://tinyurl.com/nwit-randomo
Please read the comments
And then read “The Distress of the Privileg...
The Biggest Challenge
http://tinyurl.com/nwit-randomo
Please read the comments
...from reading the responses, what I think...
The Biggest Challenge
http://tinyurl.com/nwit-randomo
Please read the comments
...from reading the responses, what I think...
But That Won't Be Enough
http://exple.tive.org/blarg/2013/10/22/citation-needed/

...starting at 1 is not an unreasonable ...
But That Won't Be Enough

96
Wales' Law
Open information drives out closed.

97
Wales' Law
Open information drives out closed.
As far as most programmers are concerned,
your research doesn't exist.

98
Wales' Law
Open information drives out closed.
As far as most programmers are concerned,
your research doesn't exist.
And ...
Wilbanks' Rule
The opposite of “open” isn't “closed”.
The opposite of “open” is “broken”.

100
Wilbanks' Rule
The opposite of “open” isn't “closed”.
The opposite of “open” is “broken”.
Do you think your use of obvious...
Wilbanks' Rule
The opposite of “open” isn't “closed”.
The opposite of “open” is “broken”.
Do you think your use of obvious...
People who can read your research
are more likely to help you keep doing it.

103
People who can read your research
are more likely to help you keep doing it.
It is therefore in your interest
to create su...
People who can read your research
are more likely to help you keep doing it.
It is therefore in your interest
to create su...
People who can read your research
are more likely to help you keep doing it.
It is therefore in your interest
to create su...
Science, Cooperation, and Courage

107
Science, Cooperation, and Courage

108
Science, Cooperation, and Courage

109
Software Carpentry

http://software-carpentry.org

Never Work in Theory

http://neverworkintheory.org

Architecture of
Ope...
Upcoming SlideShare
Loading in …5
×

Two Solitudes (SPLASH 2013 keynote)

6,330 views

Published on

I have spent much of the last fifteen years trying to build bridges between the two solitudes of computing: academic researchers on the one side, and working developers on the other. These efforts have largely failed, but have done so in interesting ways. This talk will explore why the wide gulf between research and practice persists, and outline a new plan for trying to narrow it based on scurvy, smoking, and statistics.

Published in: Education, Technology
0 Comments
17 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,330
On SlideShare
0
From Embeds
0
Number of Embeds
368
Actions
Shares
0
Downloads
51
Comments
0
Likes
17
Embeds 0
No embeds

No notes for slide

Two Solitudes (SPLASH 2013 keynote)

  1. 1. Two Solitudes Greg Wilson Mozilla Foundation SPLASH 2013 October 30, 2013
  2. 2. You are free to: Copy, share, adapt, or re-mix; Photograph, film, or broadcast; Blog, live-blog, or post video of; this presentation, provided that: You attribute the work to its author and respect the rights and licenses associated with its components. https://etherpad.mozilla.org/splash2013 2
  3. 3. A Quick Quiz Given the statement: for x in [10, 20, 30]; y in [1, 2]: print x+y Would you expect to see: A) 'x' and 'y' move forward at the same rate: 11 22 B) 'y' goes through the second list once for each value of 'x': 11 12 21 22 31 32 C) an error message because the two lists are not the same length? 3
  4. 4. I Used to Be a Prof before after 4
  5. 5. But Before That, I Shipped Code 5
  6. 6. And These Days, I'm a Teacher 6
  7. 7. What I've Seen academia vs. industry 7
  8. 8. What I've Seen academia vs. industry 8
  9. 9. What I've Seen academia vs. industry research vs. practice 9
  10. 10. What I've Seen academia vs. industry research vs. practice 10
  11. 11. More Specifically smart young people get CS degrees 11
  12. 12. More Specifically smart young people get CS degrees and never pay attention to CS again 12
  13. 13. More Specifically me so smart young people get CS degrees and never pay attention to CS again t os m 13
  14. 14. More Specifically me so smart young people get CS degrees and never pay attention to CS again t os m Why? 14
  15. 15. Once Upon a Time... 1986: Start programming for physicists on first-generation parallel computers 15
  16. 16. Once Upon a Time... 1986: Start programming for physicists on first-generation parallel computers 1992: Realize I'm doing more harm than good 16
  17. 17. Once Upon a Time... 1986: Start programming for physicists on first-generation parallel computers 1992: Realize I'm doing more harm than good Giving a scientist a supercomputer is like giving a Ferrari to a teenager who can barely parallel park. 17
  18. 18. See a Problem, Fix a Problem “I don't know what to teach scientists about how to build software.” 18
  19. 19. See a Problem, Fix a Problem “I don't know what to teach scientists about how to build software.” “I'll go learn from experts.” 19
  20. 20. See a Problem, Fix a Problem “I don't know what to teach scientists about how to build software.” “I'll go learn from experts.” 20
  21. 21. See a Problem, Fix a Problem “I don't know what to teach scientists about how to build software.” “I'll go learn from experts.” (pause for laughter) 21
  22. 22. Ninjas and Rock Stars If big companies are doing it wrong, agile startups must be doing it right. 22
  23. 23. Ninjas and Rock Stars If big companies are doing it wrong, agile startups must be doing it right. (pause for further laughter) 23
  24. 24. Meanwhile... 1996: “What Should Computer Scientists Teach to Physical Scientists and Engineers?” (IEEE CS&E) 24
  25. 25. Meanwhile... 1996: “What Should Computer Scientists Teach to Physical Scientists and Engineers?” (IEEE CS&E) 1997: John Reynders: “OK, show us” 25
  26. 26. Meanwhile... 1996: “What Should Computer Scientists Teach to Physical Scientists and Engineers?” (IEEE CS&E) 1997: John Reynders: “OK, show us” 1998: First Software Carpentry course at Los Alamos National Laboratory 26
  27. 27. What I Learned The problem with teaching scientists is they expect evidence 27
  28. 28. What I Learned The problem with teaching scientists is they expect evidence The problem with being a computer scientist was I didn't have any 28
  29. 29. But Then... 29
  30. 30. But Then... How come I didn't know we knew stuff about things? 30
  31. 31. So Ten Years Ago... 1. I had learned most of what I knew about building software on the job 31
  32. 32. So Ten Years Ago... 1. I had learned most of what I knew about building software on the job 2. Most of my colleagues knew nothing about the hundreds of studies that had been done of real programmers writing real programs 32
  33. 33. So Ten Years Ago... 1. I had learned most of what I knew about building software on the job cared 2. Most of my colleagues knew nothing about the hundreds of studies that had been done of real programmers writing real programs 33
  34. 34. So Ten Years Ago... 1. I had learned most of what I knew about building software on the job cared 2. Most of my colleagues knew nothing about the hundreds of studies that had been done of real programmers writing real programs Hands up if you think this has changed in the last decade... 34
  35. 35. As Doomed as Doomed Can Be From the people who brought you UML... 35
  36. 36. As Doomed as Doomed Can Be From the people who brought you UML... ...a re-founding of software engineering... 36
  37. 37. As Doomed as Doomed Can Be From the people who brought you UML... ...a re-founding of software engineering... ...that doesn't cite a single empirical study 37
  38. 38. Computer Science Isn't 38
  39. 39. Computer Science Isn't ● How many experiments did you do as an undergraduate? 39
  40. 40. Computer Science Isn't ● ● How many experiments did you do as an undergraduate? How much experimental data did you analyze? 40
  41. 41. Computer Science Isn't ● ● ● How many experiments did you do as an undergraduate? How much experimental data did you analyze? How many experimental papers did you read? 41
  42. 42. Computer Science Isn't ● ● ● How many experiments did you do as an undergraduate? How much experimental data did you analyze? How many experimental papers did you read? Hands up if you think this has changed in the last decade... 42
  43. 43. Where Are Our Examples? It's how everybody else teaches... 43
  44. 44. Where Are Our Examples? It's how everybody else teaches... 44
  45. 45. Where Are Our Examples? It's how everybody else teaches... This is not a new observation 45
  46. 46. From: Greg Wilson Subject: Beautiful Code Date: May 17, 2006 I hope you don't mind mail out of the blue, but I'm working on a new book project with O'Reilly called "Beautiful Code" and would like to ask you to contribute an article-length section. Profits from the book will be donated to Amnesty International. The book will be a collection of master classes in software design. In each chapter, a well-known software developer will present one of his or her favorite pieces of code, then explain what makes it particularly appealing. The aim is to "think aloud" while walking through its design and implementation, so that junior developers can learn to see through more experienced developers’ eyes. Thanks, Greg 46
  47. 47. I expected From: [name withheld] Subject: re: Beautiful Code Sorry, I'm too busy. Good luck. 47
  48. 48. I expected From: [name withheld] Subject: re: Beautiful Code Sorry, I'm too busy. Good luck. Most people said From: [name withheld] Subject: re: Beautiful Code I don't think I've ever written any beautiful code, but I'd really like to read the book when it's done. 48
  49. 49. I expected From: [name withheld] Subject: re: Beautiful Code Sorry, I'm too busy. Good luck. Most people said From: [name withheld] Subject: re: Beautiful Code I don't think I've ever written any beautiful code, but I'd really like to read the book when it's done. But quite a few said From: [name withheld] Subject: re: Beautiful Code Sure, count me in! 49
  50. 50. Beauty Takes Many Forms 50
  51. 51. Beauty Takes Many Forms But it's not beautiful if nobody uses it. 51
  52. 52. If At First You Don't Succeed... To: Practitioner From: Researcher 2010 52
  53. 53. If At First You Don't Succeed... To: Practitioner From: Researcher 2010 To: Researcher From: Practitioner 2011-13 53
  54. 54. Impact 54
  55. 55. Impact Yup, that's it, right there 55
  56. 56. Two Solitudes Academics don't respect practitioners' timescales 56
  57. 57. Two Solitudes Academics don't respect practitioners' timescales ● 16 months to clear the Intellectual Property Office 57
  58. 58. Two Solitudes Academics don't respect practitioners' timescales Also don't care if practitioners can't read academic work 58
  59. 59. Two Solitudes Academics don't respect practitioners' timescales Also don't care if practitioners can't read academic work ● More on that later 59
  60. 60. Two Solitudes Academics don't respect practitioners' timescales Also don't care if practitioners can't read academic work Practitioners don't understand that research isn't about writing software 60
  61. 61. Two Solitudes Academics don't respect practitioners' timescales Also don't care if practitioners can't read academic work Practitioners don't understand that research isn't about writing software ● Computer science is about the science of computing 61
  62. 62. Two Solitudes Academics don't respect practitioners' timescales Also don't care if practitioners can't read academic work Practitioners don't understand that research isn't about writing software ● ● Computer science is about the science of computing Computer scientists are actually penalized for writing product-quality code 62
  63. 63. How have other people solved this problem? 63
  64. 64. How have other people solved this problem? 64
  65. 65. It Took Medicine 200 Years Seven Years' War (actually 1754-63) 65
  66. 66. It Took Medicine 200 Years Seven Years' War (actually 1754-63) Britain lost 1512 sailors to enemy action... 66
  67. 67. It Took Medicine 200 Years Seven Years' War (actually 1754-63) Britain lost 1512 sailors to enemy action... ...and almost 100,000 to scurvy 67
  68. 68. It Took Medicine 200 Years 1747: James Lind does the first controlled medical experiment in history 68
  69. 69. It Took Medicine 200 Years 1747: James Lind does the first controlled medical experiment in history 1950: Hill & Doll's case control study of smokers and non-smokers 69
  70. 70. Findings 1. Smoking causes lung cancer 70
  71. 71. Findings 1. Smoking causes lung cancer 2. Most people would rather fail than change 71
  72. 72. Findings 1. Smoking causes lung cancer 2. Most people would rather fail than change “What happens 'on average' is of no help when one is faced with a specific patient... 72
  73. 73. Like Water on Stone Doctors know: 1. what science looks like 73
  74. 74. Like Water on Stone Doctors know: 1. what science looks like 2. what it has to do with them 74
  75. 75. Like Water on Stone Doctors know: 1. what science looks like 2. what it has to do with them So they make the next generation learn it 75
  76. 76. Like Water on Stone Doctors know: 1. what science looks like 2. what it has to do with them So they make the next generation learn it And around and around we go 76
  77. 77. I Have a Cunning Plan Stop asking students to try to do something our system won't let them do 77
  78. 78. I Have a Cunning Plan Stop asking students to try to do something our system won't let them do D.L. Parnas and P.C. Clements: “A Rational Design Process: How and Why to Fake It.” IEEE Trans. Softw. Eng., 12(2), Feb. 1986. 78
  79. 79. I Have a Cunning Plan Stop asking students to try to do something our system won't let them do Have them do science instead 79
  80. 80. I Have a Cunning Plan A new scientific truth does not triumph by convincing its opponents and making them see the light, but rather because its opponents eventually die, and a new generation grows up that is familiar with it. - Max Planck 80
  81. 81. I Have a Cunning Plan A new scientific truth does not triumph by convincing its opponents and making them see the light, but rather because its opponents eventually die, and a new generation grows up that is familiar with it. - Max Planck The next generation should do empirical studies 81
  82. 82. I Have a Cunning Plan A new scientific truth does not triumph by convincing its opponents and making them see the light, but rather because its opponents eventually die, and a new generation grows up that is familiar with it. - Max Planck The next generation should do empirical studies (or at least read and analyze others' studies) 82
  83. 83. I Have a Cunning Plan A new scientific truth does not triumph by convincing its opponents and making them see the light, but rather because its opponents eventually die, and a new generation grows up that is familiar with it. - Max Planck The next generation should do empirical studies (or at least read and analyze others' studies) so that they will understand and value science 83
  84. 84. Assignment #1 You have been given 80K lines of C, and the output of a static analysis tool that identifies lines containing buffer overruns, memory leaks, and other issues related to memory management. Determine whether complex functions are more likely to contain such errors than simple ones. 84
  85. 85. Assignment #1 You have been given 80K lines of C, and the output of a static analysis tool that identifies lines containing buffer overruns, memory leaks, and other issues related to memory management. Determine whether complex functions are more likely to contain such errors than simple ones. Requires: ● Tool use 85
  86. 86. Assignment #1 You have been given 80K lines of C, and the output of a static analysis tool that identifies lines containing buffer overruns, memory leaks, and other issues related to memory management. Determine whether complex functions are more likely to contain such errors than simple ones. Requires: ● Tool use ● Model building 86
  87. 87. Assignment #1 You have been given 80K lines of C, and the output of a static analysis tool that identifies lines containing buffer overruns, memory leaks, and other issues related to memory management. Determine whether complex functions are more likely to contain such errors than simple ones. Requires: ● Tool use ● Model building ● Statistics 87
  88. 88. Assignment #1 You have been given 80K lines of C, and the output of a static analysis tool that identifies lines containing buffer overruns, memory leaks, and other issues related to memory management. Determine whether complex functions are more likely to contain such errors than simple ones. Requires: ● Tool use ● Model building ● Statistics 88
  89. 89. The Biggest Challenge http://tinyurl.com/nwit-randomo Stefik et al: “An Empirical Comparison of the Accuracy Rates of Novices using the Quorum, Perl, and Randomo Programming Languages.” PLATEAU'11 We present here an empirical study comparing the accuracy rates of novices writing software in three programming languages: Quorum, Perl, and Randomo. The first language, Quorum, we call an evidence-based programming language, where the syntax, semantics, and API designs change in correspondence to the latest academic research and literature on programming language usability. Second, while Perl is well known, we call Randomo a Placebo-language, where some of the syntax was chosen with a random number generator and the ASCII table. We compared novices that were programming for the first time using each of these languages, testing how accurately they could write simple programs using common program constructs (e.g., loops, conditionals, functions, variables, parameters). Results showed that while Quorum users were afforded significantly greater accuracy compared to those using Perl and Randomo, Perl users were unable to write programs more accurately than those using a language designed by chance. 89
  90. 90. The Biggest Challenge http://tinyurl.com/nwit-randomo Please read the comments 90
  91. 91. The Biggest Challenge http://tinyurl.com/nwit-randomo Please read the comments I never thought I'd say that 91
  92. 92. The Biggest Challenge http://tinyurl.com/nwit-randomo Please read the comments And then read “The Distress of the Privileged” http://tinyurl.com/distress-of-the-privileged 92
  93. 93. The Biggest Challenge http://tinyurl.com/nwit-randomo Please read the comments ...from reading the responses, what I think our community really needs to do is to move away from a largely pseudo-scientific view of programming language design toward one based on evidence. The scientific method has a much better chance of ending the programming language wars someday than does continuing to argue about it. 93
  94. 94. The Biggest Challenge http://tinyurl.com/nwit-randomo Please read the comments ...from reading the responses, what I think our community really needs to do is to move away from a largely pseudo-scientific view of programming language design toward one based on evidence. The scientific method has a much better chance of ending the programming language wars someday than does continuing to argue about it. Finally...for those readers that absolutely must send hate mail, please send it only to me, not my students. 94
  95. 95. But That Won't Be Enough http://exple.tive.org/blarg/2013/10/22/citation-needed/ ...starting at 1 is not an unreasonable position at all; to a typical human thinking about the zeroth element of an array doesn’t make any more sense than trying to catch the zeroth bus that comes by, but we’ve clearly ended up here somehow. So what’s the story there? 95
  96. 96. But That Won't Be Enough 96
  97. 97. Wales' Law Open information drives out closed. 97
  98. 98. Wales' Law Open information drives out closed. As far as most programmers are concerned, your research doesn't exist. 98
  99. 99. Wales' Law Open information drives out closed. As far as most programmers are concerned, your research doesn't exist. And please don't say, “But they can just...” 99
  100. 100. Wilbanks' Rule The opposite of “open” isn't “closed”. The opposite of “open” is “broken”. 100
  101. 101. Wilbanks' Rule The opposite of “open” isn't “closed”. The opposite of “open” is “broken”. Do you think your use of obviously broken systems makes programmers more or less receptive to your ideas? 101
  102. 102. Wilbanks' Rule The opposite of “open” isn't “closed”. The opposite of “open” is “broken”. Do you think your use of obviously broken systems makes programmers more or less receptive to your ideas? “They want me to upload a PDF? What is this, 1995?” 102
  103. 103. People who can read your research are more likely to help you keep doing it. 103
  104. 104. People who can read your research are more likely to help you keep doing it. It is therefore in your interest to create such people and give them access to your work. 104
  105. 105. People who can read your research are more likely to help you keep doing it. It is therefore in your interest to create such people and give them access to your work. It'll take a decade. 105
  106. 106. People who can read your research are more likely to help you keep doing it. It is therefore in your interest to create such people and give them access to your work. It'll take a decade. But isn't that what tenure is for? 106
  107. 107. Science, Cooperation, and Courage 107
  108. 108. Science, Cooperation, and Courage 108
  109. 109. Science, Cooperation, and Courage 109
  110. 110. Software Carpentry http://software-carpentry.org Never Work in Theory http://neverworkintheory.org Architecture of Open Source Applications http://aosabook.org es! in three volum Now greg@mozillafoundation.org http://www.slideshare.net/gvwilson/splash-2013 Thank You 110

×