SlideShare une entreprise Scribd logo
1  sur  10
3rd GreeceJS
Meetup

NODE.JS

a pragmatic approach
Kostas Karolemeas
http://gr.linkedin.com/in/kostaskarolemeas
3rd GreeceJS Meetup

Kostas Karolemeas
3rd GreeceJS Meetup

WHAT IS NODE.JS?
Evented I/O for v8 javascript
Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses
an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time
applications that run across distributed devices.

Kostas Karolemeas
3rd GreeceJS Meetup

WHY NODE.JS?
•

Performance and Scalability
•

•

BUT: you need to respect the asynchronous model otherwise node cannot fix late
responses…

End-to-end javascript / reusable code / no need to switch contexts
•

BUT: a good web developer is not by default a good server-side developer

•

AND: you will not be able to write in the same way both sides (e.g. different
frameworks)

•

Strong, responsive and enthusiastic community

•

Many hosting options (IaaS to PaaS)

•

Mature development tools

Kostas Karolemeas
3rd GreeceJS Meetup

NODE.JS SERVICES
URI routing
URI routing
(e.g. REST API)
(e.g. REST API)

Jade
Jade
Ham
Ham
ll

Views (templates)
Views (templates)

Express
Express
(web dev.
(web dev.
framework)
framework)

Sessions
Sessions

EJS
EJS

Error Handling
Error Handling
Configuration
Configuration

Logging
Logging
Cookies
Cookies

Connect
Connect
(middleware)
(middleware)

Auth
Auth
Session
Session
Stores
Stores

Kostas Karolemeas
3rd GreeceJS Meetup

NODE.JS APP STACK
Express // Connect
Express Connect
Async.js
Async.js

(asynchronous call
(asynchronous call
management)
management)

Mongoose
Mongoose

(async object modeling
(async object modeling
for MongoDB)
for MongoDB)

Winston
Winston

(multi-transport async logging)
(multi-transport async logging)

node-mongodb-native
node-mongodb-native

Kostas Karolemeas
3rd GreeceJS Meetup

DEPLOYING NODE.JS
FREE
Blitz
Blitz

Release
Release
Management
Management

Dynos
Dynos

Logging
Logging

Redis To Go
Redis To Go

Kostas Karolemeas
3rd GreeceJS Meetup

NODE.JS TOOLS
•

npm - package/dependency manager

•

Mocha - test framework
•
•

Alternative Reporters for results

•

•

Alternative DSL (interfaces) for describing tests

Runs either from a shell or in a browser

WebStorm - Javascript IDE
•

Integrated Node.js launcher / debugger

•

Excellent javascript editor

•

Very good integration with task management and version control tools
Kostas Karolemeas
3rd GreeceJS Meetup

WHAT’S NEXT?
•

Give it a spin!
•

Install Node.JS and NPM

•

Install WebStorm

•

Install Git

•

Create an account in Heroku and install tools

•

Follow Heroku instructions to create a Node.js application
•

•

Use heroku-buildpack-nodejs to install latest Node.js

Install Heroku add-ons: MongoLab, Redis To Go, Logging, Release
Management
Kostas Karolemeas
3rd GreeceJS Meetup

THANK YOU!

Kostas Karolemeas

Contenu connexe

Tendances

Midgard & Nemein - when an open source project and company evolve together
Midgard & Nemein - when an open source project and company evolve togetherMidgard & Nemein - when an open source project and company evolve together
Midgard & Nemein - when an open source project and company evolve together
Henri Bergius
 
Developpement informatique
Developpement informatiqueDeveloppement informatique
Developpement informatique
brokerslip0
 
CreateJS hackathon in Zurich
CreateJS hackathon in ZurichCreateJS hackathon in Zurich
CreateJS hackathon in Zurich
Henri Bergius
 
Modern UI Architecture_ Trends and Technologies in Web Development
Modern UI Architecture_ Trends and Technologies in Web DevelopmentModern UI Architecture_ Trends and Technologies in Web Development
Modern UI Architecture_ Trends and Technologies in Web Development
Suresh Patidar
 

Tendances (20)

Midgard & Nemein - when an open source project and company evolve together
Midgard & Nemein - when an open source project and company evolve togetherMidgard & Nemein - when an open source project and company evolve together
Midgard & Nemein - when an open source project and company evolve together
 
Web Based Development Introduction
Web Based Development IntroductionWeb Based Development Introduction
Web Based Development Introduction
 
Slide Seminar Open Source (CodeLabs UNIKOM Bandung)
Slide Seminar Open Source (CodeLabs UNIKOM Bandung)Slide Seminar Open Source (CodeLabs UNIKOM Bandung)
Slide Seminar Open Source (CodeLabs UNIKOM Bandung)
 
Create.js - Inline editing for any website
Create.js - Inline editing for any websiteCreate.js - Inline editing for any website
Create.js - Inline editing for any website
 
Course Document
Course DocumentCourse Document
Course Document
 
Decoupling Content Management
Decoupling Content ManagementDecoupling Content Management
Decoupling Content Management
 
Node.js
Node.jsNode.js
Node.js
 
Developpement informatique
Developpement informatiqueDeveloppement informatique
Developpement informatique
 
Session dotNed Saturday 28 januari 2017
Session dotNed Saturday 28 januari 2017Session dotNed Saturday 28 januari 2017
Session dotNed Saturday 28 januari 2017
 
Programming pillars
Programming pillarsProgramming pillars
Programming pillars
 
jQuery
jQueryjQuery
jQuery
 
Node.js and express
Node.js and expressNode.js and express
Node.js and express
 
CreateJS hackathon in Zurich
CreateJS hackathon in ZurichCreateJS hackathon in Zurich
CreateJS hackathon in Zurich
 
Modern UI Architecture_ Trends and Technologies in Web Development
Modern UI Architecture_ Trends and Technologies in Web DevelopmentModern UI Architecture_ Trends and Technologies in Web Development
Modern UI Architecture_ Trends and Technologies in Web Development
 
Decoupling Content Management with Create.js and PHPCR
Decoupling Content Management with Create.js and PHPCRDecoupling Content Management with Create.js and PHPCR
Decoupling Content Management with Create.js and PHPCR
 
O futuro do desenvolvimento .NET
O futuro do desenvolvimento .NETO futuro do desenvolvimento .NET
O futuro do desenvolvimento .NET
 
How Servo Renders the Web
How Servo Renders the WebHow Servo Renders the Web
How Servo Renders the Web
 
Virtualization based on Node.js andQEMU
Virtualization based on Node.js andQEMUVirtualization based on Node.js andQEMU
Virtualization based on Node.js andQEMU
 
Just a millisecond_
Just a millisecond_Just a millisecond_
Just a millisecond_
 
Beyond the MEAN Stack: Thinking Small with Node.js for the Enterprise
Beyond the MEAN Stack: Thinking Small with Node.js for the EnterpriseBeyond the MEAN Stack: Thinking Small with Node.js for the Enterprise
Beyond the MEAN Stack: Thinking Small with Node.js for the Enterprise
 

Similaire à Node.js - Greece JS Meetup 2012

Node.js Web Development SEO Expert Bangladesh LTD.pdf
Node.js Web Development  SEO Expert Bangladesh LTD.pdfNode.js Web Development  SEO Expert Bangladesh LTD.pdf
Node.js Web Development SEO Expert Bangladesh LTD.pdf
Tasnim Jahan
 

Similaire à Node.js - Greece JS Meetup 2012 (20)

MERN PPT
MERN PPTMERN PPT
MERN PPT
 
React Js vs Node Js_ Which Framework to Choose for Your Next Web Application
React Js vs Node Js_ Which Framework to Choose for Your Next Web ApplicationReact Js vs Node Js_ Which Framework to Choose for Your Next Web Application
React Js vs Node Js_ Which Framework to Choose for Your Next Web Application
 
Selecting the Best Javascript Web Framework
Selecting the Best Javascript Web FrameworkSelecting the Best Javascript Web Framework
Selecting the Best Javascript Web Framework
 
Node.js Web Development SEO Expert Bangladesh LTD.pdf
Node.js Web Development  SEO Expert Bangladesh LTD.pdfNode.js Web Development  SEO Expert Bangladesh LTD.pdf
Node.js Web Development SEO Expert Bangladesh LTD.pdf
 
Top 10 frameworks of node js
Top 10 frameworks of node jsTop 10 frameworks of node js
Top 10 frameworks of node js
 
9 Best JavaScript Frameworks To Choose
9 Best JavaScript Frameworks To Choose9 Best JavaScript Frameworks To Choose
9 Best JavaScript Frameworks To Choose
 
Node.js In The Enterprise - A Primer
Node.js In The Enterprise - A PrimerNode.js In The Enterprise - A Primer
Node.js In The Enterprise - A Primer
 
Top Node.js frameworks for web development in 2022.pdf
Top Node.js frameworks for web development in 2022.pdfTop Node.js frameworks for web development in 2022.pdf
Top Node.js frameworks for web development in 2022.pdf
 
Angular.js vs node.js how are they different
Angular.js vs node.js  how are they different Angular.js vs node.js  how are they different
Angular.js vs node.js how are they different
 
Why Choose Node.js for Backend Development?
Why Choose Node.js for Backend Development?Why Choose Node.js for Backend Development?
Why Choose Node.js for Backend Development?
 
Meetup. Technologies Intro for Non-Tech People
Meetup. Technologies Intro for Non-Tech PeopleMeetup. Technologies Intro for Non-Tech People
Meetup. Technologies Intro for Non-Tech People
 
Know the difference - Angular.js vs Node.js
Know the difference - Angular.js vs Node.jsKnow the difference - Angular.js vs Node.js
Know the difference - Angular.js vs Node.js
 
Nodejs framework for app development.pdf
Nodejs framework for app development.pdfNodejs framework for app development.pdf
Nodejs framework for app development.pdf
 
Node JS Development Services
Node JS Development Services Node JS Development Services
Node JS Development Services
 
Next.js vs Node.js: Choosing the Right Framework for App Development
Next.js vs Node.js: Choosing the Right Framework for App DevelopmentNext.js vs Node.js: Choosing the Right Framework for App Development
Next.js vs Node.js: Choosing the Right Framework for App Development
 
When to Use Node.js Development Services.pptx
When to Use Node.js Development Services.pptxWhen to Use Node.js Development Services.pptx
When to Use Node.js Development Services.pptx
 
8 Node.js Frameworks Every Developer Should Know [UPDATED].pptx
8 Node.js Frameworks Every Developer Should Know [UPDATED].pptx8 Node.js Frameworks Every Developer Should Know [UPDATED].pptx
8 Node.js Frameworks Every Developer Should Know [UPDATED].pptx
 
Node js installation steps.pptx slide share ppts
Node js installation steps.pptx slide share pptsNode js installation steps.pptx slide share ppts
Node js installation steps.pptx slide share ppts
 
Node.js Web Development: Powering the Future of Web Applications
Node.js Web Development: Powering the Future  of Web ApplicationsNode.js Web Development: Powering the Future  of Web Applications
Node.js Web Development: Powering the Future of Web Applications
 
What is Mean Stack Development ?
What is Mean Stack Development ?What is Mean Stack Development ?
What is Mean Stack Development ?
 

Dernier

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Node.js - Greece JS Meetup 2012

  • 1. 3rd GreeceJS Meetup NODE.JS a pragmatic approach Kostas Karolemeas http://gr.linkedin.com/in/kostaskarolemeas
  • 3. 3rd GreeceJS Meetup WHAT IS NODE.JS? Evented I/O for v8 javascript Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices. Kostas Karolemeas
  • 4. 3rd GreeceJS Meetup WHY NODE.JS? • Performance and Scalability • • BUT: you need to respect the asynchronous model otherwise node cannot fix late responses… End-to-end javascript / reusable code / no need to switch contexts • BUT: a good web developer is not by default a good server-side developer • AND: you will not be able to write in the same way both sides (e.g. different frameworks) • Strong, responsive and enthusiastic community • Many hosting options (IaaS to PaaS) • Mature development tools Kostas Karolemeas
  • 5. 3rd GreeceJS Meetup NODE.JS SERVICES URI routing URI routing (e.g. REST API) (e.g. REST API) Jade Jade Ham Ham ll Views (templates) Views (templates) Express Express (web dev. (web dev. framework) framework) Sessions Sessions EJS EJS Error Handling Error Handling Configuration Configuration Logging Logging Cookies Cookies Connect Connect (middleware) (middleware) Auth Auth Session Session Stores Stores Kostas Karolemeas
  • 6. 3rd GreeceJS Meetup NODE.JS APP STACK Express // Connect Express Connect Async.js Async.js (asynchronous call (asynchronous call management) management) Mongoose Mongoose (async object modeling (async object modeling for MongoDB) for MongoDB) Winston Winston (multi-transport async logging) (multi-transport async logging) node-mongodb-native node-mongodb-native Kostas Karolemeas
  • 7. 3rd GreeceJS Meetup DEPLOYING NODE.JS FREE Blitz Blitz Release Release Management Management Dynos Dynos Logging Logging Redis To Go Redis To Go Kostas Karolemeas
  • 8. 3rd GreeceJS Meetup NODE.JS TOOLS • npm - package/dependency manager • Mocha - test framework • • Alternative Reporters for results • • Alternative DSL (interfaces) for describing tests Runs either from a shell or in a browser WebStorm - Javascript IDE • Integrated Node.js launcher / debugger • Excellent javascript editor • Very good integration with task management and version control tools Kostas Karolemeas
  • 9. 3rd GreeceJS Meetup WHAT’S NEXT? • Give it a spin! • Install Node.JS and NPM • Install WebStorm • Install Git • Create an account in Heroku and install tools • Follow Heroku instructions to create a Node.js application • • Use heroku-buildpack-nodejs to install latest Node.js Install Heroku add-ons: MongoLab, Redis To Go, Logging, Release Management Kostas Karolemeas
  • 10. 3rd GreeceJS Meetup THANK YOU! Kostas Karolemeas