Lightning talks

published Nov 02, 2010

Bliksempraatjes tijdens de Nederlandse Plone Gebruikersdag 2010.

Snelle, vaak technische presentaties tijdens de Nederlandse Plone Gebruikersdag 2010 in de Euromast, Rotterdam.

Vincent Pretre (Zest Software): jquery.pyproxy

Ik ben de hoofdontwikkelaar van Zest Software voor http://prettigpersoneel.nl, een online personeelsadministratie voor MKB'ers. De site gebruikt Products.plonehrm, collective.sendaspdf en: jquery.pyproxy.

Het idee is om KSS te vervangen door jQuery voor Ajax requests. De DOM aanpassen vanuit Python. We wilden dat het makkelijk te gebruiken was aan de client-kant (browser) en aan de server-kant. De python-syntax zo dicht mogelijk op de jQuery-syntax. Het zou net zo uitbreidbaar moeten zijn als jQuery, dus bestaande plugins zouden moeten worken. Het kan zelf als jQuery plugin gebruikt worden.

pyproxy bind een call aan een event. Er is ook pyproxy_call. In python code definieert @jquery een view als aanroepbaar door jquery.pyproxy. JQueryProxy: een object gebruikt om de DOM aan te passen. extend_grammar: definieer de syntax van plugins.

Huidige beperkingen: je kan geen chained call doen, kan geen query opslaan, kan geen functies als parameters gebruiken (dus geen callbacks).

Het is stabiel: al maanden in productie. Werkt met Plone en Django en kan uitgebreid worden naar andere frameworks. Werkt met Firefox, Chrome, IE, WebKit.

Het product wordt gehost op github. Zie de README daar. Releases zijn beschikbaar op PyPI (0.2 gereleased op 22 oktober 2010).

Zie de slides.

Roel Bruggink (Four Digits): Living Statues Sprint

De Plone community gebruikt sprints voor het ontwikkelen van nieuwe functionaliteit. Het idee is dat je met een aantal ontwikkelaars bij elkaar gaat zitten en een sprintje maakt in de ontwikkeling van een product. Eind augustus hebben wij van Four Digits de Living Statues Sprint in Arnhem georganiseerd. Twee keer per dag een stand-up meeting: kort overleg over wat je tot dan toe gedaan hebt en nu gaat doen. In dit geval hebben we vooral aan Deco gewerkt, zie het praatje van Rob. Ook aan Hudson, een continue integratieserver voor automatisch testen, vergelijkbaar met buildbot.

Fred van Dijk (Zest Software): pakketten die je (misschien) nog niet kent

We hebben bij Zest Software een aantal pakketten gemaakt die je waarschijnlijk nog niet kent. Het basis CMS Plone is open source. Veel add-on modules zijn ook open source. Worden door integrators vaak in eerste instantie voor één klant gebouwd. Soms kom je erachter dat het vrij makkelijk is om het voor algemeen gebruik te maken, bijvoorbeeld PloneFormGen. Wat komt er dan zoal uit Nederland, en hier specifiek bij Zest Software. Verkapte oproep: laat wat van je eigen modules zien.

  • collective.sendaspdf: laat de server de pdf maken van een webpagina en email die. Heeft extra module nodig (wkhtmltopdf).
  • zest.carouselitem: toevoeging voor collective.carousel. Speciaal contentitempje met plaatje en wat extra instellingen, zoals een ander kleurtje.
  • mr.inquisition: voorafgaand aan migraties: toon onder andere overzicht van gebruikte content types.
  • zest.portlet.contact: speciaal portlet voor contactgegevens
  • zest.teammember: overzicht van teamleden/medewerkers, op een mooie manier vormgegeven met verschillende portretten.
  • zest.releaser: maakt releasen makkelijk

Verder heb je bijvoorbeeld:

Maar ja, releasen is soms iets teveel werk, dus niet alle genoemde pakketten hebben we al daadwerkelijk gereleased. Zet hem op! En maak reclame!

Zie de slides.

Kees Hink (Goldmund, Wyldebeast and Wunderliebe): deurmat

Binnen een jaar wilden twee van onze klanten een 'deurmat'. Een beetje zoals de homepage van http://plone.org. Maak linkjes aan, geef wat headers aan en je hebt een deurmat. Dat doet Products.Doormat.

Thijs Jonkman (Pareto): XDV skinning

Je kan XDV theming gebruiken om Collage in het Deco keurslijf te persen. De CSS positionering van Deco kan je namelijk ook al in Plone 3 of 4 gebruiken. De html code van Collage is lelijk, maar als je er een net zo lelijke xslt sheet tegenaan gooit, krijg je er wel wat schoons uit.

Maurits van Rees (Zest Software): collective.watcherlist

Poi is een issue tracker voor Plone. Hij wordt op plone.org gebruikt. Ik doe daar sinds een paar jaar de ontwikkeling van. In de loop der tijd heb ik daar een aantal problemen opgelost rond het versturen van e-mails met 'internationale' karakters, van Nederlandse accenten in de namen van ontvangers tot Japanse karakters in de tekst. Dat wilde ik het liefst maar één keer doen. Ik heb dus die code afgesplitst in een nieuw pakket collective.watcherlist. Poi 2.0 (voor Plone 4) gebruikt dit.

Met behulp van dit product kan je een lijstje bijhouden van mensen die geïnteresseerd zijn in updates van een item. In het geval van Poi zijn dat nieuwe issues of wijzigingen aan bestaande issues. Out-of-the-box doet watcherlist nog helemaal niets. Je moet zelf als programmeur dus integratiecode schrijven. Gelukkig is dat niet al te moeilijk naar mijn idee. De template die verstuurd wordt, registreer je gewoon als browser view. In de code van watcherlist zit een integratievoorbeeld.

Als ik ooit nog eens gek wordt van Singing & Dancing, maak ik een nieuwsbriefproduct met watcherlist als basis. :-)

Keywords
plone