React Not Just Hype!
|
|
- Conrad Willis
- 5 years ago
- Views:
Transcription
1 React Not Just Hype!
2 @mjackson Thriller.
3 @ReactJSTraining reactjs-training.com
4 rackt github.com/rackt
5 - 14 members - 5 teams (owners, routing, redux, a11y, docs) - Not exclusive! This is not a core team.
6 Hype! React Conf, January At React Conf in January, Ryan gave talk called Hype! - Many developers of competing frameworks had publicly intimated that React was just the latest manifestation of the Hype Cycle
7 - Unfortunately the demo that received the most attention was dbmon
8 WTF!! see how fast is react s rendering engine! react.js vs angular vs ember! Top YouTube commenter - People thought it was a speed comparison - So of course everyone went out and implemented that demo in their own framework, ignoring the other examples
9 React lets you say YES - Can you sort and magically animate elements to their new positions without manually aligning everything to your own grid system? Yes. - Can you build an itunes-style UI that dynamically allocates child view positions depending on the route you re on? Yes. - Can you render stuff on the server? Yes.
10 Why? - What is it about React that let s you say yes? - Is it JSX, the tooling, the community, server rendering, the component model? - I m going to assume familiarity with Angular, Ember, Backbone, and React
11 It s amazing what you can do with the right abstraction. Tom Occhino - This is a low-level talk - What makes a good abstraction? - Depends on environment: stuff that works well in one environment may not apply in another
12 Problem: Building UI - Templates were a necessary abstraction for building HTML on the server - Not necessary on the client; you re already in the view!
13 <div ng-repeat="model in collection"> {{model.name}} </div> - Where does collection come from? - ng-init directive? $scope? $rootscope? - I have to understand what ng-repeat does in order to know there may be more than a single <div>
14 <div ng-repeat="model in collection"> {{model.name}} </div> collection.map(model => ( React.createElement('div', null, model.name) )) - collection is just a variable in scope; no need to invent our own concept of scope - no need for model in DSL, use Array#map
15 <div ng-repeat="model in collection"> {{model.name}} </div> collection.map(model => ( React.createElement('div', null, model.name) )) collection.map(model => ( <div>{model.name}</div> )) - use JSX to eliminate createelement cruft -
16 <div ng-repeat="model in collection"> {{model.name}} </div> collection.map(model => ( <div>{model.name}</div> )) - This is what we re really comparing - Just use JSX
17 <div ng-repeat="model in collection track by model.id"> {{model.name}} </div>
18 <div ng-repeat="model in collection track by model.id"> {{model.name}} </div> collection.map(model => ( <div key={model.id}>{model.name}</div> ))
19 <div ng-repeat="model in collection track by $index"> {{model.name}} </div> - What if we want to track by array index? - Magic $index var!
20 <div ng-repeat="model in collection track by $index"> {{model.name}} </div> collection.map((model, index) => ( <div key={index}>{model.name}</div> )) - If we just use JavaScript, we can use map s index! - No need to learn special DSL or magic vars!
21 - Let s say we want to create this HTML <select name="month"> <option>(01) January</option> <option>(02) February</option>... </select>
22 <select name="month"> <option>(01) January</option> <option>(02) February</option>... </select> <select name="month"> <option ng-repeat="month in months"> ({{$index padmonth}}) {{month}} </option> </select> - Stuff I need to know: - month in months DSL - magic $index var - is called a filter
23 <select name="month"> <option>(01) January</option> <option>(02) February</option>... </select> <select name="month"> <option ng-repeat="month in months"> ({{$index padmonth}}) {{month}} </option> </select> <select> {months.map((month, index) => ( <option>({padmonth(index)}) {month}</option> ))} </select> - If we just use JavaScript, we can use map s index! - No need to learn special DSL or magic vars!
24 JavaScript Templates Use vars in function scope Guess where vars come from Use JavaScript methods like Array#map Invent our own DSL Carry knowledge to next project Describe ourselves as X developers - Every template language eventually incorporates all the features of JavaScript so just use JS! - JavaScript is a better abstraction than templates for building HTML/UI
25 - When building UI is completely decoupled from rendering it, we can build custom renderers - React.renderToString
26 - react-art is React bindings for ART - ART is vector drawing API with multiple output modes (canvas, VML, SVG, DOM)
27 - Anyone can build a renderer for React; not just Facebook! - Flipboard built a <canvas> renderer
28 - react-three controls three.js scenes using React
29 - react-blessed renders to the terminal using the blessed (terminal interface for node.js)
30 - Netflix uses Gibbon C++ lib to render React to TVs - When building UI is a generic process, we are totally decoupled from the DOM
31 Problem: Managing State - When does state change in your app? - How do you communicate that change to the rest of the system?
32 Person = Ember.Object.extend({ // these will be supplied by `create` firstname: null, lastname: null, fullname: function() { var firstname = this.get('firstname'); var lastname = this.get('lastname'); return firstname + ' ' + lastname; }.property('firstname', 'lastname'), fullnamechanged: function() { // deal with the change }.observes('fullname').on('init') }); var person = Person.create({ firstname: 'Michael', lastname: 'Jackson' }); person.set('firstname', 'Joe'); - State is kept in many places - Many side-effects to using set() - Easy to introduce bugs
33 - This will log the old value of fullname because observers are sync Person.reopen({ lastnamechanged: function() { // This logs the previous value of fullname! console.log(this.get('fullname')); }.observes('lastname') });
34 Observers in Ember are synchronous. This means that they will fire as soon as one of the properties they observe changes. Because of this, it is easy to introduce bugs where properties are not yet synchronized. Ember Observers Guide
35 Person.reopen({ partofnamechanged: function() { // This function will fire twice! }.observes('firstname', 'lastname') }); person.set('firstname', 'Michael'); person.set('lastname', 'Jackson'); - Manually observing changes to state can lead to subtle bugs - How to fix this? Use Ember.run.once!
36 Person.reopen({ partofnamechanged: function() { Ember.run.once(this, 'processfullname'); }.observes('firstname', 'lastname'), processfullname: function() { // This will only fire once! console.log(this.get('fullname')); } }); person.set('firstname', 'John'); person.set('lastname', 'Smith'); - Ember.run.once manually schedules a function on the run loop - Now we're thinking about timing!
37 - This approach to managing changes to state is called KVO - KVO is an old programming paradigm from Mac OS X - Angular $scope dirty checking is same paradigm KVO
38 Our intellectual powers are rather geared to master static relations and that our powers to visualize processes evolving in time are relatively poorly developed. For that reason we should do (as wise programmers aware of our limitations) our utmost to shorten the conceptual gap between the static program and the dynamic process, to make the correspondence between the program (spread out in text space) and the process (spread out in time) as trivial as possible. Edsger W. Dijkstra, A Case Against the GOTO Statement - Translation: We need to remove time from the equation in order to predict how our code will behave - We shouldn't have to think about time
39 - Apple has totally moved away from KVO in ios SDK KVO is HARD
40 KVO is HARD Object.observe - We re re-inventing KVO in JS with Object.observe :'( - Let's not go down that route! - Is there a better abstraction for managing state updates?
41 1. What state is there? 2. When does it change? - There are 2 important questions in the problem of managing state
42 const Person = React.createClass({ getinitialstate() { return { username: '' } }, sayhelloto(username) { this.setstate({ username: username }) }, render() { let username = this.state.username return ( <p>hi{username? ', ' + username : ''}!</p> ) } }) - All component state is encapsulated in this.state - It changes whenever you call setstate
43 class Person extends React.Component { constructor(props, context) { super(props, context) this.state = { username: '' } } sayhelloto(username) { this.setstate({ username }) } } render() { let { username } = this.state return ( <p>hi{username? ', ' + username : ''}!</p> ) } - If you're using ES6 classes, setup this.state in your constructor
44 setstate KVO One object contains state Many objects contain state Imperative, intent is obvious Behavior depends on side effects Easy to grep Difficult to grep - setstate is a better abstraction for updating state than KVO -
45 Problem: Updating UI
46 View Logic DOM - View logic is typically called controller/model - When you render, it s your job to go update the DOM
47 View Logic Virtual DOM DOM -
48 Virtual DOM DOM Describe what UI looks like Actually manipulate DOM Framework handles optimization Optimize by hand Easy to introduce new render targets Difficult to render to new targets
49 Problem: Feature Parity - Feature parity is a real problem at every tech company on more than one platform (e.g. Twitter) - Isn't React just a JavaScript framework? Isn't this an organizational issue?
50 ios Android Web
51 Chat Ads News
52 Chat Ads News
53 React Native - Learn once, write anywhere -
54 We refactor[ed] platform-specific parts of the UI into separate components that would have an Android and ios implementation. At the time of shipping Ads Manager for Android, that approach yielded around 85 percent reuse of app code. Facebook
55
Gearing Up for Development CS130(0)
Gearing Up for Development CS130(0) Development Development is a coding heavy assignment! You will need to create application using React.js (a Javascript Library). This application will display a list
More informationHigh Performance Single Page Application with Vue.js
High Performance Single Page Application with Vue.js Premise Static HTML and simple web-pages are already a history now. The novel web applications are advanced and do a lots of functionalities. Also,
More informationReact(.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 informationLecture 8. ReactJS 1 / 24
Lecture 8 ReactJS 1 / 24 Agenda 1. JSX 2. React 3. Redux 2 / 24 JSX 3 / 24 JavaScript + HTML = JSX JSX is a language extension that allows you to write HTML directly into your JavaScript files. Behind
More informationReact.js. a crash course. Jake Zimmerman January 29th, 2016
React.js a crash course Jake Zimmerman January 29th, 2016 Key Features of React.js Easily express user interfaces Richly express the visual elements of a design, as well as the interactions users can
More informationReact + React Native. Based on material by Danilo Filgueira
React + React Native Based on material by Danilo Filgueira Prerequisites JS and ES6 HTML and CSS NPM/YARN and NODE React A Javascript library for creating reactive and composable UI components Whenever
More informationGetting Started with ReactJS
Getting Started with ReactJS By Juned Laliwala About this ReactJS e-book. Basic Understanding of ReactJS Concept of JSX Use of Refs and Keys Practical Demonstrations Animation in ReactJS @2016 Attune World
More informationTen 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 informationCross-Platform, Functional, Reactive GUIs
Cross-Platform, Functional, Reactive GUIs Welcome! CARLOS AGUAYO SOFTWARE ENGINEER MANAGER @carlosaguayo81 Credits ANTONIO ANDRADE SOFTWARE ARCHITECT SUVAJIT GUPTA VP, ENGINEERING Modern UIs: Characteristics
More informationTemplates 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 informationTable of Contents
Table of Contents You are here What?! A book on forms? How does React handle forms? Why not start with a form library? Forms 101 Making the simplest form How are edits handled? Validations Providing feedback
More informationDecorators. Userland Extensions to ES6 Classes
Decorators Userland Extensions to ES6 Classes Userland Classes Class.new({ init: function(firstname, lastname) { this.firstname = firstname; this.lastname = lastname; this._super();, fullname: function()
More informationFrontend Frameworks Part 2. SWE 432, Fall 2017 Design and Implementation of Software for the Web
Frontend Frameworks Part 2 SWE 432, Fall 2017 Design and Implementation of Software for the Web Today How to make React apps interactive Handling events, state, nesting components, reconciliation, controlled
More informationTHE PRAGMATIC INTRO TO REACT. Clayton Anderson thebhwgroup.com WEB AND MOBILE APP DEVELOPMENT AUSTIN, TX
THE PRAGMATIC INTRO TO REACT Clayton Anderson thebhwgroup.com WEB AND MOBILE APP DEVELOPMENT AUSTIN, TX REACT "A JavaScript library for building user interfaces" But first... HOW WE GOT HERE OR: A BRIEF
More informationFuture Web App Technologies
Future Web App Technologies Mendel Rosenblum MEAN software stack Stack works but not the final say in web app technologies Angular.js Browser-side JavaScript framework HTML Templates with two-way binding
More informationAngularJS Introduction
AngularJS Introduction Mendel Rosenblum AngularJS JavaScript framework for writing web applications Handles: DOM manipulation, input validation, server communication, URL management, etc. Considered opinionated
More informationAngular 5 vs. React When to Choose Which?
Angular 5 vs. React When to Choose Which? Stephan Rauh Dr. Marius Hofmeister OPITZ CONSULTING Deutschland GmbH OPITZ CONSULTING 2017 OPITZ CONSULTING 2017 Setting the Stage https://upload.wikimedia.org/wikipedia/commons/5/52/summer_solstice_sunrise_over_stonehenge_2005.jpg
More informationXtern BOOTCAMP. Week 2 Day 1 May 22, 2017
Xtern BOOTCAMP Week 2 Day 1 May 22, 2017 Intro to React What is React? A declarative, efficient, and flexible JavaScript library for building user interfaces. It encourages the creation of reusable UI
More informationAngularJS 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 informationMANAGING ASYNCHRONY. An Application Perspective
MANAGING ASYNCHRONY An Application Perspective TYPES OF ASYNCHRONY DETERMINISTIC ORDER. (I/O) NON-DETERMINISTIC ORDER. (USER EVENTS) THESE ARE DIFFERENT. Because both are "events", we reach for the same
More informationNodes 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 informationReact Loadable: Code Splitting with Server Side Rendering
React Loadable: Code Splitting with Server Side Rendering About me Former Senior Frontend Developer at Oppex Tech Lead at Toughbyte Ltd React github.com/northerneyes medium.com/@northerneyes twitter.com/nordfinn
More informationAdvance 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 informationReact. HTML code is made up of tags. In the example below, <head> is an opening tag and </head> is the matching closing tag.
Document Object Model (DOM) HTML code is made up of tags. In the example below, is an opening tag and is the matching closing tag. hello The tags have a tree-like
More informationFrontend UI Training. Whats App :
Frontend UI Training Whats App : + 916 667 2961 trainer.subbu@gmail.com What Includes? 1. HTML 5 2. CSS 3 3. SASS 4. JavaScript 5. ES 6/7 6. jquery 7. Bootstrap 8. AJAX / JSON 9. Angular JS 1x 10. Node
More informationLesson: Web Programming(6) Omid Jafarinezhad Sharif University of Technology
Lesson: Web Programming(6) Omid Jafarinezhad Sharif University of Technology React QUICK START QUICK START ADVANCED GUIDES React QUICK START Installation Hello World Introducing JSX Components and Props
More informationReact & 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 informationWelcome. Quick Introductions
AEK Introduction Welcome Quick Introductions "The AEK"? Application Extension Kit Technique for delivering cross-platform application screens via a webview A development framework that provides a responsive
More informationIs your JavaScript ready for the Enterprise? What does that even mean?
Is your JavaScript ready for the Enterprise? What does that even mean? John JB Brock Senior Principal Product Manager Oracle Tools and Frameworks June 29, 2017 Safe Harbor Statement The following is intended
More informationI m sorry but HTML5 mobile games DO work.
I m sorry but HTML5 mobile games DO work. Joe Monastiero President, Ludei Ludei is pronounced Lou-day Heard This Lately? HTML5 sucks for mobile app and game development. Here s What He Said HTML5 Will
More information6 JAVASCRIPT PROJECTS
6 JAVASCRIPT PROJECTS COMPLETE PROJECT TUTORIALS ii 6 JavaScript Projects 6 JavaScript Projects Copyright 2018 SitePoint Pty. Ltd. Product Manager: Simon Mackie English Editor: Ralph Mason Project Editor:
More informationBuilding an OpenLayers 3 map viewer with React
FOSS4G 2015 Building an OpenLayers 3 map viewer with React @PirminKalberer Sourcepole AG, Switzerland www.sourcepole.com About Sourcepole > QGIS > > > > Core dev. & Project Steering Commitee QGIS Server,
More informationDown With JavaScript!
Down With JavaScript! September 2018 training@instil.co Instil Software 2018 Develop Consult Train Where Things Were Better Did you know that the original 4GL s were designed to be an ideal coding environment
More informationBeginners Guide to. Sencha Touch. Joshua Morony
Beginners Guide to Sencha Touch Joshua Morony Contents Contents 1 Preface.......................... 4 1 Why Sencha Touch? 8 2 Know Your Options 21 3 How Sencha Touch Actually Works 22 4 Setting up Your
More informationModern 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 informationFull 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 informationThink like an Elm developer
Think like an Elm developer Piper Niehaus Denver, CO, USA Backpacker / skier Nonprofit board chair Software Engineer at Pivotal Pivotal Tracker team Elm in Production since 2016 Internal Products and Services
More informationStencil: 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 informationQuestions and Answers from Lukas Ruebbelke s AngularJS In-Depth Course
Questions and Answers from Lukas Ruebbelke s AngularJS In-Depth Course What is the best way to load large amounts of data with infinite scrolling? Would you recommend nginfinitescroll or is there another
More informationTreating Framework Fatigue With JavaScript
Treating Framework Fatigue With JavaScript Tim Doherty Software Architect /in/timdoherty timdoherty.net ??? Hey, this one looks cool! You May Suffer From Framework Fatigue Symptoms Confusion One-way reactive
More informationFrontend Frameworks. SWE 432, Fall 2016 Design and Implementation of Software for the Web
Frontend Frameworks SWE 432, Fall 2016 Design and Implementation of Software for the Web Today How do we build a single page app without dying? MVC/MVVM (AngularJS) For further reading: Book: Learning
More informationHOW REACT NATIVE AND NATIVESCRIPT CHANGE YOUR MOBILE STRATEGY SEBASTIAN
HOW REACT NATIVE AND NATIVESCRIPT CHANGE YOUR MOBILE STRATEGY SEBASTIAN WITALEC @SEBAWITA NATIVE DEVELOPMENT WHY DO I EVEN HAVE TO CHOOSE? THE PROBLEM WHAT WE WANT REALITY DEV SETUP OBJECTIVE- C SWIFT
More informationChoosing the web s future. Peter-Paul Koch Van Lanschot, 9 February 2017
Choosing the web s future Peter-Paul Koch http://quirksmode.org http://twitter.com/ppk Van Lanschot, 9 February 2017 Four problems 1. Web developers want to emulate native apps, which I think is not possible
More informationTarek Elachkar, VP Customer Solutions - Jahia A real world story of Angular and Apache Unomi integration.
Tarek Elachkar, VP Customer Solutions - Jahia telachkar@jahia.com A real world story of Angular and Apache Unomi integration #ApacheCon 1 QUICK INTRODUCTIONS Me, myself and I QUICK INTRODUCTIONS Our software
More informationWeb Components. Reactive Architecture for the Front End. Steven Skelton. Reactive Programming Toronto December 3, 2014
Web Components Reactive Architecture for the Front End Steven Skelton Reactive Programming Toronto December 3, 2014 Reactive Manifesto Is a pattern for building software capable of handling today's application
More informationa 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 informationFinally JavaScript Is Easy, with Oracle JET! Geertjan Wielenga Product Manager Oracle Developer Tools
Finally JavaScript Is Easy, with Oracle JET! Geertjan Wielenga Product Manager Oracle Developer Tools Oracle JET Customers Across Oracle Include... Internet of Things Mobile Cloud Service Developer
More informationIntro Winter Semester 2016/17
Practical Course: Web Development Intro Winter Semester 2016/17 Juliane Franze & Tobias Seitz Ludwig-Maximilians-Universität München Practical Course Web Development WS 16/17-01 - 1 Today s Agenda Introduction
More informationBuilding Your own Widget with ArcGIS API for JavaScript
Building Your own Widget with ArcGIS API for JavaScript Matt Driscoll @driskull JC Franco @arfncode Agenda About Widgets Prerequisites Widget framework Theming DO IT! Tips & tricks About Widgets What?
More informationReact. SWE 432, Fall Web Application Development
React SWE 432, Fall 2018 Web Application Development Review: What is state? All internal component data that, when changed, should trigger UI update Stored as single JSON object this.state What isn t state?
More informationTHE FULCRUM SOFTWARE STACK. A Look Inside
THE FULCRUM SOFTWARE STACK A Look Inside Core Components Classic API Query API Web App Mobile Apps Tile Server DB Server 3 The Web App Ruby on Rails Application CoffeeScript / JavaScript Sass for CSS Preprocessing
More informationJavaScript and MVC Frameworks FRONT-END ENGINEERING
FRONT-END ENGINEERING Introduction & History Introduction JavaScript is an incredible language to learn for anyone interested in getting into programming. It is the only programing language that can run
More informationCS240: Programming in C
CS240: Programming in C Lecture 4: Operators and Expressions. Control Flow. 1 Example #include int main() { int fahr, celsius; const int lower = 10, upper = 300, step = 10; } fahr = lower; while
More informationCase study on PhoneGap / Apache Cordova
Chapter 1 Case study on PhoneGap / Apache Cordova 1.1 Introduction to PhoneGap / Apache Cordova PhoneGap is a free and open source framework that allows you to create mobile applications in a cross platform
More informationQuick Setup Guide. Date: October 27, Document version: v 1.0.1
Quick Setup Guide Date: October 27, 2016 Document version: v 1.0.1 Table of Contents 1. Overview... 3 2. Features... 3 3. ColorTracker library... 3 4. Integration with Unity3D... 3 Creating a simple color
More informationUnderstanding Angular Directives By Jeffry Houser
Understanding Angular Directives By Jeffry Houser A DotComIt Whitepaper Copyright 2016 by DotComIt, LLC Contents A Simple Directive... 4 Our Directive... 4 Create the App Infrastructure... 4 Creating a
More informationReact native. State An overview. See the tutorials at
See the tutorials at https://facebook.github.io/react-native/docs/tutorial React native State An overview We ll at each of these in much more detail later. 1 App To build a static app just need Props Text
More informationWebKit ; FOR : DUMMIES. by Chris Minnick WILEY. John Wiley & Sons, Inc.
WebKit ; FOR : DUMMIES by Chris Minnick WILEY John Wiley & Sons, Inc. Table of Contents Introduction 7 Why I Love WebKit, and You Should Too 1 Who Should Read This Book 2 Conventions Used in This Book
More informationCSS JavaScript General Implementation Preloading Preloading in the Design Thinking Process Preloading in the Summary View Android UI Design Design
Table of Contents Introduction Purpose Scope Overview Design Thinking Process Description Empathy Define Ideate Prototype Test Design Thinking Requirement Analysis Empathy Define Ideate Prototype Test
More informationAssignment 8 rekindl Local Community (1:30PM) Meet The Team. Ryan C. Amanda L. Sara V. James C.
Hi-Fi Prototype Assignment 8 rekindl Local Community (1:30PM) Meet The Team Ryan C. Amanda L. Sara V. James C. Introduction Mission Statement: Reignite faded friendships. Problem Overview: Busy schedules
More informationKeeping Front-end Development Simple with React
Keeping Front-end Development Simple with React Tony Tsui @tony_tsui React KEEP IT SIMPLE simple /ˈsɪmp(ə)l/ easily understood or done https://flic.kr/p/uyhasx KEEP IT SIMPLE simple /ˈsɪmp(ə)l/ easily
More informationBeyond JavaScript Frameworks: Writing Reliable Web Apps With. Elm. Erik Wendel DevDays Vilnius 2018
Beyond JavaScript Frameworks: Writing Reliable Web Apps With Elm Erik Wendel DevDays Vilnius 2018 Who is Jonathan Ive? Erik Wendel JavaZone 2017 Elm is like Jonathan Ive would have designed a programming
More informationModel-View-Whatever A COMPARISON OF JAVASCRIPT MVC/MVP/MVVM FRAMEWORKS. J. Tower
Model-View-Whatever A COMPARISON OF JAVASCRIPT MVC/MVP/MVVM FRAMEWORKS J. Tower Principal Sponsor http://www.skylinetechnologies.com Thank our Principal Sponsor by tweeting and following @SkylineTweets
More informationWakanda Architecture. Wakanda is made up of three main components: Wakanda Server Wakanda Studio Wakanda Client Framework
Wakanda Architecture Wakanda is made up of three main components: Wakanda Server Wakanda Studio Wakanda Client Framework Note: For a more general overview of Wakanda, please see What is Wakanda?) Wakanda
More informationAdvanced React JS + Redux Development
Advanced React JS + Redux Development Course code: IJ - 27 Course domain: Software Engineering Number of modules: 1 Duration of the course: 40 astr. hours / 54 study 1 hours Sofia, 2016 Copyright 2003-2016
More informationCourse 20480: Programming in HTML5 with JavaScript and CSS3
Course 20480: Programming in HTML5 with JavaScript and CSS3 Overview About this course This course provides an introduction to HTML5, CSS3, and JavaScript. This course helps students gain basic HTML5/CSS3/JavaScript
More informationCOURSE 20480B: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3
ABOUT THIS COURSE This course provides an introduction to HTML5, CSS3, and JavaScript. This course helps students gain basic HTML5/CSS3/JavaScript programming skills. This course is an entry point into
More informationDesign and Implementation of Single Page Application Based on AngularJS
Design and Implementation of Single Page Application Based on AngularJS 1 Prof. B.A.Khivsara, 2 Mr.Umesh Khivsara 1 Assistant Prof., 2 Website Developer 1 Department of Computer Engineering, 2 UKValley
More informationProgramming in HTML5 with JavaScript and CSS3
Programming in HTML5 with JavaScript and CSS3 20480B; 5 days, Instructor-led Course Description This course provides an introduction to HTML5, CSS3, and JavaScript. This course helps students gain basic
More informationSSJS Server-Side JavaScript WAF Wakanda Ajax Framework
1 28/06/2012 13:45 What You Will Find in those Examples In the Quick Start, you discovered the basic principles of Wakanda programming: you built a typical employees/companies application by creating the
More informationNagaraju Bende
AngularJS Nagaraju Bende Blog Twitter @nbende FaceBook nbende http://angularjs.org Agenda Introduction to AngularJS Pre-Requisites Why AngularJS Only Getting Started MV* pattern of AngularJS Directives,
More informationTHOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS
THOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS LOGISTICS HW5 due today Project presentation on 12/6 Review for final on 12/6 2 EXAMPLE: NPM https://twitter.com/garybernhardt/status/1067111872225136640
More informationCourse 1: Microsoft Professional Orientation: Front-End Web Developer
Course 1: Microsoft Professional Orientation: Front-End Web Developer This orientation course is the first course in the Web Front-End Developer, Microsoft Professional Program curriculum. The orientation
More informationSingle Page Applications using AngularJS
Single Page Applications using AngularJS About Your Instructor Session Objectives History of AngularJS Introduction & Features of AngularJS Why AngularJS Single Page Application and its challenges Data
More informationB r o w s e r s u p p o r t
A Browser Support Since writing this book, much has changed in the browser market. The Chromium project, which the Chrome browser is based on, stopped using WebKit and created their own fork, called Blink.
More informationBuilding mobile app using Cordova and AngularJS, common practices. Goran Kopevski
Building mobile app using Cordova and AngularJS, common practices Goran Kopevski Agenda What is cordova? How to choose proper JS framework Building mobile app using Cordova and AngularJS Common fails,
More informationCompatibility via Modernizr
Compatibility via Modernizr Making web things fit their medium Stu Cox by / @stucoxmedia #McrFRED 27th June 2013 Manchester, UK com pat i bil i ty kәmˌpatɪˈbɪlɪti (abbr.: compat.) noun (pl. -i ties) a
More informationMobile Apps Why & How
Mobile Apps Why & How MOBIKATS Phillip Hunt CEO philliphunt@mobikats.com 07590 277045 Putting your Content in Everyone s Pocket. Copyright Mobikats 2012 What do we do? Consultancy on developing or reviewing
More informationJavaScript Rd2. -Kyle Simpson, You Don t Know JS
JavaScript Rd2 [JavaScript] is simultaneously a simple, easy-to-use language that has broad appeal, and a complex and nuanced collection of language mechanics which without careful study will elude the
More informationWhat Mobile Development Model is Right for You?
What Mobile Development Model is Right for You? An analysis of the pros and cons of Responsive Web App, Hybrid App I - Hybrid Web App, Hybrid App II - Hybrid Mixed App and Native App Contents Mobile Development
More informationVisual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD
Visual HTML5 1 Overview HTML5 Building apps with HTML5 Visual HTML5 Canvas SVG Scalable Vector Graphics WebGL 2D + 3D libraries 2 HTML5 HTML5 to Mobile + Cloud = Java to desktop computing: cross-platform
More informationMcLab 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 informationMongoDB Web Architecture
MongoDB Web Architecture MongoDB MongoDB is an open-source, NoSQL database that uses a JSON-like (BSON) document-oriented model. Data is stored in collections (rather than tables). - Uses dynamic schemas
More informationGetting 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 informationFirefox for Android. Reviewer s Guide. Contact us:
Reviewer s Guide Contact us: press@mozilla.com Table of Contents About Mozilla 1 Move at the Speed of the Web 2 Get Started 3 Mobile Browsing Upgrade 4 Get Up and Go 6 Customize On the Go 7 Privacy and
More informationProgramming 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 informationBuilding modern enterprise applications from scratch: lessons learned DOAG 2014 Dr. Clemens Wrzodek
Building modern enterprise applications from scratch: lessons learned DOAG 2014 Dr. Clemens Wrzodek @wrzodek Roche Group Penzberg Founded 1896 in Basel, Switzerland Employing > 82,000 people Clear focus
More informationEnd the Software Crisis! Nicole Michael
End the Software Crisis! Nicole Rauch @nicolerauch Michael Sperber @sperbsen software project development Scala, Clojure, Erlang, Haskell, F#, OCaml training, coaching co-organize BOB conference www.active-group.de
More informationSimple 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 informationDECOUPLING 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 informationIntroduction to AngularJS
CHAPTER 1 Introduction to AngularJS Google s AngularJS is an all-inclusive JavaScript model-view-controller (MVC) framework that makes it very easy to quickly build applications that run well on any desktop
More information0.9: Faster, Leaner and Dijit? July 25, 2007 Dylan Schiemann. presented by
0.9: Faster, Leaner and Dijit? July 25, 2007 Dylan Schiemann presented by Key Features Browser support Package/build system Easy widget building Declarative widget creation Rich built-in widget set Comprehensive
More informationANGULAR2 OVERVIEW. The Big Picture. Getting Started. Modules and Components. Declarative Template Syntax. Forms
FORMS IN ANGULAR Hello Cluj. I m Alex Lakatos, a Mozilla volunteer which helps other people volunteer. I want to talk to you today about Angular forms. What s a form you ask? A form creates a cohesive,
More informationFull Stack Developer with Java
Full Stack Developer with Java Full Stack Developer (Java) MVC, Databases and ORMs, API Backend Frontend Fundamentals - HTML, CSS, JS Unit Testing Advanced Full Stack Developer (Java) UML, Distributed
More information1 Introduction. 2 Web Architecture
1 Introduction This document serves two purposes. The first section provides a high level overview of how the different pieces of technology in web applications relate to each other, and how they relate
More informationWhat is AngularJS. à Javascript Framework à MVC à for Rich Web Application Development à by Google
AngularJS What is AngularJS à Javascript Framework à MVC à for Rich Web Application Development à by Google Why AngularJS Other frameworks deal with HTML s shortcomings by either abstracting away HTML,
More informationPWA-ifying Santa Tracker. Sam
PWA-ifying Santa Tracker Sam Thorogood @samthor About Sam Developer Relations on "Web" Varied projects: polyfills, apps, demos, videos, talks, internal + public advocacy Demo Why? Open-Source Education
More informationTransitioning Angular 2 User Interface (UI) into React
Kumar Simkhada Transitioning Angular 2 User Interface (UI) into React Helsinki Metropolia University of Applied Sciences Bachelor of Engineering Information Technology Thesis April 12, 2017 Abstract Author
More informationMEAP Edition Manning Early Access Program React Native in Action Developing ios and Android Apps with JavaScript Version 13
MEAP Edition Manning Early Access Program React Native in Action Developing ios and Android Apps with JavaScript Version 13 Copyright 2017 Manning Publications For more information on this and other Manning
More informationJavaScript. History. Adding JavaScript to a page. CS144: Web Applications
JavaScript Started as a simple script in a Web page that is interpreted and run by the browser Supported by most modern browsers Allows dynamic update of a web page More generally, allows running an arbitrary
More information