SlideShare a Scribd company logo
1 of 42
Download to read offline
Node.js	
  for	
  .NET	
  Developers	
  
Speaker:	
  David	
  Neal	
  
Moderator:	
  Alvin	
  Ashcra<	
  
May	
  14,	
  2015	
  
May	
  14	
  –	
  15,	
  2015	
  
2015	
  
Microso<	
  
MVP	
  Virtual	
  
Conference	
  
Your Presenter
David	
  Neal	
  -­‐>	
  reverentgeek.com	
  -­‐>	
  @reverentgeek	
  
	
  
var	
  trustMe	
  =	
  {	
  
	
  	
  consumes:	
  ["Bacon",	
  "Caffeine"],	
  
	
  	
  facialHair:	
  true,	
  
	
  	
  knowsHowToComputer:	
  true,	
  
	
  	
  mvp:	
  "ALM"	
  
}	
  
Your Moderator
Alvin	
  Ashcraft	
  -­‐>	
  alvinashcraft.com	
  -­‐>	
  @alvinashcraft	
  
	
  
var	
  alvin	
  =	
  {	
  
	
  	
  title:	
  "Software	
  Architect",	
  
	
  	
  yearsExperience:	
  20,	
  
	
  	
  facialHair:	
  true,	
  
	
  	
  knowsHowToComputer:	
  true,	
  
	
  	
  mvp:	
  ".NET"	
  
}	
  
Up Ahead
•  Why Node.js?
•  Crash course
•  Tools and frameworks
•  Integration strategies
JavaScript…
…has won the Web.
– Scott Hanselman
Anything that can be
written in JavaScript…
…will eventually be written in JavaScript
– Somebody with incredible powers of observation
(go search for“jslinux”)
JavaScript…
…is tragically important.
– Douglas Crockford,
Author of“JavaScript: The Good Parts”
Why Node.js?
•  Rapid innovation & delivery
•  Developer happiness
•  Attract & retain talent
•  Performance
“Why Node.js is Becoming the Go-To Technology in the Enterprise” – nearform.com
What’s our story?
•  ASP.NET MVC, C#
•  SQL Server + NHibernate
•  JavaScript + JQuery
What’s our story?
•  JavaScript
•  Recruiting
•  Productive, less friction
–  Testing
–  Microservices
–  RabbitMQ, riak, redis
•  Cross-platform
“What is Node.js used for:The 2015 Node.js Overview Report” – blog.risingstack.com
Node.js exemplifies…
Start with the simplest
solution that works.
Do one thing,
and do it well.
Node.js is…
•  blazing fast
•  highly concurrent
•  low-friction
•  cross-platform
•  modern web server
Fandango
•  dramatically shorter development cycles
•  micro-services architecture
•  flexibility in deployment
•  easily scalable infrastructure
“Fandango Goes Live with Node.js” – nearform.com
PayPal
•  2x faster development with fewer developers
•  33% fewer lines of code
•  40% fewer files
•  2x improvement requests/sec
•  35% decrease in avg response time
Walmart
•  Black Friday, 2013
•  Mobile platform
•  200,000,000+ users
•  < 1% CPU utilization
•  Deployed updates
Who else is using Node.js?
•  Dow Jones (WSJ)
•  eBay
•  Groupon
•  LinkedIn
•  Rdio
•  Shutterstock
•  The New York Times
•  Uber
•  Yammer
•  Zendesk
nodjs.org/industry
Node.js Use Cases
•  Single-page apps
•  API server (REST, Hypermedia, etc.)
•  Real-time, streaming, WebSockets
•  Chat, IM, social media
•  Dashboards
•  Proxy service
In other words… the INTERNET
Installing Node.js
1.  http://nodejs.org
2.  Click big, green INSTALL
3.  Run installer
– OR –
Install using Chocolatey (http://chocolatey.org)
C:> choco install nodejs.install
	
  
Installing Node.js
C:> node –v
v0.10.38
C:> npm –v
1.4.28
	
  
Dependencies
– OR –
Python 2.x (https://python.org/downloads/
C:> choco install python2
	
  
Dependencies
– OR –
Visual C++ 2010 Express
C:> choco install VCExpress2010
	
  
Node.js Tools for Visual Studio
http://nodejstools.codeplex.com
https://github.com/Microsoft/nodejstools
Minimum requirements:
•  VS 2012 Pro
or
VS Community 2013
•  Latest VS updates
•  VS + Node.js Tools Azure VM
Visual Studio Code
https://code.visualstudio.com/
•  Linux, Mac OSX,
and Windows
•  code assistance
•  debugging
Deploying
•  Don’t include node_modules folder
•  …unless you create builds for specific targets
•  Azure is super-easy
•  Windows
–  iisnode for web apps
–  winser for services
•  Linux – forever
Hosting Node.js on Azure
•  Login to Azure portal
•  Click +New
•  Choose Compute > Website > From Gallery
•  Choose Templates > Node JS Empty Site
•  Connect to repository such as GitHub for automatic
deployments
•  reverentgeek.com/hosting-node-js-on-microsoft-azure/
Recommended Toolbox
Package What it do, yo
lodash JavaScript utilities
when JavaScript promise library
async async/parallel execution
request (or rest) http client
gulp build engine, test runner
socket.io sockets, real-time
node-inspector Debugging
mocha test framework
chai TDD/BDD assertion library
sinon spies, stubs, mocks
Node frameworks
MVC
•  Express
•  Meteor
•  Sails
•  Hapi
API
•  Restify
•  LoopBack
•  Autohost
nodeframework.com
nodewebmodules.com
Edge.js
•  Run .NET in-process
•  …including F#, ADO.NET, Python,
and Powershell
•  Execute inline code, files, or
assemblies
•  Alternative to writing native
modules in C
•  .NET 4.5 or Mono 3.1
What can Edge.js do?
•  Leverage existing .NET investment
•  SQL Server (or other DBs)
•  TFS, SharePoint, Exchange, etc.
•  Active Directory
•  Hardware (e.g. camera, microphone,
printer, win32)
•  Video encoding, or other CPU-intensive
work
•  Powershell
.NET + Node.js Integration
•  Edge.js
•  request module to call .NET Web API
•  Messaging (e.g. RabbitMQ, Azure Service Bus)
David Neal
@ReverentGeek
david@reverentgeek.com
reverentgeek.com
Thank You!
Demos + Resources
bit.ly/node-demos

More Related Content

What's hot

What's hot (20)

Breaking the eggshell: From .NET to Node.js
Breaking the eggshell: From .NET to Node.jsBreaking the eggshell: From .NET to Node.js
Breaking the eggshell: From .NET to Node.js
 
What is Node.js | Node.js Tutorial for Beginners | Node.js Modules | Node.js ...
What is Node.js | Node.js Tutorial for Beginners | Node.js Modules | Node.js ...What is Node.js | Node.js Tutorial for Beginners | Node.js Modules | Node.js ...
What is Node.js | Node.js Tutorial for Beginners | Node.js Modules | Node.js ...
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 
Node.js Basics
Node.js Basics Node.js Basics
Node.js Basics
 
Webinar - Matteo Manchi: Dal web al nativo: Introduzione a React Native
Webinar - Matteo Manchi: Dal web al nativo: Introduzione a React Native Webinar - Matteo Manchi: Dal web al nativo: Introduzione a React Native
Webinar - Matteo Manchi: Dal web al nativo: Introduzione a React Native
 
Node on Windows Azure
Node on Windows AzureNode on Windows Azure
Node on Windows Azure
 
Why NodeJS
Why NodeJSWhy NodeJS
Why NodeJS
 
Turbocharged Java with Quarkus | JakartaOne Livestream
 Turbocharged Java with Quarkus | JakartaOne Livestream Turbocharged Java with Quarkus | JakartaOne Livestream
Turbocharged Java with Quarkus | JakartaOne Livestream
 
Introduction to node.js aka NodeJS
Introduction to node.js aka NodeJSIntroduction to node.js aka NodeJS
Introduction to node.js aka NodeJS
 
JavaScript as a Server side language (NodeJS): JSConf 2011, Dhaka
JavaScript as a Server side language (NodeJS): JSConf 2011, DhakaJavaScript as a Server side language (NodeJS): JSConf 2011, Dhaka
JavaScript as a Server side language (NodeJS): JSConf 2011, Dhaka
 
DevOps, Cloud, and the Death of Backup Tape Changers
DevOps, Cloud, and the Death of Backup Tape ChangersDevOps, Cloud, and the Death of Backup Tape Changers
DevOps, Cloud, and the Death of Backup Tape Changers
 
NodeSummit - MEAN Stack
NodeSummit - MEAN StackNodeSummit - MEAN Stack
NodeSummit - MEAN Stack
 
Node.Js: Basics Concepts and Introduction
Node.Js: Basics Concepts and Introduction Node.Js: Basics Concepts and Introduction
Node.Js: Basics Concepts and Introduction
 
PHP Indonesia - Nodejs Web Development
PHP Indonesia - Nodejs Web DevelopmentPHP Indonesia - Nodejs Web Development
PHP Indonesia - Nodejs Web Development
 
Introduction to node.js
Introduction to node.jsIntroduction to node.js
Introduction to node.js
 
Node.js Performance Case Study
Node.js Performance Case StudyNode.js Performance Case Study
Node.js Performance Case Study
 
Afrimadoni the power of docker
Afrimadoni   the power of dockerAfrimadoni   the power of docker
Afrimadoni the power of docker
 
NodeJS and what is actually does
NodeJS and what is actually doesNodeJS and what is actually does
NodeJS and what is actually does
 
Docker, From zero to hero
Docker, From zero to heroDocker, From zero to hero
Docker, From zero to hero
 
Node.js with Express
Node.js with ExpressNode.js with Express
Node.js with Express
 

Similar to Node.js for .NET Developers

Azure Bootcamp Louisville - Node js presentation
Azure Bootcamp Louisville - Node js presentationAzure Bootcamp Louisville - Node js presentation
Azure Bootcamp Louisville - Node js presentation
Andrea Walker
 

Similar to Node.js for .NET Developers (20)

Node.js Crash Course
Node.js Crash CourseNode.js Crash Course
Node.js Crash Course
 
Introduction to node.js by jiban
Introduction to node.js by jibanIntroduction to node.js by jiban
Introduction to node.js by jiban
 
Nodejs overview
Nodejs overviewNodejs overview
Nodejs overview
 
Kiss.ts - The Keep It Simple Software Stack for 2017++
Kiss.ts - The Keep It Simple Software Stack for 2017++Kiss.ts - The Keep It Simple Software Stack for 2017++
Kiss.ts - The Keep It Simple Software Stack for 2017++
 
Azure Bootcamp Louisville - Node js presentation
Azure Bootcamp Louisville - Node js presentationAzure Bootcamp Louisville - Node js presentation
Azure Bootcamp Louisville - Node js presentation
 
An introduction to Node.js
An introduction to Node.jsAn introduction to Node.js
An introduction to Node.js
 
Mini-Training: Node.js
Mini-Training: Node.jsMini-Training: Node.js
Mini-Training: Node.js
 
A295 nodejs-knowledge-accelerator
A295   nodejs-knowledge-acceleratorA295   nodejs-knowledge-accelerator
A295 nodejs-knowledge-accelerator
 
Getting Started with Docker
Getting Started with DockerGetting Started with Docker
Getting Started with Docker
 
Node.js Development with Apache NetBeans
Node.js Development with Apache NetBeansNode.js Development with Apache NetBeans
Node.js Development with Apache NetBeans
 
321 codeincontainer brewbox
321 codeincontainer brewbox321 codeincontainer brewbox
321 codeincontainer brewbox
 
Node.js meetup at Palo Alto Networks Tel Aviv
Node.js meetup at Palo Alto Networks Tel AvivNode.js meetup at Palo Alto Networks Tel Aviv
Node.js meetup at Palo Alto Networks Tel Aviv
 
Announcing AWS CodeBuild - January 2017 Online Teck Talks
Announcing AWS CodeBuild - January 2017 Online Teck TalksAnnouncing AWS CodeBuild - January 2017 Online Teck Talks
Announcing AWS CodeBuild - January 2017 Online Teck Talks
 
20120306 dublin js
20120306 dublin js20120306 dublin js
20120306 dublin js
 
A brief intro to nodejs
A brief intro to nodejsA brief intro to nodejs
A brief intro to nodejs
 
Node ts1
Node ts1Node ts1
Node ts1
 
An Introduction to Node.js Development with Windows Azure
An Introduction to Node.js Development with Windows AzureAn Introduction to Node.js Development with Windows Azure
An Introduction to Node.js Development with Windows Azure
 
Mean stack
Mean stackMean stack
Mean stack
 
20120802 timisoara
20120802 timisoara20120802 timisoara
20120802 timisoara
 
Sugarcoating your frontend one ViewModel at a time
Sugarcoating your frontend one ViewModel at a timeSugarcoating your frontend one ViewModel at a time
Sugarcoating your frontend one ViewModel at a time
 

More from David Neal

More from David Neal (8)

Music City Code Achievement Unlocked (Friday Closing)
Music City Code Achievement Unlocked (Friday Closing)Music City Code Achievement Unlocked (Friday Closing)
Music City Code Achievement Unlocked (Friday Closing)
 
Take Back Project Sanity (CodeStock Edition)
Take Back Project Sanity (CodeStock Edition)Take Back Project Sanity (CodeStock Edition)
Take Back Project Sanity (CodeStock Edition)
 
Cross-Platform Desktop Apps with Electron (CodeStock Edition)
Cross-Platform Desktop Apps with Electron (CodeStock Edition)Cross-Platform Desktop Apps with Electron (CodeStock Edition)
Cross-Platform Desktop Apps with Electron (CodeStock Edition)
 
Cross-Platform Desktop Apps with Electron (JSConf UY)
Cross-Platform Desktop Apps with Electron (JSConf UY)Cross-Platform Desktop Apps with Electron (JSConf UY)
Cross-Platform Desktop Apps with Electron (JSConf UY)
 
Cross-Platform Desktop Apps with Electron (Condensed Version)
Cross-Platform Desktop Apps with Electron (Condensed Version)Cross-Platform Desktop Apps with Electron (Condensed Version)
Cross-Platform Desktop Apps with Electron (Condensed Version)
 
Cross-Platform Desktop Apps with Electron
Cross-Platform Desktop Apps with ElectronCross-Platform Desktop Apps with Electron
Cross-Platform Desktop Apps with Electron
 
How Kanban Can Help Your Team
How Kanban Can Help Your TeamHow Kanban Can Help Your Team
How Kanban Can Help Your Team
 
Do you even Kanban?
Do you even Kanban?Do you even Kanban?
Do you even Kanban?
 

Recently uploaded

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@
 

Recently uploaded (20)

GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
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
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
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
 
+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...
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
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
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Node.js for .NET Developers

  • 1. Node.js  for  .NET  Developers   Speaker:  David  Neal   Moderator:  Alvin  Ashcra<   May  14,  2015   May  14  –  15,  2015   2015   Microso<   MVP  Virtual   Conference  
  • 2. Your Presenter David  Neal  -­‐>  reverentgeek.com  -­‐>  @reverentgeek     var  trustMe  =  {      consumes:  ["Bacon",  "Caffeine"],      facialHair:  true,      knowsHowToComputer:  true,      mvp:  "ALM"   }  
  • 3. Your Moderator Alvin  Ashcraft  -­‐>  alvinashcraft.com  -­‐>  @alvinashcraft     var  alvin  =  {      title:  "Software  Architect",      yearsExperience:  20,      facialHair:  true,      knowsHowToComputer:  true,      mvp:  ".NET"   }  
  • 4. Up Ahead •  Why Node.js? •  Crash course •  Tools and frameworks •  Integration strategies
  • 5. JavaScript… …has won the Web. – Scott Hanselman
  • 6. Anything that can be written in JavaScript… …will eventually be written in JavaScript – Somebody with incredible powers of observation (go search for“jslinux”)
  • 7. JavaScript… …is tragically important. – Douglas Crockford, Author of“JavaScript: The Good Parts”
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15. Why Node.js? •  Rapid innovation & delivery •  Developer happiness •  Attract & retain talent •  Performance “Why Node.js is Becoming the Go-To Technology in the Enterprise” – nearform.com
  • 16. What’s our story? •  ASP.NET MVC, C# •  SQL Server + NHibernate •  JavaScript + JQuery
  • 17. What’s our story? •  JavaScript •  Recruiting •  Productive, less friction –  Testing –  Microservices –  RabbitMQ, riak, redis •  Cross-platform
  • 18.
  • 19. “What is Node.js used for:The 2015 Node.js Overview Report” – blog.risingstack.com
  • 20. Node.js exemplifies… Start with the simplest solution that works. Do one thing, and do it well.
  • 21. Node.js is… •  blazing fast •  highly concurrent •  low-friction •  cross-platform •  modern web server
  • 22. Fandango •  dramatically shorter development cycles •  micro-services architecture •  flexibility in deployment •  easily scalable infrastructure “Fandango Goes Live with Node.js” – nearform.com
  • 23. PayPal •  2x faster development with fewer developers •  33% fewer lines of code •  40% fewer files •  2x improvement requests/sec •  35% decrease in avg response time
  • 24. Walmart •  Black Friday, 2013 •  Mobile platform •  200,000,000+ users •  < 1% CPU utilization •  Deployed updates
  • 25. Who else is using Node.js? •  Dow Jones (WSJ) •  eBay •  Groupon •  LinkedIn •  Rdio •  Shutterstock •  The New York Times •  Uber •  Yammer •  Zendesk nodjs.org/industry
  • 26. Node.js Use Cases •  Single-page apps •  API server (REST, Hypermedia, etc.) •  Real-time, streaming, WebSockets •  Chat, IM, social media •  Dashboards •  Proxy service In other words… the INTERNET
  • 27. Installing Node.js 1.  http://nodejs.org 2.  Click big, green INSTALL 3.  Run installer – OR – Install using Chocolatey (http://chocolatey.org) C:> choco install nodejs.install  
  • 28. Installing Node.js C:> node –v v0.10.38 C:> npm –v 1.4.28  
  • 29. Dependencies – OR – Python 2.x (https://python.org/downloads/ C:> choco install python2  
  • 30. Dependencies – OR – Visual C++ 2010 Express C:> choco install VCExpress2010  
  • 31. Node.js Tools for Visual Studio http://nodejstools.codeplex.com https://github.com/Microsoft/nodejstools Minimum requirements: •  VS 2012 Pro or VS Community 2013 •  Latest VS updates •  VS + Node.js Tools Azure VM
  • 32. Visual Studio Code https://code.visualstudio.com/ •  Linux, Mac OSX, and Windows •  code assistance •  debugging
  • 33.
  • 34. Deploying •  Don’t include node_modules folder •  …unless you create builds for specific targets •  Azure is super-easy •  Windows –  iisnode for web apps –  winser for services •  Linux – forever
  • 35. Hosting Node.js on Azure •  Login to Azure portal •  Click +New •  Choose Compute > Website > From Gallery •  Choose Templates > Node JS Empty Site •  Connect to repository such as GitHub for automatic deployments •  reverentgeek.com/hosting-node-js-on-microsoft-azure/
  • 36. Recommended Toolbox Package What it do, yo lodash JavaScript utilities when JavaScript promise library async async/parallel execution request (or rest) http client gulp build engine, test runner socket.io sockets, real-time node-inspector Debugging mocha test framework chai TDD/BDD assertion library sinon spies, stubs, mocks
  • 37. Node frameworks MVC •  Express •  Meteor •  Sails •  Hapi API •  Restify •  LoopBack •  Autohost nodeframework.com nodewebmodules.com
  • 38. Edge.js •  Run .NET in-process •  …including F#, ADO.NET, Python, and Powershell •  Execute inline code, files, or assemblies •  Alternative to writing native modules in C •  .NET 4.5 or Mono 3.1
  • 39. What can Edge.js do? •  Leverage existing .NET investment •  SQL Server (or other DBs) •  TFS, SharePoint, Exchange, etc. •  Active Directory •  Hardware (e.g. camera, microphone, printer, win32) •  Video encoding, or other CPU-intensive work •  Powershell
  • 40. .NET + Node.js Integration •  Edge.js •  request module to call .NET Web API •  Messaging (e.g. RabbitMQ, Azure Service Bus)
  • 41.