October 10 -12 - Vancouver, BC
Click for Node+JS Interactive Information & Registration

Sign up or log in to bookmark your favorites and sync them to your phone or calendar.

Testing Tools and Infrastructure [clear filter]
Wednesday, October 10

11:40am PDT

Formalizing Asynchronous Context - Mike Kaufman & Mark Marron, Microsoft
JavaScript programming heavily utilizes asynchronous callbacks to enable throughput and responsiveness. While this programming model has been very useful, up until recently, it has always been defined informally and based on developer intuition. As a result, simply discussing async code execution is challenging, and building libraries, tools & systems that depend on “async context” are challenged with subtle inconsistencies in behaviors. To address this, we have been working with the Node.js Diagnostics Working Group to formalize the concepts and semantics of the asynchronous programming model in Node. In this talk you will learn about the Continuation Model for modeling the semantics of asynchronous programming and how these semantics provide a clear way to reason about the asynchronous code execution in Node.

avatar for Mike Kaufman

Mike Kaufman

Principal Software Engineer, Microsoft
Mike Kaufman is a Principal Software Engineer at Microsoft, currently working on the Chakra JavaScript engine and working with the Node.js Diagnostics Working Group. Mike has a broad software industry perspective informed from over 20 years of experience, including work on developer... Read More →
avatar for Mark Marron

Mark Marron

Principal Research SDE, Microsoft
Mark Marron is a Principal Research SDE at Microsoft Research where he works on a range of programming language and software engineering topics. He is currently leading work on the Bosque Programming Language project. His other work includes cloud runtimes, low-overhead diagnostic... Read More →

Wednesday October 10, 2018 11:40am - 12:10pm PDT
West Ballroom A

12:20pm PDT

Server-Side Rendering with Docker - Owen Buckley, The Greenhouse I/O
Server-Side Rendering can be a valuable technique for delivering great user experiences quickly and for improving SEO, even for Single Page Applications. However, even with all the great tools available for implementing SSR, there are still challenges around implementing it, in particular around operational overhead and general technical complexity, all of which can be daunting.

In this presentation, we’ll take a look at how Docker can help soften some of the thornier parts of implementing SSR, while maintaining great User Experiences (UX) and just as importantly, promoting good Developer Experiences (DX).

avatar for Owen Buckley

Owen Buckley

Founder, The Greenhouse I/O
Owen Buckley is an energetic and enthusiastic software developer and entrepreneur specializing in web application architectures, build tools, and product development. He is most passionate about helping people learn more about technology and how it can help solve their problems and... Read More →

Wednesday October 10, 2018 12:20pm - 12:50pm PDT
West Ballroom B

2:20pm PDT

Clean-up Your Service Mess with Service Mesh - Brian Redmond, Microsoft
Microservices and containers are powerful technologies. That said, they bring a number of challenges in distributed systems including routing & service discovery, failure handling and circuit breaking, observability & performance management, and testing complexity

Developers can solve these challenges with JavaScript in each microservice. But this takes them away from the true focus the service

The concept of Service Mesh (eg - istio, conduit, linkerd) aides microservices development by adding an infrastructure layer that handles service-to-service communication via distributed proxies. Each microservice will now have its own sidecar that handles communication and can be managed centrally

In this session, we will show how application architects and developers can use Service Mesh to easily add complex network routing, logging, TLS security, testing, & much more to their applications

avatar for Brian Redmond

Brian Redmond

Cloud Architect, Microsoft
I am a Cloud Architect on the Azure Global Black Belt team at Microsoft. I focus on containers, microservices, and cloud native applications in the Azure cloud platform. I have been working in technology for over 20 years and have a mixed background from application development to... Read More →

Wednesday October 10, 2018 2:20pm - 2:50pm PDT
West Meeting Room 118-120

3:00pm PDT

Node.js Meets Docker - Shaun Warman, PayPal
As PayPal has journeyed to a cloud-native environment, Shaun has led the Node.js Docker effort in revamping the deployment architecture for all applications built on Node.js. Using Docker allows for immutable, composable Node.js deployments in a nice declarative fashion. In this session, we'll cover Docker image best practices, container startup, and process management, signal handling for graceful shutdowns, injecting environment variables and mounting files as well as new ways to version dependencies across environments to better Node.js build and deployments.

avatar for Shaun Warman

Shaun Warman

Staff Software Engineer, PayPal
A Staff Software Engineer at PayPal working out of Austin, Texas on the node.js core team. Most recently working on nodejs application deployment architecture using Docker. You can find me speaking internally at PayPal and around the Austin meetup scene.

Wednesday October 10, 2018 3:00pm - 3:30pm PDT
West Ballroom B

3:40pm PDT

Automated Performance Testing With WebDriver - Christian Bromann, Sauce Labs
This talk will look into solutions to automatically capture and assert the performance as part of your functional tests using WebDriver and Chrome DevTools technologies. By looking into the workflow of a browser driver, you will learn not only how a WebDriver actually automates web pages, you will also get insights on how you need to tweak this setup to start capturing live tracing data from the browser.

Analyzing the performance of a web application is hard and can’t be done by just looking at the raw captured data. Therefore you will learn how tracing data is structured and which Node.js tools you can use to compute the important user experience metrics out of it. With this knowledge, you will be able to ensure that your PWA stays within your defined performance budget every time you run your end-to-end test in CI/CD.

avatar for Christian Bromann

Christian Bromann

Software Engineer, Sauce Labs
Christian Bromann is a member of the Open Source Program Office at Sauce Labs and is working on various open source projects related to test automation and Node.js. He represents the company as Advisory Committee representative at the W3C and the WebdriverIO project as core contributor... Read More →

Wednesday October 10, 2018 3:40pm - 4:10pm PDT
West Ballroom B

4:40pm PDT

A New Way to Profile Async Activity in Node.js - Mathias Buus & David Mark Clements, nearForm
Node.js works best in heavily-I/O-related contexts and often acts as a mediator between many data streams and interfaces. Due to JavaScript’s evented nature, most I/O is performed asynchronously. Especially when our Node.js process is a networked application. If we can measure asynchronous activity in a decoupled way, we can find out where an application is waiting.

This means we can diagnose I/O problems in external infrastructure! This workshop introduced an innovative visualization tool that diagnoses various infrastructural and architectural issues.

Attendees will learn the following:

* How to identify and reduce latency in your servers
* Finding and fixing significant asynchronous bottlenecks
* Using Node.js to identify problems in your server architecture
* How to debug asynchronous behavior
* When (and how) to use development profiling vs APM-based production profiling

avatar for Mathias Buus

Mathias Buus

Chief of Research, Beaker Browser
Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical... Read More →
avatar for David Clements

David Clements

Principal Architect, NearForm

Wednesday October 10, 2018 4:40pm - 5:50pm PDT
West Meeting Room 121-122

5:20pm PDT

npm and the Future of JavaScript - Laurie Voss, npm, Inc.
npm has more than 10 million users, and they download 7 billion packages a week. We also ran a direct survey of 16,000 JavaScript devs this year. That gives us more data about what JavaScript users are doing and where the community is going than anybody else. Let us tell you about yourselves, without bias, without trying to sell you on something. This talk is about what tools you use, what the community believes best practices really are, what frameworks are on the rise and which are on the wane, and where the major pain points are for devs right now. Let us help you plan your technical choices in 2019.

avatar for Laurie Voss

Laurie Voss

Co-founder and COO, npm, Inc.
I’ve been a web developer for 22 years and I’m currently the co-founder and COO of npm, Inc.. I care deeply about making the web bigger, better and accessible to everyone.

Wednesday October 10, 2018 5:20pm - 5:50pm PDT
West Ballroom C
Thursday, October 11

9:00am PDT

Scaling Webpack to Thousands of Concurrent Builds - Charlie Robbins, GoDaddy
Building JavaScript for the web is easier than it's ever been with babel, webpack & rollup doing all the heavy lifting for individual builds – but what if you need a lot of builds across multiple environments like development, test, and production? Introduced at Node.js Interactive 2016 Warehouse.ai is an open-source distributed build system supporting webpack, babel, and browserify that aims to make Serverless front-end deployments & rollback easy.

This talk will cover the challenges (and solutions) for Warehouse to scale webpack & npm install to thousands of daily builds with high bursts of concurrency during peak hours.

- Important details of the npm Registry HTTP API.
- How to scale compute bound Node.js worker systems in production with NSQ & kubernetes.
- How to handle complex user-defined webpack configs.
- How to make webpack builds reproducible over time for safe rollback.

avatar for Charlie Robbins

Charlie Robbins

Senior Director, Engineering, Charlie Robbins
Charlie is a Senior Director of Engineering at GoDaddy where he is leading convergence around JavaScript and Node.js across several products through the UX Platform team. Charlie was previously the founder and CEO of Nodejitsu (acquired by GoDaddy in 2015). An open source enthusiast... Read More →

Thursday October 11, 2018 9:00am - 9:30am PDT
West Ballroom B

9:00am PDT

Hands-on Intro to Kubernetes & OpenShift for JS Hackers - Ryan Jarvinen, Red Hat
Learn to build and deploy cloud native Node.js applications on Kubernetes and OpenShift through a series of hands-on lab examples.

Bring a laptop with the following: http://bit.ly/nodejs-on-k8s#/laptop-setup

This interactive session involves using kubectl, oc, curl, and common command-line tools to interact with Kubernetes APIs. By the end of this lab, you’ll be deploying, scaling, and automating JS-based distributed solutions using containers, Kubernetes, and other popular open source tools for distributed computing.

These examples are designed to show NodeJS developers how to maintain speed and productivity with a container-based development workflow.

avatar for Ryan Jarvinen

Ryan Jarvinen

Developer Advocate, Red Hat
Ryan Jarvinen is a Developer Advocate and Open Source Evangelist, focused on app development and security in the Kubernetes community and container space. Ryan works remotely from Sacramento, California, as a part of Red Hat’s OpenShift team. Ryan is a frequent conference speaker... Read More →

Thursday October 11, 2018 9:00am - 10:50am PDT
West Meeting Room 121-122

9:40am PDT

Tales From the QA Crypt - Jennifer Voss, Elsevier
An anthology of QA horror stories from the past, and how to avoid such situations with TDD. When tests are built in from the beginning and not tacked on after features are built, fewer defects are created and development moves faster. JavaScript has all the tools required to cover your automated testing needs, and writing tests in the same language as your app is a no-brainer. We'll cover the tools available today and the logistics of merging your QA and dev teams.

avatar for Jennifer Voss

Jennifer Voss

Software Engineering Lead, Elsevier
Jenn is a Software Engineering Lead on the Precision Medicine team at Elsevier. Based in Philadelphia, she is responsible for building cutting-edge products that reach millions of users. She is a Google Developer Expert in web technologies, and organizer of LibertyJS, PhillyJSDev... Read More →

Thursday October 11, 2018 9:40am - 10:10am PDT
West Meeting Room 118-120