Your SlideShare is downloading. ×
0
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
Plone pwns
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

Plone pwns

1,142

Published on

Plone: Why it is better than your CMS. When to use a CMS vs a framewo. What makes a good CMS.

Plone: Why it is better than your CMS. When to use a CMS vs a framewo. What makes a good CMS.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,142
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
5
Comments
0
Likes
1
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
  • note, plone is one of the only single software solutions that crosses three areas of functionality
  • If plone is so good, why not more popular? Public sites vs intranets. Hosting.
  • Not owned by one company, trade mark controlled by the Plone Foundation. Plone can never be bought out or shut down so users can never be stranded. STA - 1 million uniques a month
  • Transcript

    • 1. Sydney Python Meetup Feb
    • 2. Why its better than your CMS
    • 3. How sites are built
    • 4. Backend Developer (plugins)
    • 5. Themer
    • 6. Integrator
    • 7. Content Editor
    • 8. Administrator
    • 9. Simple Blog Simple CMS e.g. wordpressYour Team Off the shelf
    • 10. CMS ShopClient Team Your Team Off the shelf
    • 11. Intranet/ECMSYour Team Off the shelf
    • 12. CMSaaS (e.g. ploud.com/squarespace) SaaS providerYou team
    • 13. Startup/App e.g. Django/pyramidYour Team Off the shelf
    • 14. Dylans Law of Frameworks“The bigger the framework, the bigger thelearning curve, the greater the inflexibility... but the bigger the chance you can usesomeone else code”
    • 15. Plone is easy to use
    • 16. DEMOhttp://ploud.nethttp://plone.org/products/plonetheme.earthlingtwo
    • 17. Plone vs. …
    • 18. Who uses Plone?
    • 19. Intranets
    • 20. Plone is Fast
    • 21. Chameleon
    • 22. Easy to cache
    • 23. Is it secure?
    • 24. Plone Security Record (3Y)http://plone.org/products/plone/security
    • 25. @LulzSec VS.
    • 26. LulzSec targeted Hacked...DDoS Wordpress sub-site
    • 27. Easy Theming
    • 28. Diazo
    • 29. Diazoe.g. <replace css:theme="#content” css:content=”#plone-content">
    • 30. Easy Codefrom five import grokfrom Products.CMFDefault.interfaces importIDocumentclass HelloWorld(grok.View): grok.context(IDocument) grok.requires(zope2.View) grok.name(hello-world)http://plone.org/products/dexterity/documentation/manual/five.grok
    • 31. True Open Development
    • 32. How do I get a Plone site?
    • 33. Self Host
    • 34. Commercial Service Providers
    • 35. SaaS
    • 36. Why Python?
    • 37. Python …Fast to writeEasy to maintainRuns on anythingCan be optimised with CConnects to anythingSecurePopular…
    • 38. Where’s the database?
    • 39. Zope Object Databasestorage = FileStorage.FileStorage(’db.fs) new User instance # Createdb = DB(storage) newuser = User()conn = db.open() # Add whatever attributes you want to track class User(Persistent): newuser.id = amk pass newuser.first_name = Andrew ; newuser.last_name = Ku ...dbroot = conn.root() # Add object to the BTree, keyed on the ID# Ensure that a userdb key is present userdb[newuser.id] = newuser# in the rootif not dbroot.has_key(userdb): # Commit the change from BTrees.OOBTree import OOBTree transaction.commit() dbroot[userdb] = OOBTree()userdb = dbroot[userdb]
    • 40. ZODB makes complex structures easyhttp://david.wglick.org/2009/visualizing-the-zodb-with-graphviz
    • 41. What’s the future of Plone?
    • 42. CMSUI & Deco
    • 43. How do I get support?
    • 44. contact@pretaweb.com http://www.pretaweb.com Dylan Jay

    ×