Your SlideShare is downloading. ×
Old Dogs and New Tricks
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

Old Dogs and New Tricks


Published on

Overview of where we are going with Plone 4 and a visions for Plone 5. May contain adult content.

Overview of where we are going with Plone 4 and a visions for Plone 5. May contain adult content.

Published in: Sports, Technology, Lifestyle
1 Comment
No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. Old Dogs & New Tricks By[ a highly opinionated talk about the future of Plone from a Framework Team member, developer, project manager, consultant, loud mouth, and general advocate of change aka ] Elizabeth Leddy
  • 2. WARNINGAlthough this presentation seems to be filled with factoids, it is actally filledwith lazily validated stats, graphs that are extrapolated far beyondmathematical reason, and pirated imagery. It is highly likely that I havemisinterpreted historical results or became so blinded with anger aboutcertain things that I did not Google sufficiently or give good thoughts todecent alternatives. Except any statements about Grok. I’m confident there.More importantly, this is a very opinionated piece. Officially, much of thiswill theoretically be addressed by an official Roadmap Team who is busyproviding you with the important fluff you need to sell to your customers,clients, and neighborhood dentist. Maybe there will even be widespreadcommunity use for this roadmap and upon its arrival people will cheer andeat cake.In the meanwhile, I can only assume that I will firmly disagree with whatevercomes out of this process because I am an asshole by nature and go full steamahead with the contents of this presentation. There is no intention to rufflefeathers or miscommunicate. I encourage all of YOU to get up and talk/blog/vlog your vision for Plone, controvesy and all. Be loud, be proud, be Plone.
  • 3. Plone 4.X
  • 4. 4.[1,2,3] Trend‣ Modernizing the User Experience ‣ Modernizing The Architecture 4.1 ‣ Commenting ‣ Performance++ ‣ Theming (Diazo) ‣ Repackaging Party ‣ Search ‣ Keep up with Zope releases ‣ ‣ Collections Content type creation 4.2 ‣ ‣ Standardizing APIs HTML 5 4.3 (Dexterity ) ‣ Python 2.7 ‣ Events ..... .....
  • 5. New Release Process PLIPS Releases45 4.3*30 4.2 4.115 4.00 4.0 4.1 4.2 4.3 4.4* 0 100 200 300 400 Proposed Accepted Days from Last Release to Alpha Merged Incomplete Days from Alpha to Release * PLIP monster wants PLIPS
  • 6. ‣ Continue UI/Type Modernization Modernization ‣ Form widgets must be a continuing process ‣ Calendaring (solgema.fullcalendar?) ‣ Video ( ‣ Related Content Browser ‣ Small Innovations in New Places ‣ Tracking user activity/Reportingmeh dog says... ‣ Pull significant awesome add-ons into core ‣ Mobile Support OOB (responsive or meh. otherwise) ‣ AJAX/JSON anyone? Innovation 4.Future PLIP must happen in small places Potential
  • 7. 3 Year Checkup
  • 8. Does the steep learning curve pay off? Is this complexity still justified today? I need a platform. Customers need a CMS. You cant just start and say "If you want to see the complexity of Plone, you have to ask for it" when you dont know the system good enough to plan.The Complexity of Plone
  • 9. What could justify the complexity of Plone?‣ Its moving to a more modern architecture. Its bridging both the old and the new approach right now, which adds some complexity until the transition is mostly complete. This is mostly to keep things backwards compatible. Plone does not abandon it s users.‣ [Plone 4] starts up 3-4 times faster than the current version. and uses about 20% less memory‣ Theres a much easier types system in the works (Dexterity), which will reduce the complexity and speed up the system a lot, while keeping the same level of functionality.‣ If you want to use it as a "platform," then the platform is a stack of over one million lines of code which implements a complete content management suite. No one knows it all. However, all those "acronyms" and "files" are evidence of a software which is factored in components so that no one need know it all. You can get as deep or shallow in it as you need. If theres something you need for some aspect of content management, its already there, you dont have to create it from scratch, and you can do it in a way thats consistent with a wide practice and review.
  • 10. ‣ Python 2.6, 2.7If you can t see the ‣ Catalog Optimizationsperformance ‣ DateTime Refactoringimprovements, you ‣ t looking. Performance
  • 11. Dexterity‣ Flexible and fast‣ Still no defined way out of Archetypes‣ Reusing other technologies‣ Complexity remains
  • 12. ‣ Deco/Tiles‣ Usability meh dog says...‣ Performance‣1 content type to blah blah blah. RULE THEM ALL! GLITTER+PONIES = UNICORNSMeanwhile in === Plone 5dreamland...
  • 13. 2010? Deco Light? 2011? ??? 2012?CMSUI? The #1 framework of Grok? post apocalyptic times? Whatever the release manager says it is? Facing Reality
  • 14. So, then, WTF is Plone 5?
  • 15. In January 2012, Add Ons29 new add-ons 2012* were registered on 2011 That is almost 2010one new add-on 0 125 250 375 500 per day. New Updated
  • 16. A Culture of SuburbanitesActive Core Contributors
  • 17. A Different Focus"If you want a platform to be successful, you needmassive adoption, and that means you needdevelopers to develop for it. The best way to kill aplatform is to make it hard for developers to build onit. Most of the time, this happens because platformcompanies ... dont know that they have a platform(they think its an application)." Joel Spolsky
  • 18. Framework Core Values‣ XML Configuration ‣ Code next to config‣ Easy debugging ‣ Syntactic Sugar‣ Extensibility/Pluggability ‣ The custom folder‣ 100% test coverage ‣ Happy end users‣ Best in class code ‣ Clear and simple APIs‣ More documentation ‣ Better documentation ..... Hard things easy ‣ Easy ..... things easy‣
  • 19. Programming,Motherfucker
  • 20. Teaching Python Web ‣ Task: Make a TODO list ‣ Audience: New to Pythonmeh dog says... ‣ 3 frameworks, 3 hours per framework ‣ web2py, flask, Django Interfaces? I’ll just use PHP then.
  • 21. The patient suffers from a severe deficiency of Syntactic Sugar (Hypoglycemia)
  • 22. @route( /contact ) @render( ) class Contact(View): def getContactInfo(self): return {phone= 999-999-9999 } @route( /support-request ) def ProcessSupport(View): # submit to 3rd party here return redirect(url_for(ThankYou))Simple Syntax
  • 23. Using Recommended Practices:‣ Getting the site root‣ 6 files and 20 lines of code to add a new stylesheet‣ Touching so many files and modules: impossible to move quickly without referencing documentation constantly Hypoglycemia
  • 24. Documentation
  • 25. Developer Driven Development ‣ Think about the API first ‣ Obsess about developer efficiency ‣ Use documented examples/ recipes to prove ease of use ‣ Contribute shortcuts from your everyday process and share them with coworkers, Make documentation less communityimportant with intuitive code!
  • 26. ✓ Internationalized ✓ Unit tests ✓ End-user documentation ✓ Internal documentation ✓ Existed and maintained for at least 6 months ✓ Installs and uninstalls cleanly ✓ Code structure follows best practice ✓ Usable by SpankySpanky Certified
  • 27. Plone [5?] has the potential to makeHappy Developers!
  • 28. ... makes hiringA thriving communityof happy developers... easier ‣ Plone is not hip ‣ Dangerously high levels of frustration in the blood ‣ Little interest in long term career investments (see: not hip) ‣ At least it s not Java plone means getting hands dirty and drinking away your sorrows once you finish the day supton, #plone, January 2012
  • 29. ‣ Plone developers cost much more than the competition because they are highly skilled + scarce ‣ Ramp up is expensive and risky ‣ Clients have the right to a saturated developer market should they move on to a different company ‣ Investing in Plone without the backing of a major company is still too risky ‣ Diversity in quality of developers A large communityof happy developers... ... makes firing easier
  • 30. Redefining Sexy Too many packages rely on too few [brilliant] maintainers; the code is so interesting and innovative, people are afraid to touch it. We need to nurture a culture where code is usable and maintainable by the average Plone developer.
  • 31. Plone is from Mars, Drupal is from Venus‣ Persisting complexity is a result of poor communication in the community‣ Core devs are not scapegoats‣ Be loud, clear, present use cases‣ Less complaining, more enabling‣ I feel like .... when I have to ...
  • 32. Plone 5 code name: No ExcusesEXCUSES
  • 33. Summary‣Plone 4 ‣Plone 5Modernizing the Plone Modernizing the Ploneuser experience developer experience ..... .....
  • 34. Fin.(no questions is the new black)
  • 35. Extra Content
  • 36. Compatibility Data migrations from Plone2.5 to 4 were very successful.Data compatibility will alwaysbe important but in general are caring less about API compatibility. The worst ofthe storm is over if you have migrated.
  • 37. References
  • 38. Attachments‣ Full details of how to document in Plone‣ Full details of new plip process‣ Link to a shared repo for sprint
  • 39. ๏๏ dogs.html๏๏๏๏๏ link=ibaf&q=&imgurl= AAAAAAAABPs/lbG2f0wwuAE/s1600/Dog%252520Tired%252520Dog.jpg