Wednesday afternoon zope lightning talks from the europython conference.
See also the complete write-up overview .
Included is also a talk about the zope foundation.
All the info is on the web, so just the questions afterwards.
Q: was there any thought on making it a European foundation instead of a US-based one as there are more zope developers in Europe? A: No. But we want to try and make it tax-deductable, for instance, for European companies.
Q: where will the money of the foundation be spend on? A: funding sprints, paying for zope.org, perhaps funding some developers. And you need someone to answer the phone.
Q: will the Z3ECM project be in the foundation's code? A: don't know. It's just by accident that these two things are underway at the same time.
Q: issuing rights to use the name zope? For most cases (local zope users groups) it will be the foundation that does it.
(lightning talks below) Lightning talks
As an outsider, she's allowed to ask whether Pythonians have a heart. When talking to people: yes, she's sure. But when listening to talks: she's not sure. Why do you hide your heart when giving a presentation?
Don't give a presentation when it doesn't come from your heart! And if it does come from your heart, show it. That gives you 85% of the attention of the participants.
Eyes, mouth, arms, legs, heart: that's your recipe for great presentations.
Great new feature: it works well with multi-lingual content! Also there are now complex queries over multiple fields.
Blobs for zope seem finally on their way.
Current printing is mostly based on pure browser printing. Layout may be wrong and there's no hyphenation.
XSL-FO is an XML dialect for formatting layout (mostly towards pdf). There is a tool called CSS2XSLFO that takes a html page including css and makes XSL-FO out of it.
He did a first implementation that converted 10000 documents which looked very nice indeed.
Quite simple. Just adding silva docs to folders and so.
Most was covered in Maik Roeder's presentation. One thing that was not covered was how to to test against a test instance without fouling up all subsequent tests if there's an error in the current one.
There's a DemoStorage possiblility in zope that you can reset quickly to get a good begin situation back. Bit underdocumented, but basically you have to put '' tags around ''. Just copy your filestorage and run them on a different port (or something like that, it was quick).
Works in zope 2.7.6.
Quick intro to pdb, same as last year.
Some emacs tricks: Slap that import pdb; pdb.set_trace()
into the
file you want to test in emacs. Then start a shell and start
bin/runzope
. On hitting the pdb statement, the emacs pdbtracker
mode takes over.
"Don't use p
, but pp
. That's a much more well-formatted version
of inspection."
Zemantic is really just ZCML and page templates, no logic. Just a wrapper around rdflib . The power of zope3 in action!
Zemantic actually used rdflib 2.0, but it has heavily influenced version 2.1 :-)
RDF is just a standard way of encoding (not implementing) Cobb's relational database model.
In many cases you can use Zemantic mostly as you would catalogs. But for catalogs you need to create indexes and so you need to know beforehand what you want to put in there. You can only put in there what is allowed. Zemantic is much more civilised. Zemantic content describes itself and you can shove almost anything in.
For normal usage: use the catalog. For data-centric apps: use zemantic.
The "Sparql" query language will be included in the next version!
Web mapping application in plone. They're trying to combine traditional spatial data with content from the CMS. So you have to allow existing and future content to have spatial parameters.
ZCO Carthographic objects for Zope, PrimaGis for plone and the python carthographic library mapserver in python. All of them are quite new, but already highly usable and actively developed.
It's actually for plone and not for plain CMF... When viewing a page as an author, you see the links in red, orange or green. Green is good, red is dead and orange is temporary down. Handy.
There's now also a link monitoring thingy that show you what links to a certain object exist.
The link checker runs as a separate (twisted) server.
It's about 360 degree feedback for/from employees for HR departments. Getting feedback, giving feedback. They're using reportlab to send out nice shiny PDF forms with the results and the nice graphs.
Graphviz for layouting the graph and SVG (mozilla) for the visualisation. Couple of issues with SVG implementations and consistency of the UI, though.
Yesterday I won a python Tshirt, today I won a 12y old malt wiskey for filling in the feedback form :-)
With storing word 2003 docs as xml, you can already build nice imports for zope. But, they hope to be able to use the sharepoint functionality in word. It looked OK, but took the latest .net, the very latest visual studio, but then you were able to show a part of the zope interface in the sharepoint sidebare in word. (Or so, I'm not known with sharepoint).
He made pymdb that reads in mdb tables. Plus a plone product. You can upload access database and select tables and so. He demoed it with the Tmobile database of hotspot locations. Very neat, especially when searching through the standard plone search box. It also matches inside the database and, when clicking on the database, it only shows the matching field. Real neat.
(Look at "composite page", he said it was good for mixing and matching parts of a page).
Multisite demo
A collection of workflows that should cover a lot of the commonly occurring scenarios. Great.
In plone there is a plone side mode. Opera supports it
h1, h2 means new slide. Bullets, defs are ok. <p>
is hidden
comment. Rest is hidden.
ptprofiler is one of the most useful tools there is. You can profile your page templates!
This allowed plone to kill lots of the things that took time.
Warning: don't install it on a production server, as it re-enables itself when you restart the server.
How (not) to build an open source community.
When you find a piece of software on a company website, would you give feedback? Would you submit a patch? Would you join the project?
Ask yourself the questions again when you find it on a developer site (like codespeak.net). Perhaps there's less chance of trying the software as you're not sure of the reputation, but you'll be much more likely to join the project.
This one difference can make all the difference.
Xforms and so is nice, but not really supported now. Ajax is the quick solution, BUT you don't want to support JavaScript. So something javascript-generating or so would be nice.
Azax uses a combination between a javascript preprocessor and commands written in XML.
My name is Reinout van Rees and I program in Python, I live in the Netherlands, I cycle recumbent bikes and I have a model railway.
Most of my website content is in my weblog. You can keep up to date by subscribing to the automatic feeds (for instance with Google reader):