David is a core developer at Meteor who works on the client-side stack. In a previous life, he created Etherpad, a web-based text editor for realtime collaboration that was acquired by Google. David founded AppJet in 2007, which was one of the first server-side JavaScript companies and platform-as-a-service offerings. At Google he worked on Google Wave and Google App Engine. David holds degrees in Computer Science and Physics from MIT.


  • Reactive Templating for Everyone
  • Time: 2:30pm - 3:20pm | Room: Pacific O

The old paradigm of rendering static templates on the server and patching them up using jQuery is no longer viable in this world of rich web apps, because it means manually writing the update logic for your views. Web devs are instead drawn to frameworks like Angular, Ember, and more recently React, which provide mechanisms for writing views that update reactively when data changes. But each of these require leaving behind the familiar templating languages like Handlebars and Jade.

This talk will show off Blaze, the reactive template engine I wrote for Meteor that offers a far easier approach. You just write normal-looking templates (HTML or SVG!) in a familiar style, and Blaze handles updating the DOM in a fine-grained way when data changes. Dependencies between the view and the model are automatically tracked, with no need to declare them explicitly. In addition, unlike most UI frameworks, Blaze assumes your view model is backed by a real server-side database which may be edited collaboratively. And the Blaze runtime supports arbitrary template compilers: Meteor ships with a Handlebars-like language, but you can also use reactive Jade or any other syntax.