Mashing Up with Google Mashup Editor and Yahoo! Pipes

Similar documents
The Cloud as the New Middleware Platform

Solution Showcase Session. Enterprise 2.0 Computing Services

Cloud Computing. Chapter 2 Software as a Service (SaaS)

Mashup Development Seminar

ORACLE APPLICATION EXPRESS 5.0

Programming Without a Call Stack: Event-driven Architectures

ArcGIS Server mashups

Integration the Web 2.0 way. Florian Daniel April 28, 2009

MatchPoint Technical Features Tutorial Colygon AG Version 1.0

IBM Digital Experience. Using Modern Web Development Tools and Technology with IBM Digital Experience

OpenText Information Hub (ihub) 3.1 and 3.1.1

SENSE/NET 6.0. Open Source ECMS for the.net platform. 1

Collaborative Open Market to Place Objects at your Service

REST web services. Representational State Transfer Author: Nemanja Kojic

Experimenting in the domain of RIA's and Web 2.0

Unlocking the Java EE Platform with HTML 5

Using Social Networking Sites as a Platform for E-Learning

Oracle Application Development Framework Overview

Performance testing Web 2.0

The Oracle Fusion Development Platform

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0

IBM Rational Web Developer for WebSphere Software Version 6.0

Table of contents. HTML5 Data Bindings SEO DMXzone

Client-side Web Engineering From HTML to AJAX

Sisense. Product Highlights.

Web Apps The Next Generation

Web Cloud Architecture

Deploy. Friction-free self-service BI solutions for everyone Scalable analytics on a modern architecture

Automating Rich Internet Application Development for Enterprise Web 2.0 and SOA

Semarchy Convergence for Data Integration The Data Integration Platform for Evolutionary MDM

SOA, case Google. Faculty of technology management Information Technology Service Oriented Communications CT30A8901.

Advanced Web Application Development

Structured Content: the Key to Agile. Web Experience Management. Introduction

Reach more users with business intelligence

Agents and Web Services

ReportPortal Web Reporting for Microsoft SQL Server Analysis Services

<Insert Picture Here> Michael Hichwa VP Database Development Tools Stuttgart September 18, 2007 Hamburg September 20, 2007

XML Processing and Web Services. Chapter 17

Example. Represent this as XML

Lecture Overview. Web 2.0, Tagging, Multimedia, Folksonomies, Lecture, Important, Must Attend, Web 2.0 Definition. Web 2.

Oracle WebCenter Sites Mobility Server Enabling exceptional mobile and tablet web applications and web sites without compromise

Key Benefits of Microsoft Visual Studio 2008

Programming Fundamentals of Web Applications Course 10958A; 5 Days

Performance Testing for Ajax Applications

Microsoft Extending Microsoft Dynamics CRM 2011

SharePoint and Contract Management. Alan Weintraub Practice Director ECM Consulting (610) (office) (484) (Mobile)

CORRELATE for Microsoft Sharepoint Windows Services

APPENDIX A Web Redesign Infrastructure. Deployment Overview

Create Cool Lumira Visualization Extensions with SAP Web IDE Dong Pan SAP PM and RIG Analytics Henry Kam Senior Product Manager, Developer Ecosystem

How To Write An Ria Application

Data Visualization in Ext Js 3.4

Beyond The Web Drupal Meets The Desktop (And Mobile) Justin Miller Code Sorcery Workshop, LLC

Derek Burney General Manager Microsoft SharePoint Platform Microsoft Corporation

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.

Load Testing RIA using WebLOAD. Amir Shoval, VP Product Management

The Sitecore Solution for Web Content Management

Nexawebホワイトペーパー. Developing with Nexaweb ~ Nexaweb to Improve Development Productivity and Maintainability

A brief introduction on SharePoint

Open Government Data Initiative. Dejan Cvetkovic Regional Technology Officer, Microsoft CEE Athens, Greece, December 1 st, 2011

Amplify Service Integration Developer Productivity with Oracle SOA Suite 12c

Migration and Developer Productivity Solutions Cloud, Mobile and Web Development Workshop

Putting the power of Web 2.0 into practice.

Mindshare Studios Introductory Guide to Content Management Systems

Web Application Development for the SOA Age Thinking in XML

Credits: Some of the slides are based on material adapted from

Housing Works. Content Management System Overview. Presented to:

Integrating SharePoint Sites within WebSphere Portal

ORACLE MOBILE SUITE. Complete Mobile Development Solution. Cross Device Solution. Shared Services Infrastructure for Mobility

What Is NetBeans? Free and open-source based > Open source since June, 2000 > Large community of users and developers

Speed up your web site. Alan Seiden Consulting alanseiden.com

Lightweight Data Integration using the WebComposition Data Grid Service

Contents. BBS Software as a Service (SaaS),7. EH introducing aoudco.pu.ing 1. Distinguishing Cloud Types 4. Exploring

Expanded contents. Section 1. Chapter 2. The essence off ASP.NET web programming. An introduction to ASP.NET web programming

Introduction to Tizen SDK Alpha. Taiho Choi Samsung Electronics

a + b =? Open APIs: State of the Market

Consuming and Producing Web Services with Web Tools. Christopher M. Judd. President/Consultant Judd Solutions, LLC

Mobilize Your ERP with ADF Mobile

Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application

MASHUPS FOR THE INTERNET OF THINGS

Building HTML5 and hybrid mobile apps using cloud services. Andrei Glazunov

Capacity Planning for Microsoft SharePoint Technologies

Reporting and Visualization of Healthcare Data Using Open Source Technology. Virgil Dodson, Actuate

Using Microsoft Business Intelligence Dashboards and Reports in the Federal Government

Next Generation Business Performance Management Solution

ASP.NET: THE NEW PARADIGM FOR WEB APPLICATION DEVELOPMENT

maximizing IT productivity

Curl Building RIA Beyond AJAX

Office SharePoint Server 2007

Performance Testing Web 2.0

Introducing the Reimagined Power BI Platform. Jen Underwood, Microsoft

REST vs. SOAP: Making the Right Architectural Decision

Beeple, B-Pel, Beepul? Understanding BPEL and Its Role in SOA

Transcription:

Mashing Up with Google Mashup Editor and Yahoo! Pipes Gregor Hohpe www.eaipatterns.com Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 1

Who's Gregor? Distributed systems, enterprise integration, service-oriented architectures, mashups Write code every day. Share knowledge through patterns. www.eaipatterns.com Enterprise Integration Patterns Addison-Wesley Integration Patterns Microsoft Press Enterprise Solution Patterns Microsoft Press Best Software Writing I (Joel Spolsky) APress SOA Expertenwissen dpunkt Verlag Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 2

A Brief History of Time Web 1.0 Static HTML pages, Shopping Sites User oriented Web 1.5 Web Services Machine oriented Web 2.0 Web as platform, lightweight programming Data Feeds User contributed content, collective intelligence Mashups Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 3

Mashups A web application that combines data from more than one source into an integrated experience. RIA = Rich Internet Applications Combine multiple data feeds Often read-only User developed Access services over Internet Ad-hoc, easy to change Mashups on mashups Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 4

Mashup Anatomy Front-End Transform / Aggregate Data Sources / Adapters Google Mashup Editor QED Wiki JavaScript Libraries Microsoft Popfly Yahoo! Pipes Snaplogic Microsoft Popfly IBM Damia Dapper Openkapow Snaplogic StrikeIron (not meant to be complete nor a recommendation) Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 5

Example: My Travel Map Feed Google Calendar with Conference Events Yahoo! Pipes Geo Enriched Feed Google Mashup Editor Interactive Application Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 6

Starting Point: Google Calendar Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 7

Calendar Feed Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 8

Yahoo! Pipe Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 9

Yahoo! Pipes Data flow pipeline editor Input: any XML, Output: RSS, JSON, KML Visual, browser-based editor, simple debugging by inspection Pipes hosted at Yahoo!, accessible via URL Users can share and clone pipes Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 10

Google Mashup Editor AJAX development framework Rich rendering off data feeds using templates Browser-based IDE One click deployment Event model for rich user interactivity User entered data (by application / by user) Built-in support for Google Maps Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 11

Mashup Editor Application <gm:page title="gregorconferencemap"> <h1>gregor's Conference Travel</h1> <table width="900"> <tr valign="top"> <td width="300"> <gm:list id="mylist" data="http://pipes.yahoo.com/pipes/pipe.run?_id=...&_render=rss" pagesize="10"> <gm:handleevent src="map"/> </gm:list> <gm:item id="item" template="itemtemplate"> <gm:handleevent src="mylist"/> </gm:item> </td> <td class="mainpanel"> <gm:map id="map" data="${mylist}" latref="geo:lat" lngref="geo:long"> <gm:handleevent src="mylist"/> </gm:map> </td> </tr> </table> </gm:page> Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 12

Google Mashup Editor Event Model onclick onclick <gm:list> <gm:handleevent src="map"/> </gm:list> onclick <gm:item > <gm:handleevent src="mylist"/> </gm:item> <gm:map > <gm:handleevent src="mylist"/> </gm:map> Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 13

Programming Models Data pipeline Declarative within HTML DOM tree Query pipeline (IBM Damia) Visual programming back in vogue? Intuitive Scalability concerns Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 14

Snags (Small Picture) Spec vs. common practice, e.g. RSS GUIDs Atom vs. RSS feed formats Absence of schema does not mean no data mapping issues XPATH (in various guises) Debugging (especially in declarative models) Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 15

Snags (Big Picture) License agreements Inside the enterprise Security Service-level agreements Contract changes Scalability Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 16

Useful Tools www.feedvalidator.org Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 17

Mashups vs. SOA vs. Web Services vs. EAI Mashups User-driven Bottom-up Quick time to value Laissez faire Design by sample data Reuse by copy-paste Uses services EAI / SOA IT driven Top-down Longer time Robust, guarantees Design by contract Service re-use Uses services It's all (still) about integration! Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 18

Resources Blog / Tutorial www.eaipatterns.com/ramblings.html code.google.com/support/bin/topic.py?topic=12044 Products code.google.com/gme pipes.yahoo.com Market Watch / Directories programmableweb.com Events Mashup Camp Gregor Hohpe: Mashing Up with Google Mashup Editor and Yahoo! Pipes Slide 19