Your SlideShare is downloading. ×
0
Widgets                        &                       WookiesScott WilsonApache Wookie (incubating)http://incubator.apach...
Topics• W3C Widgets - what are they?• Wookie - what is it?• Open development - what did we  do?
Widgets  HTML                config.xmlJavaScript   CSS              Icon.png     mywidget.wgt
W3C Widgets: for Web,       Mobile, or Desktop?Apple Dashboard   OpenSocial       Nokia WidgetsWindows Sidebar   Google Ga...
How about, “yes”?
Basic Widget Authoring           Process• Make a webapp (HTML5, JS, CSS,  jquery etc)• Make a basic config.xml with name, ...
Device APIs: Adding Extra  Capabilities to Widget         JavaScript                   •   Address Book• W3C Widget API   ...
ExtensibilityYou can connect all kinds of functionality to widgets by  injecting a JS API for it at runtime - and not just...
Other                                   config.xmlclever stuffI18n/l10n  distribute multi-local apps as a single widget!Up...
Mobile Web:           Widgets vs Sites• Largely same access to device APIs though  widgets may have simpler permissions co...
W3C Widget ImplementationsMobile                  DesktopObigo WRT for Android   Opera 11Opera WAC for Android   WidgeonBl...
A Java server application in              the Apache Incubator.              Includes a W3C Widget              parser lib...
Wookie is…• A standalone widget runtime  designed for supporting web  applications• Enables any web application to  become...
Integrating Wookie• Connector Framework  – Java, PHP, Python, C#, Flex…• Plugins  – Elgg, Wordpress, Jetspeed, Drupal,    ...
Apache Wookie         Components• W3C Widget Parser (library)• Widget Server (servlet)• Feature Extensions  – WAC camera c...
Wookie and Open  Innovation
• How we went from a funded  academic project to an ASF  incubator• How commoditization is enabling  R&D• Why a very, very...
the proposition• Implementation of emerging standard• Can be extracted from larger project  context as a discrete project•...
Questions I was asked by         my boss• “What is our commitment and  exposure?”• “How can you work on this when  there i...
The Business Case• With some help from Ross @ OSSWatch…• Identified a “survival budget” for core  staff to manage the tran...
The Proposalhttp://wiki.apache.org/incubator/Wo  okieProposalThank you Ross !
The Process• Incubator vote• IP due diligence    – Rewriting some code    – Lots of emails•   CLA•   ICLA•   Transfer of c...
So what happened?• Income generated from this work far, far exceeded the  survival budget.• Total income generated for nex...
500         450                  Community Added Value         400      IEC                  EU         350         300  V...
Added Value• Work contributed to Wookie by the incubator  community• Bug fixes• New features• Build and install process• C...
R&D building on Wookie
Telco mashups research
New Partnerships•   T-Systems MMS•   SAP•   Gesfor SA•   Huawei•   University of Trento•   Chemnitz University•   Universi...
New R&D• OMELETTE:  – Telecom service mashups with widgets  – Portable device-agnostic multi-widget    workspaces• ITEC:  ...
New practices• Rather than just build stuff in projects, ask…   – Would this be a viable piece of OSS outside this     pro...
So what have we got out of           it?• Better software than we could have  created alone• More interesting research  op...
Thankshttp://incubator.apache.org/wookiehttp://scottbw.wordpress.com@scottbw                          This work is license...
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Open Source Junction: Apache Wookie and W3C Widgets
Upcoming SlideShare
Loading in...5
×

Open Source Junction: Apache Wookie and W3C Widgets

3,187

Published on

Presentation at Open Source Junction in Oxford, 30 March 2011

Transcript of "Open Source Junction: Apache Wookie and W3C Widgets"

  1. 1. Widgets & WookiesScott WilsonApache Wookie (incubating)http://incubator.apache.org/wookiescottbw@apache.org@scottbw This work is licensed under a Attribution- NonCommercial-ShareAlike 2.0 licence
  2. 2. Topics• W3C Widgets - what are they?• Wookie - what is it?• Open development - what did we do?
  3. 3. Widgets HTML config.xmlJavaScript CSS Icon.png mywidget.wgt
  4. 4. W3C Widgets: for Web, Mobile, or Desktop?Apple Dashboard OpenSocial Nokia WidgetsWindows Sidebar Google Gadgets iPhone AppsGoogle Desktop Google Wave Android AppsKonfabulator Gadgets Samsung BadaOpera Widgets WidgetBox SpringWidgets
  5. 5. How about, “yes”?
  6. 6. Basic Widget Authoring Process• Make a webapp (HTML5, JS, CSS, jquery etc)• Make a basic config.xml with name, author• Give it an icon (icon.png)• Zip it up• Change extension from .zip to .wgt
  7. 7. Device APIs: Adding Extra Capabilities to Widget JavaScript • Address Book• W3C Widget API • Calendar • Files• WAC • Media capture (camera) • Messaging• W3 DAP • System • Policy• W3 Geo • Media Gallery • Tasks JavaScript • Comms Log
  8. 8. ExtensibilityYou can connect all kinds of functionality to widgets by injecting a JS API for it at runtime - and not just device APIs either<feature name=“http://bondi.omtp.org/api/camera.capture” required=“true”/><feature name=“http://opensocial.org/osapi.person” required=“true”/><feature name=“http://wave.google.com” required=“true”/><feature name=“http://jquerymobile.com” required=“true”/> config.xml JavaScript
  9. 9. Other config.xmlclever stuffI18n/l10n distribute multi-local apps as a single widget!Updates automatic updates! Not patented by Apple!Signing Author-trust and store-trustWidget JS Object Preferences, metadata…WARP Configure access policies for remote services
  10. 10. Mobile Web: Widgets vs Sites• Largely same access to device APIs though widgets may have simpler permissions config depending on the WRT• All files distributed and installed in the package, supporting offline access• Package versioning and updates• Metadata and icons for app store distribution
  11. 11. W3C Widget ImplementationsMobile DesktopObigo WRT for Android Opera 11Opera WAC for Android WidgeonBlackberry Widgets WebsiteSamsung Bada MyWiWallAplix WRT Apache Wookie (incubating)Borqs WRT JBaron WidgetPortal Other Promethean SMART (using Wookie)
  12. 12. A Java server application in the Apache Incubator. Includes a W3C Widget parser library. http://incubator.apache.org/wookie* “Wookie” is not a clever acronym. so if you spell it WOOKIE you’re shouting!
  13. 13. Wookie is…• A standalone widget runtime designed for supporting web applications• Enables any web application to become a widget container
  14. 14. Integrating Wookie• Connector Framework – Java, PHP, Python, C#, Flex…• Plugins – Elgg, Wordpress, Jetspeed, Drupal, Moodle, Liferay…• Backend: – JPA, JCR
  15. 15. Apache Wookie Components• W3C Widget Parser (library)• Widget Server (servlet)• Feature Extensions – WAC camera capture, Wave Gadget, JQMobile…• Connector Framework• Shindig OpenSocial integration
  16. 16. Wookie and Open Innovation
  17. 17. • How we went from a funded academic project to an ASF incubator• How commoditization is enabling R&D• Why a very, very small dept with limited funding chose to invest it in this…
  18. 18. the proposition• Implementation of emerging standard• Can be extracted from larger project context as a discrete project• A good fit with ASF - home to other W3C ref implementations• Already some interest from outside the project
  19. 19. Questions I was asked by my boss• “What is our commitment and exposure?”• “How can you work on this when there isn’t a cost code for it?”• “What if we get another project that needs you to work on it?”
  20. 20. The Business Case• With some help from Ross @ OSSWatch…• Identified a “survival budget” for core staff to manage the transition to ASF and maintain basic contributions for 2 years• Identified a range of potential sources of value and funding – New projects – Consultancy – Internal ITS adoption/support
  21. 21. The Proposalhttp://wiki.apache.org/incubator/Wo okieProposalThank you Ross !
  22. 22. The Process• Incubator vote• IP due diligence – Rewriting some code – Lots of emails• CLA• ICLA• Transfer of codebase• Induction
  23. 23. So what happened?• Income generated from this work far, far exceeded the survival budget.• Total income generated for next 4 years: ~£700k from two FP7 projects• Plus very substantial value added by the community• Only actually core funded from Dec 09-Sep10 @ 0.2FTE (around £12k)• Wookie reused by at least six other EU consortia projects• Wookie has already effectively paid for 20% of me and 100% of two developers for the next three years
  24. 24. 500 450 Community Added Value 400 IEC EU 350 300 Value 250£ (000s) 200 150 100 50 0 2007 2008 2009 2010 2011 2012 Year
  25. 25. Added Value• Work contributed to Wookie by the incubator community• Bug fixes• New features• Build and install process• Connection framework• New plugins• New persistence layer• Connectors in PHP, C#, Python, Ruby …• Documentation, screencasts etc
  26. 26. R&D building on Wookie
  27. 27. Telco mashups research
  28. 28. New Partnerships• T-Systems MMS• SAP• Gesfor SA• Huawei• University of Trento• Chemnitz University• University of Madrid• University of Vallodolid• TIE Kinetix• SMART• Promethean• Icodeon• Opera
  29. 29. New R&D• OMELETTE: – Telecom service mashups with widgets – Portable device-agnostic multi-widget workspaces• ITEC: – Interactions between widgets on interactive whiteboards, tablets and mobiles• Apache Rave
  30. 30. New practices• Rather than just build stuff in projects, ask… – Would this be a viable piece of OSS outside this project? – Who is not in our consortium but would contribute? – Are there existing communities we can tap into? – How can we manage this?If its not viable, find out why its not viable and that is a valid research outcome; don’t invest resources building it just because “it’s a deliverable”
  31. 31. So what have we got out of it?• Better software than we could have created alone• More interesting research opportunities• Research impact• Partnerships• Money
  32. 32. Thankshttp://incubator.apache.org/wookiehttp://scottbw.wordpress.com@scottbw This work is licensed under a Attribution- NonCommercial-ShareAlike 2.0 licence
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×