• Douglas Crockford


    Douglas Crockford

    Douglas Crockford was born in Frostbite Falls, Minnesota, but left when he was only six months old because it was just too damn cold. He turned his back on a promising career in television when he discovered computers. He has worked in learning systems, small business systems, office automation, games, interactive music, multimedia, location-based entertainment, social systems, and programming languages. He is the inventor of Tilton, the ugliest programming language that was not specifically designed to be an ugly programming language. He is best known for having discovered that there are good parts in JavaScript. This was an important and unexpected discovery. He also discovered the JSON Data Interchange Format, the world’s most loved data format. And he works at PayPal.

    Nov 13, 13:00-13:45 Room A and B


  • James Snell

    Node.js and Web Standards

    James Snell

    James M Snell is currently IBM's Technical Lead for Node.js and a member of the Node.js TSC and CTC. At IBM, he is responsible for coordinating the company's various contributions to Node.js. He has spent his 15+ years at the company dedicated to the development of Open Source and Open Standards.

    Nov 13, 14:00-14:30 Room A

    Node.js and Web Standards

    Node.js is, and has been, primarily a platform for Web application development. In this talk, James will discuss the evolution and future of support for Web Standards such as URL parsing and HTTP 2.0 in Node.js core.

  • Bradley Farias

    The journey toward ES modules.

    Bradley Farias

    Bradley is a senior software engineer at GoDaddy working remotely from Austin, Texas. He is a member of TC39 and an active member of the Node community. Debugging and parser tooling are some of his main interests for programming in his free time. The efforts to get Node to support ES Modules is largely being driven by Bradley with the help of other in the Node community.

    Nov 13, 14:30-15:00 Room A

    The journey toward ES modules.

    A look into how Node will be supporting ES modules. It should give insight into the problems and solutions for supporting expectations that Babel set; as well the talk should discuss what will break and how to be prepared for the future.

  • Cheng Zhao

    The Evolution of Electron

    Cheng Zhao

    Cheng Zhao created the Electron framework on 2013 when building the Atom editor, and joined Github on 2014 to work full time on it.

    Nov 13, 16:15-16:45 Room A

    The Evolution of Electron

    I'll talk about how we tried various methods to develop Atom editor with web techniques in early days, and why we ended up creating Electron, I'll also show the current state of Electron and what it will be in future.

  • Yoshua Wuyts

    boarding the tiny framework train

    Yoshua Wuyts

    Yosh is a creative engineer who loves all things computer. He spends most of his days traveling around, and writing quality projects for both clients and for free. He's been an active member of the Node community for years and specializes in building tiny tools that make you squeal with excitement.

    Nov 13, 15:45-16:15 Room A

    boarding the tiny framework train

    Three years ago the frontend community was introduced to the exciting potential of building completely functional user interfaces. We're now in a world where functional programming is gradually becoming the norm, and we're shifting to solve problems that we didn't think about years ago. In this talk Yosh will cover the bleeding edge of frontend development, and dive deep into Choo, a modular frontend framework designed specifically to solve today's challenges.

  • Mathias Buus

    Putting TV on the Internet

    Mathias Buus

    Mathias is a non-profit Node.js hacker based in Copenhagen, Denmark. He works full time on open source and is part of the Dat project, http://dat-data.com trying to build open tools to help scientists share datasets. Currently he maintains more than 400 modules on npm including a bunch of P2P and mad science stuff.

    Nov 13, 15:00-15:30 Room A

    Putting TV on the Internet

    A journey into how we can start streaming live tv online through peer to peer networks using systems that become better the more people watch instead of crashing the stream. Using node.js and a bunch of node modules I'll show how everyone can start producing their own tv and start broadcasting it to the world.

  • Alejandro Oviedo

    Demystifying JavaScript Engines

    Alejandro Oviedo

    Alejandro is a developer who loves learning new things. He is passionate about education, electronics, open-source, and community-driven events. These days, he also helps organize NodeConf Argentina and a local Node.js meetup.NodeSchool, NodeBots and the Node.js meetup at Buenos Aires.

    Nov 13, 10:30 - 11:00 Room A

    Demystifying JavaScript Engines

    How a JavaScript engine works? What are its basic components? How to measure its performance? What is JIT compilation? Stigmatization: is JavaScript fast enough? are some of the questions I think we currently fail to answer in a, somewhat, short and direct way.

  • Thomas Watson

    Build your own JavaScript powered radio

    Thomas Watson

    Thomas Watson is an open source Node.js hacker out of Copenhagen, Denmark. He is a member of the Node.js Diagnostics Working Group and is the Node.js Lead at Opbeat - a JavaScript performance analysis and monitoring startup. He maintains over a 100 open source projects, enjoys working with mad science and implementing network protocols in JavaScript.

    Nov 13, 11:00 - 11:30 Room A

    Build your own JavaScript powered radio

    Capture and transmit radio waves using software (and just a tiny bit of hardware). This talk is about SDR (Software Defined Radio) and how you can listen to and transcode the radio spectrum using Node.js. It allows you to interact with other radio powered devices, listen in on the data being transmitted between your cellphone and the cell-tower, intercept commercial and private airplane communication and much, much more.

  • Teppei Sato


    Teppei Sato

    1982年新潟県生まれ。東京工業大学卒業後、2007年サイボウズに入社。大規模向けグループウェアのガルーン、国際版ワークフローのApprovalFlowの開発を担当したのち、次世代グループウェアのプロトタイプの開発に従事。その後、データベースソフトであるkintoneの開発に携わる。サイボウズ株式会社 執行役員・グローバル開発本部長。

    Nov 13, 11:30 - 12:00 Room A



  • Gleb Bahmutov

    Browser is the new server

    Gleb Bahmutov

    Gleb Bahmutov is JavaScript ninja, image processing expert and software quality fanatic. After receiving a PhD in computer science from Purdue University, Gleb worked on laser scanners, 3D reconstruction, and panorama-based virtual tours at EveryScape. Later Gleb switched to writing browser data visualization software at MathWorks. After a year, Gleb went back to the startup environment and developed software quality analysis tools at uTest (now Applause). Today Gleb is developing real-time financial analysis tools at Kensho. He blogs about software development topics at http://glebbahmutov.com/blog/ and links his projects at http://glebbahmutov.com/. You can follow him and his work @bahmutov

    Nov 13, 16:45 - 17:15 Room A

    Browser is the new server

    We see the great technology unification, with the boundary between the server and the client (browser) becoming blurrier every day. Who has time and budget to write separate code bases? In this presentation I will show the ultimate combination of NPM's two most popular packages: Browserify and Express; and their product that allows to move the complete server to run inside the browser's ServiceWorker. It is like server-side rendering but inside your browser, and even runs when JavaScript is disabled!

  • Fritz Van Deventer

    Famicom programming with JavaScript

    Fritz Van Deventer

    I'm Fritz. I love dipping my toes in all kinds of things as a creator of digital and analogue things. With the band Cheeses of Mexico that means: music and videos, as well as games. As a developer it means creating Flood simulation models at www.3di.nu. As a hobbyist it means working in the wee hours of night developing stuff for the Famicom/NES, or making sourdough bread. I teach programming at a technical college in Arnhem

    Nov 13, 11:00 - 11:30 Room B

    Famicom programming with JavaScript

    The Famicom / NES is one of those devices that took the world (and especially Japan) by force. It brought a home computer in so many homes. The characters of the popular games are known to everyone. Programming for the Famicom is fun and very educational. And best of all, you can use JavaScript. I will showcase some of the things you can do with JavaScript to program for the NES.

  • Barak Chamo

    GraphQL for the RESTful crowd

    Barak Chamo

    Barak is a London-based software engineer, entrepreneur, tech speaker, and writer. He’s passionate about emerging web technologies, great online user experiences and building great products faster and better. He’s now consulting startups in London, co-building early stage startups.

    Nov 13, 11:30 - 12:00 Room B

    GraphQL for the RESTful crowd

    GraphQL brought along a paradigm shift in the way we think about data transfer between the front- and back-ends of applications. We are no longer restricted by imperative data structures and communicating our data requirements implicitly. Instead, by declaring the graph-form of our data model, we are able to request data in it’s object form in a JSON-like syntax that shares structure between response and request.GraphQL, along with Relay, makes the development an application, multiple applications, and multiple versions of those, a breeze. No longer do we have to maintain v1, v3 and v100 or our APIs to make sure all legacy versions are supported.For those of us that are used to relational databases and RESTful APIs GraphQL can seem daunting and quite a leap from the model we are used to. The good news is that if you use any kind of ORM or defined any form of model to your data, you’re already halfway thorough to the graph! Looking at an example REST API, we’ll go through the steps of converting both the server and the client to GraphQL - understanding along the way what are the similarities and differences in application design, both on the front-end and the back-end.

  • Richard Littauer

    Why to Standardize your READMEs

    Richard Littauer

    Richard Littauer is a member of Protocol Labs, busy building a better, decentralized, and permanent internet. He is dedicated to community infrastructure, and has run several NodeSchools in the developing and development world, spoken at meetups from New York to Svalbard, and spends a lot of this time making sure that docs are maintained and relevant. He likes books a lot, too.

    Nov 13, 14:00 - 14:30 Room B

    Why to Standardize your READMEs

    If no one downloads or uses your npm module, you might need better documentation. Your README.md is the first access point for your code: I'll talk about how to use the standard-readme specification to make sure your readmes are high quality, and how the spec (which I developed) is already being used by over a hundred repositories to stop bikeshedding and save time. I'll demo a standard-readme generator and a linter, to help you write your readme. I'll also show how search can be improved by grabbing terms from the description and background, and highlight a bunch of cool ways having standard readme benefits the community as a whole.

  • Kazuya Kawaguchi

    Vue.js 2.0 サーバサイドレンダリング

    Kazuya Kawaguchi

    株式会社 CUUSOO SYSTEM CTO。Vue.js コアチームメンバーとして積極的に活動中。日本 Vue.js ユーザーグループ [vuejs-jp](https://github.com/vuejs-jp/home) の代表でありユーザーコミュニティの活動も進めている。最近は自称 emojineer として emoji を使ったソフトウェア開発プロセスにも関心がある。

    Nov 13, 14:30 - 15:00 Room B

    Vue.js 2.0 サーバサイドレンダリング

    Vue.js 2.0 では、Virtual-DOM の採用により、レンダリングシステムが刷新されました。それに伴い、Vue のリアクティブシステムの組合せ & 最適化によるレンダリングの高速化、テンプレートベースによる宣言的なレンダリングと JSX また HyperScript による命令的なレンダリング両方をサポートする柔軟性、クロスプラットフォーム化、サーバサイドレンダリングが可能になりました。本発表では、Vue.js 2.0 のレンダリングシステムについてひと通り説明し、その後 Node.js に最適化されたサーバサイドレンダリングについて詳細に解説することで Vue.js 2.0 を利用した Isomorphic なアプリケーション構築への手助けになるような発表を考えています。

  • Naohiro Yoshida

    React + Reduxを使った大規模商用サービスの開発

    Naohiro Yoshida

    株式会社リクルートテクノロジーズ所属。直近1年ほどは飲食関連事業で、アーキテクトしてSpring BootやNode.jsでのサービス開発を推進しています。

    Nov 13, 15:00 - 15:30 Room B

    React + Reduxを使った大規模商用サービスの開発

    React + Reduxを使って、商用サービスのWEB版を全面的にSPA+SSRで開発しました。React + Reduxに興味がある方や、これからReact + Reduxを使いプロダクション向けのサービス開発を考えている方々に、開発時に得られた知見や苦労したところなどを共有したいと思います。

  • Naoyuki Kanezawa


    Naoyuki Kanezawa


    Nov 13, 15:45 - 16:15 Room B


    Zeit, IncのデプロイサービスであるNowと、Node.JSに関連するOSSプロタクトの紹介や取り組みについて話します。

  • Masaaki Morishita

    PostCSS: Build your own CSS processor

    Masaaki Morishita


    Nov 13, 16:15 - 16:45 Room B

    PostCSS: Build your own CSS processor


  • Noritada Shimizu

    JavaScript による並列処理:共有メモリとロック

    Noritada Shimizu

    一般社団法人Mozilla Japanテクニカルマーケティング。2001年慶應義塾大学政策・メディア研究科修士課程修了。大学在学中よりWeb開発を行う。慶應義塾インフォメーションテクノロジセンタ、嘉悦大学情報メディアセンターを経て、2013年より Mozilla Japan に参加。現在はFirefox OS / Firefox アプリ開発と開発者ツールを中心にMozilla のテクノロジ、および Web 標準技術の普及活動に従事する。

    Nov 13, 16:45 - 17:15 Room B

    JavaScript による並列処理:共有メモリとロック

    JavaScript のプログラムはメインスレッドという時間軸を、いかに効率良く、譲り合って使うかが勝負でした。非同期呼び出しとコールバック関数は、譲り合いを行うための手段として必要となりましたが、それはプログラムの凝集度を下げ、見づらいコードが多く作られる原因ともなりました。Promise などの導入によってコードの見づらさという問題は顕現されていますが、メインスレッドを譲り合って使うというモデルは変わっていません。JavaScriptの処理系は、その実行スピードを向上させ続けてきましたが、その改善にも限界があります。そこで必要とされるのが並列処理です。これはメインスレッド以外にも処理の主体を用意し、それらが協調して仕事をなすことで、全体の処理時間を短縮することを目的としています。JavaScript では Worker を利用することで、ある程度の並列処理が可能です。しかし Worker は処理の大規模なデータの受け渡しに問題があり利用局面に制限がありました。そんなJavaScript の並列処理も状況が変わりつつあります。1番の大きな変化は、共有メモリの導入です。SharedArrayBuffer と呼ばれるAPIによって実現される共有メモリによって、Worker とのデータのやり取りの効率は格段に向上します。一方、共有メモリの登場によって、これまで JavaScript のプログラムには縁の薄かったバグも生まれるようになります。この講演では、SharedArrayBufferを中心にJavaScriptにおける並列処理とその問題について紹介します。

  • Irina Shestak

    Building Interactive npm Command Line Modules

    Irina Shestak

    Irina is a London via Vancouver software developer. She spends quite a bit of their time exploring the outdoors, gushing over trains, and reading some Beatniks.

    Nov 13, 10:30 - 11:00 Room B

    Building Interactive npm Command Line Modules

    Here you are coding away, when you realize you’re in desperate need of a quick shell script to get your project cleaned up. You’re standing at a fork in the road: Bash or Node? You choose the road less travelled by (for some reason) — Node. Congratulations on this decision. You’ve written it, you may have published it, and it certainly works. But what now? Is this all a command line module Node is good for: a project clean up and some data manipulation?<br/>Let’s take it a step further. Let’s make a command line module that’s more than just your compiling script. Irina is, of course, talking about making it more interactive.<br/>In this talk Irina wants to take you on an adventure that will require cunning, bravery, and maybe some magic. She will walk through obtaining and parsing data, using Node’s process functions, and finally improving your module’s user experience.

Get your tickets