0
 
The Benefits of Extensions Dániel Darabos Zsolt Bagoly ELTE Adaptive Software Labs, MultiRacio www.multiracio.com Hungary
The Benefits of Extensions Dániel Darabos Zsolt Bagoly ELTE Adaptive Software Labs, MultiRacio www.multiracio.com Hungary
The Benefits of Extensions Dániel Darabos Zsolt Bagoly ELTE Adaptive Software Labs, MultiRacio www.multiracio.com Hungary
Agenda <ul><li>Case study </li></ul><ul><li>Benefits to the user </li></ul><ul><li>Benefits to the publisher </li></ul><ul...
Case study: MultiRacio Ltd. <ul><li>Old model: EuroOffice 2005 Integrating enhancements into the codebase </li></ul><ul><u...
Benefits to the user <ul><li>Available to all OpenOffice.org users </li></ul><ul><li>Only pay for what you need </li></ul>...
Benefits to the publisher <ul><li>Huge installed base </li></ul><ul><ul><li>and growing! </li></ul></ul><ul><li>Central ex...
Benefits to the developer <ul><li>Billion times faster modify-compile-test cycle </li></ul><ul><li>Code not spread across ...
Benefits to the community <ul><li>Open-source rebranded version includes </li></ul><ul><ul><li>new interfaces (e.g. XAdapt...
Disadvantages <ul><li>none </li></ul>
Disadvantages <ul><li>well... </li></ul><ul><ul><li>Developers' Guide needs updating </li></ul></ul><ul><ul><li>API docume...
<ul><li>Flashy </li></ul><ul><li>examples </li></ul><ul><li>mixed with </li></ul><ul><li>technical details </li></ul>
Extensions by MultiRacio Ltd. Map Chart Adaptive Interface Dictionary Solver Thesaurus Spellchecker Hyphenator Animated Tu...
<ul><li>EuroOffice Map Chart </li></ul>
Examples Map chart Some value 0.0 1.6 3.2 4.8 6.4 8.0 9.6 11.2 12.8 14.4 16.0 16.0 Blue value Red value Yellow value Green...
Examples Map Chart 3D?
Map Chart <ul><li>OpenOffice.org Draw object </li></ul><ul><ul><li>can be edited after creation in any crazy way </li></ul...
Examples <ul><li>Language tools with Morphologic technology </li></ul><ul><ul><li>Dictionary </li></ul></ul><ul><ul><li>Sp...
Examples <ul><li>Language tools with Morphologic technology </li></ul><ul><ul><li>Dictionary </li></ul></ul><ul><ul><li>Sp...
Examples <ul><li>Language tools with Morphologic technology </li></ul><ul><ul><li>Dictionary </li></ul></ul><ul><ul><li>Sp...
Examples <ul><li>Language tools with Morphologic technology </li></ul><ul><ul><li>Dictionary </li></ul></ul><ul><ul><li>Sp...
<ul><li>EuroOffice Adaptive Interface </li></ul>
Adaptive Interface <ul><li>published service  AdaptiveInterfaceProvider { [ optional ]   interface com :: sun :: star :: a...
Adaptive Interface <ul><li>Algorithms devised in the Eötvös Lóránd University Adaptive Software Labs </li></ul><ul><li>Pro...
<ul><li>EuroOffice Solver </li></ul>
Solver <ul><li>Simplex and Hungarian algorithm </li></ul><ul><ul><li>implemented in C </li></ul></ul><ul><li>novel user in...
Animated Tutorials <ul><li>EuroOffice Animated Tutorials </li></ul><ul><ul><li>narrated flash videos for a large number of...
<ul><li>General notes </li></ul>
General notes <ul><li>Adding help </li></ul><ul><ul><li>create/modify eurooffice.tree and eurooffice.jar (if we have write...
General notes <ul><li>Installation </li></ul><ul><ul><li>instead of a licence ask the user to restart </li></ul></ul><ul><...
General notes <ul><li>Using native code </li></ul><ul><ul><li>ctypes or Python extension modules </li></ul></ul><ul><ul><l...
The end <ul><li>That's it! </li></ul><ul><li>You can reach me at </li></ul><ul><li>[email_address] </li></ul>
Upcoming SlideShare
Loading in...5
×

Benefits of Extensions

933

Published on

Published in: Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
933
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Benefits of Extensions"

  1. 2. The Benefits of Extensions Dániel Darabos Zsolt Bagoly ELTE Adaptive Software Labs, MultiRacio www.multiracio.com Hungary
  2. 3. The Benefits of Extensions Dániel Darabos Zsolt Bagoly ELTE Adaptive Software Labs, MultiRacio www.multiracio.com Hungary
  3. 4. The Benefits of Extensions Dániel Darabos Zsolt Bagoly ELTE Adaptive Software Labs, MultiRacio www.multiracio.com Hungary
  4. 5. Agenda <ul><li>Case study </li></ul><ul><li>Benefits to the user </li></ul><ul><li>Benefits to the publisher </li></ul><ul><li>Benefits to the developer </li></ul><ul><li>Benefits to the community </li></ul><ul><li>Disadvantages </li></ul><ul><li>Examples </li></ul>
  5. 6. Case study: MultiRacio Ltd. <ul><li>Old model: EuroOffice 2005 Integrating enhancements into the codebase </li></ul><ul><ul><li>commercial rebranded version using SISSL </li></ul></ul><ul><li>New model: EuroOffice 2007 Enhancements published as extensions </li></ul><ul><ul><li>open-source rebranded version using LGPL </li></ul></ul><ul><ul><ul><li>free and trial extensions </li></ul></ul></ul><ul><ul><ul><li>support for extensions that need more </li></ul></ul></ul><ul><ul><li>closed-source extensions </li></ul></ul>
  6. 7. Benefits to the user <ul><li>Available to all OpenOffice.org users </li></ul><ul><li>Only pay for what you need </li></ul><ul><li>Use together with other extensions </li></ul><ul><li>Quick download, electronic purchase </li></ul>
  7. 8. Benefits to the publisher <ul><li>Huge installed base </li></ul><ul><ul><li>and growing! </li></ul></ul><ul><li>Central extension repository </li></ul><ul><li>Shared marketing costs </li></ul><ul><li>Simple deployment, simple updating </li></ul>
  8. 9. Benefits to the developer <ul><li>Billion times faster modify-compile-test cycle </li></ul><ul><li>Code not spread across the huge OOo code </li></ul><ul><li>Python </li></ul><ul><li>Clean, documented API </li></ul><ul><li>Almost no work to follow versions </li></ul><ul><li>Easier to track down bugs </li></ul><ul><li>Large amount of reusable code </li></ul>
  9. 10. Benefits to the community <ul><li>Open-source rebranded version includes </li></ul><ul><ul><li>new interfaces (e.g. XAdaptiveInterface) </li></ul></ul><ul><ul><li>added functionality </li></ul></ul><ul><ul><li>extensive testing, bug reports, fixes </li></ul></ul><ul><li>Multiracio is now interested in “selling” OpenOffice.org </li></ul>
  10. 11. Disadvantages <ul><li>none </li></ul>
  11. 12. Disadvantages <ul><li>well... </li></ul><ul><ul><li>Developers' Guide needs updating </li></ul></ul><ul><ul><li>API documentation needs improvements </li></ul></ul><ul><ul><li>API awkward at places </li></ul></ul><ul><ul><li>Features missing (e.g. help) </li></ul></ul><ul><ul><li>Extension repository in its infancy </li></ul></ul><ul><ul><li>Python 2.3.4 </li></ul></ul>
  12. 13. <ul><li>Flashy </li></ul><ul><li>examples </li></ul><ul><li>mixed with </li></ul><ul><li>technical details </li></ul>
  13. 14. Extensions by MultiRacio Ltd. Map Chart Adaptive Interface Dictionary Solver Thesaurus Spellchecker Hyphenator Animated Tutorials
  14. 15. <ul><li>EuroOffice Map Chart </li></ul>
  15. 16. Examples Map chart Some value 0.0 1.6 3.2 4.8 6.4 8.0 9.6 11.2 12.8 14.4 16.0 16.0 Blue value Red value Yellow value Green value
  16. 17. Examples Map Chart 3D?
  17. 18. Map Chart <ul><li>OpenOffice.org Draw object </li></ul><ul><ul><li>can be edited after creation in any crazy way </li></ul></ul><ul><ul><li>users without EuroOffice Map Chart can view it </li></ul></ul><ul><li>Daemon monitors changes in the data </li></ul><ul><ul><li>XChartDataChangeEventListener </li></ul></ul><ul><ul><li>Daemon is recreated in loaded document (GlobalEventBroadcaster, XEventListener) </li></ul></ul><ul><li>Performance </li></ul><ul><ul><li>pyuno bridge is costly with 100000 point polygons </li></ul></ul><ul><ul><li>use C++ bridge instead </li></ul></ul>
  18. 19. Examples <ul><li>Language tools with Morphologic technology </li></ul><ul><ul><li>Dictionary </li></ul></ul><ul><ul><li>Spellchecker </li></ul></ul><ul><ul><li>Thesaurus </li></ul></ul><ul><ul><li>Hyphenator </li></ul></ul><ul><ul><li>Translator </li></ul></ul>
  19. 20. Examples <ul><li>Language tools with Morphologic technology </li></ul><ul><ul><li>Dictionary </li></ul></ul><ul><ul><li>Spellchecker </li></ul></ul><ul><ul><li>Thesaurus </li></ul></ul><ul><ul><li>Hyphenator </li></ul></ul><ul><ul><li>Translator </li></ul></ul>appears as toolbar translates word under cursor replace word with two clicks 24 dictionaries for 8 languages easily add more as CSV files stemming in English and Hungarian
  20. 21. Examples <ul><li>Language tools with Morphologic technology </li></ul><ul><ul><li>Dictionary </li></ul></ul><ul><ul><li>Spellchecker </li></ul></ul><ul><ul><li>Thesaurus </li></ul></ul><ul><ul><li>Hyphenator </li></ul></ul><ul><ul><li>Translator </li></ul></ul>(Hungarian only) works charms with inflection
  21. 22. Examples <ul><li>Language tools with Morphologic technology </li></ul><ul><ul><li>Dictionary </li></ul></ul><ul><ul><li>Spellchecker </li></ul></ul><ul><ul><li>Thesaurus </li></ul></ul><ul><ul><li>Hyphenator </li></ul></ul><ul><ul><li>Translator </li></ul></ul>Experimental
  22. 23. <ul><li>EuroOffice Adaptive Interface </li></ul>
  23. 24. Adaptive Interface <ul><li>published service AdaptiveInterfaceProvider { [ optional ] interface com :: sun :: star :: awt :: XAdaptiveMenuProvider ; }; </li></ul>
  24. 25. Adaptive Interface <ul><li>Algorithms devised in the Eötvös Lóránd University Adaptive Software Labs </li></ul><ul><li>Project financed by the EU, included in the &quot;Europe Plan&quot; </li></ul><ul><li>Ongoing work </li></ul>
  25. 26. <ul><li>EuroOffice Solver </li></ul>
  26. 27. Solver <ul><li>Simplex and Hungarian algorithm </li></ul><ul><ul><li>implemented in C </li></ul></ul><ul><li>novel user interface </li></ul><ul><li>daemons (XChartDataChangeEventListener) </li></ul>
  27. 28. Animated Tutorials <ul><li>EuroOffice Animated Tutorials </li></ul><ul><ul><li>narrated flash videos for a large number of tasks </li></ul></ul><ul><ul><li>basic and advanced </li></ul></ul><ul><ul><li>in 7 languages </li></ul></ul><ul><ul><li>great for education or inspiration </li></ul></ul>
  28. 29. <ul><li>General notes </li></ul>
  29. 30. General notes <ul><li>Adding help </li></ul><ul><ul><li>create/modify eurooffice.tree and eurooffice.jar (if we have write access to the help directory) </li></ul></ul><ul><ul><li>add help id to *.db Berkeley DB files _bsddb.pyd missing from budled Python... </li></ul></ul>
  30. 31. General notes <ul><li>Installation </li></ul><ul><ul><li>instead of a licence ask the user to restart </li></ul></ul><ul><li>Uninstallation </li></ul><ul><ul><li>watching for writeRegistryInfo getting called after getComponentFactory </li></ul></ul><ul><ul><li>clean up, remove menu items... </li></ul></ul>
  31. 32. General notes <ul><li>Using native code </li></ul><ul><ul><li>ctypes or Python extension modules </li></ul></ul><ul><ul><li>Python is a convenient glue language </li></ul></ul><ul><ul><li>one .oxt can contain binaries for all platforms </li></ul></ul>
  32. 33. The end <ul><li>That's it! </li></ul><ul><li>You can reach me at </li></ul><ul><li>[email_address] </li></ul>
  1. A particular slide catching your eye?

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

×