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

Schedule: Future JS & Functional sessions

9:00am - 5:00pm Monday, June 19 & Tuesday, June 20
Location: 211 C/D
Kyle Simpson (Getify)
Average rating: ****.
(4.00, 2 ratings)
Join expert Kyle Simpson for a hands-on, in-depth exploration of functional programming in JavaScript with ES6. You’ll gain a foundational understanding of functional programming and learn how you can incorporate core concepts, such as generators and Promises, to write better software. Read more.
9:50am–10:30am Wednesday, June 21, 2017
Location: 210 BF
Secondary topics:  Functional Programming (Elm, ClojureScript, Erlang), Future of JavaScript (ES7, ES8, WebAssembly, etc.), JavaScript/ES6
Nicole Chung (TWG)
Average rating: ***..
(3.90, 10 ratings)
From callbacks to promises to generators to async/await, JavaScript has a myriad of ways to handle out-of-order events and processes—some of which are more readable than others and some of which are more testable than others. Nicole Chung explores the readability and testability of each approach in detail. Read more.
11:00am–11:40am Wednesday, June 21, 2017
Location: 210 BF
Secondary topics:  Functional Programming (Elm, ClojureScript, Erlang)
Jeremy Fairbank (Test Double)
Average rating: ***..
(3.67, 6 ratings)
Elm is a functional programming language that compiles to JavaScript and allows building robust and safe web apps. Jeremy Fairbank dives into Elm's syntax and its Model-View-Update architecture, explaining the advantages Elm offers for developing frontend apps and how to structure a simple app with pure functions, and shares steps to getting started with Elm. Read more.
3:35pm–4:15pm Wednesday, June 21, 2017
Location: 210 BF
Secondary topics:  Functional Programming (Elm, ClojureScript, Erlang), JavaScript frameworks and libraries (Angular, React, Ember, Vue, etc.), JavaScript/ES6
Anjana Vakil (Mapbox)
Average rating: ****.
(4.82, 11 ratings)
Functional programming—programming without side effects or mutability—has great advantages, especially for JavaScript developers, but never mutating data can lead to efficiency problems. Anjana Vakil explains how immutable data structures provide an elegant solution and explores two libraries that make it easy to use these remarkable data structures in your own JavaScript projects. Read more.
4:25pm–5:05pm Wednesday, June 21, 2017
Location: 212 A/B
Secondary topics:  Progressive web apps, Responsive web design, Smarter web (AI, Bots, Virtual Reality, Gaming)
Ben Foxall (Independent)
Average rating: ****.
(4.50, 2 ratings)
With ever-more-accessible hardware and native support in web platforms, virtual reality is set to become part of our daily lives, both as consumers and developers. Ben Foxall explores the features and capabilities of WebVR, showing how it can be used to create meaningful (and useful) applications, and explains how uniquely complementary this is to the rest of our web platform. Read more.
9:00am–9:40am Thursday, June 22, 2017
Location: 210 BF
Secondary topics:  Future of JavaScript (ES7, ES8, WebAssembly, etc.), UI frameworks and libraries
Ben Lesh (Netflix)
Average rating: ****.
(4.78, 9 ratings)
Find yourself lost trying to choose the right operator to compose your observables? Struggle with how to structure your observable chains? Feel like you're almost there, but you're just missing something? Don't worry, we've all been there, even the "experts." Ben Lesh gets you started down the path to being an Rx expert, sharing common patterns you can use in RxJS with Angular 2 or any framework. Read more.
11:00am–11:40am Thursday, June 22, 2017
Location: 210 BF
Secondary topics:  JavaScript/ES6, Node.js
Lucas Fernandes (Shaw and Partners)
Average rating: ***..
(3.80, 10 ratings)
Infinite sequences, lazy properties, and changing your program’s structure in runtime. Yes, JavaScript is that powerful. Lucas Fernandes demonstrates how to solve problems in a smarter way and with better performance and readability by redefining how the language’s features work behind the scenes. Read more.
4:25pm–5:05pm Thursday, June 22, 2017
Location: 210 BF
Secondary topics:  Functional Programming (Elm, ClojureScript, Erlang)
David Eisenberg (Evergreen Valley College)
Average rating: *****
(5.00, 2 ratings)
J. David Eisenberg offers a whirlwind tour of ClojureScript, a functional language that compiles to JavaScript, covering everything from basic syntax, variables, and function definitions to lists, vectors, and the map and reduce functions. Read more.