plone symposium south america 2012
DESCRIPTION
TRANSCRIPT
![Page 1: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/1.jpg)
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
![Page 2: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/2.jpg)
Plone 4.X
![Page 3: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/3.jpg)
..... .....
4.[1,2,3] Features‣ Modernizing the User Experience
‣ Commenting
‣ Theming (Diazo)
‣ Search
‣ Collections
‣ Content type creation
(Dexterity )
‣ Events
‣ Modernizing The Architecture‣ Performance++
‣ Repackaging Party
‣ Keep up with Zope releases
‣ Standardizing APIs
‣ HTML 5
‣ Python 2.7
4.1
4.2
4.3
![Page 4: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/4.jpg)
New Processes
0
15
30
45
4.0 4.1 4.2 4.3 4.4*
Proposed AcceptedMerged Incomplete
4.0
4.1
4.2
4.3*
0 100 200 300 400
Days from Last Release to AlphaDays from Alpha to Release
PLIPS Releases
* PLIP monster wants PLIPS
Only YOU can make this smaller!
![Page 5: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/5.jpg)
s
Ticket Cleanup Process
Attainable Goal: 4 Tickets per Contributor
1132 Open Tickets8 per core contributor
3.4 new tickets/day
![Page 6: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/6.jpg)
Ticket Status
Distribution of Tickets (color coded by how much
attention they get)
Feature Requests376
PLIPs25
Bugs729
Breakdown of Bugs (color coded by how irritated I
am that they are open)
Ongoing24
Future230
4.x603
![Page 7: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/7.jpg)
Add Ons
2010
2011
2012*
0 125 250 375 500
New Updated
In January 2012, 29 new add-ons were registered on Plone.org. That is almost
one new add-on per day.
![Page 8: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/8.jpg)
Move to Github
Core Commits/Month
Collective DM Commits/Month
![Page 9: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/9.jpg)
What is Plone 5?Seriously this time!
![Page 10: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/10.jpg)
2007
‣Deco/Tiles
‣Usability
‣Performance
‣1 content type to
RULE THEM ALL! GLITTER+PONIES = UNICORNS=== Plone 5
blah blah blah.
meh dog says...
![Page 11: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/11.jpg)
2012: Facing Reality
???Deco Light?
CMSUI?The #1
framework of post apocalyptic
times?
2010?2011?
2012?
Grok?
Whatever the release manager says it is?
![Page 12: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/12.jpg)
Roadmap
‣ plone.org/roadmap
‣ Short Term‣ Improved calendaring and
collections
‣ Improved content development
experience
‣ Medium Term‣ CMS-UI & Deco Lite
‣ WSGI & Ajax
‣ CMF forms -> Browser Views
In order to reach
where we are going
we must forgive
where we have been
Direction (Roadmap)
Community
Beer
Plone 4
Vectors of Influence for Plone 5
Dedication
Excitement
BitternessResistance to change
Realized Path
Text
![Page 13: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/13.jpg)
Tale of a major
Plone 2.5 Regression
![Page 14: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/14.jpg)
The Complexity of Plone
Does the steep learning curve pay off? Is
this complexity still justified today?I need a platform. Customers need a CMS.
You can't just start and say "If you want
to see the complexity of Plone,
you have to ask for it" when you don't
know the system good enough to plan.
![Page 15: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/15.jpg)
So... what COULD justify the complexity of Plone?
‣ It's moving to a more modern architecture. It's 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
‣ There's 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 there's something you need for some aspect of
content management, it's already there, you don't have to create it from scratch, and you can do it in a
way that's consistent with a wide practice and review.
![Page 16: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/16.jpg)
On UpgradingData migrations from Plone 2.5 to
4.2 were very successful. Data
compatibility will remain
important be important and we
are dedicated not getting stuck
again (Python bumps, we bump).
The worst of the modernization
storm is over.
![Page 17: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/17.jpg)
..... .....
Framework Core Values
‣ XML Configuration
‣ Easy debugging
‣ Extensibility/Pluggability
‣ 100% test coverage
‣ Best in class code
‣ More documentation
‣ Hard things easy
‣ Code next to config
‣ Syntactic Sugar
‣ The custom folder
‣ Happy end users
‣ Clear and simple APIs
‣ Better documentation
‣Easy things easy
![Page 18: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/18.jpg)
Teaching Python Web‣ Task: Make a TODO list
‣ Audience: New to Python
‣ 3 frameworks, 3 hours
per framework
‣ web2py, flask, DjangoInterfaces? I’ll just use PHP then.
meh dog says...
![Page 19: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/19.jpg)
Simple Syntax
@route(‘/contact’)
@render(‘contact.pt’)
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))
![Page 20: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/20.jpg)
Hypoglycemia
‣ 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
Using Recommended Practices:
![Page 21: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/21.jpg)
The patient suffers from a severe deficiency of
Syntactic Sugar
![Page 22: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/22.jpg)
Scapegoat: Documentation
![Page 23: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/23.jpg)
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 and
communityMake documentation less important with intuitive code!
![Page 24: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/24.jpg)
Plone 5 has the potential to make
Happy Developers!
![Page 25: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/25.jpg)
... makes hiring easier
‣ Plone will never be hip: move on
‣Dangerously high levels of
frustration in the blood
‣ Foster interest in long term
career achievement
‣ “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
A thriving community of happy developers...
![Page 26: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/26.jpg)
‣ Plone developers cost much more
than the competition because they
are highly skilled + scarce
‣ Ramp up is too time consuming ($$$)
‣ Clients have the right to a saturated
developer market should they move
on to a different company
‣Developers have the right to feel
prepared to move on within PLONE
‣Diversity in quality of developers
... makes firing easier
A large community of happy developers...
![Page 27: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/27.jpg)
Redefining Sexy Too many packages rely on
too few maintainers; the code
is so brilliant 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.
![Page 28: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/28.jpg)
Spanky Certified
✓ 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 Spanky
![Page 29: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/29.jpg)
Who does Plone work for?
"If you want a platform to be successful, you need
massive adoption, and that means you need
developers to develop for it. The best way to kill a
platform is to make it hard for developers to build on
it. Most of the time, this happens because platform
companies ... don't know that they have a platform
(they think it's an application)." ~ Joel Spolsky
![Page 30: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/30.jpg)
We Hear You(and we are serious about fixing it)
![Page 31: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/31.jpg)
Plone Pain Top 10 Update
plone.api
Planned in plone.api
Planned for Plone 5
(ping esteele to help)
![Page 32: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/32.jpg)
Plone PainDev docs in core,
trac removed. Guidelines started then stalled - help
requested!
Part of CMF templates
rewrite, new code validated
PLIP Requested: ping esteele
![Page 33: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/33.jpg)
2 new tutorials made, return of tutorial focus
PLIP Requested: ping esteele
Debug tools in plone.api planned
KSS, inline editing pulled out. Lots more too do
![Page 34: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/34.jpg)
Plone 5 TODOs
‣ Make Archetypes Optional
‣ Widget parity*
‣ Default Plone types in Dexterity*
‣ Continue to factor out unnecessary
packages
‣ KSS
‣ Archetypes
‣ Javascript date formatting*
‣ plone.api*
‣ Move all config settings to the registry*
*: Needs PLIP-lementors
Initiating release sequence...Plone 5 released.
![Page 35: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/35.jpg)
..... .....
Summary
‣Plone 4
Modernizing the Plone
user experience
‣Plone 5
Modernizing the Plone
developer experience
![Page 36: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/36.jpg)
Plone Culture NGPlone 5 will happen... now what?
![Page 37: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/37.jpg)
‣ Decide to commit to Plone the community. Too
many people sitting on the fence results just leaves
us with a busted fence.
‣ Commit your project or company, no matter how
small, to just 1 internal Plone culture improvement
proposal this week. Can’t code? Even better.
Committing Not Just for Developers
![Page 38: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/38.jpg)
‣ Policy: All employees sign up for Plone on day 1‣ Paperwork: Contributor agreement, plone.org account
‣ Persist Plone culture (e.g. pre-install IRC)
‣ Training: teach new developers how and when
to file bugs and properly contribute fixes
‣Mentorship: it’s not just for finding the bathroom
Resolve to Initiate
![Page 39: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/39.jpg)
‣ Host a sprint. Ploners LOVE to travel. It’s science.
‣ Send 1 [non-technical] person to a conference ‣ Level Up: Let them stay to sprint‣ Bonus Round: Present a case study of your work
‣ Form an alliance (or two). Explain projects,
frustrations, share contacts. Meet their team in
person.
Resolve to Travel
![Page 40: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/40.jpg)
‣ Test new versions of Plone. Stage, don’t deploy.
Upgrade and run your tests. Report back.
‣Make a policy to stop forking! It’s a short term fix
with long term problems. Enforce it.
‣ Set aside time for a company sponsored PLIP
Resolve to Encourage
![Page 41: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/41.jpg)
..... .....
Resolve to Sprint this Weekend!
‣Tutorial Basic TODO List the
Plone way. Focus on
transition from TTW to
plone.api. Moderated.
‣DOJO
Modernizing the Plone
contributor agreement
process. Learn Dexterity,
content rules and more.
![Page 42: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/42.jpg)
Plone has the potential to makehappy developers, but only you have the power to make
Plone
!MAGIC
![Page 43: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/43.jpg)
EXCUSES
Plone 5 code name: No Excuses
![Page 44: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/44.jpg)
Questions?
![Page 45: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/45.jpg)
‣ Plone Roadmap
‣ Plone API Roadmap
‣ HOWTO: Getting Started Developing with Plone
‣ Tutorial: Hello World
‣ Tutorial: Basic TODO List
‣ HOWTO: Contributing to Plone Core
Get Educated
![Page 46: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/46.jpg)
Imagery
![Page 47: Plone Symposium South America 2012](https://reader033.vdocuments.mx/reader033/viewer/2022051611/54b686c74a795995308b4576/html5/thumbnails/47.jpg)
๏ seniordogsacrossamerica.com
๏ http://nagonthelake.blogspot.com/2011/06/nancy-levines-portraits-of-senior-
dogs.html
๏ http://davisfreeman.com/blog/tag/portraits
๏ flickr.com/photos/mrtopf/372006971/
๏ wordl.net
๏ manyniches.com/windows-phone/happy-developers/
๏ sodahead.com/fun/have-you-ever-been-dog-tired/question-2352589/?
link=ibaf&q=&imgurl=http://3.bp.blogspot.com/-OLnmi8bqkHE/TZvcjjU2liI/
AAAAAAAABPs/lbG2f0wwuAE/s1600/Dog%252520Tired%252520Dog.jpg