Learning new words


Published on

Godwin's Law for JavaScript: as people discuss a proposed extension to JavaScript syntax, the likelihood of someone saying "Stop trying to turn JavaScript into Java!" approaches 1.

For years I've tried to understand this perspective. Why are there so many people out there for whom present-day JavaScript is Good Enough™? What crucial aspect of JavaScript's identity are they trying to defend? Why do they get so scared when someone suggests new syntax? Can we figure out how to evolve the language without incurring the wrath of their pitchforks and/or torches?

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Learning new words

  1. 1. Learning new words
  2. 2. English
  3. 3. Old English
  4. 4. Norman conquest of England
  5. 5. anniversary yeartidemusician gleemanconclusion endsay“inkhorn terms”
  6. 6. I am of this opinion that our own tung should bewritten cleane and pure, unmixt and unmangeledwith borowing of other tunges; wherein if we takenot heed by tiim, ever borowing and never paying,she shall be fain to keep her house as bankrupt.Sir John Cheke,16th century scholar
  7. 7. For the barbarousnesse of our tongue, I mustlykewyse say that it is much the worse for [theobjectors], and some such curious fellowes as theyare: who if one chaince to derive any word fromthe Latine, which is insolent to their eares, theyfoorthwith make a jest at it, and terme it anInkehorne terme. It is indeed the ready way toinrich our tongue, and make it copious, and it is theway which all tongues have taken to inrichthemselves. I know not how we should speake anything without blacking our mouthes with inke.George Pettie16th century author
  8. 8. “Anglish”
  9. 9. The Anglish Moothttp://anglish.wikia.com
  10. 10. Banded Folkdoms of Americksland
  11. 11. ForesitterBarack ObamaFolkrike Mootbandof the
  12. 12. French
  13. 13. L’Académie française
  14. 14. 40 membersserving life terms
  15. 15. walkman baladeursoftware logicielemail courriel
  16. 16. #hashtagmot-dièse
  17. 17. JavaScript
  18. 18. How do we wantour language to evolve?
  19. 19. top-downvs.bottom-up
  20. 20. New “words” must comefrom the standards body...
  21. 21. …but they’ll run up againstcommunity-made patterns.
  22. 22. ClassesTHREE.SkinnedMesh = function (geometry, material) {THREE.Mesh.call(this, geometry, material);this.identityMatrix = new THREE.Matrix4();this.bones = [];this.boneMatrices = [];// ...};THREE.SkinnedMesh.prototype =Object.create(THREE.Mesh.prototype);THREE.SkinnedMesh.prototype.clone = function (object) {if (object === undefined) {object = new THREE.SkinnedMesh(this.geometry,this.material);}THREE.Mesh.prototype.clone.call( this, object );return object;};class SkinnedMesh extends THREE.Mesh {constructor(geometry, material) {super(geometry, material);this.identityMatrix = new THREE.Matrix4();this.bones = [];this.boneMatrices = [];// ...}clone(object) {if (object === undefined) {object = new THREE.SkinnedMesh(this.geometry,this.material);}super(object);return object;}}
  23. 23. “Leave classes in Java where they belong! Theonly people who want classes are the ones whodon’t understand the inherent beauty ofprototypal inheritance.”(paraphrased)
  24. 24. JavaScript is not Java.
  25. 25. The challenge:
  26. 26. gender-indeterminate pronouns
  27. 27. “A doctor must not harm his patients.”
  28. 28. “A doctor must not harm eir patients.”
  29. 29. “A doctor must not harm his/her patients.”“A doctor must not harm their patients.”
  30. 30. Code ideas are spreadthrough popular usage.
  31. 31. If you want people to use a new word,make sure it’s in the things they read.
  32. 32. So… here’s what we can do:
  33. 33. Document the hell out of the new stuff.
  34. 34. Use them in your projects.
  35. 35. Give people therapy.
  36. 36. JavaScript will be OK.
  37. 37. (the end)@andrewduponthttp://andrewdupont.net