SlideShare a Scribd company logo
1 of 19
NodeJS Introduction What is Node? (Teaser) How to install/set-up and examples
Introduction Introduction to Node JS How to Install/Tools Basic Node concepts (teaser) Demo
Nodejs Introduction NodeJS is built on Google’s V8 Javascript engine Server-side non blocking asynchronous JS Perfect for “blood” of Web 2.0 apps (streams, comet, AJAX, etc) and scale
How to Install (VM) (1/5) Download Ubuntu  TurnKey from http://www.turnkeylinux.org/core Download the free Vmware player from http://www.vmware.com/download/player/thankyou.html      (or use VMWare Workstation) Start the Turnkey Virtual Appliance and follow instruction to set-up root password and update security. Note IP@ to connect to with SSH
How to Install (SSH) (2/5) Get your favorite SSH tool (duh, Putty!) http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html Set-up your SSH connection as indicated left  Approve to the RSA key as shown right
How to Install (Misc.) (3/5) Get Filezilla http://filezilla-project.org/ if you want to transfer through SSH with your favorite editor I use NotePad++ http://notepad-plus-plus.org/with an NppFTP extension http://sourceforge.net/projects/nppftp/ (not automated but easier to remember)
How to Install (Git) (4/5) Install Compile tools apt-get install gcc apt-get install g++ apt-get install make Install Git (would be a good L&L. Volunteers?) apt-get install git-core Git the node repo:  (alternative is to download & install the TAR’ed version from nodejs but what’s the fun  ? wget http://nodejs.org/dist/node-v0.4.12.tar.gz) gitclone git://github.com/joyent/node.git  Make sure to use the latest stable version (As of 10/3/2011, I recommend 0.4.11. 0.4.12 seems to be the latest though)  cd node gitcheckout v0.4.11  Configure/Make ./configure Make Make Install You are all set: cd benchmark/ node v8_bench.js
How to Install (NPM) (5/5) Get CURL  apt-get install curl Install NPM curl http://npmjs.org/install.sh | sh You are all set npm
What is NPM? NPM is a Node Dependency manager (better than APT) Get a package, and all dependent package will automatically be installed
Good Node Packages Connect The middleware framework for node: Logging, Cookies, Sessions, Cache, response time … Express Built on Connect. Essentially all the libraries that people are used to when doing server side development   (such asp.net) (Routing, content negotiations, configurations, etc)  Socket.io “Socket.IO aims to make realtime apps possible in every browser and mobile device, blurring the differences between the different transport mechanisms. It's care-free realtime 100% in JavaScript.” (essentially synthetically do “sockets” in HTTP) Twitternode A complete node twitter client API wrapper supporting full JSON streams.
Why on earth would I want do do server-side JavaScript? Because geeks like to play with new things Because you like the open/flexible/powerful nature of a language such as javascript You already do a lot of client-side javascript You need to “Web” scale ,[object Object]
You do many medium size payloads that could benefit from asynchronous processing
Many javascript developers and a growing established open-source javascriptlibraries and code repository,[object Object],[object Object]
So what have we learnt so far? Node.JS is using non-blocking, event-based (asynchronous) engine to deliver a much more scalable server Javascript is a really natural fit for event-based programming
Events in Node.js Relies on event-loop system Should be familiar for all developers (.net …) who used events & delegates or others who are familiar with concept of callbacks. Javascript is a really natural fit for event-based programming Builds on anonymous functions (lamba*)  * Tom will do a L&L on advanced JS (closure, Lambda) concepts shortly
Blocking vs Non Blocking
Event Loop Demo Demo!
NodeJS Full Demo
References Web faction blog http://blog.webfaction.com/a-little-holiday-present Understanding event loops and writing great code for node.js http://developer.yahoo.com/blogs/ydn/posts/2010/10/understanding-the-event-loops-and-writing-great-code-for-node-js-part-1/ A Not Very Short Introduction To node.js http://blog.jayway.com/2011/05/15/a-not-very-short-introduction-to-node-js/ Comet with node.js and V8 (amix) http://www.slideshare.net/amix3k/comet-with-nodejs-and-v8 Introduction to node.js (JacekBecela) http://www.slideshare.net/jacekbecela/introduction-to-nodejs Node.JS references http://nodejs.org/ Bex Huff  http://bexhuff.com/

More Related Content

What's hot

What's hot (20)

Introduction to NodeJS
Introduction to NodeJSIntroduction to NodeJS
Introduction to NodeJS
 
NodeJS - Server Side JS
NodeJS - Server Side JS NodeJS - Server Side JS
NodeJS - Server Side JS
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 
Node.js Express
Node.js  ExpressNode.js  Express
Node.js Express
 
Intro to Node.js (v1)
Intro to Node.js (v1)Intro to Node.js (v1)
Intro to Node.js (v1)
 
Node js for beginners
Node js for beginnersNode js for beginners
Node js for beginners
 
NodeJS guide for beginners
NodeJS guide for beginnersNodeJS guide for beginners
NodeJS guide for beginners
 
Vue.js for beginners
Vue.js for beginnersVue.js for beginners
Vue.js for beginners
 
Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...
Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...
Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...
 
Node.js
Node.jsNode.js
Node.js
 
Node js
Node jsNode js
Node js
 
Intro to vue.js
Intro to vue.jsIntro to vue.js
Intro to vue.js
 
Express js
Express jsExpress js
Express js
 
Node.js Basics
Node.js Basics Node.js Basics
Node.js Basics
 
Expressjs
ExpressjsExpressjs
Expressjs
 
Basics of VueJS
Basics of VueJSBasics of VueJS
Basics of VueJS
 
Express JS
Express JSExpress JS
Express JS
 
NestJS
NestJSNestJS
NestJS
 
MongoDB and Node.js
MongoDB and Node.jsMongoDB and Node.js
MongoDB and Node.js
 
Vue.js
Vue.jsVue.js
Vue.js
 

Viewers also liked

Node js presentation
Node js presentationNode js presentation
Node js presentation
martincabrera
 
Single-Page Web Application Architecture
Single-Page Web Application ArchitectureSingle-Page Web Application Architecture
Single-Page Web Application Architecture
Eray Arslan
 

Viewers also liked (20)

Non-blocking I/O, Event loops and node.js
Non-blocking I/O, Event loops and node.jsNon-blocking I/O, Event loops and node.js
Non-blocking I/O, Event loops and node.js
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 
Introduction to node.js
Introduction to node.jsIntroduction to node.js
Introduction to node.js
 
Node js presentation
Node js presentationNode js presentation
Node js presentation
 
Best node js course
Best node js courseBest node js course
Best node js course
 
The Enterprise Case for Node.js
The Enterprise Case for Node.jsThe Enterprise Case for Node.js
The Enterprise Case for Node.js
 
Introduction to node js - From "hello world" to deploying on azure
Introduction to node js - From "hello world" to deploying on azureIntroduction to node js - From "hello world" to deploying on azure
Introduction to node js - From "hello world" to deploying on azure
 
node.js
node.jsnode.js
node.js
 
Node js for enterprise
Node js for enterpriseNode js for enterprise
Node js for enterprise
 
single page application
single page applicationsingle page application
single page application
 
Angular 2 with TypeScript
Angular 2 with TypeScriptAngular 2 with TypeScript
Angular 2 with TypeScript
 
Firebase and AngularJS
Firebase and AngularJSFirebase and AngularJS
Firebase and AngularJS
 
Single-Page Web Application Architecture
Single-Page Web Application ArchitectureSingle-Page Web Application Architecture
Single-Page Web Application Architecture
 
The Tale of 2 CLIs - Ember-cli and Angular-cli
The Tale of 2 CLIs - Ember-cli and Angular-cliThe Tale of 2 CLIs - Ember-cli and Angular-cli
The Tale of 2 CLIs - Ember-cli and Angular-cli
 
Rits Brown Bag - TypeScript
Rits Brown Bag - TypeScriptRits Brown Bag - TypeScript
Rits Brown Bag - TypeScript
 
Angular 2 + TypeScript = true. Let's Play!
Angular 2 + TypeScript = true. Let's Play!Angular 2 + TypeScript = true. Let's Play!
Angular 2 + TypeScript = true. Let's Play!
 
Intro to Front End Development with Angular + Firebase
Intro to Front End Development with Angular + FirebaseIntro to Front End Development with Angular + Firebase
Intro to Front End Development with Angular + Firebase
 
Angular 2 with TypeScript
Angular 2 with TypeScriptAngular 2 with TypeScript
Angular 2 with TypeScript
 
Using Angular-CLI to Deploy an Angular 2 App Using Firebase in 30 Minutes
Using Angular-CLI to Deploy an Angular 2 App Using Firebase in 30 MinutesUsing Angular-CLI to Deploy an Angular 2 App Using Firebase in 30 Minutes
Using Angular-CLI to Deploy an Angular 2 App Using Firebase in 30 Minutes
 
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
 

Similar to Node js introduction

Similar to Node js introduction (20)

Proposal
ProposalProposal
Proposal
 
Nodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredevNodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredev
 
Introduction to node.js GDD
Introduction to node.js GDDIntroduction to node.js GDD
Introduction to node.js GDD
 
Getting Started with MongoDB and Node.js
Getting Started with MongoDB and Node.jsGetting Started with MongoDB and Node.js
Getting Started with MongoDB and Node.js
 
Open stack implementation
Open stack implementation Open stack implementation
Open stack implementation
 
Nodejs
NodejsNodejs
Nodejs
 
Node.js: A Guided Tour
Node.js: A Guided TourNode.js: A Guided Tour
Node.js: A Guided Tour
 
Introduction to node.js By Ahmed Assaf
Introduction to node.js  By Ahmed AssafIntroduction to node.js  By Ahmed Assaf
Introduction to node.js By Ahmed Assaf
 
Построение простого REST сервера на Node.js | Odessa Frontend Code challenge
Построение простого REST сервера на Node.js | Odessa Frontend Code challengeПостроение простого REST сервера на Node.js | Odessa Frontend Code challenge
Построение простого REST сервера на Node.js | Odessa Frontend Code challenge
 
World of Node.JS
World of Node.JSWorld of Node.JS
World of Node.JS
 
Node J pdf.docx
Node J pdf.docxNode J pdf.docx
Node J pdf.docx
 
Node J pdf.docx
Node J pdf.docxNode J pdf.docx
Node J pdf.docx
 
Kubernetes for the PHP developer
Kubernetes for the PHP developerKubernetes for the PHP developer
Kubernetes for the PHP developer
 
Node js meetup
Node js meetupNode js meetup
Node js meetup
 
Get Ahead with HTML5 on Moible
Get Ahead with HTML5 on MoibleGet Ahead with HTML5 on Moible
Get Ahead with HTML5 on Moible
 
Node js
Node jsNode js
Node js
 
The Lies We Tell Our Code (#seascale 2015 04-22)
The Lies We Tell Our Code (#seascale 2015 04-22)The Lies We Tell Our Code (#seascale 2015 04-22)
The Lies We Tell Our Code (#seascale 2015 04-22)
 
introduction to node.js
introduction to node.jsintroduction to node.js
introduction to node.js
 
Node Session - 1
Node Session - 1Node Session - 1
Node Session - 1
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 

Recently uploaded

Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
panagenda
 

Recently uploaded (20)

Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - Questionnaire
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
BT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptx
BT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptxBT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptx
BT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptx
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 

Node js introduction

  • 1. NodeJS Introduction What is Node? (Teaser) How to install/set-up and examples
  • 2. Introduction Introduction to Node JS How to Install/Tools Basic Node concepts (teaser) Demo
  • 3. Nodejs Introduction NodeJS is built on Google’s V8 Javascript engine Server-side non blocking asynchronous JS Perfect for “blood” of Web 2.0 apps (streams, comet, AJAX, etc) and scale
  • 4. How to Install (VM) (1/5) Download Ubuntu TurnKey from http://www.turnkeylinux.org/core Download the free Vmware player from http://www.vmware.com/download/player/thankyou.html (or use VMWare Workstation) Start the Turnkey Virtual Appliance and follow instruction to set-up root password and update security. Note IP@ to connect to with SSH
  • 5. How to Install (SSH) (2/5) Get your favorite SSH tool (duh, Putty!) http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html Set-up your SSH connection as indicated left Approve to the RSA key as shown right
  • 6. How to Install (Misc.) (3/5) Get Filezilla http://filezilla-project.org/ if you want to transfer through SSH with your favorite editor I use NotePad++ http://notepad-plus-plus.org/with an NppFTP extension http://sourceforge.net/projects/nppftp/ (not automated but easier to remember)
  • 7. How to Install (Git) (4/5) Install Compile tools apt-get install gcc apt-get install g++ apt-get install make Install Git (would be a good L&L. Volunteers?) apt-get install git-core Git the node repo: (alternative is to download & install the TAR’ed version from nodejs but what’s the fun  ? wget http://nodejs.org/dist/node-v0.4.12.tar.gz) gitclone git://github.com/joyent/node.git Make sure to use the latest stable version (As of 10/3/2011, I recommend 0.4.11. 0.4.12 seems to be the latest though) cd node gitcheckout v0.4.11 Configure/Make ./configure Make Make Install You are all set: cd benchmark/ node v8_bench.js
  • 8. How to Install (NPM) (5/5) Get CURL apt-get install curl Install NPM curl http://npmjs.org/install.sh | sh You are all set npm
  • 9. What is NPM? NPM is a Node Dependency manager (better than APT) Get a package, and all dependent package will automatically be installed
  • 10. Good Node Packages Connect The middleware framework for node: Logging, Cookies, Sessions, Cache, response time … Express Built on Connect. Essentially all the libraries that people are used to when doing server side development (such asp.net) (Routing, content negotiations, configurations, etc) Socket.io “Socket.IO aims to make realtime apps possible in every browser and mobile device, blurring the differences between the different transport mechanisms. It's care-free realtime 100% in JavaScript.” (essentially synthetically do “sockets” in HTTP) Twitternode A complete node twitter client API wrapper supporting full JSON streams.
  • 11.
  • 12. You do many medium size payloads that could benefit from asynchronous processing
  • 13.
  • 14. So what have we learnt so far? Node.JS is using non-blocking, event-based (asynchronous) engine to deliver a much more scalable server Javascript is a really natural fit for event-based programming
  • 15. Events in Node.js Relies on event-loop system Should be familiar for all developers (.net …) who used events & delegates or others who are familiar with concept of callbacks. Javascript is a really natural fit for event-based programming Builds on anonymous functions (lamba*) * Tom will do a L&L on advanced JS (closure, Lambda) concepts shortly
  • 16. Blocking vs Non Blocking
  • 19. References Web faction blog http://blog.webfaction.com/a-little-holiday-present Understanding event loops and writing great code for node.js http://developer.yahoo.com/blogs/ydn/posts/2010/10/understanding-the-event-loops-and-writing-great-code-for-node-js-part-1/ A Not Very Short Introduction To node.js http://blog.jayway.com/2011/05/15/a-not-very-short-introduction-to-node-js/ Comet with node.js and V8 (amix) http://www.slideshare.net/amix3k/comet-with-nodejs-and-v8 Introduction to node.js (JacekBecela) http://www.slideshare.net/jacekbecela/introduction-to-nodejs Node.JS references http://nodejs.org/ Bex Huff http://bexhuff.com/

Editor's Notes

  1. - Lars Bak (SmallTalk, Java, now JS VM)