JavaScript on the Command Line & PRATIK PATEL CTO TripLingo Labs

Size: px
Start display at page:

Download "JavaScript on the Command Line & PRATIK PATEL CTO TripLingo Labs"

Transcription

1 JavaScript on the Command Line & TripLingo Labs

2 Topics Modern JavaScript Why? Ecosystem Node Grunt

3 Yesterday s JavaScript

4 Today s JavaScript is cool

5 What s changed?

6 No Change JavaScript is essentially the same language as it was when invented 20 years ago

7 We ve changed JavaScript developers today understand: - Best Practices - Tooling - JavaScript Runtimes today are awesome

8 What hasn t changed JavaScript still has bad parts Async, event-driven programming model

9 How it run outside the browser?

10 V8 Super duper fast JavaScript runtime from Google Runs in the browser

11 Node.js uses V8

12 What about the JVM? Built into the JVM for years Rhino (current) Nashorn (next gen)

13 Why JavaScript on the server?

14 Why JS Single language for the browser & server Fast Scalable

15 ISOMORPHIC APPS

16 Isomorphic Apps Code can run either on the browser or server

17 Traditional Webapp

18 Isomorphic

19 Why Isomorphic? Flexibility Performance

20 Frameworks

21 Ecosystem

22 JavaScript Ecosystem Node NPM - node packaged modules Express - web framework Grunt - task runner / automation

23 Node.js JavaScript runtime based on V8

24 NPM Module / Package manager for node

25 Express Basic server-side web framework for Node

26 Grunt Task runner Automation build scripts

27 Node.js

28 Node.js Install from nodej.org Install using brew on Mac OSX

29 Node.js Command-line centric

30 Running Node Script $ node test3.js Hello Bangalore - test3.js: console.log('hello Bangalore')

31 Package.json // describes this node project, place in base folder { "name": "hello-world", "description": "hello world test app", "version": "0.0.1", "private": true, "dependencies": { "express": "3.x" } }

32 NPM

33 NPM Installed with Node.js Basic package management

34 Running NPM $ npm ls $ npm install lodash -g

35 Express

36 Express Very basic server-side Web Framework Lots of other options: - Sails.js - CompoundJS - Geddy

37 Express Implements event-loop model that is basis of Nodejs Async Event-driven Super-scalable

38 Express App $ cat hello-world/package.json { "name": "hello-world", "description": "hello world test app", "version": "0.0.1", "private": true, "dependencies": { "express": "3.x" } } $ npm install $ npm app Express server listening on port 3000

39 Quick Express Code Walkthrough

40 Grunt

41 Grunt Task based command-line build tool

42 What uses? Unit test running JavaScript linting Minification (both for browser and node.js) CI

43 package.json "devdependencies": { "grunt": "~0.4.2", "grunt-contrib-jshint": "~0.6.3", "grunt-contrib-nodeunit": "~0.2.0", "grunt-contrib-uglify": "~0.2.2" }

44 Gruntfile module.exports = function (grunt) { grunt.initconfig({ jshint: { all: ['Gruntfile.js', 'lib/**/*.js', 'test/**/*.js', 'public/**/*.js', 'routes/*.js', 'routes/**/*.js', 'app.js'] } }); grunt.loadnpmtasks('grunt-contrib-jshint'); grunt.registertask('default', ['jshint']); };

45 Run Grunt $ grunt Running "jshint:all" (jshint) task Linting app.js...error [L12:C20] W033: Missing semicolon. var app = express() Warning: Task "jshint:all" failed. Use --force to continue. Aborted due to warnings.

46 OH NO

47 Fix & re-run Grunt $ grunt Running "jshint:all" (jshint) task >> 4 files lint free. Done, without errors.

48 Closing thoughts Node is not for every kind of app Must consider carefully where to use it Callback hell because Async

49 Bye Follow me on

MOdern Java(Script) Server Stack

MOdern Java(Script) Server Stack MOdern Java(Script) Server Stack Pratik Patel Pratik Patel CTO Triplingo JAVA CHAMPION PRESIDENT ATLANTA JUG POLYGLOT apple mac vintage 5" screen TURTLE MY FIRST PROGRAM TURING MY FIRST REAL PROGRAM JAVASCRIPT

More information

npm install [<name> [<name>...]] [--save --save-dev --save-optional]

npm install [<name> [<name>...]] [--save --save-dev --save-optional] Node Package Manager by Jesse Warden http://www.jessewarden.com v1 npm ls Everything you have installed in the current directory. npm search [search terms] Search the registry for packages matching the

More information

Tools. SWE 432, Fall Design and Implementation of Software for the Web

Tools. SWE 432, Fall Design and Implementation of Software for the Web Tools SWE 432, Fall 2016 Design and Implementation of Software for the Web Today Before we can really make anything, there s a bunch of technical stuff to get out of the way Tools make our lives so much

More information

Grunt Cookbook. Effective Recipes To Master Grunt. Matt Goldspink. This book is for sale at

Grunt Cookbook. Effective Recipes To Master Grunt. Matt Goldspink. This book is for sale at Grunt Cookbook Effective Recipes To Master Grunt Matt Goldspink This book is for sale at http://leanpub.com/gruntcookbook This version was published on 2014-02-14 This is a Leanpub book. Leanpub empowers

More information

Automate with Grunt. Extracted from: The Build Tool for JavaScript. The Pragmatic Bookshelf

Automate with Grunt. Extracted from: The Build Tool for JavaScript. The Pragmatic Bookshelf Extracted from: Automate with Grunt The Build Tool for JavaScript This PDF file contains pages extracted from Automate with Grunt, published by the Pragmatic Bookshelf. For more information or to purchase

More information

Chapter 1 - Development Setup of Angular

Chapter 1 - Development Setup of Angular Chapter 1 - Development Setup of Angular Objectives Key objectives of this chapter Angular Files and Dependencies Node.js Node package manager (npm) package.json Semantic version numbers Installing Angular

More information

DrupalCon Barcelona Preston So September 22, 2015

DrupalCon Barcelona Preston So September 22, 2015 DrupalCon Barcelona 2015 Preston So September 22, 2015 Preston So (@prestonso) has designed websites since 2001 and built them in Drupal since 2007. He is Development Manager of Acquia Labs at Acquia and

More information

Introduction to Using NPM scripts as a Build Tool. 1. 1

Introduction to Using NPM scripts as a Build Tool. 1. 1 Introduction to Using NPM scripts as a Build Tool. @kjy2143 / SK planet 1. 1 1. 2 1. 3 1. 4 Front End Developer in Past 2. 1 2. 2 Front End Developer in 2016 3. 1 3. 2 2016/2017 MUST-KNOW WEB DEVELOPMENT

More information

Catbook Workshop: Intro to NodeJS. Monde Duinkharjav

Catbook Workshop: Intro to NodeJS. Monde Duinkharjav Catbook Workshop: Intro to NodeJS Monde Duinkharjav What is NodeJS? NodeJS is... A Javascript RUNTIME ENGINE NOT a framework NOT Javascript nor a JS package It is a method for running your code in Javascript.

More information

JavaScript Web Tools with Visual Studio 2015 and ASP.NET 5. April 2015.

JavaScript Web Tools with Visual Studio 2015 and ASP.NET 5. April 2015. JavaScript Web Tools with Visual Studio 2015 and ASP.NET 5 April 2015. 1 Readme Welcome! This document contains a set of articles that introduce the most commonly used JavaScript/frontend web development

More information

Advanced Express Web Application Development

Advanced Express Web Application Development Advanced Express Web Application Development Andrew Keig Chapter No. 1 "Foundations" In this package, you will find: A Biography of the author of the book A preview chapter from the book, Chapter NO.1

More information

J, K, L. Node.js require() method, 403 package.json, 401 streams functionality, 401 task() method, 401 use strict statement, 403

J, K, L. Node.js require() method, 403 package.json, 401 streams functionality, 401 task() method, 401 use strict statement, 403 Index A Abstract factory pattern, 122 126 Adapter pattern, 137 139 Apply and call methods, 15 16 Architectural patterns MVC (see Model-View-Controller (MVC)) MVP (see Model-View-Presenter (MVP) pattern)

More information

Making Sling Grunt Or How to Integrate Modern Front-End Development with Sling. Philip Hornig (Publicis Pixelpark), Michael Sunaric (Netcentric)

Making Sling Grunt Or How to Integrate Modern Front-End Development with Sling. Philip Hornig (Publicis Pixelpark), Michael Sunaric (Netcentric) APACHE SLING & FRIENDS TECH MEETUP BERLIN, 28-30 SEPTEMBER 2015 Making Sling Grunt Or How to Integrate Modern Front-End Development with Sling Philip Hornig (Publicis Pixelpark), Michael Sunaric (Netcentric)

More information

Web Application Development

Web Application Development Web Application Development Produced by David Drohan (ddrohan@wit.ie) Department of Computing & Mathematics Waterford Institute of Technology http://www.wit.ie SERVER SIDE JAVASCRIPT PART 1 Outline 1.

More information

Best Practices: Testing Node.js for Stability and Project Success. Walter Scarborough SEA 2014

Best Practices: Testing Node.js for Stability and Project Success. Walter Scarborough SEA 2014 Best Practices: Testing Node.js for Stability and Project Success Walter Scarborough SEA 2014 Congratulations! You've decided to build a node.js webservice/webapp! OR Congratulations! Your latest and greatest

More information

NODE.JS MOCK TEST NODE.JS MOCK TEST I

NODE.JS MOCK TEST NODE.JS MOCK TEST I http://www.tutorialspoint.com NODE.JS MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to Node.js Framework. You can download these sample mock tests at

More information

Backend Development. SWE 432, Fall Web Application Development

Backend Development. SWE 432, Fall Web Application Development Backend Development SWE 432, Fall 2018 Web Application Development Review: Async Programming Example 1 second each Go get a candy bar Go get a candy bar Go get a candy bar Go get a candy bar Go get a candy

More information

Web Development for Dinosaurs An Introduction to Modern Web Development

Web Development for Dinosaurs An Introduction to Modern Web Development Web Development for Dinosaurs An Introduction to Modern Web Development 1 / 53 Who Am I? John Cleaver Development Team Lead at Factivity, Inc. An Introduction to Modern Web Development - PUG Challenge

More information

Node.js. Node.js Overview. CS144: Web Applications

Node.js. Node.js Overview. CS144: Web Applications Node.js Node.js Overview JavaScript runtime environment based on Chrome V8 JavaScript engine Allows JavaScript to run on any computer JavaScript everywhere! On browsers and servers! Intended to run directly

More information

Java vs JavaScript. For Enterprise Web Applications. Chris Bailey IBM Runtime Technologies IBM Corporation

Java vs JavaScript. For Enterprise Web Applications. Chris Bailey IBM Runtime Technologies IBM Corporation Java vs JavaScript For Enterprise Web Applications Chris Bailey IBM Runtime Technologies 1 What Languages do you use? 120 Percentage of Audience 100 80 60 40 20 0 Java 2 JavaScript Both What Runtimes do

More information

Defining New Node-RED Nodes

Defining New Node-RED Nodes Overview Node-RED is a highly graphical programming environment however there are some things which cannot be done using the out-of-the-box nodes. Using the Function Node is one way to get around this

More information

Quick Desktop Application Development Using Electron

Quick Desktop Application Development Using Electron Quick Desktop Application Development Using Electron Copyright Blurb All rights reserved. No part of this book may be reproduced in any form or by any electronic or mechanical means including information

More information

The course is supplemented by numerous hands-on labs that help attendees reinforce their theoretical knowledge of the learned material.

The course is supplemented by numerous hands-on labs that help attendees reinforce their theoretical knowledge of the learned material. Lincoln Land Community College Capital City Training Center 130 West Mason Springfield, IL 62702 217-782-7436 www.llcc.edu/cctc WA2442 Introduction to JavaScript Objectives This intensive training course

More information

MEAN February. techdt.la

MEAN February. techdt.la MEAN February techdt.la MEAN Stack Similar to Ruby on Rails & LAMP, for JavaScript Cohesive stack with Front End, Middleware & Backend Tools to help get started Little less magic than rails And much more!

More information

Lab 6: Testing. Software Studio DataLab, CS, NTHU

Lab 6: Testing. Software Studio DataLab, CS, NTHU Lab 6: Testing Software Studio DataLab, CS, NTHU Notice This lab is about software development good practices Interesting for those who like software development and want to go deeper Good to optimize

More information

Node.js By Example. Learn to use Node.js by creating a fully functional social network. Krasimir Tsonev BIRMINGHAM - MUMBAI

Node.js By Example. Learn to use Node.js by creating a fully functional social network. Krasimir Tsonev BIRMINGHAM - MUMBAI Node.js By Example Learn to use Node.js by creating a fully functional social network Krasimir Tsonev BIRMINGHAM - MUMBAI Node.js By Example Copyright 2015 Packt Publishing All rights reserved. No part

More information

Bitnami Node.js for Huawei Enterprise Cloud

Bitnami Node.js for Huawei Enterprise Cloud Bitnami Node.js for Huawei Enterprise Cloud Description Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. It uses an event-driven, non-blocking

More information

Introduction to Express.js. CSC309 Feb. 6, 2015 Surya Nallu

Introduction to Express.js. CSC309 Feb. 6, 2015 Surya Nallu Introduction to Express.js CSC309 Feb. 6, 2015 Surya Nallu What is Express.js? Web application framework for Node.js Light-weight and minimalist Provides boilerplate structure & organization for your web-apps

More information

..or a tale on how to build a rocket with a meteor

..or a tale on how to build a rocket with a meteor VS..or a tale on how to build a rocket with a meteor 1 ME +! ME Milo Alessandro = 2 Have you ever created a web application? (Web application: a client server software application in which the client,

More information

node.js A quick tour (v4)

node.js A quick tour (v4) node.js A quick tour 15.02.2011 (v4) About Felix Geisendörfer 23 years Berlin, Germany @felixge Core Contributor & Module Author node-mysql node-formidable File uploading & processing as an infrastructure

More information

NodeJS and JavaScripteverywhere

NodeJS and JavaScripteverywhere NodeJS and JavaScripteverywhere Matthew Eernisse YOW Conference: December 2011 Who am I? Matthew Eernisse Work at Yammer @mde on Twitter What is JavaScript- everywhere? A list of stuff Ruby JavaScript

More information

INF5750. Introduction to JavaScript and Node.js

INF5750. Introduction to JavaScript and Node.js INF5750 Introduction to JavaScript and Node.js Outline Introduction to JavaScript Language basics Introduction to Node.js Tips and tools for working with JS and Node.js What is JavaScript? Built as scripting

More information

Angular 2 Programming

Angular 2 Programming Course Overview Angular 2 is the next iteration of the AngularJS framework. It promises better performance. It uses TypeScript programming language for type safe programming. Overall you should see better

More information

Uninstall A Apps Windows 8 Programming Using Html5 Jump Start

Uninstall A Apps Windows 8 Programming Using Html5 Jump Start Uninstall A Apps Windows 8 Programming Using Html5 Jump Start Easily create apps for Windows and Windows Phone devices from a single project, using Developing Universal Windows Apps with C# and XAML Jump

More information

CS193X: Web Programming Fundamentals

CS193X: Web Programming Fundamentals CS193X: Web Programming Fundamentals Spring 2017 Victoria Kirst (vrk@stanford.edu) CS193X schedule Today - Middleware and Routes - Single-page web app - More MongoDB examples - Authentication - Victoria

More information

Webpack 2 The last bundler you would need in Vijay Dharap, Principal Architect, Infosys

Webpack 2 The last bundler you would need in Vijay Dharap, Principal Architect, Infosys Webpack 2 The last bundler you would need in 2017 Vijay Dharap, Principal Architect, Infosys Speaker Bio 14+ Years of experience Principal Architect in Infosys Passionate about delightful UX Open Source

More information

Project Avatar: Server Side JavaScript on the JVM GeeCon - May David Software Evangelist - Oracle

Project Avatar: Server Side JavaScript on the JVM GeeCon - May David Software Evangelist - Oracle Project Avatar: Server Side JavaScript on the JVM GeeCon - May 2014! David Delabassee @delabassee Software Evangelist - Oracle The following is intended to outline our general product direction. It is

More information

Practical Node.js. Building Real-World Scalable Web Apps. Apress* Azat Mardan

Practical Node.js. Building Real-World Scalable Web Apps. Apress* Azat Mardan Practical Node.js Building Real-World Scalable Web Apps Azat Mardan Apress* Contents About the Author About the Technical Reviewer Acknowledgments Introduction xv xvii xix xxi Chapter 1: Setting up Node.js

More information

Microservices with Node.js

Microservices with Node.js Microservices with Node.js Objectives In this module we will discuss: Core Node.js concepts Node Package Manager (NPM) The Express Node.js package The MEAN stack 1.1 What is Node.js? Node.js [ https://nodejs.org/

More information

Serverless in the Java ecosystem

Serverless in the Java ecosystem Serverless in the Java ecosystem Pratik Patel Pratik PateL CTO Triplingo Java Champion JavaScript Troublemaker Python Hacker Founder, PERL recovery group WHAT IS SERVERLESS? ARCHITECTURE ECOSYSTEM SERVERLESS

More information

Need to Node: Profiling Node.js Applications

Need to Node: Profiling Node.js Applications Need to Node: Profiling Node.js Applications Patrick Mueller January 19, 2016 Questions during the Need to Node webinar? Post a question to Twitter with the hashtag: #needtonode 2 NodeSource is the Enterprise

More information

END-TO-END JAVASCRIPT WEB APPS

END-TO-END JAVASCRIPT WEB APPS END-TO-END JAVASCRIPT WEB APPS HTML5, NODE.JS AND MONGODB CADEC 2013 by Peter Larsson JAVASCRIPT IS NOT EVIL TECH. INDEX, JAN 2013 Dice Job Posts Google 20,000 2,400,000,000 15,000 1,800,000,000 10,000

More information

Salvatore Rinzivillo VISUAL ANALYTICS

Salvatore Rinzivillo VISUAL ANALYTICS Salvatore Rinzivillo VISUAL ANALYTICS Announcment No lesson on March 5th We will meet on March 6th from 11 to 13 in Aula N1 DEVELOPMENT FRAMEWORK Objectives Setup a developing environment Install Node.js

More information

IN4MATX 133: User Interface Software

IN4MATX 133: User Interface Software IN4MATX 133: User Interface Software Lecture 7: Package Management & TypeScript Professor Daniel A. Epstein TA Jamshir Goorabian TA Simion Padurean 1 A1 Make sure you Push as well as Committing! Need to

More information

What is Node.js? Tim Davis Director, The Turtle Partnership Ltd

What is Node.js? Tim Davis Director, The Turtle Partnership Ltd What is Node.js? Tim Davis Director, The Turtle Partnership Ltd About me Co-founder of The Turtle Partnership Working with Notes and Domino for over 20 years Working with JavaScript technologies and frameworks

More information

Lab 1 - Introduction to Angular

Lab 1 - Introduction to Angular Lab 1 - Introduction to Angular In this lab we will build a Hello World style Angular component. The key focus is to learn how to install all the required code and use them from the browser. We wont get

More information

JS Event Loop, Promises, Async Await etc. Slava Kim

JS Event Loop, Promises, Async Await etc. Slava Kim JS Event Loop, Promises, Async Await etc Slava Kim Synchronous Happens consecutively, one after another Asynchronous Happens later at some point in time Parallelism vs Concurrency What are those????

More information

Step 1: Setup a Gitlab account

Step 1: Setup a Gitlab account Most of us agree that Continuous Integration (CI), Continuous Delivery (CD), cloud infrastructure, test automation, and configuration management make up the basics of devops. Depending on the scale of

More information

Webpack. What is Webpack? APPENDIX A. n n n

Webpack. What is Webpack? APPENDIX A. n n n APPENDIX A n n n Webpack Although Webpack is used throughout the book, the primary focus of the book is on React, so Webpack didn t get a comprehensive treatment. In this Appendix, you will have the chance

More information

Module 6 Node.js and Socket.IO

Module 6 Node.js and Socket.IO Module 6 Node.js and Socket.IO Module 6 Contains 2 components Individual Assignment and Group Assignment Both are due on Wednesday November 15 th Read the WIKI before starting Portions of today s slides

More information

RequireJS Javascript Modules for the Browser. By Ben Keith Quoin, Inc.

RequireJS Javascript Modules for the Browser. By Ben Keith Quoin, Inc. RequireJS Javascript Modules for the Browser By Ben Keith Quoin, Inc. Traditional Browser JS One global namespace Often inline JS code embedded directly in HTML Many tags with hidden ordering

More information

Topic 16: Validation. CITS3403 Agile Web Development. Express, Angular and Node, Chapter 11

Topic 16: Validation. CITS3403 Agile Web Development. Express, Angular and Node, Chapter 11 Topic 16: Validation CITS3403 Agile Web Development Getting MEAN with Mongo, Express, Angular and Node, Chapter 11 Semester 1, 2018 Verification and Validation Writing a bug free application is critical

More information

Stencil: The Time for Vanilla Web Components has Arrived

Stencil: The Time for Vanilla Web Components has Arrived Stencil: The Time for Vanilla Web Components has Arrived Gil Fink sparxys CEO @gilfink / www.gilfink.net Typical Application Web Page Design From Design to Implementation Session List Day tabs Component

More information

A practical introduction

A practical introduction A practical introduction Felix Geisendörfer Øredev 09.11.2011 (v1) @felixge Twitter / GitHub / IRC Felix Geisendörfer (Berlin, Germany) Audience? JavaScript? Node.js? History Feb 16, 2009 Ryan Dahl starts

More information

Human-Computer Interaction Design

Human-Computer Interaction Design Human-Computer Interaction Design COGS120/CSE170 - Intro. HCI Instructor: Philip Guo Lab 6 - Connecting frontend and backend without page reloads (2016-11-03) by Michael Bernstein, Scott Klemmer, and Philip

More information

JavaScript: the language of browser interactions. Claudia Hauff TI1506: Web and Database Technology

JavaScript: the language of browser interactions. Claudia Hauff TI1506: Web and Database Technology JavaScript: the language of browser interactions Claudia Hauff TI1506: Web and Database Technology ti1506-ewi@tudelft.nl Densest Web lecture of this course. Coding takes time. Be friendly with Codecademy

More information

@EvanMHerman Introduction to Workflow Automation

@EvanMHerman Introduction to Workflow Automation Introduction to Workflow Automation WordCamp Baltimore - October 14th, 2017 1 Evan Herman Software Engineer at GoDaddy WordPress Core Contributor Plugin Developer Goal The main goal of this talk is to

More information

mismatch between what is maybe possible today and what is going on in many of today's IDEs.

mismatch between what is maybe possible today and what is going on in many of today's IDEs. What will happen if we do very, very small and lightweight tools instead of heavyweight, integrated big IDEs? Lecturer: Martin Lippert, VMware and Eclispe tooling expert LIPPERT: Welcome, everybody, to

More information

Getting Started With NodeJS Feature Flags

Getting Started With NodeJS Feature Flags Guide Getting Started With NodeJS Feature Flags INTRO We ve all done it at some point: thrown a conditional around a piece of code to enable or disable it. When it comes to feature flags, this is about

More information

Server-Side JavaScript auf der JVM. Peter Doschkinow Senior Java Architect

Server-Side JavaScript auf der JVM. Peter Doschkinow Senior Java Architect Server-Side JavaScript auf der JVM Peter Doschkinow Senior Java Architect The following is intended to outline our general product direction. It is intended for information purposes only, and may not be

More information

Comprehensive AngularJS Programming (5 Days)

Comprehensive AngularJS Programming (5 Days) www.peaklearningllc.com S103 Comprehensive AngularJS Programming (5 Days) The AngularJS framework augments applications with the "model-view-controller" pattern which makes applications easier to develop

More information

Node.js I Getting Started

Node.js I Getting Started Node.js I Getting Started Chesapeake Node.js User Group (CNUG) https://www.meetup.com/chesapeake-region-nodejs-developers-group Agenda Installing Node.js Background Node.js Run-time Architecture Node.js

More information

Learning Node.js For Mobile Application Development By Stefan Buttigieg;Christopher Svanefalk

Learning Node.js For Mobile Application Development By Stefan Buttigieg;Christopher Svanefalk Learning Node.js For Mobile Application Development By Stefan Buttigieg;Christopher Svanefalk If searching for a book by Stefan Buttigieg;Christopher Svanefalk Learning Node.js for Mobile Application Development

More information

webpack bundle inner structure and optimization Alexey Ivanov, Evil Martians

webpack bundle inner structure and optimization Alexey Ivanov, Evil Martians webpack bundle inner structure and optimization Alexey Ivanov, Evil Martians Evil Martians Evil Martians What I'm working on Problems Multiple versions of lodash or underscore. Problems Multiple versions

More information

Index. Elad Elrom 2016 E. Elrom, Pro MEAN Stack Development, DOI /

Index. Elad Elrom 2016 E. Elrom, Pro MEAN Stack Development, DOI / Index A Accessible Rich Internet Applications (ARIA), 101 Amazon AWS, 44 Amazon EC2, 28 Amazon s Relational Database Service (RDS), 28 Amazon Web Services (AWS) cloud, 28 Android SDK Manager, 272 Android

More information

Don't Call Us, We'll Call You:

Don't Call Us, We'll Call You: Don't Call Us, We'll Call You: Characterizing Callbacks in JavaScript Keheliya Gallaba, Ali Mesbah, Ivan Beschastnikh University of British Columbia 1 Why JavaScript? On the client 2 Why JavaScript? On

More information

Enterprise Web Development

Enterprise Web Development Enterprise Web Development Yakov Fain, Victor Rasputnis, Anatole Tartakovsky, and Viktor Gamov Beijing Cambridge Farnham Koln Sebastopol Tokyo O'REILLY Table of Contents Preface Introduction xi xxiii Part

More information

Modern frontend workflows in Liferay Portal and Liferay DXP. Iván Zaera Avellon, Liferay Chema Balsas, Liferay Pier Paolo Ramon, SMC

Modern frontend workflows in Liferay Portal and Liferay DXP. Iván Zaera Avellon, Liferay Chema Balsas, Liferay Pier Paolo Ramon, SMC Modern frontend workflows in Liferay Portal and Liferay DXP Iván Zaera Avellon, Liferay Chema Balsas, Liferay Pier Paolo Ramon, SMC https://www.youtube.com/watch?v=zcdwd4scz6i https://www.youtube.com/watch?v=8zfvppif-sm

More information

5th April Installation Manual. Department of Computing and Networking Software Development Degree

5th April Installation Manual. Department of Computing and Networking Software Development Degree 5th April 2017 Installation Manual Department of Computing and Networking Software Development Degree Project name: Student: Student Number: Supervisor: MaaP (Message as a Platform) Chihabeddine Ahmed

More information

Getting started with Tabris.js Tutorial Ebook

Getting started with Tabris.js Tutorial Ebook Getting started with Tabris.js 2.3.0 Tutorial Ebook Table of contents Introduction...3 1 Get started...4 2 Tabris.js in action...5 2.1 Try the examples...5 2.2 Play with the examples...7 2.3 Write your

More information

We are assuming you have node installed!

We are assuming you have node installed! Node.js Hosting We are assuming you have node installed! This lesson assumes you've installed and are a bit familiar with JavaScript and node.js. If you do not have node, you can download and install it

More information

Intro To Javascript. Intro to Web Development

Intro To Javascript. Intro to Web Development Intro To Javascript Intro to Web Development Preamble I don't like JavaScript But with JS your feelings don't matter. Browsers don't work well with any other language so you have to write code that either:

More information

Backend Development. SWE 432, Fall 2017 Design and Implementation of Software for the Web

Backend Development. SWE 432, Fall 2017 Design and Implementation of Software for the Web Backend Development SWE 432, Fall 2017 Design and Implementation of Software for the Web Real World Example https://qz.com/1073221/the-hackers-who-broke-into-equifax-exploited-a-nine-year-old-security-flaw/

More information

Java with Node.js Powering the Next Generation of Web Applications

Java with Node.js Powering the Next Generation of Web Applications Java with Node.js Powering the Next Generation of Web Applications Oracle Code One, Oct 23rd 2018 Chris Bailey Chief Architect, Cloud Native Runtimes @IBM baileyc@uk.ibm.com @Chris Bailey CloudNativeJS.io

More information

Arjen de Blok. Senior Technical Consultant bij ICT Groep ( sinds 1995 Programmeren sinds 1990 Technologiën. Links

Arjen de Blok. Senior Technical Consultant bij ICT Groep (  sinds 1995 Programmeren sinds 1990 Technologiën. Links Arjen de Blok Senior Technical Consultant bij ICT Groep (www.ict.eu) sinds 1995 Programmeren sinds 1990 Technologiën Links Visual C++ met Microsoft Foundation Classes.NET WinForms & WPF Silverlight ASP.NET

More information

Putting A Spark in Web Apps

Putting A Spark in Web Apps Putting A Spark in Web Apps Apache Big Data, Seville ES, 2016 David Fallside Intro Web app development has moved from Java etc to Node.js and JavaScript JS environment relatively simple and very rich,

More information

Chris Bailey Bailey. Emerging Web Application Architectures With Java and Node.js

Chris Bailey Bailey. Emerging Web Application Architectures With Java and Node.js Chris Bailey IBM Emerging Web Application Architectures With Java and Node.js STSM, IBM Runtime Development 2 @seabaylea 2015 IBM Corporation 1 The Annual Death of Java Developer trend No. 2: Java s decline

More information

Adventures with BaseX and web applications. Andy Feb 2013

Adventures with BaseX and web applications. Andy Feb 2013 Adventures with BaseX and web applications Andy Bunce @apb1704 Feb 2013 BaseX and the Web GraphXQ RESTXQ + Graphviz ( Using a PaaS ) CellarXQ Angular.js + OAuth BaseX with Node.js + events RESTXQ http://docs.basex.org/wiki/restxq

More information

WEBASSETS & DUKPY FREE YOURSELF FROM NODEJS. Alessandro amol

WEBASSETS & DUKPY FREE YOURSELF FROM NODEJS. Alessandro amol WEBASSETS & DUKPY FREE YOURSELF FROM NODEJS Alessandro Molina @ amol amol@turbogears.org Why? NodeJS has a rich toolkit, but using it has some serious drawbacks. People really don t know there are very

More information

Mastering Grunt. Master this powerful build automation tool to streamline your application development. Daniel Li BIRMINGHAM - MUMBAI

Mastering Grunt. Master this powerful build automation tool to streamline your application development. Daniel Li BIRMINGHAM - MUMBAI Mastering Grunt Master this powerful build automation tool to streamline your application development Daniel Li BIRMINGHAM - MUMBAI Mastering Grunt Copyright 2014 Packt Publishing All rights reserved.

More information

Tuesday, January 13, Backend III: Node.js with Databases

Tuesday, January 13, Backend III: Node.js with Databases 6.148 Backend III: Node.js with Databases HELLO AND WELCOME! Your Feels Lecture too fast! Your Feels Lecture too fast! Too many languages Your Feels Lecture too fast! Too many languages Code more in class

More information

Advance Mobile& Web Application development using Angular and Native Script

Advance Mobile& Web Application development using Angular and Native Script Advance Mobile& Web Application development using Angular and Native Script Objective:- As the popularity of Node.js continues to grow each day, it is highly likely that you will use it when you are building

More information

a Very Short Introduction to AngularJS

a Very Short Introduction to AngularJS a Very Short Introduction to AngularJS Lecture 11 CGS 3066 Fall 2016 November 8, 2016 Frameworks Advanced JavaScript programming (especially the complex handling of browser differences), can often be very

More information

EventRacer: Finding Concurrency Errors in Event-Driven Applications. Pavol Bielik

EventRacer: Finding Concurrency Errors in Event-Driven Applications. Pavol Bielik Eventr: Finding Concurrency Errors in Event-Driven Applications Pavol Bielik Android Errors Caused by Concurrency Display article twice 1 Display wrong directory Display wrong order Web Page Errors Caused

More information

Learn Gulp. Jonathan Birkholz. This book is for sale at This version was published on

Learn Gulp. Jonathan Birkholz. This book is for sale at   This version was published on Learn Gulp Jonathan Birkholz This book is for sale at http://leanpub.com/learngulp This version was published on 2015-09-02 This is a Leanpub book. Leanpub empowers authors and publishers with the Lean

More information

From the Beginning: Your First Node.js Web Service

From the Beginning: Your First Node.js Web Service From the Beginning: Your First Node.js Web Service P. Venkatramen Data Access Development Oracle Database 10 April 2018 Copyright 2017, Oracle and/or its affiliates. All rights reserved. Safe Harbor Statement

More information

NODE.JS SERVER SIDE JAVASCRIPT. Introduc)on Node.js

NODE.JS SERVER SIDE JAVASCRIPT. Introduc)on Node.js NODE.JS SERVER SIDE JAVASCRIPT Introduc)on Node.js Node.js was created by Ryan Dahl starting in 2009. For more information visit: http://www.nodejs.org 1 What about Node.js? 1. JavaScript used in client-side

More information

Modern Web Application Development. Sam Hogarth

Modern Web Application Development. Sam Hogarth Modern Web Application Development Sam Hogarth Some History Early Web Applications Server-side scripting only e.g. PHP/ASP Basic client-side scripts JavaScript/JScript/VBScript Major differences in browser

More information

Express.JS. Prof. Cesare Pautasso Modularity

Express.JS. Prof. Cesare Pautasso Modularity 1 / 30 Express.JS Prof. Cesare Pautasso http://www.pautasso.info cesare.pautasso@usi.ch @pautasso Modularity var msg = "x:"; //private var f = function(x) { return msg + " " + x; module.exports.f = f;

More information

Lab 4: create a Facebook Messenger bot and connect it to the Watson Conversation service

Lab 4: create a Facebook Messenger bot and connect it to the Watson Conversation service Lab 4: create a Facebook Messenger bot and connect it to the Watson Conversation service Overview In this lab, you'll create advanced Node-RED flows that: Connect the Watson Conversation service to Facebook

More information

Coding for OCS. Derek Endres Software Developer Research #OSIsoftUC #PIWorld 2018 OSIsoft, LLC

Coding for OCS. Derek Endres Software Developer Research #OSIsoftUC #PIWorld 2018 OSIsoft, LLC Coding for OCS Derek Endres Software Developer Research dendres@osisoft.com 1 Planned Agenda Intro (~20 min) Presentation formalities Intro to OCS Detail of what I am going to do Building the app (~55

More information

this presentation code is on https://github.com/gabrielelana/node-examples

this presentation code is on https://github.com/gabrielelana/node-examples this presentation code is on https://github.com/gabrielelana/node-examples gabriele lana gabriele.lana@cleancode.it twitter: @gabrielelana this presentation code is on https://github.com/gabrielelana/node-examples

More information

IDWedgeKB Serial Port and NodeJS

IDWedgeKB Serial Port and NodeJS IDWedgeKB Serial Port and NodeJS The IDWedgeKB is a barcode scanner that reads and parses the information encoded on the 2D barcode found on U.S. Drivers Licenses. IDWedgeKB has two modes of operation;

More information

Developing with Blaast

Developing with Blaast Developing with Blaast Kirsi Louhelainen 21.2.2012 1 Let s get acquainted About me Geek at heart, business enthusiast Aalto CS alumni Blaast co-founder Responsible for 3rd party apps @ Blaast About Blaast

More information

Full Stack Web Framework with BBG

Full Stack Web Framework with BBG Full Stack Web Framework with BBG *** This guide will be for mac/linux (All commands will be UNIX). Try Windows at your own risk. Intro to Meteor 1 Why Meteor 1 Installation 1 Mac 1 Creating Your First

More information

JavaScript Fundamentals_

JavaScript Fundamentals_ JavaScript Fundamentals_ HackerYou Course Syllabus CLASS 1 Intro to JavaScript Welcome to JavaScript Fundamentals! Today we ll go over what programming languages are, JavaScript syntax, variables, and

More information

Getting Started with IBM Bluemix Hands-On Workshop. Module 6a: Services

Getting Started with IBM Bluemix Hands-On Workshop. Module 6a: Services Hands-On Workshop Module 6a: Services Workshop overview In this workshop, you will: Create a Cloudant service that extends the Fizzbuzz application Create a user-defined service that is local to your

More information

Evolution of the "Web

Evolution of the Web Evolution of the "Web App" @HenrikJoreteg @Hoarse_JS THIS USED TO BE SIMPLE! 1. WRITE SOME HTML 2. LAY IT OUT WITH FRAMES OR TABLES 3. FTP IT TO A SERVER! 4. BAM! CONGRATULATIONS, YOU RE A WEB DEVELOPER!

More information

Homework #7 Amazon Elastic Compute Cloud Web Services

Homework #7 Amazon Elastic Compute Cloud Web Services Homework #7 Amazon Elastic Compute Cloud Web Services This semester we are allowing all students to explore cloud computing as offered by Amazon s Web Services. Using the instructions below one can establish

More information

Node.js 8 the Right Way

Node.js 8 the Right Way Extracted from: Node.js 8 the Right Way Practical, Server-Side JavaScript That Scales This PDF file contains pages extracted from Node.js 8 the Right Way, published by the Pragmatic Bookshelf. For more

More information