12 Dec 2015
Mariko Kosaka, Scripto
From a textile loom to a desktop computer; the stitches in your garment and the letters on your screen are both the result of operations executed on data. As a web engineer, I never wondered what the data looked like to computers.
Then I started a craft project to convert graphics into knit patterns for an electric knitting machine. Little did I know, I was researching the origins of computer: textile looms operated by punch cards. By knitting fabric, I learned to give instructions to a machine with just 2 signals. I discovered what a 'bit' really is, in my scarf! This tactile experience with binary made everything in my JavaScript work much clearer.
I'd like to share my learning from making "Node.js app for craft" (8 bit punch card computer with Arduino + Jhonny-Five + Socket.io with web interface) It involves JS Robotics, Websockets, Canvas, and electron.js to tie all together.
From a textile loom to a desktop computer; the stitches in your garment and the letters on your screen are both the result of operations executed on data. As a web engineer, I never wondered what the data looked like to computers.
Then I started a craft project to convert graphics into knit patterns for an electric knitting machine. Little did I know, I was researching the origins of computer: textile looms operated by punch cards. By knitting fabric, I learned to give instructions to a machine with just 2 signals. I discovered what a 'bit' really is, in my scarf! This tactile experience with binary made everything in my JavaScript work much clearer.
I'd like to share my learning from making "Node.js app for craft" (8 bit punch card computer with Arduino + Jhonny-Five + Socket.io with web interface) It involves JS Robotics, Websockets, Canvas, and electron.js to tie all together.
- 1 participant
- 21 minutes
11 Dec 2015
Irina Shestak, Ladies Learning Code
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. I congratulate you 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?
Let's take it a step further. Let's make a command line module that's more than just your compiling script. I am, of course, talking about making it more interactive.
In this talk Irina wants to take you on an adventure that will require cunning, bravery, and maybe some magic. We will walk through obtaining and parsing data, using Node's process functions, and finally improving your module's user experience.
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. I congratulate you 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?
Let's take it a step further. Let's make a command line module that's more than just your compiling script. I am, of course, talking about making it more interactive.
In this talk Irina wants to take you on an adventure that will require cunning, bravery, and maybe some magic. We will walk through obtaining and parsing data, using Node's process functions, and finally improving your module's user experience.
- 1 participant
- 18 minutes
11 Dec 2015
Greg Rewis, Red Hat
As every developer knows, mobile is exploding and challenging development teams — whether you are developing native applications, hybrid applications or a combination of both. And because network calls are one of the most battery-intensive operations, it’s essential that modern applications leverage the power of a APIs and micro services to optimize data delivery. The Red Hat Mobile platform is not only built on Node.js, but allows development teams to build mobile-oriented services and APIs using the full power of Node.js. In this quick, 20 minute session, we’ll explore the platform, quickly build and deploy a Node.js service and then consume it in a mobile application.
As every developer knows, mobile is exploding and challenging development teams — whether you are developing native applications, hybrid applications or a combination of both. And because network calls are one of the most battery-intensive operations, it’s essential that modern applications leverage the power of a APIs and micro services to optimize data delivery. The Red Hat Mobile platform is not only built on Node.js, but allows development teams to build mobile-oriented services and APIs using the full power of Node.js. In this quick, 20 minute session, we’ll explore the platform, quickly build and deploy a Node.js service and then consume it in a mobile application.
- 1 participant
- 20 minutes
11 Dec 2015
Jeremiah Senkpiel, NodeSource
Node Core is ultimately at the center of this conference and the node community as a whole. Sure, we've all wanted to make it better, but node core is a little frightening. Where does one start contributing? Will you be hammered with review? What if you don't know C++? Do you need to dedicate lots of time? Will your contribution attempt even be noticed? These questions and more will be answered as I tell how I became a collaborator under the new io.js-inspired development process, and how you could become a collaborator too. As a Node.js TSC member with broad knowledge of the project, I'll be giving an overview of node core and the related Working Groups with how you could get involved as well as why you should try to get involved.
Node Core is ultimately at the center of this conference and the node community as a whole. Sure, we've all wanted to make it better, but node core is a little frightening. Where does one start contributing? Will you be hammered with review? What if you don't know C++? Do you need to dedicate lots of time? Will your contribution attempt even be noticed? These questions and more will be answered as I tell how I became a collaborator under the new io.js-inspired development process, and how you could become a collaborator too. As a Node.js TSC member with broad knowledge of the project, I'll be giving an overview of node core and the related Working Groups with how you could get involved as well as why you should try to get involved.
- 1 participant
- 20 minutes
11 Dec 2015
Mariano Campo, MercadoLibre
Building your own home automation system has never been easier with Node 4.x landing with ARM support.
In this presentation Mariano will explain how you can build a central hub for any home automation device you can think of. All you need is a RaspberryPi and your good old friend Node.js.
Mariano will cover an architecture based on a central hub talking to multiple smaller devices (arduino based, for example), all securely accessed from an interface deployed in the cloud.
Building your own home automation system has never been easier with Node 4.x landing with ARM support.
In this presentation Mariano will explain how you can build a central hub for any home automation device you can think of. All you need is a RaspberryPi and your good old friend Node.js.
Mariano will cover an architecture based on a central hub talking to multiple smaller devices (arduino based, for example), all securely accessed from an interface deployed in the cloud.
- 1 participant
- 20 minutes
11 Dec 2015
Max Ogden, DAT Project
Recent low level primitives like Buffers in Node, Typed Arrays in JavaScript, Node Native C++ Addons and Web Assembly and Web Workers have brought JavaScript and the Web in general into exciting new territory: Scientific computing!
I believe the future of scientific computing on the web means using Node to wrap your C programs in a high level API, building dataviz in WebGL and shipping the whole thing to your users in an Electron application.
While things are more possible now on the web than ever before, we still have a lot of catching up to do until we have a stack that could rival the excellent tools written by the PyData community.
Learn about potential JavaScript/Node features critical for supporting interesting new use cases: SIMD, Value Types, 64 Bit Integers, virtual filesystems, shared memory and when (or if) we can ever get the standards bodies to prioritize them.
Recent low level primitives like Buffers in Node, Typed Arrays in JavaScript, Node Native C++ Addons and Web Assembly and Web Workers have brought JavaScript and the Web in general into exciting new territory: Scientific computing!
I believe the future of scientific computing on the web means using Node to wrap your C programs in a high level API, building dataviz in WebGL and shipping the whole thing to your users in an Electron application.
While things are more possible now on the web than ever before, we still have a lot of catching up to do until we have a stack that could rival the excellent tools written by the PyData community.
Learn about potential JavaScript/Node features critical for supporting interesting new use cases: SIMD, Value Types, 64 Bit Integers, virtual filesystems, shared memory and when (or if) we can ever get the standards bodies to prioritize them.
- 1 participant
- 20 minutes
11 Dec 2015
Peter Elger, nearForm
Whilst micro-service based architectures promise many benefits in production, such as rapid continuous deployment cycles, current developer tools are lagging behind. Irrespective of platform our current toolchains are very much oriented around the construction of monolithic application stacks and are unwieldy and cumbersome when applied to micro-service based systems. This talk will demonstrate a dynamic and responsive developer toolchain
for micro-services that is more aligned with this architectural style, with live coding examples and deployment through to staging.
This talk will cover the tools that nearForm use to develop micro-services in the wild, something we've discovered and iterated on over the last three years.
Whilst micro-service based architectures promise many benefits in production, such as rapid continuous deployment cycles, current developer tools are lagging behind. Irrespective of platform our current toolchains are very much oriented around the construction of monolithic application stacks and are unwieldy and cumbersome when applied to micro-service based systems. This talk will demonstrate a dynamic and responsive developer toolchain
for micro-services that is more aligned with this architectural style, with live coding examples and deployment through to staging.
This talk will cover the tools that nearForm use to develop micro-services in the wild, something we've discovered and iterated on over the last three years.
- 1 participant
- 24 minutes
11 Dec 2015
Mike MacCana, CertSimple
npm everywhere: all the things we wish we'd known earlier. This talk is a look at a real world production app using
npm on the front end, npm on the back end, and npm for all code - no lib dirs, no anything else. Including:
- Benefits of using modules for your own original code
- Benefits of using npm for front end developers
- Including non-JavaScript code in your bundles
- Tools to analyse and reduce frontend bundle size
- Ensuring repeatable deploys
- Reducing module fatigue
npm everywhere: all the things we wish we'd known earlier. This talk is a look at a real world production app using
npm on the front end, npm on the back end, and npm for all code - no lib dirs, no anything else. Including:
- Benefits of using modules for your own original code
- Benefits of using npm for front end developers
- Including non-JavaScript code in your bundles
- Tools to analyse and reduce frontend bundle size
- Ensuring repeatable deploys
- Reducing module fatigue
- 2 participants
- 28 minutes
11 Dec 2015
Steven Loomis, IBM
Node.js v0.12 - and once again v3.1 after the merge - supports the "Intl" object out of the box for the Ecma-402 Internationalization API. What is Internationalization? Why is it important for developers?
This presentation will give a very brief history of the efforts to improve internationalization in JavaScript in general and Node.js in particular, including the work of the Node.js Intl working group. It will give you some resources and best practices you can use now, as well as look at what's next in the world of Node Intl.
Node.js v0.12 - and once again v3.1 after the merge - supports the "Intl" object out of the box for the Ecma-402 Internationalization API. What is Internationalization? Why is it important for developers?
This presentation will give a very brief history of the efforts to improve internationalization in JavaScript in general and Node.js in particular, including the work of the Node.js Intl working group. It will give you some resources and best practices you can use now, as well as look at what's next in the world of Node Intl.
- 1 participant
- 20 minutes
11 Dec 2015
Sam Roberts, Strongloop
It’s quiz time. What would you expect to get back from a call to url.encode? The answer may surprise you. This session will be a walk through some of the pitfalls in the Node.js core API, how to avoid them, and a discussion of whether they can or should be fixed. Sam will discuss why these APIs behave the way they do and how they might be changed, along with the arguments for keeping them the same.
The session will conclude with thoughts on Node.js core API stability, including who it helps, who it hurts, and whether as a community we should value improving the core API for the benefit of emerging users over keeping it stable for the benefit of existing users and their existing code bases.
It’s quiz time. What would you expect to get back from a call to url.encode? The answer may surprise you. This session will be a walk through some of the pitfalls in the Node.js core API, how to avoid them, and a discussion of whether they can or should be fixed. Sam will discuss why these APIs behave the way they do and how they might be changed, along with the arguments for keeping them the same.
The session will conclude with thoughts on Node.js core API stability, including who it helps, who it hurts, and whether as a community we should value improving the core API for the benefit of emerging users over keeping it stable for the benefit of existing users and their existing code bases.
- 1 participant
- 22 minutes
11 Dec 2015
Melissa Evers-Hood and Paul Cooper, Intel
As usage models, functionality and form factors explode in IoT, node.js development is flexing and evolving rapidly. We’d like to discuss what is working well, what are the challenges, where are the community work arounds and what needs to be addressed for node.js to be the project to fuel the next decade of IoT innovation.
As usage models, functionality and form factors explode in IoT, node.js development is flexing and evolving rapidly. We’d like to discuss what is working well, what are the challenges, where are the community work arounds and what needs to be addressed for node.js to be the project to fuel the next decade of IoT innovation.
- 10 participants
- 19 minutes
11 Dec 2015
Node.js Foundation TSC Panel - Mikeal Rogers; Chris Dickinson; Colin Ihrig; Jeremiah Senkpiel; and James M. Snell
- 12 participants
- 35 minutes
11 Dec 2015
Juan Carlos Santos, StrongLoop; Joe Rice, Bank of America; Bryan Rogers, TD Bank; Shelby Sanders, GoDaddy
Learn why developers are adopting Docker in droves and why many are finding a natural affinity between Node.js and Docker. Why should you consider Dockerizing? Hear from industry experts at New Relic, Joyent, Modulus, and NearForm who use Node.js and Docker for everything from fast rapid prototyping in dev/test to running mission critical workloads in production.
Learn why developers are adopting Docker in droves and why many are finding a natural affinity between Node.js and Docker. Why should you consider Dockerizing? Hear from industry experts at New Relic, Joyent, Modulus, and NearForm who use Node.js and Docker for everything from fast rapid prototyping in dev/test to running mission critical workloads in production.
- 5 participants
- 50 minutes
11 Dec 2015
Matteo Collina, nearForm
The NodeBots movement aims to help everybody control robots with Node, but all the examples online focus on controlling a single machine. At NodeConf.eu we built 4 robots that were able to serve 134 cocktails in 1 hour and a half. They were all wifi controlled and we are able to order drinks from our smartphones. In the process, we fried 2 Raspberry Pi2, fried 4 transistors, burned two fingers, live deployed bug-fixes but ultimately made four robots that could serve 2 drinks each. For this scaled-up prototype, we used Johnny-Five, MQTT.js, some other popular JS libraries (express, socket.io, and many others), we open sourced all our code and our blueprints, so you can build one yourself! This is the story of this journey, from inception to the event.
The NodeBots movement aims to help everybody control robots with Node, but all the examples online focus on controlling a single machine. At NodeConf.eu we built 4 robots that were able to serve 134 cocktails in 1 hour and a half. They were all wifi controlled and we are able to order drinks from our smartphones. In the process, we fried 2 Raspberry Pi2, fried 4 transistors, burned two fingers, live deployed bug-fixes but ultimately made four robots that could serve 2 drinks each. For this scaled-up prototype, we used Johnny-Five, MQTT.js, some other popular JS libraries (express, socket.io, and many others), we open sourced all our code and our blueprints, so you can build one yourself! This is the story of this journey, from inception to the event.
- 1 participant
- 20 minutes
11 Dec 2015
Bradley Holt, IBM Cloudant
Web and mobile apps shouldn't stop working when there's no network connection. Based on Apache CouchDB, PouchDB is an open source syncing JavaScript database that runs within a web browser. Offline-first apps that use PouchDB can provide a better, faster user experience—both offline and online.
Learn how to build offline-enabled responsive mobile web apps using the HTML5 Offline Application Cache and PouchDB. We’ll also discuss how to build cross-platform apps or high-fidelity prototypes using PouchDB, Cordova, and Ionic. PouchDB can also be run within Node.js and on devices for Internet of Things (IoT) applications.
This talk includes code examples for creating a PouchDB database, creating a new document, updating a document, deleting a document, querying a database, synchronization PouchDB with a remote database, and live updates to a user interface based on database changes.
Web and mobile apps shouldn't stop working when there's no network connection. Based on Apache CouchDB, PouchDB is an open source syncing JavaScript database that runs within a web browser. Offline-first apps that use PouchDB can provide a better, faster user experience—both offline and online.
Learn how to build offline-enabled responsive mobile web apps using the HTML5 Offline Application Cache and PouchDB. We’ll also discuss how to build cross-platform apps or high-fidelity prototypes using PouchDB, Cordova, and Ionic. PouchDB can also be run within Node.js and on devices for Internet of Things (IoT) applications.
This talk includes code examples for creating a PouchDB database, creating a new document, updating a document, deleting a document, querying a database, synchronization PouchDB with a remote database, and live updates to a user interface based on database changes.
- 1 participant
- 22 minutes
11 Dec 2015
Athan Reines, Verbify, Inc.
Traditionally, if you wanted to write fast code for numeric computation, you used Fortran or C. Within the past two decades, we have seen an enormous shift toward languages which favor expressiveness over absolute speed. Much of scientific computing is now performed using dynamic, loosely typed languages, such as R or Python. Taking into account JavaScript's expressiveness, why not do your computing in Node? In this talk, Athan Reines will discuss numeric computation in JavaScript, libraries currently available, and what makes these libraries competitive with and even superior to alternatives on other platforms. He will discuss how to leverage Node libraries when building P2P compute applications, culminating in a demo showcasing WebRTC and RPC over a peer network. Finally, he will outline future steps and identify opportunities for community development of next-generation tools.
Traditionally, if you wanted to write fast code for numeric computation, you used Fortran or C. Within the past two decades, we have seen an enormous shift toward languages which favor expressiveness over absolute speed. Much of scientific computing is now performed using dynamic, loosely typed languages, such as R or Python. Taking into account JavaScript's expressiveness, why not do your computing in Node? In this talk, Athan Reines will discuss numeric computation in JavaScript, libraries currently available, and what makes these libraries competitive with and even superior to alternatives on other platforms. He will discuss how to leverage Node libraries when building P2P compute applications, culminating in a demo showcasing WebRTC and RPC over a peer network. Finally, he will outline future steps and identify opportunities for community development of next-generation tools.
- 1 participant
- 21 minutes
11 Dec 2015
Philip James, Eventbrite
Yes, making sites responsive can be a pain, especially larger, older sites that have been touched by many hands and which might have dark corners that people would prefer to avoid. But we all know how crucial it is to make more and more of our work responsive, and there are things you can do to make big pushes towards responsiveness easier. This talk will cover:
- The problem of making large sites responsive
- Techniques you can use in planning to help divide the work in a sane way
- Tools you can use and develop to make responsifying pages easier
- Tips on how to train all your engineers, backend, frontend, and otherwise, to be able to make pages responsive.
These lessons will be drawn from the example of Eventbrite, who went through a major responsive overhaul last year.
Yes, making sites responsive can be a pain, especially larger, older sites that have been touched by many hands and which might have dark corners that people would prefer to avoid. But we all know how crucial it is to make more and more of our work responsive, and there are things you can do to make big pushes towards responsiveness easier. This talk will cover:
- The problem of making large sites responsive
- Techniques you can use in planning to help divide the work in a sane way
- Tools you can use and develop to make responsifying pages easier
- Tips on how to train all your engineers, backend, frontend, and otherwise, to be able to make pages responsive.
These lessons will be drawn from the example of Eventbrite, who went through a major responsive overhaul last year.
- 2 participants
- 23 minutes
11 Dec 2015
Robert Schultz, Ancestry.com
Adoption of new technologies across a large developer ecosystem in a product company is not easy. Over the past year we've learned a lot of lessons on this process as we transition our frontend applications from C# to Node.js. I'd like to share with you the tips and tricks to successfully selling the adoption of Node.js both to your developers and the business in an incremental way.
Adoption of new technologies across a large developer ecosystem in a product company is not easy. Over the past year we've learned a lot of lessons on this process as we transition our frontend applications from C# to Node.js. I'd like to share with you the tips and tricks to successfully selling the adoption of Node.js both to your developers and the business in an incremental way.
- 1 participant
- 19 minutes
10 Dec 2015
Chris Bailey, IBM
Even the most innovative and groundbreaking applications risk failure if they do not provide an engaging and responsive user experience. Performance and scalability both require access to real-time performance data that lets developers optimize code, allows the infrastructure to scale automatically, enables operations teams to identify issues, and gives business owners insights into the success of the application.
This session will show you how to add application performance monitoring and analytics capabilties to your application, using the open source Node Application Metrics data collector, alongside open source monitoring stacks like StatsD with Graphite, and Elasticsearch with Kibana.
Even the most innovative and groundbreaking applications risk failure if they do not provide an engaging and responsive user experience. Performance and scalability both require access to real-time performance data that lets developers optimize code, allows the infrastructure to scale automatically, enables operations teams to identify issues, and gives business owners insights into the success of the application.
This session will show you how to add application performance monitoring and analytics capabilties to your application, using the open source Node Application Metrics data collector, alongside open source monitoring stacks like StatsD with Graphite, and Elasticsearch with Kibana.
- 1 participant
- 22 minutes
10 Dec 2015
Mikeal Rogers, Community Manager; Danese Cooper, Paypal; Bill Fine, Joyent; Todd Moore, IBM; Charlie Robbins, GoDaddy; Gianugo Rabellno, Microsoft; Rich Sharples, Red Hat
- 7 participants
- 46 minutes
10 Dec 2015
Bryce Baril, NodeSource
There are great tools available for performance optimization of Node.js code, but it's not always clear when or how to use them.
In this session, Bryce Baril will present a case study to demonstrate some useful Node.js performance analysis tools and how to use them and understand their results. A wide range of tooling will be explored, from generic kernel-level tooling, to V8 tracing tooling, to V8 compiler tooling in a quest to optimize some Node.js code.
There are great tools available for performance optimization of Node.js code, but it's not always clear when or how to use them.
In this session, Bryce Baril will present a case study to demonstrate some useful Node.js performance analysis tools and how to use them and understand their results. A wide range of tooling will be explored, from generic kernel-level tooling, to V8 tracing tooling, to V8 compiler tooling in a quest to optimize some Node.js code.
- 1 participant
- 24 minutes
10 Dec 2015
Joab Jackson and Alex Williams, The New Stack; Bryan Cantrill, Joyent; Peter Elger, NearForm; Jacob Groundwater, New Relic; Matt Hernandez, Modulus
- 11 participants
- 42 minutes
10 Dec 2015
Bryan Cantrill, Joyent
Joyent has been running Node.js in production and at scale for over 5 years. As such, we've learned production practices for designing, deploying and debugging Node.js apps and we've built container-native solutions to optimize app performance, security, and management. Experience the container-native difference!
Joyent has been running Node.js in production and at scale for over 5 years. As such, we've learned production practices for designing, deploying and debugging Node.js apps and we've built container-native solutions to optimize app performance, security, and management. Experience the container-native difference!
- 1 participant
- 5 minutes