Lighting Talks Thursday
Thursday's lightning talks at the Plone conference 2009
Lightning talks
- Johannes Raggam: activity model runtime engine for python
- Antonio De Marinis and Alin Voinea: EEA Faceted Navigation
- Patrick Gerken: Using buildbot with Plone
- Jakob: making money while talking to your customers
- mr.freeze
- Nate and Peter: SSL does not protect you
- Dylan Jay: collective.hostout
- Calvin Hendryx-Parker: Plone Tune-Ups
- Henning Rietz: Plone-Driven Plone Development (PD2)
- Thierry Benita: External Editor
- Jens Klein: cornerstone.soup
- Ricardo Alves: LDAP storage for Archetypes
- Matt: Real world Deliverance-style theming
- Denis Mishunov: collective.caroussel
Johannes Raggam: activity model runtime engine for python
Based on UML2 activity model. Token based, runtime marker, can hold data. Action node delegates execution to external implementation.
Use cases: business process support, document workflow support, model based testing, industrial automation, visual programming, web form flow wizards.
Usable prototype, see http://svn.plone.org/svn/collective/activities
Patrick Gerken: Using buildbot with Plone
Despite some problems, buildbot still rocks. Always use virtualenv. Use the correct python version.
Look at collective.buildbot: http://pypi.python.org/pypi/collective.buildbot
Make your project compatible with buildbot. You need a test script. Pin zope.testing to the newer 3.6.0. Put your code in the src/ directory. Don't forget to configure zope fake eggs in your buildout config. Add your dependencies in setup.py and your GS profile.
Always test only one package. Don't use mr.developer. Pin all versions of your eggs.
Jakob: making money while talking to your customers
When your customers call you, can you bill them? You want to buy beer. So get them to sign a support contract. But you don't want them to call you as you want to have time to drunk beer. So give them training.
mr.freeze
Trigger a pdb in a running zope via a USR1 signal. See http://pypi.python.org/pypi/mr.freeze
Nate and Peter: SSL does not protect you
You can buy very cheap SSL certificates for your site. The end users does not see the difference between a good and bad certificate. So you think you are talking to a bank but you are talking to a guy drinking a cocktail in Fiji. We are a startup that wants to improve that. See http://company-on.net/
Dylan Jay: collective.hostout
How to host a Plone site for 20 dollars in 20 minutes. We want a big blue button that does the entire deployment for you. VPSs are really cheap now so get one with root access. Add a part with collective.hostout to your buildout.
See http://pypi.python.org/pypi/collective.hostout
Gives you one command to deploy your buildout.
Calvin Hendryx-Parker: Plone Tune-Ups
Easy way for everyone to contribute. We did 20 tune-ups the past year. Closed lots of Plone tickets. Pledge some hours as company. We do this every three weeks.
Henning Rietz: Plone-Driven Plone Development (PD2)
The model is Plone content. We don't like to write boiler plate code, writing zcml or xml, migration pain, learning curve for new developers. We love Plone, model driven development, ArchGenXML.
Our model lives in the zeo server, every developer has a zeo client. Makes your design patterns explicit. Prepares you for major changes, like going from Archetypes to Dexterity.
Thierry Benita: External Editor
Use your current editor, whatever it is, to edit content in Plone. Also works with Gimp. Can also hook in with versioning.
Jens Klein: cornerstone.soup
Isolated container for queryable records. Content that is not really CMSish, like votes, data from a poll, orders in a web shop. Stored generic records. Add a catalog factory and a few utilities, stir and cook. Enjoy your soup.
Ricardo Alves: LDAP storage for Archetypes
You can use LDAP in Plone as an authentication backend, see Products.PloneLDAP. You can use it to store content, for example address book, members as content. Problem: not transaction aware. So: Products.ldapconnection. Much like old-style SQL connection objects. Supports client-side transaction support, partially. Also archetypes.ldapstorage. Future: new z2 components, more testing, improve storage implementation.
See http://pypi.python.org/pypi/Products.ldapconnection and http://pypi.python.org/pypi/archetypes.ldapstorage
Matt: Real world Deliverance-style theming
"Lipstick on a pig." Challenge: legacy .net portal. Looked dated. Too long urls. HTML was not valid. It was a closed box, so we could not change the code. Combine that with Plone and another system in one über-portal. Set up a WSGI pipeline: source.portalv, htmlcleaner (using lxml), linkrewrite (rules to make snes of urls), xslt, navmerger (bring the Plone).
Denis Mishunov: collective.caroussel
Show content in a caroussel. Accepts any content type, not just images. Based on jQuery.