Programme

Speakers

Ujjwal Sharma

I am an undergrad student, a Node.js core collaborator, an Electron.js maintainer, a Google Summer of Code mentor and ex-student and have been helping out with v8.

There’s only one thing more complicated than ES Modules on browsers – ES Modules in Node.js. But how did we get here? How do modules even work? What are the merits and demerits around these conflicting module systems and why does everyone get so emotional while talking about them?

Join me, a Node.js core collaborator and an avid contributor to V8 in order to know all these and more. You will come away with a deep understanding of how the module systems work internally in Node.js and what are the challenges facing these systems, moving forwards.

Teddy McZieuwa

I’m Teddy, I am a javascript enthusiast. I work with nodejs for backends as well as reactjs and vuejs for frontend. My curiousity in javascript has lead me to its various spectrums and I am really eager to share my knowledge with others.

Building software relies on storing and querying data. Javascript has quite a number of NoSQL databases systems that help to fulfill this purpose. However, depending on the application, it could be necessary to build a custom database. 

Electron.js is a javascript framework that leverages web technologies and node.js to build desktop applications. Building applications with electron.js often requires having some custom database system. It involves a perfect understanding of local node modules such as the file system and more. This talk encompasses javascript developers of all levels. By the end of this talk, everyone should be masters at developing custom NoSQL databases.

Kasandra Perch

Kas is a DevRel for IOpipe by day, an EE student, twitch streamer, and hardware addict by night. They also parent two lovely cats. (They/their/them)

WebAssembly has been around for years but is only just starting to gain real traction in the developer space. What is WebAssembly? Is it going to replace JavaScript?! Signs say no, but it still has the potential to have a huge impact on JavaScript development in the browser and in Node.JS. Let’s walk through the how and why of this amazing new language feature through code and discussion.

Benedikt Meurer

Benedikt is a JavaScript compiler engineer who loves to tinker with different aspects of programming languages. At Google he is working on the V8 JavaScript engine that powers both Node and Chrome.

There’s only one thing more complicated than ES Modules on browsers – ES Modules in Node.js. But how did we get here? How do modules even work? What are the merits and demerits around these conflicting module systems and why does everyone get so emotional while talking about them?

Join me, a Node.js core collaborator and an avid contributor to V8 in order to know all these and more. You will come away with a deep understanding of how the module systems work internally in Node.js and what are the challenges facing these systems, moving forwards.

Bethany Griggs

Software Engineer working in IBM Runtime Technologies on a variety of projects all with a focus on Node.js. Her work spans from contributing to, building, and releasing the open source Node.js runtime, to focusing on development and deployment methods for cloud-native Node.js applications.

Node.js has just celebrated its 10th birthday. With Node 12 just entering into long-term support, let us look at what is new, the people that have helped us get here, and how you can get involved too.

 

Ruben Bridgewater

Ruben is a Node.js core collaborator and a freelance software architect consultant. His main emphasis is building powerful and easy-to-use APIs for scalable and fast applications. He is continuously working with the V8 team and the TC39 committee to improve the developer experience with JavaScript.

In this workshop, Ruben will be demonstrating how quick and simple it is to implement best practices error handling in your application.

 

Together we’ll set up a webserver that serves videos. The application is going to use a database, a caching layer and connects to a third party service.

All of those receive an individual error handler. We’ll also publish a small module to npm that abstracts our errors that we will use throughout the application.

 

The overall goal of this workshop is to teach patterns that can be reused in any application to simplify error handling tremendously.

Tierney Cyren

Tierney is a member of the Node.js Community Committee and several other Node.js initiatives. He is a Senior Cloud Developer Advocate at Microsoft who enjoys being unintelligible on Twitter and invariably embarrassing himself.

We talk about community a lot in open source. Communities can make or break any open source project.

There are some common traits–universal lessons that can be taken from working with open source communities–that any open source community can benefit from understanding and approaching thoughtfully.

So what are common traits amongst successful–and not so successful–communities? How can you begin to apply the lessons others have learned, instead of re-inventing the wheel? Most importantly, how can you help ensure _your_ community is successful?

Julián Duque

Telecommunications Engineer, Software Development specialist and Community Leader with experience in Node.js programming and education

One common issue I have found working on the field with customers adopting Node.js is that they don’t have visibility around what happens when their applications crash, also, on specific critical applications these unexpected crashes don’t allow the server to exit gracefully missing opportunities to store state for possible recovery actions.

In this talk, I will present a series of best practices on how to deal with `uncaughtExceptions` and `unhandledRejections` in a way that gives developers visibility on errors, post-mortem information and how to handle graceful shutdowns.

Stefan Baumgartner

Stefan Baumgartner writes for Manning, Smashing Magazine and A List Apart and made the Kessel run in less than 12 parsecs.

In his spare time, he organizes ScriptConf and DevOne in Linz, and co-hosts the German language Working Draft podcast. Stefan enjoys Italian food, Belgian beer and British vinyl records.

Mary had a little LAMP,

and was sure that it can grow,

but once her page went viral,

she watched the whole app blow!

 

Looking at the monolith,

where everything was destroyed,

she asked herself “where should I start?”

and got easily annoyed.

 

Let’s end this strange absurdity,

Mary spoke out loud.

She broke it up, piece by piece

And moved everything to the cloud

 

In this talk you will learn,

an architecture that’s no sham,

Your apps will never ever burn,

I’m sure this is your JAM!

Stephaine Nemeth

Stephanie is a developer living in Berlin. She enjoys experimenting with hardware and LEDs to make beautiful, useless things.

I’m introvert. This can be bit unfortunate, when you are a person that enjoys spending a lot of free time creating fashion things bedazzled with LEDs… only to rarely wear them out in public. ¯\_(ツ)_/¯ 

In an effort to actually share my weird and wonderful creations with others, I decided create a wearable project that would force me to be sociable in order for it to reveal its magic. In this talk, I’ll share how I used machine learning with javascript and tiny computers to make “fashion” that is responsive to the people around you and the attention you are (or aren’t) receiving.



Jan Lehnardt

Makes @couchdb @hoodiehq @jsconfeu @greenkeeperio & @offlinefirst

What do CouchDB, mustache.js, CouchApps, PouchDB, Node.js, Hoodie, The Cloud, Docker, Kubernetes, and Serverless in common? They form a natural progression in a way that is completely not obvious in 2019 and that wasn’t completely obvious in 2009 when it all began. But if you look closely, you can spot the dots that connect all of these things.

 

This is the story of how emergent trends accumulate in the most interesting communities. It shows the road from idea to mass adoption, from prototype to scale by way of example of a number of projects that never made it to the mainstream, but that defined the mainstream more than you would imagine today.

 

The lessons learned will help you to divide the good ideas from the bad ideas for your future projects, by analysing why the good ideas that are common today won over the bad ones in the past, when both are indistinguishable, while you’re in the thick of it.

Julie Ng

Julie is a Cloud Solution Architect at Microsoft, focusing on CI/CD and service-oriented and event-driven architectures. Previously a waitress, english teacher, designer and developer, she is an all-rounder passionate about solving problems with code and people. Away from the computer, she enjoys barefoot running and rock climbing.



If you have multiple development teams, your cloud architecture probably feels organic changing with agile development cycles. We may ship faster and scale faster. But we can also get lost more easily as complexity grows. Automated monitoring tools come at the price of information overload.

 

Let’s bring some clarity back into the picture by filtering out the technical noise to see how cloud architectures were designed to behave. We’ll create our our own microservice architecture visualization frontend using d3.js. Then we’ll integrate some backend monitoring, sprinkle in some animation with JS and CSS, and voilà – we can watch how our architecture dances – in real time!

Liran Tal

Liran is an energetic member of the Node.js foundation Security WG, the author of Essential Node.js Security, and core contributor at OWASP NodeGoat. As a developer advocate at Snyk he works to create a more secure ecosystem for Node.js and JavaScript and has involved in projects such as leading the MEAN.js framework, and the docker container tool Dockly. Liran is strongly passionate about Open Source since an early age, and enjoys mentoring, and empowering others as they make their way in the community.

Malicious packages on npm have been making JavaScript 2018 headlines with several incidents. What makes a package malicious and how can we defend against it? How does the open source model and the human factor play a role in all of this? Let’s dissect the anatomy of a malicious package, the risks it carries and review a postmortem of the biggest incidents in the history of npm. We will also learn security best practices to avoid common pitfalls as a developer and a maintainer. Can you afford being a developer in 2019 without understanding the security risks involved in working with open source software? Join me to learn how to mitigate and adopt npm related security best practices.

Gireesh Punathil

Gireesh Punathil is a member of Node.js Technical Steering Committee and an Architect in IBM India Software Labs, predominantly in Node.js and Java. In 17 years of his career, he has been porting, developing and debugging web servers, virtual machines and compilers. His expertise is in problem isolation and determination of large and complex software modules. He has spoken at several Node.js and Java conferences.

A large percentage of Node application misbehavior in production and development can be effectively diagnosed and the root cause identified through the in-built Node.js tracing and diagnostic report capabilities. These powerful features can be leveraged in the development, testing and production phases in order to validate that the application architecture and design is reflected in the code without ever instrumenting it. In this workshop, we will examine the most common Node.js production issues represented through sample programs, and demonstrate how to diagnose and resolve those issues using the tracing and report tools.

Shelley Vohr

Shelley is a software engineer on the Electron team at GitHub who loves figuring out how to make things work. She’s passionate about clean code & diving deep into tricky problems by using the best tool for the task. She cares about lowering the barrier to entry for engineers across languages, and is also an explorer and crossword puzzle fan powered by more coffee than a human should probably drink.

At risk of quoting too many Beatles lyrics, Electron would sing permanently out of key without the dependencies it leverages to create its APIs. In this talk, we’ll dive deep into the path of a native Electron function on its journey to become a top-level JavaScript function. With assistance from Node.js, Chromium, and V8, Electron weaves together a complex web of interdependent functions in order to engender creation of modules and APIs that most benefit end-users. You’ll come away with a more concrete understanding of how Electron works beneath its surface veneer, as well as tools created within its dependencies that have enabled the Electron project to flourish as it has.

Bethany Griggs

Software Engineer working in IBM Runtime Technologies on a variety of projects all with a focus on Node.js. Her work spans from contributing to, building, and releasing the open source Node.js runtime, to focusing on development and deployment methods for cloud-native Node.js applications.

This workshop will show you how to take a Node.js application and make it ready for the cloud: adding support for Cloud-Native Computing Foundation (CNCF) technologies using the package and templates provided by the CloudNativeJS project. You’ll take a typical Node.js application and learn how to extend it to enable Health Checks, Metrics, Docker, Kubernetes, Prometheus, and Grafana. At the end, you’ll have a fully functioning application running as a cluster in Kubernetes, with production monitoring.

James Snell

James manages the consulting team at NearForm and is a core contributor to Node.js.

We implemented the QUIC protocol for Node.js. Here’s how we did it, why, and a look at the fun things you can do with it.

Stephen Belanger

I’ve been working with Node.js since 2010 and have been working on diagnostics and performance monitoring tools since early 2013. I love to travel and meet new people, especially ones who live life differently from me. I’m powered by curiosity and empathy. 🙂

Async iterators make stream processing much easier than using Node.js core streams. Let’s investigate a few common use cases and analyze the performance profile.

Async iterators are here, but have seen minimal adoption so far. It seems many are still wary of it likely due to the long proclaimed overhead of promises. However, promise performance has improved dramatically over time and async iterator performance can actually be on-par with Node.js streams at this point, if used correctly. The performance benefit of Node.js streams comes mostly from buffering which can be layered over async iterators easily enough.

I will walk through a few scenarios where async iterators can make complex behaviours fairly easy to build and then I will go over performance implications and point out pitfalls to consider when using async iterators in performance-sensitive code.

 

Theodore Vorillas

Theodore is a software engineer at Workable in Athens, currently working with a large scale JavaScript codebase.

He recently started researching A11Y and he realized he could combine IoT and JavaScript to help visually impaired people.

He loves FOSS, coffee, drones, woodworking and DIYing all the things.



The year is 2019, and accessibility is not a buzzword anymore. It’s now imperative that information is readily available to everyone, regardless of their disability or financial status.

In this talk, you’ll find out how to create a low-cost Braille display, using run-of-the-mill JavaScript and the basic principles of Internet of Things. Live demo included.

Anu Srivastava

Anu works in Developer Relations for G Suite in New York. She advocates for developers building on top of the G Suite platform to enhance their businesses, specifically focusing on the APIs for Docs, Sheets and Slides. She previously worked as a software engineer on Android and Cloud in the California Bay Area. In her free time she likes to perform with her dance group in Manhattan.

Say goodbye to the days of TPS. Join us as we show how you can string together your emails, docs, charts, all of it—into one gorgeous report, ready to email off. You can combine all your data— from GitHub metrics, monitoring data, to surveys — with this wide-ranging platform that involves “human” tools, such as a Calendar and Contacts. Thanks to a helpful client library, Node.js is the glue that you can use to code up all the business work, so that you can get back to the business of coding.

Franziska Hinkelmann

Franziska has a Ph.D. in mathematics and is a senior engineer at Google working on the Cloud Platform team in New York City. She’s a member of the Node.js Technical Steering Committee and an expert on JavaScript performance. When she’s not working hard on making Node.js better on the Cloud Platform, she’s probably out riding horses.

Say goodbye to the days of TPS. Join us as we show how you can string together your emails, docs, charts, all of it—into one gorgeous report, ready to email off. You can combine all your data— from GitHub metrics, monitoring data, to surveys — with this wide-ranging platform that involves “human” tools, such as a Calendar and Contacts. Thanks to a helpful client library, Node.js is the glue that you can use to code up all the business work, so that you can get back to the business of coding.

Alex Korzhikov

Software engineer, team lead, instructor, mentor, and author of technical materials with 10 years of programming experience

We will start with theory – overview key concepts of building a Command Line Interface program. By making a tiny example in Node.js, we explore NPM and package.json capabilities, compare different technologies. 

We build a TypeScript based pluggable CLI with Oclif framework and design internal’s business logic. In the last part we introduce Continuous Integration with Github and polish program UX and output using various libraries.

In 4 hours we’ll write a complete CLI application. You will have a project in your Github repository, ready to use and evolve. You will know how it is designed, understand technologies and best practices it is following

In 3 hours we’ll write a complete CLI application. You will have a project in your Github repository, ready to use and evolve. You will know how it is designed, understand technologies and best practices it is following

Full description here

Pavlik Kiselev

We will start with theory – overview key concepts of building a Command Line Interface program. By making a tiny example in Node.js, we explore NPM and package.json capabilities, compare different technologies. 

We build a TypeScript based pluggable CLI with Oclif framework and design internal’s business logic. In the last part we introduce Continuous Integration with Github and polish program UX and output using various libraries.

In 4 hours we’ll write a complete CLI application. You will have a project in your Github repository, ready to use and evolve. You will know how it is designed, understand technologies and best practices it is following

In 3 hours we’ll write a complete CLI application. You will have a project in your Github repository, ready to use and evolve. You will know how it is designed, understand technologies and best practices it is following

Full description here

Matteo Collina

Matteo is Technical Director at NearForm, where he consults for some of the top brands in the world. In 2014, he defended his Ph.D. thesis titled “Application Platforms for the Internet of Things”. Matteo is a member of the Node.js Technical Steering Committee focusing on streams, diagnostics and http. He is also the author of the fast logger Pino and of the Fastify web framework. Matteo is a renowned international speaker after presenting at more than 50 conferences, including Node.js Interactive, NodeConf.eu, NodeSummit, JSConf.Asia, WebRebels, and JsDay just to name a few. He is also co-author of the book “Node.js Cookbook, Third Edition” edited by Packt. In the summer he loves sailing the Sirocco.



The module ecosystem is a key ingredient in the success of the JavaScript ecosystem. Unfortunately, it is a challenge ensuring that key modules are maintained, safe and kept up to date. The resulting pain is felt by users of the modules, the original module authors who often would like to help but no longer can for any number of reasons, and even those who would like to help but can’t. In this talk, we’ll cover how we might tackle this problem, an initiative to start working on the problem within the Node.js project and how you can get involved and help out.

Michael Dawson

Michael Dawson is an active contributor to the Node.js project and chair of the Node.js Technical Steering Committee(TSC). He contributes to a broad range of community efforts including platform support, build infrastructure, N-API, Release, as well as tools to help the community achieve quality with speed (ex: ci jobs, benchmarking and code coverage reporting). As IBM Node.js community lead, he works with IBM’s internal teams to plan and facilitate their contributions to Node.js and v8 within the Node and Google communities.Past experience includes building IBM’s Java runtime, building and operating client facing e-commerce applications, building PKI and symmetric based crypto solutions as well as a number of varied consulting engagements. In his spare time, he uses Node.js to automate his home and life for fun.

The module ecosystem is a key ingredient in the success of the JavaScript ecosystem. Unfortunately, it is a challenge ensuring that key modules are maintained, safe and kept up to date. The resulting pain is felt by users of the modules, the original module authors who often would like to help but no longer can for any number of reasons, and even those who would like to help but can’t. In this talk, we’ll cover how we might tackle this problem, an initiative to start working on the problem within the Node.js project and how you can get involved and help out.

Tomas Della Vedova

Tomas is an enthusiastic software engineer, who spends most of his time programming in Javascript and Node.js. He works for Elastic as Software Engineer in the clients team, focusing on the JavaScript client. Tomas is also the author of the Fastify web framework and part of its ecosystem. He constantly forwards the enrichment of his knowledge and the exploration of new technologies; moreover, he is a strong Open Source supporter and he will always be passionate about technology, design, and music.

We all know the problems of migrating a monolith to a microservices architecture. Mixed logic, cross-dependencies and way too many edge cases to test. Wouldn’t be great to have a framework that helps you build a modular, consistent and pluggable system? Enter Fastify, a new web framework for Node.js. Fastify offers an extremely flexible plugin system that allows complete customization of the framework. Every plugin could be packaged as an independent module and then deployed as microservice or as a part of a monolith. In this workshop, we will discuss and then implement the key elements of an Enterprise Node.js application, such as tracing, logging, database connectors, testing and code reuse.

Full description here

Matteo Collina

Matteo is Technical Director at NearForm, where he consults for some of the top brands in the world. In 2014, he defended his Ph.D. thesis titled “Application Platforms for the Internet of Things”. Matteo is a member of the Node.js Technical Steering Committee focusing on streams, diagnostics and http. He is also the author of the fast logger Pino and of the Fastify web framework. Matteo is a renowned international speaker after presenting at more than 50 conferences, including Node.js Interactive, NodeConf.eu, NodeSummit, JSConf.Asia, WebRebels, and JsDay just to name a few. He is also co-author of the book “Node.js Cookbook, Third Edition” edited by Packt. In the summer he loves sailing the Sirocco.



We all know the problems of migrating a monolith to a microservices architecture. Mixed logic, cross-dependencies and way too many edge cases to test. Wouldn’t be great to have a framework that helps you build a modular, consistent and pluggable system? Enter Fastify, a new web framework for Node.js. Fastify offers an extremely flexible plugin system that allows complete customization of the framework. Every plugin could be packaged as an independent module and then deployed as microservice or as a part of a monolith. In this workshop, we will discuss and then implement the key elements of an Enterprise Node.js application, such as tracing, logging, database connectors, testing and code reuse.

Agenda

08:45 – 09:00

Welcome Note

Cian O’Maidin

09:00 – 09:30

A new thing for Node.js & Javascript

C J Silverio and Chris Dickinson

09:30 – 10:00

What’s new & exciting about the NodeConf EU Digital Badge

Gordon Williams & James Snell

10:00 – 10:30

Let it crash!

Julián Duque

10:30 – 11:00
Bar Area

COFFEE BREAK

11:00 – 11:30

Braille.js. Bringing together accessibility, JavaScript and IoT.

Theodore Vorillas

11:30 – 12:00

WebAssembly: what does it mean for JavaScript and Node.JS?

Mx. Kassian Perch

12:00 – 12:30

The Road to Hype: How NoSQL became Serverless

Jan Lehnardt

12:30 – 13:00

A QUIC bit of fun with Node.js

James Snell

13:00 – 14:00
Restaurant

LUNCH

14:00 – 17:30

WORKSHOP: Error handling: doing it right!

Ruben Bridgewater

14:00 – 15:30

WORKSHOP: Node.js in the Cloud

Bethany Griggs

14:00 – 15:30

WORKSHOP: Badge Workshop

Gordon Williams

16:00 – 17:30

WORKSHOP: Hands-On Intro to Kubernetes (and OpenShift) for JS Developers

Jan Kleinert and Ryan Jarvinen

Evening Acctivities

Click edit button to change this text. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.
Click edit button to change this text. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.
Toggle Content