Introduction to Node.js

https://slides.com/carlosgoyeneche/introduction-to-node-js

Carlos Goyeneche

@GoyeSays

https://github.com/Goye

What is Node.js?

“Node's goal is to provide an easy way to build-scalable network programs” 

http://nodejs.org/#about

What is Node.js?

  • It's a programming environment in the server side based in javascript

  • It is 40 % Js and 60 % C++

  • It’s a command line tool

  • Uses the V8 JavaScript engine

http://nodejs.org/#about

But why choose Node.js?

  1. You already know javascript

But why choose Node.js?

2.  it's fast very fast

But why choose Node.js?

2.  it's fast very fast

  • V8 compiles JavaScript into native machine code.
  • I/O Bound tasks for most interaction (Single thread asynchronous I/O )

But why choose Node.js?

2.  it's fast very fast (Node.js benchmark)

But why choose Node.js?

2.  it's fast very fast (Node.js benchmark)

But why choose Node.js?

3.  Real time and streaming data, made easy

But why choose Node.js?

3.  Real time and streaming data, made easy

But why choose Node.js?

4.  Package manager

"Easy, fast, robust, and consistent package manager"

But Node.js is the panacea? when to not use Node.js

  • Applications with high CPU performance calculations on server side, because event-loops are so hungry.

  • Server side applications w/ a relational DB behind.

  • if you are not familiar with the callbacks (Nested callback hell)

DEMO

Companies using node.js

  • Linkedin: LinkedIn uses a combination of Node.js and MongoDb for its mobile platform.

  • Ebay: Uses Node.js along with ql.io to improve the user experience.

  • Yahoo: he basis of Yahoo! Manhattan is based on Node.js.

  • Paypal: Created the KrakenJsFramework, which is now used in the developement of all new web applications.

  • Microsoft: Azure CLI tools are actually written in Node.js.

  • Netflix: the next-generation Netflix.com web application uses Node.js.

More projects here https://github.com/joyent/node/wiki/Projects,-Applications,-and-Companies-Using-Node

More communities, more exciting

  • Watch Node.js tutorials http://nodetuts.com/

  • Improve your skills http://nodeschool.io/

  • Learn more about mongoDb http://docs.mongodb.org/manual/core/introduction/

  • interesting video of  Erik Toth (@eriktoth)  Kraken.js maintainer https://www.youtube.com/watch?v=bvDtEcQdGs0

For more information remember google is your friend :)

Bonus slides!

The future

+

Ecmascript 6 features

  • Default values on functions

The future

  • New function Arrow

Ecmascript 6 features

The future

  • The new use of 'this'

Ecmascript 6 features

The future

  • Class and inheritance

Ecmascript 6 features

The future

  • Declarations using let

Ecmascript 6 features

The future

  • Multiple assignment

Ecmascript 6 features

The future

And a lot of new more things!

https://github.com/lukehoban/es6features/blob/master/README.md

Questions?

https://github.com/Goye

Thanks a lot!

https://github.com/Goye

Made with Slides.com