620 likes | 636 Views
Understand IBM's enthusiasm for social computing and explore the characteristics of Web 2.0. Learn about the role of WebSphere Portal and the specific tools and technologies that drive IBM's social initiative.
E N D
Web 2.0 Demystified for Social Networking SoftwareIncluding coverage of WebSphere Portal, Sametime, Connections, Quickr and related technologies
Session Objectives By the end of this session,you will be able to: • Understand why IBM is enthralled in social computing • Describe characteristics of Web 2.0 • Identify the WebSphere Portal role IBM’s social initiative • Characterize the specific tools and technologies that bring it home
Agenda • Introduction • Web 2.0, History, and IBM • Web 2.0 Infrastructure • Web 2.0 and WebSphere Portal • Collaborative Integration • Conclusion
Introduction How a meaningless term like Web 2.0 engulfs so many technologies with so much importance • Social computing enables IBM technologies. • IBM technologies enable social computing.
Web 2.0, History, and IBM Web 2.0 Sites compared to Web 1.0 Modern Web 2.0 site • Users collectively contribute to the web site, they don‘t just consume • Every user is content editor & rater • Web site provides content, apps, & collective contributions of all users • Semantically tagged markup • Humans and applications as users • Accumulates huge amounts of information and content • FlexibleTagging / Folksonomy • Bi-directional Strict Web 1.0 site • Web Master runs web site, users consume • Few content editors • Web site provides content and applications for users • View-only markup • Only human users • Accumulates relatively small amounts of info & content • Fixed categories / Taxonomy • Unidirectional App App Web Site Web Site App Data Data App
Web 2.0, History, and IBM Observations • Web 2.0 consists of social and technical aspects • The social aspects more fundamental than technologies • Web 2.0 Sites can derive huge value from their user community if they achieve critical mass • Sites often only provides the infrastructure and guidelines for user participation • Communities adds value to the site, e.g. by writing articles, posting videos, sharing bookmarks, etc. • Typically, sites have APIs used by mashup developers acting as multipliers • Web 2.0 user interfaces typically apply the AJAX technology to achieve more responsive UIs
Web 2.0, History, and IBM Understanding a move to Web 2.0 • Web 1.0 = Static Web Sites • Access to information • Sites become interactive • Web 2.0 = Sites are social • Users interact with each other • Web is a platform • “A true Web 2.0 application is one that gets better the more people use it.” -Tim O’Reilly
Web 2.0, History, and IBM Tenants of Web 2.0 (Tim O’Reilly) • The web as platform • Harnessing collective intelligence • Data is the next Intel Inside • End of the software release cycle • Lightweight programming models • Software above the level of a single device • Rich user experiences
Web 2.0, History, and IBM Three patterns driving Web 2.0 Users add value Service, not software • Recommendations • Social networking features • Tagging • User comments • Community rights management Software as aSERVICE COMMUNITYmechanisms • User-driven adoption • Value on demand • Low cost of entry • Public infrastructure • Tight feedback loop between providers and consumers Web 2.0 Easy to use, easy to remix SIMPLEuser interface and dataservices • Responsive UIs (AJAX) • Feeds (Atom, RSS) • Simple extensions • Mashups (REST APIs)
Web 2.0, History, and IBM Flattening the large enterprise Users add value Service, not software • Recommendations • Social networking features • Tagging • User comments • Community rights management ON PREMISEservices COMMUNITYmechanisms • User-driven adoption • Value on demand • Controlled deployment on private infrastructure Web 2.0ON PREMISE Easy to use, easy to remix SIMPLEuser interface and dataservices • Responsive UIs (AJAX) • Feeds (Atom, RSS) • Simple extensions • Mashups (REST APIs)
Web 2.0 Sites Web 2.0, History, and IBM Web 2.0 Mashups Tagging Tag Clouds Techniques “Services” Folksonomy Blogging wikis Symantec Tagging Microformats Technology Flex PHP XML REST RSS Atom AJAX
Web 2.0, History, and IBM Enabling social network solutions Web 2.0: Let people collaborate and share information online in new ways; social networking, wikis, communication tools and social bookmarking Connecting people People optimized Processes and transactions Process optimized Publish information Information optimized Dynamic (Web 2.0) Point Integrated
Web 2.0, History, and IBM IBM 2.0 Activity Centric Computing ThinkPlace Podcasting Pilot Forums On The Web BluePages+1 The Greater IBM Connection Dogear XING Blog Central Wiki Central WebAhead Enterprise Mashups QEDWiki Lotus Connections Tommy! DB2 on Rails Hannover PassItOn SameTime 7.5 Enterprise Tagging System Lasso Effective Meetings The River Lotus Quickr OpenAJAX BlueMail TAP Many Eyes
Web 2.0 Infrastructure What is AJAX ? • Asynchronous JavaScript and XML • To create more dynamic and responsive web pages • Used at Yahoo! Mail, Google Maps, live.com, etc. • Web clients in a Service Oriented Architecture connecting any kind of server: J2EE, PHP, ASP.Net, Ruby on Rails, etc. • Involves existing technology & standards: JavaScript and XML • Web browser retrieves data or markup fragments from a service and refreshes just a part of the page • Is non-trivial • Requires deep and broad skills in web development • But huge benefits gained can be huge compared to classic web apps AJAX is NOT hype – very real, very useful, highly interactive applications
Web 2.0 Infrastructure What is REST ? • Representational State Transfer • an architecture style of networked systems • An Architectural Style, Not a Standard • While REST is not a standard, it does use standards: • HTTP • URL • XML/HTML/GIF/JPEG/etc (Resource Representations) • text/xml, text/html, image/gif, image/jpeg, etc (MIME Types) • Defined: • The Web is comprised of resources • A resource is any item of interest • Boeing Aircraft Corp may define a 747 resource • Clients may access that resource with this URL: http://www.boeing.com/aircraft/747 • A representation of the resource is returned (e.g., Boeing747.html).
Web 2.0 Infrastructure REST Web Services Characteristics • Client-Server: a pull-based interaction style: consuming pulls representations • Stateless: requests from client to server must contain all the information necessary to understand the request - cannot take advantage of any stored context on the server. • Cache: to improve network efficiency responses must be capable of being labeled as cacheable or non-cacheable • Uniform interface: all resources are accessed with a generic interface (e.g., HTTP GET, POST, PUT, DELETE) • Named resources: systems are comprised of resources named using a URL • Interconnected resource representations: the representations of the resources are interconnected using URLs, thereby enabling a client to progress from one state to another • Layered components: intermediaries, such as proxy servers, cache servers, gateways, etc, can be inserted between clients and resources to support performance, security, etc.
Web 2.0 Infrastructure Web 2.0 Fragment Model • Simple and extensible Web 2.0 fragment programming model • Agnostic of how fragments are generated, may be • generated by portlets on WebSphere Portal • generated by PHP code on Web or PHP servers • generated by .NET servers • Can start simple, with option to grow more sophisticated • Basic fragments – HTML only • Slightly more advanced – add use of Semantic Tags • More advanced – add use of Dojo and custom JavaScript • Fragments can use public JavaScript interfacesto conveniently invoke WebSphere Portal’s REST-style Web services
Web 2.0 Infrastructure Fragment Programming Model Web 2.0 Fragment Semantic Tags Dojo Widget Markup JavaScript Functions REST Calls to Portal Services User Profile Access Settings Access Persistence Service Access REST Calls to other Servicese.g. other WPLC services Weather Info, News, Sports, … CRM, HR, … Services etc
Web 2.0 Infrastructure Web 2.0 Client Side Aggregation • Browser-side Aggregation, Navigation and Customization • Superior user experience • Highly reactive and direct user interface • Many actions possible without server roundtrips • Avoids page flickering • Accesses and manipulates portal information through REST services • Renders XML obtained from the server on the browser side • Implemented using AJAX, XML, Dojo, and JavaScript • Improved performance and scalability through: • Reduced server side processing - offloads rendering to browser • Reduced bandwidth requirements between server and browser • Reduced client-side processing –fragment (not page) reloads • Improved cachability, all artifacts can be cached independently
WebSphere Portal Extend • Instant messaging • Team Rooms • Electronic Forms • Workflow Builder WebSphere Portal Enable • Web Content Management • Portal Document Manager • Workflow Engine WebSphere • Presentation • Customization • Application aggregation • Java Portlet API • Use of 100’s of portlets • WSRP support • Admin • Single sign on • Search • Personalization • Portlet Generation Tool (Portlet Factory) • Composite Applications • Cluster Support • Application Server • Database • LDAP Directory Server Portal Server Web 2.0 and WebSphere Portal WebSphere Portal 6 Overview
Web 2.0 and WebSphere Portal Portal is the User Interface to SOA Other Clients MS Office & Windows Presentation Services Web Browser Rich Clients Other Clients Mobile Client eForms Xforms
Web 2.0 and WebSphere Portal WebSphere Portal – An Example • w3 portal for all IBM employees • > 300,000 users • Portlets provide essential information • Highly personalized - displays the right info to the right users at the right time • End-user customizable - users can create custom pages • Has become a key tool for every IBMer • Major productivity gain • Targeted info delivery to users • Users can easily find the apps they need
Web 2.0 and WebSphere Portal AJAX based Client Side Aggregation REST-accessible Markup Fragments from WP Portlets or any other URL Atom / RSS Feeds Services created with Google Gadgets WSRP Services
composite applications role-based process- driven in context Web 2.0 and WebSphere Portal Governed mashups Portals combine public info, enterprise apps & data Rich Clients Thin Clients Security-Rich Composite application or view, that assembles and delivers services in the form of portletsin the context of a business process Mobile Clients Critical enabler: Openness Standards based access to integration and innovation
Web 2.0 and WebSphere Portal Web 2.0 Portal Architecture Quickr (Wikis, Blogs, Lists, Doc Libs, Discussions) Connections (Activities, Blue Pages, Social Bookmarks, Blogs) HTML+Dojo+JS Fragments (from J2EE,.NET,PHP, HTTP or other Server) Feed Service WSRP Service Connections Portlets MyPlaces Portlet WSRP Consumer AJAX enabled JSR 168 Portlets Classic JSR 168 Portlets AJAX Feed Consumer AJAX Fragment Consumer AJAX Programming Model Extensions (Dojo Framework & Widgets + AJAX.0 + REST accessor JS functions + Semantic Tags + Client Side Click-2-Action) REST style Portal Services (Persistence, User Profiles, Portlet Settings, Navigation, Pages, etc) WebSphere Portal Foundation WebSphere Application Server
Web 2.0 and WebSphere Portal Web 2.0 under development New Web 2.0 Work under development for WebSphere Portal • REST Servicesto open up portal for mashup apps – services for server persistence, portlet settings and user profile access simplifies development • AJAX Portlet Programming Model Extensionsbased on Dojo+IBM Ext. • Client Side Aggregation and Customization using REST Services for better UX and improved performance • AJAX Client Side Feed Consumption to enable highly efficient integration of information through feeds (Atom and RSS) • Semantic Tagsallows smart markup portal value add (ie, dynamic menus) • Client Side C2A/Property Broker and Drag & Dropbased on Semantic Tags and C2A; enables cross-portlet interaction locally and server side • Sample AJAX Portlets with source showcasing all the above • Google Gadgets integration, aggregation and customization
Web 2.0 and WebSphere Portal Access through Portal You’ll be able to access services through portlets
Web 2.0 and WebSphere Portal New Development Models Composite Applications & Mashups
Web 2.0 and WebSphere Portal New Development Models Composite Applications & Mashups Mashup - Sametime + Google Maps + IBM Directory
Web 2.0 and WebSphere Portal Access through Sametime plugins Save the current chat into an activity Show the latest blog entries of the selected buddy See activities that you have in common with the current chat buddy
Web 2.0 and WebSphere Portal Web 2.0/AJAX/REST Tech Preview • Introduce AJAX Portlet Programming Model based on Dojo + IBM Extensions • AJAX Support • Tooling (Portlet Factory, RAD) • AJAX for Portal 6.0 (menus) • AJAX Portlets 6.x • AJAX built into Themes & Skins 6.1 • Introduce Client Side Aggregation for better user experience and performance breakthrough • To enable highly efficient integration of information through feeds, provide Client Side Feed Consumption of ATOM and RSS Feeds
Web 2.0 and WebSphere Portal Web 2.0 / AJAX / REST In WP and related Products – Today • WP 6 allows User Contribution to portal through both WCM and PDM • WP 6 enables Situational Development through Composite Application Templates and through Lotus Designer / Portlet Factory / Forms Designer • WP 6 allows users Taking Control of their pages and choose content • Custom AJAX Portlets can be written today to run on WebSphere Portal,e.g. using the Dojo framework and widgets or the AJAX support in RAD • WP 6.0 exploits AJAX for context menus, search menu, & admin portlets • Portlet Factory generates AJAX Portlets with incremental update & autocomplete • IBM strongly engaged in Dojo (http://dojotoolkit.org/ ) as major contributor
Web 2.0 and WebSphere Portal Semantic Tags Portal-Independent Technology
Web 2.0 and WebSphere Portal AJAX based Feed Consumption • Allow simple consumption and display of Feeds in portal pages • Atomfeeds • RSS feeds • Implemented using AJAX, Dojo and JavaScript • Gets settings defining the feed to display from portal • Retrieves feeds from origin servers via AJAX proxy • Renders feeds in the browser rather than causing server load
Web 2.0 and WebSphere Portal AJAX Feed Consumption Directly from Origin
Web 2.0 and WebSphere Portal Google Gadget Integration • Easily integrate Google Gadgets into portal pages • Behaves just like local portlets • Viewable and customizable like any local portlet • Administrators can pre-define Gadget Portlets for the portlet palette • Admin creates a “Map Portlet” by connecting Gadget Portlet to the Google Maps Gadget • Users select pre-configured Gadget Portlets and drag them onto their pages like any local portlet • If allowed by admin, users can define Generic Gadget Portlets • Select Gadgets to display from the Google Gadget Catalog • The Generic Gadget Portlet then displays the selected Gadget • User can view and customize selected gadget like any local portlet
Web 2.0 and WebSphere Portal Google Gadget Integration A Gadget integrated in WebSphere Portal as a portlet
Web 2.0 and WebSphere Portal Google Gadget Integration Selecting a gadget to integrate into Portal as a portlet
Web 2.0 and WebSphere Portal AJAX Portlets using Dojo
Web 2.0 and WebSphere Portal REST style Web Services Exposing Portal to Mashups • Goals: • Separate portal user experience from portal data • Expose relevant data separately for use by other apps: Mashups • Public REST style Web services for • Access to Navigation Node Hierarchy • Access to Page Definitions • Access to User Profiles • Access to generic Content Persistence • Access tomarkup fragments of individual portlets • Mashups can use these services to implement custom applications leveraging portal infrastructure services • WebSphere Portal’s Web 2.0 Client Side Aggregation uses these services as well
Web 2.0 and WebSphere Portal Emerging WPLC Services & Feeds Domino Calendar Services Product: Common PIM Portlets for Mail and Calendar Access Mail Services Sametime IM Service Custom Situational Application: Simple AJAX Mail / Cal summary views with awareness Conference Service Awareness Service Connections Activity, Blog Services Geneva Portlets, Notes Plugin, Sametime Plugin, Desktop Integration Persona, Community Services Quickr Team Space Services Documents Services Custom Situational Application: Problem tracking application allowing to see author presence and location in map and contact via IM WebSphere Portal Search Service Contacts Service Persistence Service Product: WebSphere Portal Client Side Aggregation Portal Services Portlet Service User Service Internet Services Maps …
Web 2.0 and WebSphere Portal RSS & Atom RSS Consumers RSS Producers • RSS & Atom are clients to our strategy • Push content to the edges of our network and outside firewall • Allow people / customers / partners to “subscribe” to content and changes to that content. Notes 8 Client Portal & WCM Live Bookmarks Browsers Lotus Connections RSS Readers Ex Thunderbird My Yahoo Portal Lotus Quickr iTunes Podcasts Domino Server Connections Quickr Portal & WCM
Web 2.0 and WebSphere Portal Blogs & wikis • Blog = Web Log • Great for subject mater experts to publish • Personal publishing systems • Wiki = Hawaiian word for “quick” • Collaborative authoring environment • Great for sharing information across teams regardless of time or location