Essential Plone development tools - Plone conf 2012
Upcoming SlideShare
Loading in...5
×
 

Essential Plone development tools - Plone conf 2012

on

  • 1,111 views

Slides for the talk given at Plone Conference 2012. In the following collective package further explaination can be found about the tools discussed: ...

Slides for the talk given at Plone Conference 2012. In the following collective package further explaination can be found about the tools discussed: https://github.com/collective/collective.exampledevtools

Statistics

Views

Total Views
1,111
Views on SlideShare
1,104
Embed Views
7

Actions

Likes
2
Downloads
10
Comments
0

4 Embeds 7

https://twitter.com 2
https://si0.twimg.com 2
http://www.goldmund-wyldebeast-wunderliebe.com 2
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Explain who I am and what I do.\n
  • \n
  • Mention new colleagues\nPlone.org has outdated information\nPlone has a steep learning curve, I hope we can ease that curve. \nNabble for mailing list, excellent books available\n
  • Installing templer/zopeskel using pip/easy_install\nCreate buildouts, Python eggs, Plone CT/Theme etc.\nWhen creating a product (<-explain) we can use Templer to create the boiler plate code. \nExplain: what we can create and ... what local commands do.\nRefer to the talk given by Chris Ewing ‘Zopeskel, the past present and future’. Friday morning.\n\n
  • Buildout is slow, but it’s getting better\nAllow-hosts, explain index servers\nMention how we split up buildouts (dev/live)\nLocal buildout cache, company egg mirror\n
  • Explain you’ve got a buildout with src dir.\nBenefits of mr.developer:bulk update, checkout a package\n
  • Explain about the sauna.reload sprint (jealous!)\nHow we (plone) develop; restart zserver\n
  • Explain how buildout incorporates the Python eggs\nSome times you need to use the source\n
  • Explain how buildout incorporates the Python eggs\nSome times you need to use the source luke\n
  • Replaces the ZMI functionality (name which)\n
  • Explain briefly how old Plone themes work.\nExplain what Diazo does (html mock-ups, content, rules file).\nExplain what advantage this has (designer -> html2pdf servive -> integrator).\n\n
  • Explain about a frozen Plone instance, rss feed that was timing out.\nUse mr.freeze or products.signalstack. Explain how they can be used.\n
  • Releasing an egg properly requires a few steps. \n
  • We all write tests, do we?\nExplain CI\nFinally, explain plone.api (alpha, things can break)\n
  • \n
  • \n

Essential Plone development tools - Plone conf 2012 Essential Plone development tools - Plone conf 2012 Presentation Transcript

  • ESSENTIAL PLONEDEVELOPMENT TOOLS Kim Chee Leong Goldmund, Wyldebeast & Wunderliebe
  • INTRODUCTION• See collective.exampledevtools on github.com for examples • https://github.com/collective/collective.exampledevtools• The tools which can be used during development• No elaborate code examples
  • Where to find help?• Read collective.developermanual • http://collective-docs.readthedocs.org• Try searching duckduckgo/google, Stackoverflow, Plone mailing list• Ask your question on IRC (freenode, #plone) or Plone mailing list• Read Plone books: http://plone.org/documentation/books
  • ScaffoldingUse Templer or ZopeSkel to generate code skeletons
  • Speed up buildout• Use latests buildout (1.6.x)• See: http://rpatterson.net/ blog/buildout-performance- improvements• Useallow-hosts in buildout config• Run ./bin/buildout -N -t 5
  • mr.developer
  • sauna.reload so that you can finish yourPlone development today andrelax in sauna after calling it a day
  • collective.recipe.omelette
  • collective.recipe.omelette
  • plone.app.debugtoolbar
  • plone.app.theming
  • Got frozen Plone?mr.freeze to the rescue
  • Automate egg releasing• Use jarn.mkrelease or zest.releaser• Releasing a Python egg involves: • Bumping the version number • Updating history/changes file • Tagging the release in version control • Creating the egg • Uploading the egg to pypi.python.org or a private egg server
  • Continuous integration• Use Travis CI for opensource GitHub projects• Use Jenkins for internal company projects
  • QUESTIONS?• http://www.gw20e.com• https://github.com/collective/collective.exampledevtools• Twitter: @kaceeleong• IRC: kacee
  • PHOTO CREDITS• http://www.flickr.com/photos/davespencer/6212710431/• http://www.flickr.com/photos/garnets1973/2771182195• http://www.flickr.com/photos/lucid_nightmare/74316267/• http://fschulze.github.com/mr.developer/xkcd-buildout.png (Remixed by Matt Hamilton, original from http://xkcd.com/303)• Thesauna.reload logo was originally the logo of Sauna Sprint 2011 and it was created by Vilmos Somogyi.