The document discusses functional JavaScript programming. It introduces functional programming concepts like avoiding state and mutable data, and having functions where the output depends only on the input. It provides examples of functions creating scope, using closures, and being lazy. It also discusses using functional techniques with libraries like jQuery, Dojo and YUI. The document aims to provide practical tips and experiences with a functional style in JavaScript.