JavaScript History as Seen From 2035

Gary Bernhardt presents a thought-provoking history of JavaScript as seen from 2035.

His arguments are that

  • With asm.js JavaScript VMs ran code with 50% of native speed (even in 2013)
  • Anything that can be compiled can be compiled into asm.js
  • Asm.js has basically become the universal runtime

So by further moving the JavaScript VM into the kernel we save ourselves the overhead of hardware process isolation as the VM does this any way.

All this lead to interesting consequences

  • Nobody uses binaries any more, everything is asm.js
  • The windowing systems of old have been ported to the DOM
  • Deployments are as simple as a push
  • JavaScript (as a language) is effectively dead
  • Overall developer happiness has increased


Poetic APIs

During PyCon 2014 Erik Rose gave a very insightful talk about dos and don’ts of designing APIs. Towards the end he “gets meta” and groups all his points into categories drawing connections how different design goals influence each other. You see two main groups–”lingual” and “mathematical”–and he closes with this gem: 😀

This spotlights something that programming languages have over ordinary human languages. Programs are alive! They not only mean things when people read them, but they actually do things when run. So, very literally a program with carefully chosen symbols is poetry in motion.
— Erik Rose (PyCon 2014)