Speakers

Tomomi Imura

Senior Developer Advocate at Nexmo

Tomomi is a Senior Developer Advocate at Nexmo, who previously worked in mobile roles for Yahoo!, Nokia, and Palm. She’s an Open Web advocate and writes about HTML5, CSS, JS, UX, tech events and gadgets on her blog. However, unintentionally she’s perhaps best known for creating the HTTP Status Cats

Presentation

From Software to Hard ware: How Do I Track My Cat with JavaScript.

In the era of Internet of Things, connecting things to the mobile devices and web is becoming ubiquitous. You can control room light using your mobile phone. You can monitor your heart rate and weight on browser. JavaScript engineers like you already have skills to prototype ideas to build software, so why not hardware too.

Tomomi Imura, a front-end engineer with no background in electrical engineering, shares how she got started with hardware hacking with JavaScript, also talks about her recent fun project, KittyCam, a Raspberry Pi camera with cat facial detection to see when her cat is eating while being away from home.

Vitaly Friedman

Editor-in-chief of Smashing Magazine

Vitaly loves beautiful content and does not give up easily. From Minsk in Belarus, he studied computer science and mathematics in Germany, discovered the passage a passion for typography, writing and design. After working as a freelance designer and developer for 6 years, he co-foundedSmashing Magazine, a leading online magazine dedicated to design and web development. Vitaly is the author, co-author and editor of all Smashing books. He currently works as editor-in-chief of Smashing Magazine in the lovely city of Freiburg, Germany. 

Presentation

Cutting-Edge Responsive Web Design

With HTTP/2, Service Workers, Responsive Images, Flexbox, SVG, WAI-ARIA roles and Font Loading API now available in browsers, we all are still trying to figure out just the right strategy for designing and building responsive websites efficiently. We want to use all of these technologies and smart processes like atomic design, but how can we use them efficiently, and how do we achieve it within a reasonable amount of time

In this talk, Vitaly Friedman, will be looking into a strategy for crafting fast, resilient and flexible responsive design systems by utilizing all of those wonderful shiny web technologies we have available today. We'll also talk about dealing with legacy browsers and will cover a few dirty little techniques that might ensure that your responsive websites will stay relevant, flexible and accessible in the years to come.

Host: Lydia Winters

Brand Director at Mojang

Lydia Winters is Mojang’s Brand Director, leading the direction and usage of one of the most recognisable brands today, Minecraft. She's a native Floridian who now calls Sweden her home. When she isn't traveling 200,000 miles a year for work around the world, she enjoys hiking, photography, and speaking at EPIC events. 

Lin Clark

Code Cartoons

Lin is a code cartoonist and senior developer tools engineer at Mozilla.

Presentation

A Cartoon Guide to Performance in React

You've heard React is faster than other frameworks... but what does it actually *do* to speed things along? I'll explain what React is doing behind the scenes and how you can help speed it along even more.

Frans Rosén

White Hat Hacker & Security Expert, Detectify

Frans is a sought-after speaker in the field of web security. He combines concrete knowledge and security tool-kits with entertaining stories about his findings and white hat hacking. 

Presentation

The Smörgåsbord of web app hacking – Doing bug bounties as a developer

This talk is about hacking stuff using bug bounties. Frans will talk about some interesting findings when hacking webapps, how he almost prevented a significant data breach and how he hacked a company in Las Vegas, going home with $51.000.

Amy Cheng

Full stack web developer at the New York Media

Amy is a full stack web developer at the New York Media. She likes to explore the creative and expressive possibilities of programming and physical computing. The first website she ever made was a Star Wars fan site hosted on GeoCities. 

Presentation

Recreate Masterpieces of Modern Art with Javascript

JavaScript is not just for web apps. This talk looks at JavaScript as an artistic and visual programming language and serves as a primer on generative art. The audience will learn how to recreate one of Damien Hirst’s Spot paintings and one of Piet Mondrian’s Composition paintings in the browser. JavaScript is commonly used to manage interactivity, data, and application states. However, we will use masterpieces of modern art to illustrate JavaScript’s potential to manipulate visual space, color and shape.

In the recent past, creating art for the web - usually in the form of Flash or Java applets - was a completely separate workflow from developing business logic for an app. This talk will show that these workflows can be combined. Also, learning the basics of generative art and how to “draw” for the web is creative and fun!

Irina Shestak

Development Team Lead at Small Media Foundation

tl;dr javascript, wombats and hot takes.

The not so short: Irina is a London via Vancouver software developer. She spends quite a bit of her time exploring the outdoors, gushing over trains, and reading some Beatniks.

Presentation

JavaScript Takes on Genetically Evolving Cellular Automata

Genetically evolving cellular automata -- that's a mouthful. Let's break it down

1. We will be looking at cellular automata. A cellular automata is a set of units governed with very simple rules. These units make up a complex system, or model. 

2. We can train cellular automata to genetically evolve, making themselves better overtime. We can make them adhere to a set of rules that would make the system reach a certain outcome at the end of N generations. We can even use these concepts in the wild.

3. We will be doing it all with JavaScript.

Mattias Petter Johansson

Creator of Fun Fun Function, a YouTube programming show

Mattias Petter Johansson is a JavaScript developer that runs FunFunFunction, a YouTube channel about programming. During the day, he works on one of the most complicated HTML5 applications in the world; The Spotify desktop client.

Prior to Spotify, he worked on a web-based video editing applications and made campaign sites for Absolut Vodka. He can solve the Rubiks Cube in under 2 minutes, yet has never managed to make a single correct time estimation in his life.

Presentation

If you know map, I will teach you monads

It is said the fish will be the last to discover water. JavaScript developers have unknowingly been doing functional programming for years. In this talk, I will blow your mind by giving you the bigger picture around the tools you’re already using today. 

Ashley Williams

Developer community and content manager at npm, Inc

Ashley is the developer community and content manager at npm, Inc. She splits her time between stewarding open source projects, writing documentation, and organizing conferences and community events. She also leads the Node.js Inclusivity Working Group, which is focused on improving the diversity of the Node.js community.

Presentation

A brief history and mishistory of modularity

"MAKE IT MODULAR," they said. "IT WILL BE BETTER," they said. Modularity is a term so common in today's software industry, that it's easy to uncritically accept it as a fundamental software development principle. but what does "modularity" *actually* mean? Where does this idea come from? Where is it going? This talk will walk us through the technical etymology of "modularity", stepping through the intellectual breakthroughs alongside the fast spread misconceptions. We'll conclude by exploring the implications of modularity's ill-examined history on both its current use today, and where it's heading in the future.

Jem Young

Netflix

Jem is a tall engineer at Netflix who loves dogs and clean code. I've had the privilege of working for a variety of companies ranging from tiny startups to a multi-billion dollar tech company and I've been fortunate enough to work with a lot really smart people along the way. I enjoy coding across the stack but my true passion lies in JavaScript and building clean UX.

Presentation

Embracing The Future

It's an exciting time to be a JavaScript engineer. ES7/ESNext is bringing powerful new language features that will allow us to write cleaner, more efficient code. Service Workers bring the promise of better threading, caching, and offline support. This talk is about what's coming up for JavaScript and how you can use this technology today to build some really amazing applications.

Evan You

Creator of Vue.js

Evan is a designer and developer passionate about building great user experiences. He is the creator of Vue.js, a rapidly rising frontend framework. Previously he worked at Meteor as a core developer, and hacked on experimental UI prototypes at Google Creative Lab. Evan holds a Masters of Fine Arts in Design & Technology from Parsons.

Presentation

Demystifying Frontend Framework Performance

Developers often consider performance an important factor when choosing frameworks, however it is often not so straightforward when trying to measure the performance of a framework. Micro-benchmarks often cover very narrow use cases and most of the time can lead to wrong assumptions. At the same time high level descriptions of a technology can also lead to biased yet unfounded conclusions. In this talk I will walk the audience through the techniques used in major frontend frameworks - namely dirty checking, virtual-dom diffing and dependency-tracking. I will also compare them in different use case scenarios to give users a balanced idea of how each strategy performs under different circumstances.

Mariko Kosaka

Scripto & BrooklynJS

Mariko is an engineer who loves data and knitting. When she is not making software at Scripto, she uses code to help her design textiles & organize a local JavaScript meetup in New York City called BrooklynJS.

Presentation

Magic of Computer Vision Unraveled

Have you ever wondered how computers "see" images? Do you want to work on an Augmented Reality project or build a NodeBot that can recognize your face? When you work with an image as your data input, sooner or later you'll encounter the magic term "Computer Vision".

It can be intimidating to some. At first, that led me to choose a powerful library that works like magic in an unfamiliar language (C++). It felt like library was a black box and I had no control. I started wonder, what is so magical about computer vision? After all it is just code someone wrote. Can we unravel it? and reconstruct in JavaScript??

The answer is YES. In this talk, we'll start by getting image data from canvas object, then transform the data to alter an appearance of the image. You will get first insight into what data looks like to a browser (hint: it's just an array of numbers !). Finally, we'll go through simple image analysis process to build your own AR app in vanilla JavaScript.

Rachel White

Technical Evangelist at Microsoft

Rachel is a self-taught Front End Engineer. She is currently working on multiple video game projects, a VR cat cafe, and thinking about what IoT devices she can build for her two black cats. Her other interests include glitch art, 80s horror, and indie games.

Presentation

JavaScript as Play

Now that you know enough front end technologies to be dangerous, lets use those skills to make a game. We'll take a look at the open source framework Phaser to learn how to create your own browser based game. Together we'll explore topics such as sprite animation, collision detection, and scoring, by the end we'll have a playable platformer you can tinker with.

Abdullah Ali

Multi-Threaded JavaScript

Abdullah is an independent C++/JavaScript developer. He likes to dabble into machine learning and computational neuroscience. 

Presentation

The Mad Cousin - Multi-threaded JavaScript

We explore the potential of introducing multithreading to a single-threaded world. Nexus.js is a multi-threaded cousin to Node.js. It introduces a paradigm shift into the world of server-side JavaScript as we know it. In addition to supporting ES6 out of the box, the system introduces promises that run on all CPU cores in parallel. Making it a unique environment to explore the potential of a truly concurrent JavaScript.

The journey begins with the lack of an event-loop. Nexus.js instead implements a cooperative thread-pool scheduler, which allows it to handle tasks in parallel.

We will explore the architecture behind this, how it works, and why this project was launched in the first place. We will also explore the challenges and benefits of scaling in a multi-threaded environment and how it differs from scaling with Node.js on modern hardware.

Nicole Rauch

Software Developer

Nicole is an independent software developer and development coach with a solid background in compiler construction and formal methods. Having a strong background in the restructuring of large Java legacy code applications, she nowadays also likes to work with JavaScript, React.js and Node.js. She took part in conducting a number of self-organized Software Craftsmanship conferences. She is one of the initiators of Softwerkskammer, the german-speaking Software Craftsmanship community.

Presentation

Event Sourcing a Node.js Application

When it comes to storing application data, a more or less object-relational approach is currently the norm. That means, the current state of the application is stored in the database, and whenever that state changes, the database contents gets overwritten and replaced by the new state. This does not allow us to reason about information we had in the past, e.g. "When did this user change her address?" or "Where did this user live previously?". In other words, we drop data - data that might be important for us in the future. Event sourcing circumvents this amnesia by capturing each and every event that happened throughout the life of the application, and by deriving the current state from the total volume of these events. In this talk, I will show how event sourcing works in general and which peculiarities we need to cater for when applying it to a typical node.js application.

Jeremy Keith

Clearleft

Jeremy lives in Brighton, England where he makes websites at the design agency Clearleft. You may know him from books such as DOM Scripting, Bulletproof Ajax and HTML5 For Web Designers. He’s the curator of the dConstruct conference as well as Brighton SF, and he organised the world’s first Science Hack Day.

Presentation

Resilience: Tried and tested approaches to building robust, flexible, and resilient web experiences.

I want to strike a note of caution with JavaScript developers by encouraging them to think in terms of progressive enhancement ...even if that means foregoing the latest and greatest frameworks that rely on client-side JavaScript to render text on a screen.

David Björklund

Lead engineer at Mic.com

David likes to program, drink quality coffee and complain about his allergies. He’s also the lead engineer at Mic

Presentation

Pragmatic performance patterns

I'll talk about performance from a pragmatic point of view - give example of patterns I've adapted to make sure I write performant code - without sacrificing readability or code quality. I'll also touch upon how benchmarking can be a part of your workflow from day one and I'll let you all know why premature optimization isn't the root of all evil (and what actually is).