SlideShare a Scribd company logo
1 of 87
Download to read offline
How to argue
about JavaScript
How not to argue about semicolons
Our arguments
should be purposeful.
ideal: scientic research
reality: political debate
“In science it often happens that scientists say, ‘You know that’s a
 really good argument; my position is mistaken,’ and then they
 actually change their minds and you never hear that old view
 from them again. They really do it. It doesn’t happen as often as
 it should, because scientists are human and change is sometimes
 painful. But it happens every day. I cannot recall the last time
 something like that happened in politics or religion.”

                                                 Carl Sagan (1987)
“Who the hell are you?”
No one of consequence.
“Where do you get off
censoring me, you fascist?”
I don’t.
Motives for having
a code argument:
to troll
to feel awesome
 about yourself
to persuade others
to your way of thinking
to understand
the subject better
An argument has three goals.
Goal 1:
     It should produce
a wise agreement, if possible.
Goal 2:
It should be ecient.
Goal 3:
      It should not damage
the relationship between parties.
Tactics for arguments:
Tactic 1:
Separate the people from the problem.
bad:




the objective nature of the problem
how humans feel about the problem
bad:




the objective nature of the problem
how humans feel about the problem
good:




the objective nature of the problem
how humans feel about the problem
the original ticket:
response from Jacob Thornton (@fat):
comments one and two:
comment three:
comment four:
(this is why you should be nice)
Tactic 2:
Focus on interests, not positions.
Tactic 3:
Invent options for mutual gain.
Tactic 4:
Insist on objective criteria.
(standards)
(benchmarks)
THE SELECTOR WARS
“So what should I do?”
How to think:
Retain a willingness
 to be convinced
Imagine where others
  are coming from
Account for your own taste
Account for your own emotions
John Resig
“I learned some things about jQuery today…”
Recognize derails as they happen
Ahead:
   An inventory of the discussions
 taking place in a single closed ticket
on Twitter Bootstrap’s GitHub project
main question:

  Should Bootstrap change a
syntactic shortcut that does not
  minify properly in JSMin?
main question (broadened):

     Should library authors care
 about interoperability with JSMin?
Or should JSMin accommodate code
  that Crockford nds distasteful?
meta-discussions perpetuated
by at least two of the 143 ticket participants:
“People who don’t use
semicolons are
JavaScript hipsters.”




                        “No, people who are
                             fanatical about
                         semicolons are just
                            spreading FUD.”
“@fat is being a jackass
and a bad project
steward.”




                           “No, people like you are
                           bitching about a library
                                  they got for free.”
“Semicolon or not, that line
 should still be rewritten.”
“JSMin sucks anyway.
  People should use
 some other minifier.”
“Who cares about minification?
Everyone’s got a fast connection now.”
“We’ve now spent like a hundred comments
     arguing about a single semicolon
     that @fat is too stubborn to add.”
“We are bikeshedding
 like hell up in here.”
“Stop posting on this ticket! GitHub sends me a
    notification with each new comment.”
also: trolls
also: wisecracks
meanwhile:
Staying on topic
requires moderation.
How to speak:
Be nice.
Speak with surgical precision.
E-Prime
“Any proposition containing the word ‘is’ creates
 a linguistic structural confusion which will
 eventually give birth to serious fallacies.”
                                  Alfred Korzybski,
                                         Semanticist
“PHP is awful.”
“PHP is awful.”

“Whenever I use PHP, I end up longing
 for the logical API and unsurprising
   behavior of Ruby or JavaScript.”
“jQuery is easier to use
   than MooTools.”
“jQuery is easier to use
     than MooTools.”

“I find jQuery more intuitive
    to use than MooTools.”
Be honest in your
characterizations.
“What if the other side
 won’t play along?”
Don’t rise to the bait.
Emphasize the contrast between
your tactics and your opponents’.
“Why do I have to
take the high road?”
Hellre and torment
I didn’t have time for:
Ember vs. Backbone
Micro-frameworks
CoffeeScript!
Issue #28: script loading solution
https://github.com/h5bp/html5-boilerplate/issues/28
Douglas Crockford
       vs.
   the world
(n)

More Related Content

Viewers also liked

Effective Listening
Effective ListeningEffective Listening
Effective ListeningSampath
 
Teaching Paraphrasing to students
Teaching Paraphrasing to studentsTeaching Paraphrasing to students
Teaching Paraphrasing to studentsKevin Cummins
 
Effective listening presentation
Effective listening presentationEffective listening presentation
Effective listening presentationshafiqahshukri
 
Presentation Active Listening
Presentation Active ListeningPresentation Active Listening
Presentation Active Listeningirina_dragnea
 
Paraphrasing Power Point
Paraphrasing Power PointParaphrasing Power Point
Paraphrasing Power PointBMS
 
Paraphrasing
ParaphrasingParaphrasing
Paraphrasingkd4bears
 
The Future of Education is Digital
The Future of Education is DigitalThe Future of Education is Digital
The Future of Education is DigitalPaul Brown
 
What is an insight?
What is an insight?What is an insight?
What is an insight?Umar Ghumman
 

Viewers also liked (9)

Effective Listening
Effective ListeningEffective Listening
Effective Listening
 
Teaching Paraphrasing to students
Teaching Paraphrasing to studentsTeaching Paraphrasing to students
Teaching Paraphrasing to students
 
Effective listening presentation
Effective listening presentationEffective listening presentation
Effective listening presentation
 
Empathy
EmpathyEmpathy
Empathy
 
Presentation Active Listening
Presentation Active ListeningPresentation Active Listening
Presentation Active Listening
 
Paraphrasing Power Point
Paraphrasing Power PointParaphrasing Power Point
Paraphrasing Power Point
 
Paraphrasing
ParaphrasingParaphrasing
Paraphrasing
 
The Future of Education is Digital
The Future of Education is DigitalThe Future of Education is Digital
The Future of Education is Digital
 
What is an insight?
What is an insight?What is an insight?
What is an insight?
 

Similar to How to Argue about JavaScript

ENG IMS 224, March 19th
ENG IMS 224, March 19thENG IMS 224, March 19th
ENG IMS 224, March 19thMiami University
 
Howtostopsuckingandbeawesomeinstead 120601013410-phpapp01
Howtostopsuckingandbeawesomeinstead 120601013410-phpapp01Howtostopsuckingandbeawesomeinstead 120601013410-phpapp01
Howtostopsuckingandbeawesomeinstead 120601013410-phpapp01Hugo Pinto
 
Howtostopsucking
HowtostopsuckingHowtostopsucking
HowtostopsuckingHugo Pinto
 
How to stop sucking and be awesome instead
How to stop sucking and be awesome insteadHow to stop sucking and be awesome instead
How to stop sucking and be awesome insteadcodinghorror
 
CityLIS talk, Feb 1st 2016
CityLIS talk, Feb 1st 2016CityLIS talk, Feb 1st 2016
CityLIS talk, Feb 1st 2016benosteen
 
Quora ML Workshop: Sock Puppets and Hoaxes on the Web
Quora ML Workshop: Sock Puppets and Hoaxes on the WebQuora ML Workshop: Sock Puppets and Hoaxes on the Web
Quora ML Workshop: Sock Puppets and Hoaxes on the WebQuora
 
Tech Talk @ Dev Bootcamp Chicago
Tech Talk @ Dev Bootcamp ChicagoTech Talk @ Dev Bootcamp Chicago
Tech Talk @ Dev Bootcamp ChicagoFred Lee
 
Talking is (virtual) work -supporting online argumentation--2013-09-18 Malta ...
Talking is (virtual) work -supporting online argumentation--2013-09-18 Malta ...Talking is (virtual) work -supporting online argumentation--2013-09-18 Malta ...
Talking is (virtual) work -supporting online argumentation--2013-09-18 Malta ...jodischneider
 
Jeff Atwood - How to Talk So Your Community Will Listen and Listen So Your Co...
Jeff Atwood - How to Talk So Your Community Will Listen and Listen So Your Co...Jeff Atwood - How to Talk So Your Community Will Listen and Listen So Your Co...
Jeff Atwood - How to Talk So Your Community Will Listen and Listen So Your Co...Heavybit
 
OpenStack - an authentic critique
OpenStack - an authentic critiqueOpenStack - an authentic critique
OpenStack - an authentic critiqueAndrew Shafer
 
BSSML17 - Topic Models
BSSML17 - Topic ModelsBSSML17 - Topic Models
BSSML17 - Topic ModelsBigML, Inc
 
ARGUMENTATIVE ESSAY PART
ARGUMENTATIVE ESSAY PARTARGUMENTATIVE ESSAY PART
ARGUMENTATIVE ESSAY PARTSandra Long
 
Disrupt 2 Grow - Devoxx 2013
Disrupt 2 Grow - Devoxx 2013Disrupt 2 Grow - Devoxx 2013
Disrupt 2 Grow - Devoxx 2013Konrad Malawski
 
On the Political Origins of Digital Dualism: From Rousseau's Masturbating Hab...
On the Political Origins of Digital Dualism: From Rousseau's Masturbating Hab...On the Political Origins of Digital Dualism: From Rousseau's Masturbating Hab...
On the Political Origins of Digital Dualism: From Rousseau's Masturbating Hab...cyborgology
 
Jeff Atwood - How To Optimize Your Community Platform
Jeff Atwood - How To Optimize Your Community PlatformJeff Atwood - How To Optimize Your Community Platform
Jeff Atwood - How To Optimize Your Community PlatformFeverBee Limited
 
Collaborate: How to bring people together around digital projects
Collaborate: How to bring people together around digital projectsCollaborate: How to bring people together around digital projects
Collaborate: How to bring people together around digital projectsEllen de Vries
 
50Pcs Waterproof A4 Self Adhesive Glossy Paper Sticker For Photographic ...
50Pcs Waterproof A4 Self Adhesive Glossy Paper Sticker For Photographic ...50Pcs Waterproof A4 Self Adhesive Glossy Paper Sticker For Photographic ...
50Pcs Waterproof A4 Self Adhesive Glossy Paper Sticker For Photographic ...Sue Ganguli
 
Bloomfield Keynote
Bloomfield KeynoteBloomfield Keynote
Bloomfield KeynoteKarl Kapp
 
Data Day Seattle, From NLP to AI
Data Day Seattle, From NLP to AIData Day Seattle, From NLP to AI
Data Day Seattle, From NLP to AIJonathan Mugan
 

Similar to How to Argue about JavaScript (20)

ENG IMS 224, March 19th
ENG IMS 224, March 19thENG IMS 224, March 19th
ENG IMS 224, March 19th
 
Howtostopsuckingandbeawesomeinstead 120601013410-phpapp01
Howtostopsuckingandbeawesomeinstead 120601013410-phpapp01Howtostopsuckingandbeawesomeinstead 120601013410-phpapp01
Howtostopsuckingandbeawesomeinstead 120601013410-phpapp01
 
Howtostopsucking
HowtostopsuckingHowtostopsucking
Howtostopsucking
 
How to stop sucking and be awesome instead
How to stop sucking and be awesome insteadHow to stop sucking and be awesome instead
How to stop sucking and be awesome instead
 
CityLIS talk, Feb 1st 2016
CityLIS talk, Feb 1st 2016CityLIS talk, Feb 1st 2016
CityLIS talk, Feb 1st 2016
 
Quora ML Workshop: Sock Puppets and Hoaxes on the Web
Quora ML Workshop: Sock Puppets and Hoaxes on the WebQuora ML Workshop: Sock Puppets and Hoaxes on the Web
Quora ML Workshop: Sock Puppets and Hoaxes on the Web
 
Tech Talk @ Dev Bootcamp Chicago
Tech Talk @ Dev Bootcamp ChicagoTech Talk @ Dev Bootcamp Chicago
Tech Talk @ Dev Bootcamp Chicago
 
Talking is (virtual) work -supporting online argumentation--2013-09-18 Malta ...
Talking is (virtual) work -supporting online argumentation--2013-09-18 Malta ...Talking is (virtual) work -supporting online argumentation--2013-09-18 Malta ...
Talking is (virtual) work -supporting online argumentation--2013-09-18 Malta ...
 
Jeff Atwood - How to Talk So Your Community Will Listen and Listen So Your Co...
Jeff Atwood - How to Talk So Your Community Will Listen and Listen So Your Co...Jeff Atwood - How to Talk So Your Community Will Listen and Listen So Your Co...
Jeff Atwood - How to Talk So Your Community Will Listen and Listen So Your Co...
 
OpenStack - an authentic critique
OpenStack - an authentic critiqueOpenStack - an authentic critique
OpenStack - an authentic critique
 
BSSML17 - Topic Models
BSSML17 - Topic ModelsBSSML17 - Topic Models
BSSML17 - Topic Models
 
ARGUMENTATIVE ESSAY PART
ARGUMENTATIVE ESSAY PARTARGUMENTATIVE ESSAY PART
ARGUMENTATIVE ESSAY PART
 
Disrupt 2 Grow - Devoxx 2013
Disrupt 2 Grow - Devoxx 2013Disrupt 2 Grow - Devoxx 2013
Disrupt 2 Grow - Devoxx 2013
 
On the Political Origins of Digital Dualism: From Rousseau's Masturbating Hab...
On the Political Origins of Digital Dualism: From Rousseau's Masturbating Hab...On the Political Origins of Digital Dualism: From Rousseau's Masturbating Hab...
On the Political Origins of Digital Dualism: From Rousseau's Masturbating Hab...
 
Jeff Atwood - How To Optimize Your Community Platform
Jeff Atwood - How To Optimize Your Community PlatformJeff Atwood - How To Optimize Your Community Platform
Jeff Atwood - How To Optimize Your Community Platform
 
Collaborate: How to bring people together around digital projects
Collaborate: How to bring people together around digital projectsCollaborate: How to bring people together around digital projects
Collaborate: How to bring people together around digital projects
 
D19-EWRT 1A
D19-EWRT 1AD19-EWRT 1A
D19-EWRT 1A
 
50Pcs Waterproof A4 Self Adhesive Glossy Paper Sticker For Photographic ...
50Pcs Waterproof A4 Self Adhesive Glossy Paper Sticker For Photographic ...50Pcs Waterproof A4 Self Adhesive Glossy Paper Sticker For Photographic ...
50Pcs Waterproof A4 Self Adhesive Glossy Paper Sticker For Photographic ...
 
Bloomfield Keynote
Bloomfield KeynoteBloomfield Keynote
Bloomfield Keynote
 
Data Day Seattle, From NLP to AI
Data Day Seattle, From NLP to AIData Day Seattle, From NLP to AI
Data Day Seattle, From NLP to AI
 

Recently uploaded

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vĂĄzquez
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 

Recently uploaded (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 

How to Argue about JavaScript