PLOG Wednesday morning talks

published Apr 08, 2015

Talks, not exactly lightning, at Plone Open Garden Sorrento.

Paul: We want to have a rough roadmap at the end of the week, with something actionable. Now we start with talks.

Alex Ghica: Bucharest conference

The next big Plone conference will be in October this year, in Bucharest, capital of Romania. Five star hotel in the city center. High tower. By flight it is connected to lots of cities. Currently still cheap, about 40 euros from Amsterdam for a return flight. Sponsors are welcome. In about a month the conference tickets will be available, early bird about 360 euro.


Gil Forcada: WPOD

WPOD is: World Plone Office Day. Last Friday of the month, do not work on customer projects, but work on Plone. We should have entry-level tasks ready. Talk about it, so that people know this is happening. In each city, meet at a company's office, have a good, productive, enjoyable time with each other. Be available as mentor, team leader. Open a sprint channel on irc.

First one: April 24th.

Philip: I pledge that my company will do this every month, at least half a day, maybe a day. I challenge other companies to do the same. And be welcoming and helpful for newbies.

Guido Stevens: Plone Intranet

We have a Plone Intranet Consortium. Would that approach be doable for Plone core? It takes a long preparation, the first steps were started six years ago. It takes willingness to invest time and money. It is a business opportunity, asking investment and needing payment after a while by happy clients.

Demo of Mercury development version of Plone Intranet. Activity stream. Important sticky notes that remain visible until you click them. @mention people. Uploading for example a word document will convert it to PDF. Work spaces. Raptor as rich text editor. Wrapper around the sharing tab: three sliders to set your work space policy. Using experimental.securityindexing for permission indexing speedup. We want to do the Venus release before the summer. Workflow state transitions as milestones, use it for case management, fully flexible. Faceted SOLR search. Image bank. Render previews in the search. Personal page with personal stream. Find people by expertise. Follow people.

So that is the product. What is interesting is the process. Nine companies participate currently. Thousand euro per month, one developer day per week. Working from six or seven countries, sprinting remotely. Difficult to get traction, or on-boarding new developers. You need a few months to become productive. If you want to sell these solutions, the investment pays back. It is not just an add-on that you add to your Plone Site with a couple of others. First approach is to install it, change logo and other theming, do LDAP integration, upgrade, support it, make money that way. Second approach is to do your own design, and really think that through for a specific client. You can develop apps for it too.

Running on Plone 5 alpha 3. Dexterity content types. No z3c.form. Patternslib with the inject pattern. We keep accessibility in mind, it also works without Javascript. (Remember that accessibility is not the same as no Javascript. But some countries, at least the Netherlands, require non-javascript for certain sites.) Storing objects in btrees for performance. Lots of development goes into front-end code. Mobile-first design: working nicely on phones and tablets.

We develop it in a consortium, but the code is GPL and is donated to the Plone Foundation. Participating as a business is a risk, a possibility, and a lot of fun and opportunity to learn. If you want to participate, then make your decision. It should be a sound business decision.

It is one repository on github, but composed of multiple Python packages.

See the documentation:

Ramon, Aleix: Machine learning for Plone content

Machine learning for text. Automatically learn from data, then predict for new content.

First step: from text to vectors. Second step: from vector to model.

Clustering: we automatically cluster documents together, so you get a list of related items, without needing to select them manually. It will allow us to create an automatic sitemap based on the clusters or topics.

Classification: text and tags. Predicting which tags would be appropriate for a newly added document.

We would love to have a Plone Machine Learning API.

  • getLearningText(content)
  • getLearningTags(content)
  • getLearningRelation(content)

Computing the models: using scikit-learn. If you recompute at each new document, it will be slow.

Multi resolution time series, for continuously changing data, like number of visitors. Numbers instead of text. Lossy storage: less data, only the interesting info. Related work: RRDtool.

Ideas: generate taxonomy of tags.