Makbul Khan. Nikhil Sukul

Size: px
Start display at page:

Download "Makbul Khan. Nikhil Sukul"

Transcription

1 Makbul Khan Acquia Certified Developer Senior Software Engineer makbul_khan8 makbul_khan08 Nikhil Sukul Senior Drupal Architect nikhilsukul nikhilsukul

2 Topics 1. What is Isomorphic JavaScript 2. Why Isomorphic JavaScript 3. Isomorphic in a wild 4. How to Isomorph 5. Available libraries 6. Isomorphic JavaScript with Drupal 7. Stop talking. Show me the code!

3 What is Isomorphic JavaScript?

4 Iso. morphic Same Form

5 Isomorphic Application Dynamic website Capable of generating its html Use same code in both server and client side Client Shared code Server REST API

6 Javascript code that can be shared between Client and Server apps. Shared code

7 Why Isomorphic Javascript

8 Compiled Web applications Server-rendered application Client-rendered application Isomorphic web application

9 Server-rendered application

10 Server-rendered application DOM manipulation Response User interface Javascript Request Response View layer Client Application logic Request Routing Backend Persistence Drupal (PHP) Ruby Python Node.js

11 Server-rendered application Server Client Server response Download response Download assets Execute scripts End user sees content

12 Server-rendered application Server render content Improved user experience by using AJAX, JQuery,... Serving HTML on first-load is fast. Crawler, screen-readers are happy with HTML. But: Maintain UI render and logic in both Client & Server Duplication application logic in (usually) two languages, two frameworks, two development stack, two templates,...

13 Client-rendered application

14 Client-rendered application DOM manipulation View layer Application logic Response User interface Client Javascript Routing Request Backend Persistence Drupal (PHP) Ruby Python Node.js

15 Client-rendered application Server Client Server response End user sees content Download response Download assets Execute scripts Fetch data Render template

16 Client-rendered application Client side render content Separate application logic and data retrieval More interactivity, optimistic UI, offline, mobile Eg. Gmail and StackEdit Editor But: Not SEO friendly Users have to wait a few seconds of blank page or loading spinner before seeing the content Expensive maintenance

17 Server v/s Client Initial load Initial load SEO SEO User experience User experience

18 Server-rendered Application OR Client-rendered Application

19 We have another option: Isomorphic Web Application The best of both worlds

20 Isomorphic application DOM manipulation Javascript Request Response View layer User interface Client Application logic Shared Routing Javascript Request Response Backend Persistence Drupal (PHP) Ruby Python Node.js

21 Isomorphic application DOM manipulation Javascript Request Response View layer User interface Client Application logic Shared Routing Javascript Backend Persistence Drupal (PHP) Ruby Python Node.js

22 Isomorphic application DOM manipulation Response View layer User interface Request Response Application logic Client Javascript Request Shared Routing Javascript Request Response Backend Persistence Drupal (PHP) Ruby Python Node.js

23 Isomorphic application Server Client Server response Download response Load app logic Hook into rendered app End user sees content

24 Isomorphic application DOM manipulation Response User Interface Markup Request Client Javascript Data presentation View layer Application logic Shared RoutingI18n Javascript Date, Currency formatting Response Request URL formatting Backend Persistence Drupal (PHP) Ruby Python Node.js

25 Why go to the trouble?

26 Performance Initial page load speed. SEO Crawlable single-page apps. Flexibility Run code anywhere. Maintainability Reduce code duplication.

27 Isomorphic in a wild

28

29 Flickr Yahoo s Modown libraries (successor to Mojito).

30

31 Instagram Facebook s React library in a Django app.

32 Meteor Realtime app framework.

33 Lullabot React, Node.js, CouchDB and Drupal as the backend CMS.

34 How to Isomorph

35 Isomorphic JavaScript can be environment agnostic or shimmed per environment.

36 Environment agnostic Does not depend on browser-specific properties (window) or server-specific properties (process.env, req.cookies).

37 Shimmed per Environment Provide shims for accessing environment-specific properties so module can expose a single API. window.location.pathname vs req.path

38 Abstractions

39 Isomorphism Isomorphic Code Client Server Abstract all the things!!

40 Abstraction Cookies setcookie( mycookie, root ); document.cookie = mycookie=root; Domain=.example.org ; response.setheader( Set-Cookie: mycookie=root; + Domain=.example.org ); Client Server

41 Abstraction Redirects this.transitionto( /login ); document.location.href = /login ; window.pushstate({},, /login ); response.redirect( /login ); Client Server

42 Most of your favourite JS libraries are Isomorphic

43 You can use these libraries

44

45 React (JavaScript framework by Facebook) New and fashionable Uses a virtual DOM, and syncs only the changed parts A javascript library for building user interface Strict data control mechanism

46 Isomorphic Javascript with Drupal

47 Available libraries in Drupal as a Module React -- Recommended release (react & myreactjs) Meteor -- Sandbox Rendr -- No module yet

48 Stop talking. Show me the code!!

49 THANK YOU FAICHI SOLUTIONS PVT LTD USA: OFFICE NO. 230, 640 WEST CALIFORNIA AVENUE SUITE 210 SUNNYVALE, CA TEL: +1 (408) INDIA: ACCORD IT PARK, BANER ROAD, PUNE, MAHARASHATRA PH. NO

welcome to BOILERCAMP HOW TO WEB DEV

welcome to BOILERCAMP HOW TO WEB DEV welcome to BOILERCAMP HOW TO WEB DEV Introduction / Project Overview The Plan Personal Website/Blog Schedule Introduction / Project Overview HTML / CSS Client-side JavaScript Lunch Node.js / Express.js

More information

Ten interesting features of Google s Angular Project

Ten interesting features of Google s Angular Project Ten interesting features of Google s Angular Project - 1 Ten interesting features of Google s Angular Project Copyright Clipcode Ltd 2018 All rights reserved Ten interesting features of Google s Angular

More information

Web Premium- Advanced UI Development Course. Duration: 08 Months. [Classroom and Online] ISO 9001:2015 CERTIFIED

Web Premium- Advanced UI Development Course. Duration: 08 Months. [Classroom and Online] ISO 9001:2015 CERTIFIED Weekdays:- 1½ hrs / 3 days Fastrack:- 1½hrs / Day [Classroom and Online] ISO 9001:2015 CERTIFIED ADMEC Multimedia Institute www.admecindia.co.in +91-9911782350, +91-9811818122 ADMEC is one of the best

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

Upload to your web space (e.g., UCSC) Due this Thursday 4/8 in class Deliverable: Send me an with the URL Grading:

Upload to your web space (e.g., UCSC) Due this Thursday 4/8 in class Deliverable: Send me an  with the URL Grading: CS 183 4/6/2010 Build a simple HTML page, topic of your choice Will use this as a basis and gradually and add more features as the class progresses Need to be done with your favorite text editor, no visual

More information

Standard 1 The student will author web pages using the HyperText Markup Language (HTML)

Standard 1 The student will author web pages using the HyperText Markup Language (HTML) I. Course Title Web Application Development II. Course Description Students develop software solutions by building web apps. Technologies may include a back-end SQL database, web programming in PHP and/or

More information

EPHP a tool for learning the basics of PHP development. Nick Whitelegg School of Media Arts and Technology Southampton Solent University

EPHP a tool for learning the basics of PHP development. Nick Whitelegg School of Media Arts and Technology Southampton Solent University EPHP a tool for learning the basics of PHP development Nick Whitelegg School of Media Arts and Technology Southampton Solent University My background Lecturer at Southampton Solent University since 2003

More information

DECOUPLING PATTERNS, SERVICES AND CREATING AN ENTERPRISE LEVEL EDITORIAL EXPERIENCE

DECOUPLING PATTERNS, SERVICES AND CREATING AN ENTERPRISE LEVEL EDITORIAL EXPERIENCE DECOUPLING PATTERNS, SERVICES AND CREATING AN ENTERPRISE LEVEL EDITORIAL EXPERIENCE Who we are and Why we are here? Saurabh Chugh Started Drupal journey in 2010 with Drupal 6, long journey with Drupal

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

USER GUIDE. LitExtension: YAHOO STORE to Magento Migration Tool

USER GUIDE. LitExtension: YAHOO STORE to Magento Migration Tool USER GUIDE LitExtension: YAHOO STORE to Magento Migration Tool The essence of LitExtension products focuses on their friendliness to users, which means that every shopping cart owners, even who has little

More information

October 08: Introduction to Web Security

October 08: Introduction to Web Security October 08: Introduction to Web Security Scribe: Rohan Padhye October 8, 2015 Web security is an important topic because web applications are particularly hard to secure, and are one of the most vulnerable/buggy

More information

20486-Developing ASP.NET MVC 4 Web Applications

20486-Developing ASP.NET MVC 4 Web Applications Course Outline 20486-Developing ASP.NET MVC 4 Web Applications Duration: 5 days (30 hours) Target Audience: This course is intended for professional web developers who use Microsoft Visual Studio in an

More information

,

, Weekdays:- 1½ hrs / 3 days Fastrack:- 1½hrs / Day [Class Room and Online] ISO 9001:2015 CERTIFIED ADMEC Multimedia Institute www.admecindia.co.in 9911782350, 9811818122 Welcome to one of the highly professional

More information

Modern and Responsive Mobile-enabled Web Applications

Modern and Responsive Mobile-enabled Web Applications Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 110 (2017) 410 415 The 12th International Conference on Future Networks and Communications (FNC-2017) Modern and Responsive

More information

Our trainings can be delivered as an Onsite Classroom Training or as an Instructor-Led Live Online Training(ILT).

Our trainings can be delivered as an Onsite Classroom Training or as an Instructor-Led Live Online Training(ILT). About Shristi Shristi Technology Labs is an emerging Software Training solution provider for high end technologies. We are passionate about innovation, learning & development and quality. Our vision is

More information

Tooling for Ajax-Based Development. Craig R. McClanahan Senior Staff Engineer Sun Microsystems, Inc.

Tooling for Ajax-Based Development. Craig R. McClanahan Senior Staff Engineer Sun Microsystems, Inc. Tooling for Ajax-Based Development Craig R. McClanahan Senior Staff Engineer Sun Microsystems, Inc. 1 Agenda In The Beginning Frameworks Tooling Architectural Approaches Resources 2 In The Beginning 3

More information

Backend Web Frameworks

Backend Web Frameworks Backend Web Frameworks How do we: inspect the requested URL and return the appropriate page? deal with POST requests? handle more advanced concepts like sessions and cookies? scale the application to

More information

Information Brochure Information Brochure. An ISO 9001:2015 Institute. ADMEC Multimedia Institute. Web Master Plus. Designing Development Promotion

Information Brochure Information Brochure. An ISO 9001:2015 Institute. ADMEC Multimedia Institute. Web Master Plus. Designing Development Promotion Information Brochure Information Brochure An ISO 9001:2015 Institute ADMEC Multimedia Institute Designing Development Promotion 18 Designing Development Promotion Months Course is an 18 months advanced

More information

Advanced Joomla! Dan Rahmel. Apress*

Advanced Joomla! Dan Rahmel. Apress* Advanced Joomla! Dan Rahmel Apress* Contents About the Author About the Technical Reviewer Acknowledgments Introduction xvii...xix xxi xxiii Chapter 1: Streamlining the Authoring Process 1 Setting the

More information

The Future of the Realtime Web BETTER APIS WITH GRAPHQL. Josh

The Future of the Realtime Web BETTER APIS WITH GRAPHQL. Josh The Future of the Realtime Web BETTER APIS WITH GRAPHQL Josh Price @joshprice STEPPING STONES TO FP Language (Elixir) Strongly-Typed APIs (GraphQL) GRAPHQL WAS HERE? http://whiteafrican.com/2008/05/12/crossing-the-mapping-chasm/

More information

WebDev. Web Design COMBINES A NUMBER OF DISCIPLINES. Web Development Process DESIGN DEVELOPMENT CONTENT MULTIMEDIA

WebDev. Web Design COMBINES A NUMBER OF DISCIPLINES. Web Development Process DESIGN DEVELOPMENT CONTENT MULTIMEDIA WebDev Site Construction is one of the last steps The Site Development Process http://webstyleguide.com Web Design COMBINES A NUMBER OF DISCIPLINES DESIGN CONTENT Interaction Designers User Interface Designers

More information

Building Isomorphic Javascript Apps

Building Isomorphic Javascript Apps Building Isomorphic Javascript Apps 1 / 6 2 / 6 3 / 6 Building Isomorphic Javascript Apps Often referred to as the holy grail of web application development, isomorphic JavaScript lets you run the same

More information

Web Applications. Software Engineering 2017 Alessio Gambi - Saarland University

Web Applications. Software Engineering 2017 Alessio Gambi - Saarland University Web Applications Software Engineering 2017 Alessio Gambi - Saarland University Based on the work of Cesare Pautasso, Christoph Dorn, Andrea Arcuri, and others ReCap Software Architecture A software system

More information

React & Redux in Hulu. (Morgan Cheng)

React & Redux in Hulu. (Morgan Cheng) React & Redux in Hulu (Morgan Cheng) About Me @morgancheng About Hulu Challenges System Complexity Legacy code in jquery & Backbone UI non-predictable Lack of component isolation Performance Bottleneck

More information

,

, Weekdays:- 1½ hrs / 3 days Fastrack:- 1½hrs / Day ADMEC Multimedia Institute www.admecindia.co.in 9911782350, 9811818122 Web Master Plus Course is an 18 months advanced and industry-recognized diploma

More information

Jquery Ajax Json Php Mysql Data Entry Example

Jquery Ajax Json Php Mysql Data Entry Example Jquery Ajax Json Php Mysql Data Entry Example Then add required assets in head which are jquery library, datatable js library and css By ajax api we can fetch json the data from employee-grid-data.php.

More information

Masters in Web Development

Masters in Web Development Masters in Web Development Accelerate your carrer by learning Web Development from Industry Experts. www.techgrad.in India s Leading Digital marketing Institute India s Leading Accademy 12,234+ Trainees

More information

CSCI 1320 Creating Modern Web Applications. Content Management Systems

CSCI 1320 Creating Modern Web Applications. Content Management Systems CSCI 1320 Creating Modern Web Applications Content Management Systems Brown CS Website 2 Static Brown CS Website Up since 1994 5.9 M files (inodes) 1.6 TB of filesystem space 3 Static HTML Generators Convert

More information

React(.js) the Domino Way High-Performance Client for Domino. Knut Herrmann

React(.js) the Domino Way High-Performance Client for Domino. Knut Herrmann React(.js) the Domino Way High-Performance Client for Domino Knut Herrmann CollabSphere 2018 Sponsors Knut Herrmann Senior Software Architect Leonso GmbH Notes Domino developer since version 2 Web application

More information

McLab tools on the web. Deepanjan Roy Supervisor: Prof. Laurie Hendren

McLab tools on the web. Deepanjan Roy Supervisor: Prof. Laurie Hendren McLab tools on the web Deepanjan Roy Supervisor: Prof. Laurie Hendren Brief overview of the McLab project LANGUAGES, COMPILERS, AND VIRTUAL MACHINES Dynamic Scientific Programming Languages (Especially

More information

Beginning JavaScript (Programmer To Programmer) By Paul Wilton

Beginning JavaScript (Programmer To Programmer) By Paul Wilton Beginning JavaScript (Programmer To Programmer) By Paul Wilton Beginning JavaScript, 4th Edition (0470525932) cover image process while new examples provide you with updated JavaScript programming techniques.

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

Simple AngularJS thanks to Best Practices

Simple AngularJS thanks to Best Practices Simple AngularJS thanks to Best Practices Learn AngularJS the easy way Level 100-300 What s this session about? 1. AngularJS can be easy when you understand basic concepts and best practices 2. But it

More information

WebApp development. Outline. Web app structure. HTML basics. 1. Fundamentals of a web app / website. Tiberiu Vilcu

WebApp development. Outline. Web app structure. HTML basics. 1. Fundamentals of a web app / website. Tiberiu Vilcu Outline WebApp development Tiberiu Vilcu Prepared for EECS 411 Sugih Jamin 20 September 2017 1 2 Web app structure HTML basics Back-end: Web server Database / data storage Front-end: HTML page CSS JavaScript

More information

Using WebGallery, WebDeploy and some IIS Extensions

Using WebGallery, WebDeploy and some IIS Extensions Using WebGallery, WebDeploy and some IIS Extensions Using WebGallery, WebDeploy and some IIS Extensions Luis Alves Martins @luismartins luis.martins@microsoft.com Architect Evangelist Microsoft Portugal

More information

Jamcracker, Inc. CMS Dashboard Widget Creation

Jamcracker, Inc. CMS Dashboard Widget Creation Jamcracker, Inc. CMS Dashboard Widget Creation Last Updated: 26-May-2017 Table of Contents Overview... 3 Before you start... 3 Credentials & CMS Admin URL... 3 Required Skill Sets... 3 Tasks to be performed...

More information

To Kill a Monolith: Slaying the Demons of a Monolith with Node.js Microservices on CloudFoundry. Tony Erwin,

To Kill a Monolith: Slaying the Demons of a Monolith with Node.js Microservices on CloudFoundry. Tony Erwin, To Kill a Monolith: Slaying the Demons of a Monolith with Node.js Microservices on CloudFoundry Tony Erwin, aerwin@us.ibm.com Agenda Origins of the Bluemix UI Demons of the Monolith Slaying Demons with

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

PHP & PHP++ Curriculum

PHP & PHP++ Curriculum PHP & PHP++ Curriculum CORE PHP How PHP Works The php.ini File Basic PHP Syntax PHP Tags PHP Statements and Whitespace Comments PHP Functions Variables Variable Types Variable Names (Identifiers) Type

More information

Review. Fundamentals of Website Development. Web Extensions Server side & Where is your JOB? The Department of Computer Science 11/30/2015

Review. Fundamentals of Website Development. Web Extensions Server side & Where is your JOB? The Department of Computer Science 11/30/2015 Fundamentals of Website Development CSC 2320, Fall 2015 The Department of Computer Science Review Web Extensions Server side & Where is your JOB? 1 In this chapter Dynamic pages programming Database Others

More information

Mix It Up: Visual Studio 2010 and ASP.NET 4.0. Singapore 25 March 2009

Mix It Up: Visual Studio 2010 and ASP.NET 4.0. Singapore 25 March 2009 Mix It Up: Visual Studio 2010 and ASP.NET 4.0 Singapore 25 March 2009 Mar Mix-It-Up: Visual Studio 2010 and ASP.NET 4.0 Mix 01: Future of Web Development with Visual Studio 2010 and ASP.NET 4.0 by Maung

More information

Full Stack Web Developer

Full Stack Web Developer Full Stack Web Developer Course Contents: Introduction to Web Development HTML5 and CSS3 Introduction to HTML5 Why HTML5 Benefits Of HTML5 over HTML HTML 5 for Making Dynamic Page HTML5 for making Graphics

More information

Introduction to PHP. Handling Html Form With Php. Decisions and loop. Function. String. Array

Introduction to PHP. Handling Html Form With Php. Decisions and loop. Function. String. Array Introduction to PHP Evaluation of Php Basic Syntax Defining variable and constant Php Data type Operator and Expression Handling Html Form With Php Capturing Form Data Dealing with Multi-value filed Generating

More information

QWeSST. Type-Safe Web Programming. Thierry Sans and Iliano Cervesato. Carnegie Mellon University Qatar

QWeSST. Type-Safe Web Programming. Thierry Sans and Iliano Cervesato. Carnegie Mellon University Qatar QWeSST Type-Safe Web Programming Thierry Sans and Iliano Cervesato Carnegie Mellon University Qatar Katholieke Universiteit Leuven, Belgium 2 August 2011 Project Goal Study the foundations of web programming

More information

AngularJS Fundamentals

AngularJS Fundamentals AngularJS Fundamentals by Jeremy Zerr Blog: http://www.jeremyzerr.com LinkedIn: http://www.linkedin.com/in/jrzerr Twitter: http://www.twitter.com/jrzerr What is AngularJS Open Source Javascript MVC/MVVM

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

Nodes Tech Slides - Progressive Web Apps, 2018

Nodes Tech Slides - Progressive Web Apps, 2018 Nodes Tech Slides - Progressive Web Apps, 2018 Our belief Gone are the days where companies spend fortunes on building digital products that users don t want. Or at least they should be. And by now many

More information

COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3

COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3 COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3 MODULE 1: OVERVIEW OF HTML AND CSS This module provides an overview of HTML and CSS, and describes how to use Visual Studio 2012

More information

Interactive XML Visualization - using XSLT 2.0 on the Browser. Phil Fearon - Saxonica

Interactive XML Visualization - using XSLT 2.0 on the Browser. Phil Fearon - Saxonica Interactive XML Visualization - using XSLT 2.0 on the Browser Phil Fearon - Saxonica Big XML Theme Big data Large scale searching Processing large volumes at high speed Crunching big XML files Open Linked

More information

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

Microservices. SWE 432, Fall 2017 Design and Implementation of Software for the Web Micros SWE 432, Fall 2017 Design and Implementation of Software for the Web Today How is a being a micro different than simply being ful? What are the advantages of a micro backend architecture over a

More information

P a g e 1. Danish Technological Institute. Scripting and Web Languages Online Course k Scripting and Web Languages

P a g e 1. Danish Technological Institute. Scripting and Web Languages   Online Course k Scripting and Web Languages P a g e 1 Online Course k72853 Scripting and Web Languages P a g e 2 Title Estimated Duration (hrs) JsRender Fundamentals 2 Advanced JsRender Features 3 JavaScript SPA: Getting Started with SPA in Visual

More information

Web Focused Programming With PHP

Web Focused Programming With PHP Web Focused Programming With PHP May 20 2014 Thomas Beebe Advanced DataTools Corp (tom@advancedatatools.com) Tom Beebe Tom is a Senior Database Consultant and has been with Advanced DataTools for over

More information

Outline. AJAX for Libraries. Jason A. Clark Head of Digital Access and Web Services Montana State University Libraries

Outline. AJAX for Libraries. Jason A. Clark Head of Digital Access and Web Services Montana State University Libraries AJAX for Libraries Jason A. Clark Head of Digital Access and Web Services Montana State University Libraries Karen A. Coombs Head of Web Services University of Houston Libraries Outline 1. What you re

More information

IBM Worklight V5.0.6 Getting Started

IBM Worklight V5.0.6 Getting Started IBM Worklight V5.0.6 Getting Started Creating your first Worklight application 17 January 2014 US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract

More information

Programming in HTML5 with JavaScript and CSS3

Programming in HTML5 with JavaScript and CSS3 20480 - Programming in HTML5 with JavaScript and CSS3 Duration: 5 days Course Price: $2,975 Software Assurance Eligible Course Description Course Overview This training course provides an introduction

More information

Web Software Model CS 4640 Programming Languages for Web Applications

Web Software Model CS 4640 Programming Languages for Web Applications Web Software Model CS 4640 Programming Languages for Web Applications [Robert W. Sebesta, Programming the World Wide Web Upsorn Praphamontripong, Web Mutation Testing ] 1 Web Applications User interactive

More information

7401ICT eservice Technology. (Some of) the actual examination questions will be more precise than these.

7401ICT eservice Technology. (Some of) the actual examination questions will be more precise than these. SAMPLE EXAMINATION QUESTIONS (Some of) the actual examination questions will be more precise than these. Basic terms and concepts Define, compare and discuss the following terms and concepts: a. HTML,

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

Website Report for

Website Report for Website Report for www.jgllaw.com This report grades your website on the strength of a range of important factors such as on-page SEO optimization, off-page backlinks, social, performance, security and

More information

Software. Full Stack Web Development Intensive, Fall Lecture Topics. Class Sessions. Grading

Software. Full Stack Web Development Intensive, Fall Lecture Topics. Class Sessions. Grading Full Stack Web Development Intensive, Fall 2017 There are two main objectives to this course. The first is learning how to build websites / web applications and the assets that compose them. The second

More information

Get in Touch Module 1 - Core PHP XHTML

Get in Touch Module 1 - Core PHP XHTML PHP/MYSQL (Basic + Advanced) Web Technologies Module 1 - Core PHP XHTML What is HTML? Use of HTML. Difference between HTML, XHTML and DHTML. Basic HTML tags. Creating Forms with HTML. Understanding Web

More information

JAVASCRIPT JQUERY AJAX FILE UPLOAD STACK OVERFLOW

JAVASCRIPT JQUERY AJAX FILE UPLOAD STACK OVERFLOW page 1 / 5 page 2 / 5 javascript jquery ajax file pdf I marked it as a duplicate despite the platform difference, because as far as I can see the solution is the same (You can't and don't need to do this

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

Templates and Databinding. SWE 432, Fall 2017 Design and Implementation of Software for the Web

Templates and Databinding. SWE 432, Fall 2017 Design and Implementation of Software for the Web Templates and Databinding SWE 432, Fall 2017 Design and Implementation of Software for the Web Today What are templates? What are frontend components? How can I use these with React? 2 What s wrong with

More information

Angular 2 and Hexo. Static Meets Dynamic For the Best of Both Worlds! Copyright 2016 Code Career Academy

Angular 2 and Hexo. Static Meets Dynamic For the Best of Both Worlds! Copyright 2016 Code Career Academy Angular 2 and Hexo Static Meets Dynamic For the Best of Both Worlds! Who am I? Jeff Ammons Microsoft MVP Pluralsight Author CEO/Chief Instructor at Code Career Academy 25 Years Professional Experience

More information

Full Stack boot camp

Full Stack boot camp Name Full Stack boot camp Duration (Hours) JavaScript Programming 56 Git 8 Front End Development Basics 24 Typescript 8 React Basics 40 E2E Testing 8 Build & Setup 8 Advanced JavaScript 48 NodeJS 24 Building

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

EmberJS A Fitting Face for a D8 Backend. Taylor Solomon

EmberJS A Fitting Face for a D8 Backend. Taylor Solomon EmberJS A Fitting Face for a D8 Backend Taylor Solomon taylor.solomon @jtsolomon http://interactivestrategies.com 2 Years Ago 2 Years Ago URL Ember Data assumes a few things. - Your API format is JSON

More information

Deploying to the Edge CouchDB

Deploying to the Edge CouchDB Deploying to the Edge CouchDB Apache Relax Who s Talking? J Chris Anderson / jchris@apache.org / @jchris PHP -> Rails -> JSON -> CouchDB Director, couch.io And You? Web developers? JavaScript coders? CouchDB

More information

Matt Meteor Development Group

Matt Meteor Development Group A R C H I T E C T I N G M O D E R N J A V A S C R I P T A P P L I C A T I O N S Matt DeBergalis @debergalis Meteor Development Group www.meteor.com github.com/meteor/meteor Honeywell https://www.openroad.ca/portfolio/honeywell

More information

AJAX Workshop. Karen A. Coombs University of Houston Libraries Jason A. Clark Montana State University Libraries

AJAX Workshop. Karen A. Coombs University of Houston Libraries Jason A. Clark Montana State University Libraries AJAX Workshop Karen A. Coombs University of Houston Libraries Jason A. Clark Montana State University Libraries Outline 1. What you re in for 2. What s AJAX? 3. Why AJAX? 4. Look at some AJAX examples

More information

Developing ASP.NET MVC 5 Web Applications

Developing ASP.NET MVC 5 Web Applications 20486C - Version: 1 23 February 2018 Developing ASP.NET MVC 5 Web Developing ASP.NET MVC 5 Web 20486C - Version: 1 5 days Course Description: In this course, students will learn to develop advanced ASP.NET

More information

s642 web security computer security adam everspaugh

s642 web security computer security adam everspaugh s642 computer security web security adam everspaugh ace@cs.wisc.edu review memory protections / data execution prevention / address space layout randomization / stack protector Sandboxing / Limit damage

More information

Mobile Site Development

Mobile Site Development Mobile Site Development HTML Basics What is HTML? Editors Elements Block Elements Attributes Make a new line using HTML Headers & Paragraphs Creating hyperlinks Using images Text Formatting Inline styling

More information

Build Native-like Experiences in HTML5

Build Native-like Experiences in HTML5 Developers Build Native-like Experiences in HTML5 The Chrome Apps Platform Joe Marini - Chrome Developer Advocate About Me Joe Marini Developer Relations Lead - Google Chrome google.com/+joemarini @joemarini

More information

Networking & The Web. HCID 520 User Interface Software & Technology

Networking & The Web. HCID 520 User Interface Software & Technology Networking & The HCID 520 User Interface Software & Technology Uniform Resource Locator (URL) http://info.cern.ch:80/ 1991 HTTP v0.9 Uniform Resource Locator (URL) http://info.cern.ch:80/ Scheme/Protocol

More information

01 : Our Introduction

01 : Our Introduction 01 : Our Introduction 02 : About Us ABOUT DIGITAL REVOLUTION We transform coffee cups to your beautiful impressions on internet. As an innovative website design and development company, we can translate

More information

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Meteor

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Meteor About the Tutorial Meteor is a full-stack JavaScript platform for building web and mobile apps. Meteor makes it easier to create real-time apps, since it alone offers a full ecosystem to work with, instead

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

Manual Html A Href Onclick Submit Form

Manual Html A Href Onclick Submit Form Manual Html A Href Onclick Submit Form JS HTML DOM. DOM Intro DOM Methods HTML form validation can be done by a JavaScript. If a form field _input type="submit" value="submit" /form_. As shown in a previous

More information

CSS. HTML5,CSS3,JS & PHP Simplified. Smart Course for Absolute Beginners. REGISTER AT:

CSS. HTML5,CSS3,JS & PHP Simplified. Smart Course for Absolute Beginners. REGISTER AT: SKILLHUB MOB +91 9881 0455 39 FREE INDUSTRIAL TRAINING PROGRAM (Web And Mobile) Register before 15 July 2018 *Limited Seats Only Free HTML CSS JS PHP HTML5,CSS3,JS & PHP Simplified Smart Course for Absolute

More information

Front End Programming

Front End Programming Front End Programming Mendel Rosenblum Brief history of Web Applications Initially: static HTML files only. Common Gateway Interface (CGI) Certain URLs map to executable programs that generate web page

More information

About the Tutorial. Audience. Prerequisites. Disclaimer & Copyright. TurboGears

About the Tutorial. Audience. Prerequisites. Disclaimer & Copyright. TurboGears About the Tutorial TurboGears is a Python web application framework, which consists of many modules. It is designed around the MVC architecture that are similar to Ruby on Rails or Struts. TurboGears are

More information

CSC 309 The Big Picture

CSC 309 The Big Picture CSC 309 The Big Picture Server GET path/to/route Host: example.com Client Client sends HTTP request to server How? Server GET path/to/route Host: example.com Client Client sends HTTP request to server

More information

Best Practices. For developing a web game in modern browsers. Colt "MainRoach" McAnlis

Best Practices. For developing a web game in modern browsers. Colt MainRoach McAnlis Best Practices For developing a web game in modern browsers Colt "MainRoach" McAnlis 3.05.2012 The call me "web game" Content Server Database Gameplay Server Google App Engine Google Analytics Social Graph

More information

HTML CSS JAVASCRIPT WEB PUBLISHING IN ONE HOUR A DAY SAMS TEACH YOURSELF COVERING HTML5 CSS3 AND JQUERY 7TH EDITION

HTML CSS JAVASCRIPT WEB PUBLISHING IN ONE HOUR A DAY SAMS TEACH YOURSELF COVERING HTML5 CSS3 AND JQUERY 7TH EDITION HTML CSS JAVASCRIPT WEB PUBLISHING IN ONE HOUR A DAY SAMS TEACH YOURSELF COVERING HTML5 CSS3 AND JQUERY 7TH EDITION page 1 / 5 page 2 / 5 html css javascript web pdf We have curated a list of free development

More information

CS50 Quiz Review. November 13, 2017

CS50 Quiz Review. November 13, 2017 CS50 Quiz Review November 13, 2017 Info http://docs.cs50.net/2017/fall/quiz/about.html 48-hour window in which to take the quiz. You should require much less than that; expect an appropriately-scaled down

More information

20486: Developing ASP.NET MVC 4 Web Applications

20486: Developing ASP.NET MVC 4 Web Applications 20486: Developing ASP.NET MVC 4 Web Applications Length: 5 days Audience: Developers Level: 300 OVERVIEW In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework

More information

JavaScript Specialist v2.0 Exam 1D0-735

JavaScript Specialist v2.0 Exam 1D0-735 JavaScript Specialist v2.0 Exam 1D0-735 Domain 1: Essential JavaScript Principles and Practices 1.1: Identify characteristics of JavaScript and common programming practices. 1.1.1: List key JavaScript

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Front End Development» 2018-09-23 http://www.etanova.com/technologies/front-end-development Contents HTML 5... 6 Rich Internet Applications... 6 Web Browser Hardware Acceleration...

More information

Web Site Design and Development. CS 0134 Fall 2018 Tues and Thurs 1:00 2:15PM

Web Site Design and Development. CS 0134 Fall 2018 Tues and Thurs 1:00 2:15PM Web Site Design and Development CS 0134 Fall 2018 Tues and Thurs 1:00 2:15PM By the end of this course you will be able to Design a static website from scratch Use HTML5 and CSS3 to build the site you

More information

JSN ImageShow Configuration Manual Introduction

JSN ImageShow Configuration Manual Introduction JSN ImageShow Configuration Manual Introduction JSN ImageShow is the gallery extension built for Joomla! Content Management System for developers, photographers, and publishers. You can choose to show

More information

How to Migrate from Drupal Commerce to Magento

How to Migrate from Drupal Commerce to Magento How to Migrate from Drupal Commerce to Magento The essence of LitExtension products focuses on their friendliness to users, which means that every shopping cart owners, even who has little knowledge of

More information

Pivotal Tracker Kanban Prototype COLORADO SCHOOL OF MINES 2017 FIELD SESSION

Pivotal Tracker Kanban Prototype COLORADO SCHOOL OF MINES 2017 FIELD SESSION Pivotal Tracker Kanban Prototype COLORADO SCHOOL OF MINES 2017 FIELD SESSION Ann Gustafson Emily Dederick Christopher Bonin Gerald Ung CLIENT Morgan Whitney Table of Contents 1. Introduction... 2 1.1.

More information

From RPG OA to PHP: IBM i Modernization and Mobile Approaches

From RPG OA to PHP: IBM i Modernization and Mobile Approaches From RPG OA to PHP: IBM i Modernization and Mobile Approaches Presented by: Greg Patterson Senior Sales Engineer Quadrant and BCD Software Agenda Brief History of Modernization 5250 Refacing RPG OA PHP

More information

Performance Case Study

Performance Case Study Performance Case Study @Fabian_Frank Yahoo! Search, Engineer Youthmedia.eu, Volunteer A Dynamic Website self-contained App self-contained App self-contained App node v0.4.x multi-core

More information

Website SEO Checklist

Website SEO Checklist Website SEO Checklist Main points to have a flawless start for your new website. Domain Optimization Meta Data Up-to-Date Content Optimization SEO & Analytics Social Markup Markup Accessibility Browser

More information

Introduction to decoupled Drupal. Preston So 26 Sep 2017 DrupalCon Vienna 2017

Introduction to decoupled Drupal. Preston So 26 Sep 2017 DrupalCon Vienna 2017 Introduction to decoupled Drupal Preston So 26 Sep 2017 DrupalCon Vienna 2017 Herzlich Willkommen! Preston So has been a web developer and designer since 2001, a creative professional since 2004, and a

More information

Networking & The Web. HCID 520 User Interface Software & Technology

Networking & The Web. HCID 520 User Interface Software & Technology Networking & The Web HCID 520 User Interface Software & Technology Uniform Resource Locator (URL) http://info.cern.ch:80/ 1991 HTTP v0.9 Uniform Resource Locator (URL) http://info.cern.ch:80/ Scheme/Protocol

More information

31CM From RPG OA to Node.js Modernization and Mobile. Presented by: Greg Patterson Senior Sales Engineer Fresche Solutions May 9, 2017

31CM From RPG OA to Node.js Modernization and Mobile. Presented by: Greg Patterson Senior Sales Engineer Fresche Solutions May 9, 2017 31CM From RPG OA to Node.js Modernization and Mobile Presented by: Greg Patterson Senior Sales Engineer Fresche Solutions May 9, 2017 Agenda Brief History of Modernization 5250 Refacing RPG Open Access

More information