Your SlideShare is downloading. ×
0
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Collective Amberjack - European Plone Symposium
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Collective Amberjack - European Plone Symposium

1,239

Published on

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

No Downloads
Views
Total Views
1,239
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
8
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. collective.amberjack Massimo Azzolini RedTurtle on-line tutorials with Monday, May 31, 2010
  • 2. who am I? Massimo Azzolini RedTurtle’s co-founder and project manager massimo@redturtle.net Monday, May 31, 2010
  • 3. the basic idea ✓ tours for plone’s newbies ✓ show portal’s features ✓ tutor your audience link foto Monday, May 31, 2010
  • 4. that’s not all folks! ✓ every product/add-on might have its amberjack tutorial ✓ just-hired people in companies needs tutorials ✓ wizards ✓ a shared tutorials’ repository Monday, May 31, 2010
  • 5. the first goal ✓ Use Amberjack to offer guided help for Plone’s first-time users ✓ Use it in real use cases ✓ PLIP #9324: include it in a next 4.x release Monday, May 31, 2010
  • 6. we already have these tours ✓ Add and publish a Folder ✓ Add and publish a Page ✓ Add and publish a News Item ✓ Add and publish an Event ✓ Format a page using the visual editor ✓ Create internal links link foto Monday, May 31, 2010
  • 7. we already have these tours ✓ Create external links ✓ Upload an image ✓ Insert image on a page ✓ Upload and link to a File ✓ Using the Contents tab ✓ Using the Display menu link foto Monday, May 31, 2010
  • 8. a spotlight http://www.flickr.com/photos/slopjop/1300515408 Monday, May 31, 2010
  • 9. you just installed Plone... and you’re an happy guy Monday, May 31, 2010
  • 10. ..and you need to learn it by yourself.. hum, should I just select the tour from the list? so easy? Monday, May 31, 2010
  • 11. ... complete the steps! one at a time, please Monday, May 31, 2010
  • 12. http://www.flickr.com/photos/eklektikos/2541408630/sizes/l/ the blueprint tours, steps, editors, users Monday, May 31, 2010
  • 13. the blueprint ✓we want to have tours ✓we want our tours used ✓we need tours’ creators ✓just as a demo ✓programmers ✓as a guided aid ✓editors ✓run in a sandbox ✓we need different tools ✓we want them ✓python oriented ✓downloadable ✓user interface oriented ✓sharable ✓installable Monday, May 31, 2010
  • 14. Do not touch Plone ✓ collective.amberjack do not changes anything in Plone itself ✓ we used unobtrusive javascript code and tours descripted through HTML http://www.flickr.com/photos/dhowellphoto/3023319312 Monday, May 31, 2010
  • 15. the software components amberjack library collective.amberjack.core collective.amberjack.portlet collective.amberjack.plonetour (collective.amberjack.windmill) (collective.amberjack.yourtour) Monday, May 31, 2010
  • 16. the software components amberjack library collective.amberjack.core collective.amberjack.portlet collective.amberjack.plonetour (collective.amberjack.windmill) (collective.amberjack.yourtour) collective.amberjack.subskins Monday, May 31, 2010
  • 17. amberjack.org ✓ developed by Arash Yalpani ✓ provides an unobtrusive javascript infrastructure for online tours ✓ not completely usable for our purposes Monday, May 31, 2010
  • 18. basically it provides ✓ a fancy popup “div” with prev/next/exit buttons, fully html enabled for your steps. ✓ a mapping between a step and each url you can visit. amberjack.org Monday, May 31, 2010
  • 19. some use case not fully supported ✓ in Plone a path does not identify uniquely a html page: • view a page (/plone/page-a/view) • edit a page (/plone/page-a/edit) • save a page (/plone/page-a/view) ✓ it’s not just about links, we also submit forms Monday, May 31, 2010
  • 20. the solutions ✓ make the mapping between steps and url less strong: • now the steps has an order (1. 2. 3....) ✓ don’t just rely on urls to pass tour variables • use cookies Monday, May 31, 2010
  • 21. collective.amberjack.core ✓ all the javascript engine ✓validators definition ✓tour definition and registration ✓ Amberjack skins • model_t ✓step definition • safari ✓ZCML configuration for • light_grey • tours • ajStep Monday, May 31, 2010
  • 22. an example: add a folder ✓ the tour is made by the steps: ✓ filling a field is entering a string inside a HTML field • add_folder, • fill_out_the_fields, ✓ it’s about JS and HTML. • publish_folder, • all_done ✓ the “fill_out_the_fields” step has to: • fill the “title” field with a value • fill the “description” field with another value • save it Monday, May 31, 2010
  • 23. collective.amberjack.core - tour Monday, May 31, 2010
  • 24. collective.amberjack.core - tour ajTour = { 'tourId':u'basic01_add_and_publish_a_folder', 'title': _(u'Add and publish a Folder'), 'steps': (add_folder, fill_out_the_fields, publish_folder, all_done, )} Monday, May 31, 2010
  • 25. collective.amberjack.core - step Monday, May 31, 2010
  • 26. collective.amberjack.core - step add_folder = { 'validators': (isManager, isNotFolderCreated,), 'url': u'/', 'xpath': u'', 'xcontent': u'', 'title': _(u"Create a new folder"), 'text': _(u"Folders are one..."), 'steps': ({...}) Monday, May 31, 2010
  • 27. collective.amberjack.core - microsteps Monday, May 31, 2010
  • 28. collective.amberjack.core - microsteps 'steps': ( {'description': _(u"In the [Title] field, type.."), 'idStep': u'form_title', 'selector': u'', 'text': u'MyFolder'}, {'description': _(u"In the [Description] field, type .."), 'idStep': u'form_description', 'selector': u'', 'text': _("This folder will be used...")},)} Monday, May 31, 2010
  • 29. collective.amberjack.core - ajStep Monday, May 31, 2010
  • 30. collective.amberjack.core - ajStep ajStandardSteps = ( ... ('form_title', '#archetypes-fieldname-title input'), ('form_description', '#archetypes-fieldname-description textarea'), ... ) Monday, May 31, 2010
  • 31. collective.amberjack.core - ZCML registration Monday, May 31, 2010
  • 32. collective.amberjack.core - ZCML registration <collective.amberjack:tour tourdescriptor=".tour1.ajTour" /> <collective.amberjack:ajstep stepsdescriptor= ".ajStandardSteps.ajStandardSteps" /> Monday, May 31, 2010
  • 33. validators ✓ isAnonymous ✓ isAuthenticated ✓ isManager ✓ isReviewer ✓ isContributor ✓ isEditor ✓ isReader http://www.flickr.com/photos/traveleden/3797157077 Monday, May 31, 2010
  • 34. collective.amberjack.plonetour ✓ defines the 12 tours ✓translations • english ✓ provides tour specific validators • french • isFolderCreated • italian • isNotFolderCreated • spanish ✓ZCML registration • polish • brasilian Monday, May 31, 2010
  • 35. collective.amberjack.portlet ✓ provides a portlet thats draws a set of tours in a given order ✓you may choose: • portlet’s title • the list of tours from the available ones.. • ...and order them • amberjack skin type ✓it enables/disables the tours in accordion to the validators • e.g.: first create a folder then a page Monday, May 31, 2010
  • 36. http://www.flickr.com/photos/orphanjones/414401592 write your own tour as simple as you need Monday, May 31, 2010
  • 37. what you need to do ✓ create an empty package via paster ✓ write your tour in myTour.py ✓ add it to the available ones through ZCML ✓ translate it ✓ (opt. add custom ajSteps) http://www.flickr.com/photos/domhuk/197875701 Monday, May 31, 2010
  • 38. http://www.flickr.com/photos/vramak/3499502280 See in action Monday, May 31, 2010
  • 39. Create a folder and a page Monday, May 31, 2010
  • 40. http://www.flickr.com/photos/tranchis/3173646667 Coding events when the project improves Monday, May 31, 2010
  • 41. Sprints ✓ Bolzano Sprint ’08 ✓ Sorrento Sprint ’09 ✓ a short summer sprint ’09 ✓ Plone conference ’09 ✓ Ferrara Sprint ’10 ✓ Sorrento Sprint ’10 http://www.flickr.com/photos/johnthescone/2526186118 Monday, May 31, 2010
  • 42. I want you we’ll sprint on Fri-Sun (yes, it’s tomorrow :) http://www.coactivate.org/ projects/sorrento-sprint-2010/ project-home http://www.flickr.com/photos/uhuru1701/2247554605 Monday, May 31, 2010
  • 43. Stages - Thesis smart students from the University of Ferrara http://www.flickr.com/photos/fabio48/317814195/ Monday, May 31, 2010
  • 44. What’s new? we have a team we have a plan http://www.flickr.com/photos/biscuitsmlp/2246503687 Monday, May 31, 2010
  • 45. http://www.flickr.com/photos/anirudhkoul/3786725982 we have a team the team, actually now Monday, May 31, 2010
  • 46. the main contributors ✓ Federica D'Elia ✓ Mirco Angelini ✓ Luca Fabbri ✓ Andrew Mleczko ✓ Vincent Fretin ✓ Giacomo Spettoli ✓ Andrea Benetti ✓ Massimo Azzolini http://www.flickr.com/photos/snapr/484776493/sizes/o/ Monday, May 31, 2010
  • 47. and during the sprints ✓ Aaron VanDerlip ✓ Michael Davis ✓ Irene Capatti ✓ Giorgio Borelli ✓ Jacopo Deyla http://www.flickr.com/photos/snapr/484776493/sizes/o/ Monday, May 31, 2010
  • 48. translate ‘em all ✓ Leonardo J. Caballero (es) ✓ Vincent Fretin (fr) ✓ Stefano Marchetti (it) ✓ Andrew Mleczko (pl) ✓ Tamosauskas (pt-br) http://www.flickr.com/photos/snapr/484776493/sizes/o/ Monday, May 31, 2010
  • 49. RedTurtle will support the project ✓ stable team to enhance ✓ Activities won't be no more and mantain the tool based on my spare time. ✓ 4 more people ✓ They are going to be ✓ you’re welcome! supported and scheduled in a more stable way. ✓ amberjack company ✓ “10 percent manifesto”-ish branded Monday, May 31, 2010
  • 50. we have a plan and it’s public Monday, May 31, 2010
  • 51. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 52. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 53. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 54. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 55. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 56. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 57. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 58. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 59. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 60. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 61. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 62. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 63. next release 1.1 ✓refactor the code ✓Check if the user completes the step ✓validations & preconditions ✓I wanna write what I want! ✓TTTW: discussion about poc/ implementation ✓manage prev/next buttons ✓sandbox ✓amberjack’s template for sunburst ✓1.0: implementation ✓translations: choose the right approach ✓2.0: brainstorm ✓test coverage Monday, May 31, 2010
  • 64. TTTW - Tutorials Through The Web editors want to use the browser to create their tours what’s better than click and save? we’re enhancing Windmill!! Monday, May 31, 2010
  • 65. Create a folder and a page - TTTW Monday, May 31, 2010
  • 66. further releases ✓TTTW ✓sandbox use cases ✓create a tutorial from plone ✓portal as a sandbox ✓save it on a local or shared ✓personal folders as sandboxes repository ✓from sandbox to wizard ✓export as a package ✓“save my data, I’ll be back soon” ✓extend it ✓... ✓“import” a package Monday, May 31, 2010
  • 67. References ✓ Project management: • https://launchpad.net/collective.amberjack • https://blueprints.launchpad.net/collective.amberjack • https://bugs.launchpad.net/collective.amberjack ✓ wiki & documentation • http://www.coactivate.org/projects/collectiveamberjack/ Monday, May 31, 2010
  • 68. References ✓mailing list: • http://www.coactivate.org/projects/collectiveamberjack/lists/ collectiveamberjack-discussion • http://www.coactivate.org/projects/collectiveamberjack/lists/collective- amberjack-support/ ✓code svn on collective: • http://dev.plone.org/collective/browser/collective.amberjack.buildout • http://dev.plone.org/collective/browser/collective.amberjack.core • http://dev.plone.org/collective/browser/collective.amberjack.plonetour • http://dev.plone.org/collective/browser/collective.amberjack.portlet Monday, May 31, 2010
  • 69. Grazie. Thank you. Monday, May 31, 2010
  • 70. Questions!? Massimo Azzolini massimo@redturtle.net http://www.flickr.com/photos/seandreilinger/2326448445 Monday, May 31, 2010

×