SlideShare a Scribd company logo
Meetup #1
Farsheed & Eddy
Sponsored by Drumbi
Food for Thought
● Packages per day across popular platforms
● Source: https://blog.nodejitsu.com/npm-innovation-through-modularity
Who We Are
● Farsheed Atef
● @captainatef
● Farsheed@Drumbi.com
● Eddy Kim
● @EddyDKim
● eddy@Drumbi.com
● Drumbi
● Drumbi.com
● Blog.Drumbi.com
● @getdrumbi
Overview
● What is Node.js
● Why Node.js
● Benefits
● JavaScript
● Modularity
● Scalability
● Architecture
● Resources/Documentation
● Hands On
What is Node.js
● A framework for developing I/O based javascript server applications
● Node.js is a set of bindings to the V8 javascript VM.
● V8 is Google's open source JavaScript engine.
● Used in Chrome
● Standalone or embedded
● Octane (https://developers.google.com/octane/)
● Focused on performance
Why Node.js
● Programmable Web
● Internet of Devices
● Requires: Scalable / Real-time
platform
● Benchmark (take with grain of salt):
● 100 Concurrent clients
● 1 megabyte response
● Node 822 req/sec
● Nginx 708 req/sec
● Thin 85 req/sec
● Mongrel 4 req/sec
http = require(’http’)
Buffer = require(’buffer’).Buffer;
n = 1024*1024;
b = new Buffer(n);
for (var i = 0; i<n; i++) b[i] = 100;
http.createServer(function (req, res) {
res.writeHead(200);
res.end(b);
}).listen(80);
Why Node.js
● Typical request
● Request a page
● Do a bunch of client stuff
● Load a bunch of static stuff
● Load a bunch of dynamic stuff
● Call a web service (Network)
● Call a Database (Network)
● Database get data (Disk, CPU)
● Format returned data (CPU, RAM)
● display data (CPU, RAM)
Why Node.js
● npm Packages
● JavaScript on Server
● Real-Time
● Design Goals:
○ Built in support for
DNS, HTTP, TLS
○ Stream Everything
○ No function should directly
perform I/O
○ Simple License MIT/BSD
● Be Careful
○ Blocking operations
Event Driven Programming
● Typical programming (multithreading - memory hungry):
○ Ask for some data
○ Wait for the person to enter
○ Do something with the submitted data
○ Display the results
● Functional programming:
○ Ask for some data
○ while waiting for the person to enter something, ask for data from someone
else, process some data, display results to someone whose data is ready.
JavaScript
● First Class Functions
● Lambdas
● Available across all web browsers
● Closures
Why Javascript?
Ubiquity
Code Re-use
Existing Skillset/Libraries
-moment js
-underscore js
Why Javascript?
Functions are 1st class objects
Ideally suited for Evented/Async Programming
Why Javascript?
Functions as Objects in Async Programming
Why Javascript?
Closures in a Nutshell
● Allows Inner Functions to access variables in Outer Function
○ Very useful for event callback patterns
Why Javascript?
Closures in a Nutshell
● Enables Data Encapsulation via local scopes
Modularity
● NodeJS focuses on quality, small modules
○ export via module.exports =
○ import via require('moduleName')
Resources
http://nodejs.org/
http://javascriptissexy.com/
http://stackoverflow.com/questions/2353818/how-do-i-get-
started-with-node-js
eddy@drumbi.com
farsheed@drumbi.com
Hands On
● Node JS Installation
○ http://nodejs.org/download/
● Creating a hello world using Http Module
● Creating a web using Express Module

More Related Content

PDF
Intro to node.js
PPTX
From NodeJS to Rust
PDF
Continuous Deployment of Front-end JavaScript with StriderCD, Github and Sauc...
PDF
Building a Modern JavaScript Framework by James Milner
PDF
C4ainaction-Introduction to the Pyramid Web Framework
PDF
About order form improvements
PDF
Nginx, PHP and Node.js
PDF
Intro to node.js
Intro to node.js
From NodeJS to Rust
Continuous Deployment of Front-end JavaScript with StriderCD, Github and Sauc...
Building a Modern JavaScript Framework by James Milner
C4ainaction-Introduction to the Pyramid Web Framework
About order form improvements
Nginx, PHP and Node.js
Intro to node.js

What's hot (20)

PDF
Devoxx Belgium 2018 - Micronaut in Action!
PDF
Codemotion Madrid 2018 - Microservicios Reactivos con Micronaut
PDF
Node.js basics
PPTX
Node.js Test
PPTX
Building the AO tech blog
PPTX
Building the AO Tech Blog
PDF
Bootify Yyour App from Zero to Hero
PDF
Node.js by Alex and Nalin
PDF
OSDC 2015: Dr. Udo Seidel | Developing Applications for the New Cloud Operati...
PDF
Mean Stack for Beginners
PDF
Mifos X - Extensible Platform and Software Development Kit
PDF
Mastering the pipeline
PPTX
Voyage en terre du multi-cloud
PDF
Integrating Node.js with PHP
ODP
Django packages list
PPTX
Gutenberg Extended
PPTX
Angular2.0@Shanghai0319
PDF
CON6423: Scalable JavaScript applications with Project Nashorn
PPTX
Go bei der 4Com GmbH & Co. KG
ODP
Intro to Ruby on Rails - BCC 2014
Devoxx Belgium 2018 - Micronaut in Action!
Codemotion Madrid 2018 - Microservicios Reactivos con Micronaut
Node.js basics
Node.js Test
Building the AO tech blog
Building the AO Tech Blog
Bootify Yyour App from Zero to Hero
Node.js by Alex and Nalin
OSDC 2015: Dr. Udo Seidel | Developing Applications for the New Cloud Operati...
Mean Stack for Beginners
Mifos X - Extensible Platform and Software Development Kit
Mastering the pipeline
Voyage en terre du multi-cloud
Integrating Node.js with PHP
Django packages list
Gutenberg Extended
Angular2.0@Shanghai0319
CON6423: Scalable JavaScript applications with Project Nashorn
Go bei der 4Com GmbH & Co. KG
Intro to Ruby on Rails - BCC 2014
Ad

Similar to NODE JS OC Meetup 1 (20)

PPTX
Node.js Web Apps @ ebay scale
PDF
PDF
Screaming Fast Wpmu
PDF
Netty training
PDF
Making sense of the front-end, for PHP developers
PPT
Introducción y comandos en NodeJS slodte
PPTX
The Professional Programmer
PDF
Tech meetup: Web Applications Performance
PPT
Introduction to node.js aka NodeJS
PDF
Full stack development
PPTX
Node js for beginners
PDF
Docker. Does it matter for Java developer ?
PDF
Node.js Presentation
ODP
Javascript Update May 2013
PDF
Cloud arch patterns
PDF
Ansible and CloudStack
PDF
HTML, CSS & Javascript Architecture (extended version) - Jan Kraus
PDF
Dockerize magento 2 24.02.2016
PDF
Scalable Clusters On Demand
PDF
Wordcamp Bratislava 2017 - Docker! Why?
Node.js Web Apps @ ebay scale
Screaming Fast Wpmu
Netty training
Making sense of the front-end, for PHP developers
Introducción y comandos en NodeJS slodte
The Professional Programmer
Tech meetup: Web Applications Performance
Introduction to node.js aka NodeJS
Full stack development
Node js for beginners
Docker. Does it matter for Java developer ?
Node.js Presentation
Javascript Update May 2013
Cloud arch patterns
Ansible and CloudStack
HTML, CSS & Javascript Architecture (extended version) - Jan Kraus
Dockerize magento 2 24.02.2016
Scalable Clusters On Demand
Wordcamp Bratislava 2017 - Docker! Why?
Ad

Recently uploaded (20)

PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
A Presentation on Artificial Intelligence
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Approach and Philosophy of On baking technology
PPTX
cloud_computing_Infrastucture_as_cloud_p
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
Zenith AI: Advanced Artificial Intelligence
PPTX
Chapter 5: Probability Theory and Statistics
PDF
Encapsulation theory and applications.pdf
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PPTX
1. Introduction to Computer Programming.pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Web App vs Mobile App What Should You Build First.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Programs and apps: productivity, graphics, security and other tools
A Presentation on Artificial Intelligence
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Approach and Philosophy of On baking technology
cloud_computing_Infrastucture_as_cloud_p
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Zenith AI: Advanced Artificial Intelligence
Chapter 5: Probability Theory and Statistics
Encapsulation theory and applications.pdf
SOPHOS-XG Firewall Administrator PPT.pptx
1. Introduction to Computer Programming.pptx
MIND Revenue Release Quarter 2 2025 Press Release
OMC Textile Division Presentation 2021.pptx
A novel scalable deep ensemble learning framework for big data classification...
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Web App vs Mobile App What Should You Build First.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Group 1 Presentation -Planning and Decision Making .pptx
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...

NODE JS OC Meetup 1