Introduction to decoupled Drupal. Preston So 26 Sep 2017 DrupalCon Vienna 2017
|
|
- Angel Stanley
- 6 years ago
- Views:
Transcription
1 Introduction to decoupled Drupal Preston So 26 Sep 2017 DrupalCon Vienna 2017
2 Herzlich Willkommen! Preston So has been a web developer and designer since 2001, a creative professional since 2004, and a Drupal developer since As Director of Research and Innovation at Acquia, Preston leads new open-source and research initiatives and helms Acquia Labs, the innovation lab featured in international press. Previously, Preston contributed to the Spark initiative in the Drupal project, co-founded the Southern Colorado Drupal User Group (est. 2008), and operated an award-winning freelance web and print design studio. Preston has presented keynotes at conferences on three continents in multiple languages. #introdecoupleddrupal
3 What we'll cover What is decoupled Drupal? Motivating decoupled Drupal Decoupling the front end from the back end Risks and rewards of decoupling Drupal Web services and REST APIs Decoupled Drupal and developer experience Decoupled Drupal and editorial experience Epilogue: Drupal's new incongruity
4 1 What is decoupled Drupal?
5
6 Think of Earth as one contiguous unit: a monolith.
7
8 request response Earth responds to requests from decoupled bases.
9 HTTP request HTTP response Drupal is a monolithic CMS backing decoupled applications.
10 HTTP request HTTP response Site or repository built in Drupal Decoupled application
11 HTTP request REST API Site or repository built in Drupal HTTP response HTTP client Decoupled application Decoupled application
12 Decoupled Drupal is the use of Drupal as a content service for consumption and manipulation by other applications
13 Decoupled Drupal Drupal can be used to back other back-end applications as well as native applications, single-page applications, digital signage, AR-driven interfaces, and many others. Web services such as the core REST API, JSON API, and GraphQL are typical entry points for Drupal consumers.
14 HTML HTML Other language Drupal front end Decoupled application Templates Templates PHP REST API JSON Drupal PHP Data Monolithic vs. decoupled Drupal Drupal Data
15 App code HTML JavaScript Single-page application (universal JavaScript) Java Native Android application Templates Templates REST API REST API JSON JSON PHP PHP Drupal Data Drupal Data
16 HTML or app code Swift PHP Native ios application Silex application Templates REST API JSON PHP Drupal Data
17 de coup led head less API first Aside: What's in a name?
18 2 Motivating decoupled Drupal
19 For marketers and publishers decoupled Drupal offers the promise of omnichannel delivery
20 Fitness devices Raspberry Pi Beacons Smart watches IoT apps AR/VR apps Singlepage apps Chat apps Arduino boards Conversational UIs Set-top boxes Native apps We have new channels every day. Other back ends LED displays
21 Fitness devices Raspberry Pi AR/VR apps Beacons Smart watches Chat apps Arduino boards Singlepage apps? IoT apps? Native apps Set-top boxes?? And ones we've never heard of yet.? Conversational UIs Other back ends LED displays
22 For developers decoupled Drupal offers the promise of front-end freedom
23 3 Decoupling the front end from the back end
24 Drupal front end Client Client Server Server Drupal Monolithic Drupal
25 Subscribe to our newsletter address Drupal front end Submit Client two bootstraps Server Drupal Static pages full-page refresh You have been successfully subscribed!
26 Synchronous Subscribe to our newsletter Asynchronous address Submit Ajax request jquery Subscribe to our newsletter Drupal front end address Client one bootstrap Submit Server Drupal Subscribe to our newsletter address Dynamic pages with Ajax Success! Submit
27 jquery Drupal front end JavaScript application framework Initial markup Client Client Server Server Drupal Client-side JavaScript Drupal Drupal
28 Synchronous Lorem ipsum dolor sit amet, consectetuer adipiscing. Asynchronous HTTP request Subscribe Submit JavaScript application framework Initial markup Client one bootstrap Subscribe to our newsletter Lorem ipsum dolor sit address amet, consectetuer adipiscing. Submit Server Drupal Lorem ipsum dolor sit amet, consectetuer adipiscing. Dynamic pages with client-side rendering Success! Here are others that might interest you:
29 Synchronous Lorem ipsum dolor sit amet, consectetuer adipiscing. Asynchronous HTTP request Subscribe Submit JavaScript application framework Initial markup Client one bootstrap Subscribe to our newsletter Lorem ipsum dolor sit address amet, consectetuer adipiscing. Submit Server Drupal Lorem ipsum dolor sit amet, consectetuer adipiscing. Dynamic pages with client-side rendering Success! Here are others that might interest you:
30 The JavaScript renaissance ushered in an era of innovation and new development practices
31 Server-side JavaScript meant client-side frameworks could be executed server-side
32 Universal JavaScript meant shared code in the form of JavaScript framework executions
33 JavaScript application framework JavaScript framework (client-side execution) Initial markup Client Client Server Server Drupal JavaScript framework (server-side execution) Node.js Server-side JavaScript Drupal
34 Synchronous Lorem ipsum dolor sit amet, consectetuer adipiscing. Asynchronous JavaScript framework (client-side execution) Client Server HTTP request JavaScript framework (server-side execution) Node.js Drupal HTTP request Subscribe Submit Subscribe to our newsletter Lorem ipsum dolor sit address amet, consectetuer adipiscing. Submit Lorem ipsum dolor sit amet, consectetuer adipiscing. Dynamic pages with server-side prerendering Success! Here are others that might interest you:
35 Server Client responds Node.js executes JavaScript framework renders flush HTML HTML bindings by JavaScript framework calls REST API Synchronous Universal (isomorphic) JavaScript Asynchronous
36 Server Client Node.js responds calls REST API executes JavaScript framework Drupal responds renders flush HTML HTML bindings by JavaScript framework calls REST API Synchronous Universal JavaScript consuming Drupal Asynchronous
37 Synchronous Lorem ipsum dolor sit amet, consectetuer adipiscing. Asynchronous JavaScript framework (client-side execution) Client Server HTTP request JavaScript framework (server-side execution) Node.js Drupal Fully decoupled Drupal HTTP request Subscribe Submit Subscribe to our newsletter Lorem ipsum dolor sit address amet, consectetuer adipiscing. Submit Lorem ipsum dolor sit amet, consectetuer adipiscing. Success! Here are others that might interest you:
38 Synchronous Lorem ipsum dolor sit amet, consectetuer adipiscing. Asynchronous HTTP request JavaScript framework Drupal front end Client one bootstrap Subscribe Submit Subscribe to our newsletter Lorem ipsum dolor sit address amet, consectetuer adipiscing. Submit Server Drupal Progressively decoupled Drupal Lorem ipsum dolor sit amet, consectetuer adipiscing. Success! Here are others that might interest you:
39 4 Risks and rewards of decoupled Drupal
40 Rewards of decoupled Drupal Separation of concerns. Structure versus presentation is increasingly relevant in decoupled architectures. Pipelined development. An API-design-first approach gives front-end and back-end teams independence.
41 Rewards of decoupled Drupal Administrative security. Keeping the administrative CMS far from public view is increasingly a best practice. Easier resourcing. Drupal developers are now considered less affordable than JavaScript developers.
42 Risks of decoupled Drupal Loss of contextual administration. Crucial features such as in-place editing and toolbar can be key for editors. Maintainability difficulties. Maintaining both Drupal service and consumers requires extensive planning.
43 Risks of decoupled Drupal Additional point of failure. Node.js downtime can lead to inaccessible content in the case of private Drupal. On-boarding overhead. JavaScript developers need to learn consumption; Drupal developers change focus.
44 Summary Area Rewards Risks Architecture Separation of concerns Loss of contextual administration Development experience Pipelined development Maintainability difficulties Security and performance Administrative security Additional point of failure Project management Easier resourcing On-boarding overhead
45 5 Web services and REST APIs
46 HTTP request REST API Site or repository built in Drupal HTTP response HTTP client Decoupled application Decoupled application
47 HTTP request Web services HTTP response Not all web services are REST APIs HTTP client Decoupled application
48 Web services support interoperable machine-to-machine interaction over a network
49 REST APIs follow REST principles and operate using HTTP methods
50 Drupal core (with HAL normalization) Depends on REST and Serialization HAL RELAXed Web Services REST Waterwheel depends on Depends on Serialization Serialization JSON API Drupal core (raw JSON structures, no HAL) GraphQL Drupal's web services ecosystem (not exhaustive)
51 Core REST JSON API RELAXed Web Services Core and contrib web services modules GraphQL
52 REST APIs Core REST RELAXed Web Services JSON API REST APIs Web services Euler diagram of Drupal web services GraphQL
53 Core REST The core REST modules allow for all content entities (nodes, users, taxonomy terms, comments) to be exposed as JSON+HAL or as JSON representing Drupal s internal storage, and Views natively supports REST export as a new display type.
54 Client issues request for an entity resource Current core REST (abbreviated payloads) GET /node/1?_format=json GET /user/5?_format=json Core REST Server issues response with single entity resource "field_author": [ { "value": "5" } ] "name": [ { "value": "Joe" } ]
55 JSON API JSON API is a specification for REST APIs in JSON popular among JavaScript developers and adopted by the Ember and Rails communities. JSON API provides a standard way to query single entities, but it also provides all relationships contained therein and query operations via query string parameters.
56 JSON API JSON API allows you to fetch lists of content entities (filter, sort, pagination) which is currently only possible via multiple requests or Views REST exports. drupal.org/project/jsonapi
57 Client issues request for an entity resource JSON API (abbreviated payloads, merely illustrative) GET /jsonapi/node/1?include=field_author Server issues response with single entity and all relationships { "data": [{ "type": "articles", "id": "1", "attributes": { "title": "Foo", "body": "Lorem ipsum", },... }], "included": [{ "type": "people", "id": "5", "attributes": { "name": "Joe" } }] } JSON API
58 GraphQL GraphQL, originally created by Facebook to power its data fetching, is a query language that enables fewer queries and limits response bloat. Rather than tightly coupling responses with a predefined schema, GraphQL overturns this common practice by allowing for the client's request to explicitly tailor a response so that the client only receives what it needs.
59 GraphQL GraphQL shifts responsibility from the server to the client: the server publishes its possibilities, and the client publishes its requirements instead of receiving a response dictated solely by the server. drupal.org/project/graphql
60 Client issues request declaring data requirements GraphQL (simplified payloads, merely illustrative) GraphQL { { title fieldauthor { title } } Server issues response matching structure of declared requirements "title": "Foo" "fieldauthor": { "title": "Joe" } }
61 RELAXed Web Services RELAXed Web Services includes support for translations, parent revisions (via Multiversion), file attachments, and cross-environment UUID references. It uses the CouchDB API specification, which means that CouchDB integration with client-side libraries such as PouchDB and Hood.ie makes possible offline-enabled Drupal. drupal.org/project/relaxed
62 6 Decoupled Drupal and developer experience
63 HTTP request Web services Site or repository built in Drupal HTTP response HTTP client Decoupled application Decoupled application
64 HTTP request API-first distros Web services HTTP response SDKs and starter kits Decoupled application API-first distros, SDKs, and starter kits improve decoupled DX
65 SDKs and starter kits SDKs can help to make it easier for developers to consume Drupal as a content service. These tend to be lightweight HTTP client wrappers which make requests on the developer's behalf and process responses. Starter kits and references help jumpstart implementations by providing an out-of-the-box experience for developers to get started right away.
66 The Waterwheel ecosystem
67 The Waterwheel ecosystem Waterwheel is an emerging ecosystem of SDKs designed to accelerate development of Drupal-backed applications in a variety of languages. Currently, a helper SDK is available for JavaScript as an initial release and a full SDK is available for Swift to power ios, tvos, and other Apple applications.
68 The Waterwheel ecosystem Waterwheel is intended to be a translator for developers in other technologies: in other words, Waterwheel helps non-drupalists speak Drupal.
69 The Waterwheel ecosystem github.com/acquia/waterwheel.js github.com/kylebrowning/waterwheel.swift drupal.org/project/waterwheel github.com/acquia/ember-drupal-waterwheel github.com/acquia/ember-waterwheel-app github.com/acquia/react-waterwheel-app
70 API-first distributions An ecosystem of distributions oriented for developers consuming decoupled Drupal is emerging. The most prominent distributions are Reservoir and Contenta. github.com/acquia/reservoir github.com/contentacms/contenta_jsonapi
71 Reservoir and Contenta
72 A good developer experience means that it's easy to provision APIs for a group of consumer applications
73 A good developer experience means that it's easy for consumers to work with the provisioned APIs
74 7 Decoupled Drupal and editorial experience
75 In-place editing One of Drupal 8's core features is in-place editing. In short, you can edit fields in context. Title Lorem ipsum dolor sit a Body Consectetur adipiscing elit lorem ipsum dolor sit amet. Lorem ipsum dolor sit a Consectetur adipiscing elit lorem ipsum dolor sit amet. Read more
76 In-place editing On websites and responsive sites, in-place editing can still make perfect sense. Title Lorem ipsum dolor sit a Body Consectetur adipiscing elit lorem ipsum dolor sit amet. Websites and responsive sites can both leverage in-place editing Lorem ipsum dolor sit a Consectetur adipiscing elit lorem ipsum dolor sit amet. Read more
77 In-place editing Digital signage could still be possible if and only if Drupal renders it as well rather than exporting data. Slogan Mehr Pizza ess Website URL Digital signage could leverage in-place editing if Drupal is responsible for rendering Mehr Pizza ess
78 In-place editing But what about single-page applications or zero interfaces that can't be controlled by Drupal? Title Lorem ipsum dolor sit a Body Consectetur adipiscing elit lorem ipsum dolor sit amet. Content edited solely in Drupal's administration layer Lorem ipsum dolor sit a Consectetur adipiscing elit lorem ipsum dolor sit amet. Read more
79 Display and layout management What about choosing layouts and managing displays of content? Choose a layout Consectetur adipiscing elit lorem ipsum dolor sit amet. Read more Brand About Work Team Blog
80 Display and layout management What about choosing layouts and managing displays of content? Choose a layout Brand About Work Team Blog Consectetur adipiscing elit lorem ipsum dolor sit amet. Read more
81 Display and layout management What about toggling between teaser and full content display modes in a decoupled context? Brand About Work Team Blog Consectetur adipiscing elit lorem ipsum... Read more Lorem ipsum dolor sit amet consectetur... Read more Teaser Brand About Work Team Blog Consectetur adipiscing elit lorem ipsum dolor sit amet. Ipsum amet sit adipiscing lorem consectetur elit. Elit adipiscing amet lorem. Full content
82 Editorial preview What about accessing or previewing unpublished or draft content? Currently, previewing a single piece of content on a single Drupal site (workspaces soon!) is trivial for editors. No developer needed! In a decoupled setting, content can only be previewed directly on the device or through an emulator, which may result in lower fidelity.
83 Editorial preview If an editor wants a high-fidelity preview of content on their single-page application or native mobile application, developers are required, for now. Spin up a new test environment Push new content (published or accessible) to that test environment Editor can access high-fidelity decoupled preview Give the editor a URL to inspect or a new app to install
84 Decoupled Drupal means we need to think about content in a more structured way
85 Decoupled Drupal means we may need to accept that full visual control is impossible
86 Decoupled Drupal means many capabilities we are used to need to be exposed to consumers
87 8 Epilogue Drupal's new incongruity
88 Drupal's new incongruity Drupal's value proposition is becoming incongruous between the three personas: the user, the marketer, and the developer. Is this irreconcilable?
89 Wearables Conversational Digital signage Augmented reality Developer experience Mobile Set-top boxes Websites Responsive Drupal's new incongruity Marketer experience
90 rs se ru fo er tt Be The developer user axis Better for developers Drupal's new incongruity Better for editors The editor user axis "Better for users" increasingly means "better on more devices."
91 rs se ru fo er tt Be The developer user axis Better for developers Drupal's new incongruity Better for editors The editor user axis A better outcome for users relies more on custom work by developers.
92 Food for thought We have to be prepared to accept that the ideal future state of Drupal may not be anything close to what it is today. We have to be prepared to accept that Drupal may be made up of many disparate parts, each essential to a larger whole.
93 This is the great test that will dictate the next decade of Drupal
94 A multifaceted Drupal is a more future-proof Drupal
95 Decoupled Drupal means Drupal's story has only just begun
96 More decoupled Drupal at Vienna Breaking Drupal out of the box with AR and beacons (with hampercm) Wed, 27 Sep 15:45-16:45 Strauss Decoupled site building: Drupal's next challenge Thu, 28 Sep 10:45-11:45 Strauss Decoupled Drupal and editorial bliss (mrjmd) Thu, 28 Sep 14:15-15:15 Lehar 1
97 Join us for contribution sprint Mentored Core Sprint Fri, 29 Sep 09:00 18:00 Stolz 2 First-time Sprinter Workshop Fri, 29 Sep 09:00 12:00 Lehar 1, Lehar 2 General Sprint Fri, 29 Sep 09:00 18:00 Mall #drupalsprints
98 What did you think? Evaluate this session events.drupal.org/vienna2017/sessions/breakingdrupal Take the survey! surveymonkey.com/r/drupalconvienna
99 Vielen Dank! Thank you! Preston So has been a web developer and designer since 2001, a creative professional since 2004, and a Drupal developer since As Director of Research and Innovation at Acquia, Preston leads new open-source and research initiatives and helms Acquia Labs, the innovation lab featured in international press. Previously, Preston contributed to the Spark initiative in the Drupal project, co-founded the Southern Colorado Drupal User Group (est. 2008), and operated an award-winning freelance web and print design studio. Preston has presented keynotes at conferences on three continents in multiple languages. #introdecoupleddrupal
The decoupled CMS in financial services. Preston So 8 Nov 2017 Open Source Strategy Forum 2017
The decoupled CMS in financial services Preston So 8 Nov 2017 Open Source Strategy Forum 2017 Welcome! Preston So has been a web developer and designer since 2001, a creative professional since 2004, and
More informationAdvanced Web Services with JSON API
Advanced Web Services with JSON API HOWDY! I am Mateu I am here because I am a decoupling nerd You can find me at @e0ipso You will learn about JSON API Drupal module Why use it? What are the limitations?
More information<?php function preprocess_drupalcon($presentation) { if ($drupal && $ionic) { if ($ionic[ app ] = Megalomaniac ) { create $presentation } } }?
Mark Conroy - Annertech @markconroy What We'll Talk About
More informationTest all the things! Get productive with automated testing in Drupal 8. Sam Becker
Test all the things! Get productive with automated testing in Drupal 8 Sam Becker WHO AM I? Sam152 on drupal.org Back-end Drupal dev for PreviousNext Core contributor Author of 50+ contributed projects
More informationThe 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 informationDecoupled Drupal with Angular
Decoupled Drupal with Angular Agenda Introduction Short intro on Drupal What is decoupled and choosing the right architecture Introduction to Angular Setting up Angular development environment Demo Application
More informationEnterprise Smart Outlet: Android Development
Enterprise Smart Outlet: Android Development Aaron Koeppel Advisor: Professor Aaron Keen California Polytechnic State University Computer Science Department June 9, 2015 Abstract This project consists
More informationBuild Mobile Cloud Apps Effectively Using Oracle Mobile Cloud Services (MCS)
Build Mobile Cloud Apps Effectively Using Oracle Mobile Cloud Services (MCS) Presented by: John Jay King Download this paper from: 1 Session Objectives Understand the need for something like Oracle Mobile
More informationOracle Mobile Application Framework
Oracle Mobile Application Framework Oracle Mobile Application Framework (Oracle MAF) is a hybrid-mobile development framework that enables development teams to rapidly develop single-source applications
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 informationWednesday, September 19, 12 THE LEADER IN DRUPAL PLATFORM DESIGN AND DEVELOPMENT
THE LEADER IN DRUPAL PLATFORM DESIGN AND DEVELOPMENT ENERGY.GOV WHO IS PHASE2? PLATFORM SPECIALISTS PLATFORM SPECIALISTS DRUPAL COMMUNITY 55 12 50+ 4 Involved Drupal Professionals Speakers at DrupalCon
More informationLOG8430: Architecture logicielle et conception avancée
LOG8430: Architecture logicielle et conception avancée Microservices, REST and GraphQL Automne 2017 Fabio Petrillo Chargé de Cours This work is licensed under a Creative 1 Commons Attribution-NonCommercialShareAlike
More informationDrupal 8 THE VIDER ITY APPR OACH
Drupal 8 THE VIDER ITY APPROACH Introduction DR UPAL 8: THE VIDER ITY APPROACH Viderity focuses on designing the Total User Experience for Drupal sites, using a user-centered design approach Traditionally,
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 informationTHE GREAT CONSOLIDATION: ENTERTAINMENT WEEKLY MIGRATION CASE STUDY JON PECK, MATT GRILL, PRESTON SO
THE GREAT CONSOLIDATION: ENTERTAINMENT WEEKLY MIGRATION CASE STUDY JON PECK, MATT GRILL, PRESTON SO Slides: http://goo.gl/qji8kl WHO ARE WE? Jon Peck - drupal.org/u/fluxsauce Matt Grill - drupal.org/u/drpal
More informationFull 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 informationSmart buyers of Smart TVs in Russia. TV industry insights based on Google data
Smart buyers of Smart TVs in Russia TV industry insights based on Google data Summary 1. 84% of Russian Internet users use online for researching before purchasing TV sets. Three quarters of them claimed
More informationDigital Design of Paper Technologies Workshop
Digital Design of Paper Technologies Workshop On the durability and curatibility of Digital Scholarly Editions Daniel Bruder Those who cannot remember the past are condemned to repeat it. Those who cannot
More informationAugust, HPE Propel Microservices & Jumpstart
August, 2016 HPE Propel s & Jumpstart Jumpstart Value Quickly build modern web applications Single page application Modular microservices architecture app generator Modularity provides better upgradeability
More informationState of the Headless CMS Market 2018
State of the Headless CMS Market 2018 by Kentico Software Headless CMS Market in 2018 For many years, companies have been using traditional web-oriented Content Management Systems. But the world has changed.
More informationOracle APEX 18.1 New Features
Oracle APEX 18.1 New Features May, 2018 Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated
More informationDeploying 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 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 information& Cross-Channel Customer Engagement RFP Guide
Email & Cross-Channel Customer Engagement RFP Guide Customer Engagement in a Perpetually Connected World Today s perpetually connected customer is interacting with your brand through digital, mobile &
More informationCHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application
BACKBONE.JS Sencha Touch CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application A RapidValue Solutions Whitepaper Author: Pooja Prasad, Technical Lead, RapidValue Solutions Contents Executive
More information1. Introduction. 2. Technology concepts
1 Table of Contents 1. Introduction...2 2. Technology Concepts...3 2.1. Sharding...4 2.2. Service Oriented Data Architecture...4 2.3. Aspect Oriented Programming...4 3. Technology/Platform-Specific Features...5
More informationDiageo - Mosaic - Intranet portal User Interaction Design Proposal
Diageo - Mosaic - Intranet portal User Interaction Design Proposal The purpose of this document is to propose a better and improved user experience of the current system. The UI mock ups and flowcharts
More informationIntroduction to GraphQL and Relay. Presenter: Eric W. Greene
Introduction to GraphQL and Relay Presenter: Eric W. Greene Welcome to the Webinar! Welcome to the webinar on GraphQL and Relay!!! We will review a few slides, then experiment with GraphQL and review GraphQL
More informationEMEA/Africa/Middle East - Tuesday June 25th, :00:00 a.m. - 1:00pm BST / 10:00:00 a.m. - 2:00 p.m.cest /
EMEA/Africa/Middle East - Tuesday June 25th, 2013 9:00:00 a.m. - 1:00pm BST / 10:00:00 a.m. - 2:00 p.m.cest / 1:30:00 p.m. - 5:30:00 p.m. IST / 12:00:00 p.m. - 4:00 p.m. MSK / 08:00:00 a.m. - 12:00 p.m.
More informationPHP & 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 informationA Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group
A Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group 2008 IBM Corporation Agenda XPage overview From palette to properties: Controls, Ajax
More informationWhat's New in ActiveVOS 7.1 Includes ActiveVOS 7.1.1
What's New in ActiveVOS 7.1 Includes ActiveVOS 7.1.1 2010 Active Endpoints Inc. ActiveVOS is a trademark of Active Endpoints, Inc. All other company and product names are the property of their respective
More informationIntroduction 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 informationTECH LEADERSHIP IN A RESPONSIVE ORGANISATION. Scott Shaw ThoughtWorks
TECH LEADERSHIP IN A RESPONSIVE ORGANISATION Scott Shaw ThoughtWorks Australia @scottwshaw ENTERPRISE ARCHITECTURE TECH LEADERSHIP IN A RESPONSIVE ORGANISATION AGILE Scott Shaw ThoughtWorks Australia @scottwshaw
More informationThe Now Platform Reference Guide
The Now Platform Reference Guide A tour of key features and functionality START Introducing the Now Platform Digitize your business with intelligent apps The Now Platform is an application Platform-as-a-Service
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 informationPick A Winner! In What Tool Should I Develop My Next App?
Pick A Winner! In What Tool Should I Develop My Next App? Mia Urman, CEO, AuraPlayer Inc. @miaurman @auraplayer Who is Mia Urman? miaurman@auraplayer.com Oracle ACE Director & Development Geek for over
More informationAn introduction to Headless Content Management Systems
WHITEPAPER An introduction to Headless Content Management Systems John Winter, Co-Founder, Content Bloom Introduction Surfing web content used to be limited to desktop computers. This has drastically changed
More informationMakbul Khan. Nikhil Sukul
Makbul Khan Acquia Certified Developer Senior Software Engineer makbul_khan8 makbul_khan08 Nikhil Sukul Senior Drupal Architect nikhilsukul nikhilsukul Topics 1. What is Isomorphic JavaScript 2. Why Isomorphic
More informationLiferay Digital Experience Platform. New Features Summary
Liferay Digital Experience Platform New Features Summary Liferay has redesigned its platform with new functionality in Liferay Digital Experience Platform (DXP). The following is a summary of the key new
More informationIBM i: JOURNEY TO THE CENTER OF THE CLOUD
IBM i: JOURNEY TO THE CENTER OF THE CLOUD Prepared by Matt Shannon, Sr. Solutions Specialist and Jeffrey Whicker, Sr. Solutions Specialist Sirius Computer Solutions, Inc. July 2017 Contents Executive Summary...
More informationMichigan State University Team MSUFCU Banking with Amazon s Alexa and Apple s Siri Project Plan Spring 2017
1 Michigan State University Team MSUFCU Banking with Amazon s Alexa and Apple s Siri Project Plan Spring 2017 MSUFCU Contacts: Emily Fesler Collin Lochinski Judy Lynch Benjamin Maxim Andy Wardell Michigan
More informationRemote Entities: Past, Present & Future
BADCamp, October 24th 2015 Remote Entities: Past, Present & Future Dave Bailey - steel-track Colan Schwartz - colan Licensed under Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) About Dave Drupal
More informationEvaluation Guide for ASP.NET Web CMS and Experience Platforms
Evaluation Guide for ASP.NET Web CMS and Experience Platforms CONTENTS Introduction....................... 1 4 Key Differences...2 Architecture:...2 Development Model...3 Content:...4 Database:...4 Bonus:
More informationAn easy way to create a website for scientific software project
An easy way to create a website for scientific software project Gennady Pospelov Scientific Computing Group at MLZ Workshop on Neutron Scattering Data Analysis Software 6-8 June, 2018, Sorangna Choice
More informationHands On, Instructor-Led IT Courses Across Colorado
Hands On, Instructor-Led IT Courses Across Colorado Offering instructor-led courses in: Java, Java EE and OOAD SQL Programming and SQL Server UNIX, Linux Administration.NET Programming Web Programming
More informationReview of Mobile Web Application Frameworks
Review of Mobile Web Application Frameworks Article Number: 909 Rating: Unrated Last Updated: Mon, May 9, 2011 at 10:57 AM If you are serious about getting your website or web application mobile-friendly,
More informationCodeValue. C ollege. Prerequisites: Basic knowledge of web development and especially JavaScript.
Course Syllabuses Introduction to AngularJS Length: 3 days Prerequisites: Basic knowledge of web development and especially JavaScript. Objectives: Students will learn to take advantage of AngularJS and
More informationAgenda Time (PT) 8:45 a.m. Event Platform Opening 9:00 a.m. Keynote - Java: Present and Future Java EE 7 Java SE 8 Java Embedded
Virtual Developer Day: Java 2014 May 6 th 9:00 a.m. - 1:00 p.m. PDT / 12:00 p.m. - 4:00 p.m. EDT / 1:00 p.m. 5:00 p.m. BRT Agenda Time (PT) 8:45 a.m. Event Platform Opening 9:00 a.m. Keynote - Java: Present
More informationHow to Route Internet Traffic between A Mobile Application and IoT Device?
Whitepaper How to Route Internet Traffic between A Mobile Application and IoT Device? Website: www.mobodexter.com www.paasmer.co 1 Table of Contents 1. Introduction 3 2. Approach: 1 Uses AWS IoT Setup
More informationDeveloping Microsoft SharePoint Server 2013 Core Solutions
Developing Microsoft SharePoint Server 2013 Core Solutions Duration: 5 Days Course Code: 20488B About this course In this course, students learn core skills that are common to almost all SharePoint development
More informationRediscover Google AMP Learn to integrate AMP with your Drupal project Twin Cities Drupal Camp June 9, 2018
Learn to integrate AMP with your Drupal project Twin Cities Drupal Camp June 9, 2018 : Learn to integrate AMP with your Drupal project Jason A. Want @jasonawant Senior Software Engineer The Nerdery 3 STRATEGY.
More informationCSA Website Ad Specifications
CSA Website Ad Specifications General Specifications (all ads) Animation length - 15 seconds max Max three rotations/loops Standard Ads JPEG, GIF and PNG accepted We do not accept tracking pixels, but
More informationwelcome 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 informationCourse 20488A: Developing Microsoft SharePoint Server 2013 Core Solutions
Course 20488A: Developing SharePoint Server 2013 Core Solutions Delivery Method: Instructor-led (classroom) Duration: 5 Days Level: 300 COURSE OVERVIEW About this Course In this course, students learn
More informationOpen Web Technology. Presented at the Seminar Organised at NIC-Hq, New Delhi on 20/03/2014.
Open Web Technology Presented at the Seminar Organised at NIC-Hq, New Delhi on 20/03/2014. Open Technology Group, National Informatics Centre, DeitY, MCIT, Govt. of India, NIC-Taramani, STPI Campus, First
More informationDigital 101 Voice, AI and Smartphones
Digital 101 Voice, AI and Smartphones The emerging paradigm for Police Contact, Crime & Intelligence reporting SIMON CLIFFORD DIRECTOR OF DIGITAL TRANSFORMATION NORTHMPTONSHIRE POLICE Single Online Home
More informationInformation 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 informationDESIGNED TO SIMPLY DELIVER
TECHNOLOGY DESIGNED TO SIMPLY DELIVER Mozu is on a mission to simplify delivery of the modern enterprise commerce experience through innovative technology solutions. Table of Contents Intro / 3 Customization
More informationSiteforce Pilot: Best Practices
Siteforce Pilot: Best Practices Getting Started with Siteforce Setup your users as Publishers and Contributors. Siteforce has two distinct types of users First, is your Web Publishers. These are the front
More informationAJAX Programming Overview. Introduction. Overview
AJAX Programming Overview Introduction Overview In the world of Web programming, AJAX stands for Asynchronous JavaScript and XML, which is a technique for developing more efficient interactive Web applications.
More informationCreating engaging website experiences on any device (e.g. desktop, tablet, smartphone) using mobile responsive design.
Evoq Content: A CMS built for marketers to deliver modern web experiences Content is central to your ability to find, attract and convert customers. According to Forrester Research, buyers spend two-thirds
More informationData & innovation. Bienvenue dans l'ère de la créativité et de la performance augmentée.
Data & innovation. Bienvenue dans l'ère de la créativité et de la performance augmentée. BUSINESS DAY J1 Microsoft experiences18 Cyril Fekete Partner Nicolas Schmitz CEO Performics Magali Tocanne Digital
More informationMobile Application Development: Introducing ADF Mobile Native Client Framework
Mobile Application Development: Introducing ADF Mobile Native Client Framework Denis Tyrell, Senior Director of Product Development, ADF/JDeveloper Joe Huang, Senior Principal Product Manager, ADF/JDeveloper
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 informationHello everyone. My name is Kundan Singh and today I will describe a project we did at Avaya Labs.
Hello everyone. My name is Kundan Singh and today I will describe a project we did at Avaya Labs. 1 Let me start by saying that people often forget the importance of separating data from the application
More informationGridServer Interaction Design & Specification Hsin-Ying Wu
GridServer Interaction Design & Specification 2017. 1. 31 Hsin-Ying Wu Navigation and global elements GridServer Navigation: Main Page Updated by Hsin-Ying Wu, 2017.1.27 3 TIBCO DataSynapse GridServer
More informationDIGITAL SIGNAGE CONTENT CREATION FOR PROFIT AND GROWTH
SERVICE OFFERINGS THAT WILL TAKE YOUR BUSINESS TO PROFITABLE NEW HEIGHTS CONTENT diy stock custom Are you currently seing and instaing digital signage hardware but walking away from the content creation?
More information20486-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 informationBuilding Effective ASP.NET MVC 5.x Web Applications using Visual Studio 2013
coursemonster.com/au Building Effective ASP.NET MVC 5.x Web Applications using Visual Studio 2013 Overview The course takes existing.net developers and provides them with the necessary skills to develop
More informationSphinx prototype Documentation
Sphinx prototype Documentation Release 0.1 Arthur Mar 03, 2017 General documentation 1 Support docs 3 2 Developer docs 5 3 API docs 7 3.1 About this setup.............................................
More informationNick Terkay CSCI 7818 Web Services 11/16/2006
Nick Terkay CSCI 7818 Web Services 11/16/2006 Ning? Start-up co-founded by Marc Andreeson, the co- founder of Netscape. October 2005 Ning is an online platform for painlessly creating web apps in a jiffy.
More informationOracle WebCenter Interaction: Roadmap for BEA AquaLogic User Interaction. Ajay Gandhi Sr. Director of Product Management Enterprise 2.
Oracle WebCenter Interaction: Roadmap for BEA AquaLogic User Interaction Ajay Gandhi Sr. Director of Product Management Enterprise 2.0 and Portals 1 Agenda Enterprise 2.0 and Portal Product Strategy AquaLogic
More information20480C: Programming in HTML5 with JavaScript and CSS3. Course Code: 20480C; Duration: 5 days; Instructor-led. JavaScript code.
20480C: Programming in HTML5 with JavaScript and CSS3 Course Code: 20480C; Duration: 5 days; Instructor-led WHAT YOU WILL LEARN This course provides an introduction to HTML5, CSS3, and JavaScript. This
More informationCertified Facebook Apps Developer VS-1059
Certified Facebook Apps Developer VS-1059 Certified Facebook Apps Developer Certified Facebook Apps Developer Certification Code VS-1059 Vskills certification for Facebook Apps Developer assesses the candidate
More informationUX400. OpenUI5 Development Foundations COURSE OUTLINE. Course Version: 02 Course Duration: 5 Day(s)
UX400 OpenUI5 Development Foundations. COURSE OUTLINE Course Version: 02 Course Duration: 5 Day(s) SAP Copyrights and Trademarks 2017 SAP SE or an SAP affiliate company. All rights reserved. No part of
More informationCreate-A-Page Design Documentation
Create-A-Page Design Documentation Group 9 C r e a t e - A - P a g e This document contains a description of all development tools utilized by Create-A-Page, as well as sequence diagrams, the entity-relationship
More informationFROM VSTS TO AZURE DEVOPS
#DOH18 FROM VSTS TO AZURE DEVOPS People. Process. Products. Gaetano Paternò @tanopaterno info@gaetanopaterno.it 2 VSTS #DOH18 3 Azure DevOps Azure Boards (ex Work) Deliver value to your users faster using
More informationOpen Source Library Developer & IT Pro
Open Source Library Developer & IT Pro Databases LEV 5 00:00:00 NoSQL/MongoDB: Buildout to Going Live INT 5 02:15:11 NoSQL/MongoDB: Implementation of AngularJS INT 2 00:59:55 NoSQL: What is NoSQL INT 4
More informationCS 4518 Mobile and Ubiquitous Computing Lecture 5: Data-Driven Views and Android Components Emmanuel Agu
CS 4518 Mobile and Ubiquitous Computing Lecture 5: Data-Driven Views and Android Components Emmanuel Agu Announcements Slight modifications to course timeline posted No class February 16 (Advising day)
More informationWordPress is free and open source, meaning it's developed by the people who use it.
1 2 WordPress Workshop by BBC July 2015 Contents: lorem ipsum dolor sit amet. page + WordPress.com is a cloudhosted service that runs WordPress where you can set up your own free blog or website without
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 informationSpark SDK Video - Overview and Coding Demo
DEVNET-2026 Spark SDK Video - Overview and Coding Demo Olivier Proffit - Sr. Product Manager David Staudt DevNet Developer Evangelist Cisco Spark How Questions? Use Cisco Spark to communicate with the
More informationFull Stack Web Developer
Full Stack Web Developer S.NO Technologies 1 HTML5 &CSS3 2 JavaScript, Object Oriented JavaScript& jquery 3 PHP&MYSQL Objective: Understand the importance of the web as a medium of communication. Understand
More informationFULL STACK FLEX PROGRAM
UNIVERSITY OF RICHMOND CODING BOOT CAMP FULL STACK FLEX PROGRAM CURRICULUM OVERVIEW The digital revolution has transformed virtually every area of human activity and you can be part of it as a web development
More informationTechnical Document Authoring and
2015 Aras 1 Technical Document Authoring and Management in PLM Kevin Richard 2015 Aras 2 Agenda Business Justification (Challenges/Goals) Technical Documents Features Demo Wrap up and questions 2015 Aras
More informationTransforming the way people watch TV
Transforming the way people watch TV Nokia Siemens Networks Ubiquity Multiscreen TV Platform - Executive summary An open solution for delivering TV and Internet as a single service on any device over any
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 informationArjen 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 informationIdeas Gallery - Sai Kishore MV (Kishu)
Ideas Gallery - Sai Kishore MV (Kishu) All Ideas are for LS 2.0 Idea: # 1: Theme / Template Framework Develop a theme / template framework similar to one in jquery ( http://jqueryui.com/themeroller/) and
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 informationBeyond the Blink: Add Drupal to Your IoT Playground. Amber Matz
Beyond the Blink: Add Drupal to Your IoT Playground Amber Matz Hi. I m Amber. Name: Amber Matz (neé Himes) Drupal.org username: Amber Himes Matz Twitter: @amberhimesmatz My job: Production Manager and
More informationWhat Is a Cloud-first Headless CMS?
What Is a Cloud-first Headless CMS? We ve been using CMS to manage website content for 20+ years BUT The world has changed! Today, we live in a multi-channel world People spend more time using mobile than
More informationAudit. A Senior Project presented to the Faculty of the Computer Science Department California Polytechnic State University, San Luis Obispo
Audit A Senior Project presented to the Faculty of the Computer Science Department California Polytechnic State University, San Luis Obispo In Partial Fulfillment of the Requirements for the Degree Bachelor
More information09/07: Project Plan. The Capstone Experience. Dr. Wayne Dyksen Department of Computer Science and Engineering Michigan State University Fall 2016
09/07: Project Plan The Capstone Experience Dr. Wayne Dyksen Department of Computer Science and Engineering Michigan State University Fall 2016 From Students to Professionals Project Plan Functional Specifications
More informationDeveloping Microsoft SharePoint Server 2013 Core Solutions
Developing Microsoft SharePoint Server 2013 Core Solutions 20488B; 5 days, Instructor-led Course Description In this course, students learn core skills that are common to almost all SharePoint development
More informationWhite Paper. EVERY THING CONNECTED How Web Object Technology Is Putting Every Physical Thing On The Web
White Paper EVERY THING CONNECTED Is Putting Every Physical Thing Every Thing Connected The Internet of Things a term first used by technology visionaries at the AUTO-ID Labs at MIT in the 90s 1 has received
More informationContents. The Mobile Delivery Gap The Choice to Go Hybrid What is a Hybrid App? Comparing Hybrid vs. Native Why Hybrid?...
Contents The Mobile Delivery Gap...03 The Choice to Go Hybrid...04 What is a Hybrid App?...05 Comparing Hybrid vs. Native...06 Why Hybrid?...07 Why Native?...13 A Little About Ionic...17 Testimonials...18
More informationPower BI Developer Bootcamp
Power BI Developer Bootcamp Mastering the Power BI Development Platform Course Code Audience Format Length Course Description Student Prerequisites PBD365 Professional Developers In-person and Remote 4
More informationAJAX 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