Building a Better Web
June 19–20, 2017: Training
June 20–22, 2017: Tutorials & Conference
San Jose, CA

JavaScript behind the scenes: Metaprogramming

Lucas Fernandes (Shaw and Partners)
11:00am–11:40am Thursday, June 22, 2017
Future JS & Functional
Location: 210 BF
Secondary topics:  JavaScript/ES6, Node.js
Average rating: ***..
(3.80, 10 ratings)

Who is this presentation for?

  • JavaScript developers

Prerequisite knowledge

  • A clear understanding of JavaScript syntax and its programming paradigm in general

What you'll learn

  • Understand metaprogramming and learn metaprogramming techniques in JavaScript


When writing JavaScript, there are lots of details about how the language itself works that most people don’t see, such as what happens when you define or retrieve a property, when you use the new operator, or when you invoke a function. Lucas Fernandes dives into the language’s inner workings to demonstrate how to improve performance, write cleaner and better APIs, and create more extensible and adaptable programs by redefining operator behaviors using things such as the new ES6 proxy/reflect objects and many other features. Along the way, Lucas explores metaprogramming techniques that can create powerful data structures and emulate some of other language’s powerful features, such as Haskell’s lazy properties and infinite sequences. By learning about metaprogramming, you will not only be able to improve your code; you’ll also be able to bend JavaScript to your will.

Photo of Lucas Fernandes

Lucas Fernandes

Shaw and Partners

Lucas Fernandes is a full stack developer at Shaw and Partners. Lucas breathes JavaScript and is passionate about open source. He is a core team member of Chai.js, one of the most popular libraries in the Node.js ecosystem, and is always trying to find better and more efficient ways to solve problems. His motto is “strive to be lazy.”