Plone 4 and 5, plans and progress

10,422 views

Published on

My opening talk at the European Plone symposium in Sorrento, Italy, May 2009.

About the plans and development of the Plone CMS in the near future (2009-10).

Geir Bækholt

Published in: Technology, Business
2 Comments
12 Likes
Statistics
Notes
No Downloads
Views
Total views
10,422
On SlideShare
0
From Embeds
0
Number of Embeds
4,238
Actions
Shares
0
Downloads
142
Comments
2
Likes
12
Embeds 0
No embeds

No notes for slide



  • Located in southern norway.


  • Stability, predictability, maturity
    Stability often comes at the cost of innovation. We cannot do all that much fancy within the scope of Plone 3. That would break the promise.
    So, as happy as we are with Plone 3 — time to get innovating again.

  • Build Plone 4 and put plone back on the cutting edge.

  • was called Plone 4
    Planned a big release with massive changes in 2010
    But as work progressed, it became evident that there was quite some release-worthy stuff that wouldn’t have to wait for such a major overhaul — and till 2010.
  • So it was decided to make a Plone 4 release, hopefully in 2009
    Not as radical as the work on Plone trunk
    Will have new features, — but stuff that is stable now.
    Features that are too big for a 3.x release. (i,.e require migration, compatibility changes, might break addons)
    Not experimental
  • With release manager Eric Steele , who should take special care to make sure there are more high-resolution images of him available on the web.
  • All the big changes that were recently referred to as Plone4. Are now called Plone Trunk.
    Hopefully a 2010 release as Plone 5.
    Hanno will be release manager for Plone 5.

  • As there is a formal proposal and review process, code to be written on a volunteer basis, and a general lot of uncertainty here — let’s see all of this as speculation, guesswork and hopes.



  • Widely used visual editor.
    Kupu is no longer maintained.
    The new editing UI for Plone trunk will also be based on TinyMCE.
    Plone integration already.
    You will still be able to use Kupu with Plone 4, of course. We’ll just switch the default.
  • Finally proper support for BLOBs
    Store binary objects outside the ZODB
    On the filesystem
    Tested. We have this running in a 7000 employee intranet.
  • btree-based folder implementation
    faster
    scalable
    replaces Folder, ATFolder, Large folder etc

  • Upgrade machinery. replaces the critically dangerous reinstall button in the portal quickinstaller.
    Makes it simple for product authors to define upgrade steps between versions.

  • No more need for hacks like this. The builtin Zope mailhost is now more advanced than this one. It is better for us to have less custom stuff to maintain.


  • Newbie (limited/restricted user)
    Site admin vs Manager
  • Stuff like Gloworm

  • Debugmode should be linked to Zope’s debugmode.

    Major source for confusion for newbies.
  • Commenting is one of the original cool features of the CMF and Plone — but it is way overdue for revision.

  • … so the recently updated plan shows a timeline like this, with a






  • Tiles is the back-end architecture
    Deco is the front end editing interface






  • By having the editing controls clearly separate from the rest of the UI, it makes it obvious to users where to find editing controls.
    It also makes it easier for us to build more advanced menus, as we don’t have to take theming stuff into consideration.
    Much simpler job for themers.
  • Not needed anymore.
    Since deco handles layout properly
    no more need for “use content as default page”


  • Plone looks rather old and worn by now.
  • …So Alex Limi is working on a freshup to the new default theme
    … based on the typography and overall feel from Plone org.



  • Archetypes will still work
    Dexterity will be there for those that want to switch
    And if you don’t need types, you’ll not have to relate to either.








  • Templating engine — can be used for multiple syntaxes of attribute based languages like ZPT and Genshi
    Quite faster. Maintained,
    Used by Repoze.BFG, Pylons, Plone




  • Collective.SOLR integrates with SOLR, an open source enterprise level search engine — much more advanced than ZCatalog.
    We have used this in a 7000-employee intranet we deployed last year. It works wonderfully. There is no way ZCatalog could have handled the load and the amount of content.


  • Replacement for Archetypes.


  • Theming fast and simple. Write html, poke holes in it for your Plone content. There are a lot of talks on Deliverance at this symposium. Catch at least one.
    XDV is deliverance reimplemented as compiled XSLT. Currently has less features than deliverance, but has much better performance. Laurence’s goal is to have it compile down to a single XSTL transform that can be placed in the pipeline. No special software required to host it. Developed and used. Used on Plone.org.


  • These are by far the most common tasks a developer will need to perform.
    plone.Grok directives for these common scenarios. No more need for zcml.
  • Get rid of portal_properties
    split more tools into configuration and functionality
  • (assuming plone trunk will be named Plone 5)
    There are currently no in-place migration to Plone trunk (like we have in previous Plone versions)



  • Plone 4 and 5, plans and progress

    1. 1. Plone 4 Plans and progress
    2. 2. Geir Bækholt
    3. 3. Plone 3
    4. 4. Plone 4
    5. 5. Hanno Schlichting
    6. 6. Plone 4 in 2009
    7. 7. Plone 5? Plone Trunk
    8. 8. Plone 4
    9. 9. Disclaimer Nothing is settled yet
    10. 10. 4 Zope 2.11
    11. 11. 4 CMF 2.2
    12. 12. 4 TinyMCE
    13. 13. 4 plone.app.blobs
    14. 14. 4 plone.folder
    15. 15. 4 plone.app.upgrade
    16. 16. 4 KSS optional
    17. 17. 4 no more SecureMailHost
    18. 18. 4 New control panels - User friendly upgrade UI - Add-on management
    19. 19. 4 New roles/ permissions Newbie (limited/restricted user) Site admin
    20. 20. 4 Plone Developer Pack
    21. 21. 4 Resource Registries debugmode
    22. 22. 4 Commenting
    23. 23. 4 Work ow
    24. 24. Plone 3.3 · May 2009 Plone 4.0 · Nov 2009
    25. 25. Plone Trunk
    26. 26. 3 pillars
    27. 27. Simplicity
    28. 28. Approachability
    29. 29. Performance
    30. 30. Simplicity
    31. 31. Tiles/Deco A new approach to page editing
    32. 32. Pages: Layouts composed of tiles
    33. 33. Tile Persistent Stores con guration …and (optionally) data Form for con guration Lives at an unique URL Renders to HTML
    34. 34. Example tiles HTML text Image with caption Dynamic list of elements (f.ex news) Flash movie/app Form, poll etc. File download Archetypes/Dexterity elds
    35. 35. Deco Visual editing interface Replaces Kupu DOM manipulation Drag/Drop of Tiles Lightboxed form controls TinyMCE inside text tiles
    36. 36. Move editing controls out of content space
    37. 37. Remove “display” menu
    38. 38. New default theme Simpli ed, Plone.org-inspired
    39. 39. One content type! A page is also a folder is also a collection
    40. 40. …even an event
    41. 41. Not the end of content types Custom types still have many usecases
    42. 42. Choice of types Dexterity or Archetypes or NONE
    43. 43. Performance Plone needs to be faster…
    44. 44. Plone needs to be faster… …out of the box …for logged in users …in high-end scenarios
    45. 45. Reduce and simplify the codebase
    46. 46. LINES OF CODE 1200000 1144322 1147545 1122261 1100000 1000000 960456 916360 900000 887059 867263 800000 0 1 2 6) 7) 4) 9) 3. 3. 3. -2 -1 -1 -0 01 02 03 05 9- 9- 9- 9- 00 00 00 00 (2 (2 (2 (2 nk nk nk nk u u u u Tr Tr Tr Tr Lines of Code/Tempates for Plone including CMF and Zope
    47. 47. 1,200,000 1147545 867263 800,000 400,000 0 nk 0 3. u Tr
    48. 48. Reduce dependencies
    49. 49. ZPT is slow
    50. 50. Chameleon
    51. 51. Anonymous page view 50.0 45 37.5 25.0 18 12.5 12 0 Plone 3.3 with ZPT Plone trunk
    52. 52. Logged in view 30.0 24 22.5 15.0 10 7.5 7 0 Plone 3.3 with ZPT Plone trunk
    53. 53. Lacks support for restricted Python Currently works with views. Still some way to go for skin templates.
    54. 54. Search Less dependence on Catalog Fewer indexes Queryplan Collective.SOLR
    55. 55. Cachefu reimplementation
    56. 56. Approachability
    57. 57. Dexterity
    58. 58. Dexterity Through the web schema editing TTW- lesystem roundtrip pluggable schemas pluggable behavior separate packages faster
    59. 59. Deliverance or XDV Theming done right
    60. 60. Grok for Plone
    61. 61. Content type (Dexterity) View Form Tile
    62. 62. plone.registry
    63. 63. Upgrading to Plone 5
    64. 64. Upgrading Content Add-ons Theme upgrades Site con guration
    65. 65. Plone 3.3 · May 2009 Plone 4.0 · Nov 2009 baekholt@jarn.com

    ×