Accueil / Blog / Métier / PloneConf 2017 à Barcelone

PloneConf 2017 à Barcelone

Par Alexandra Janin — publié 27/10/2017, édité le 31/10/2017
Retours sur la PloneConf 2017 à Barcelone.
PloneConf 2017 à Barcelone

Cette année la PloneConf s'est déroulée à Barcelone. Bastien et moi avons eu la chance d'y être conviés avec Eric pour cette édition très orientée front-end.

On y a découvert une communauté de passionnés, des sujets variés allant du back au front-end, en passant par l'UX et des sujets plus philosophiques (syndrome de l'imposteur, etc).

Plone Rest API + Angular / React / Vue

La communauté Plone a aujourd'hui bien mesuré l'enjeux des frameworks JS. Beaucoup de talks étaient consacrés à Angular, React ou encore Vue.

On a pu par exemple suivre des talks sur les performances d'Angular (AOT, tree shaking), sur Angular Universal, d'autres sur React/Redux : redux-saga, comment améliorer les performances avec normalizr.

L'objectif à venir est de porter plone.restapi pour le rendre utilisable facilement avec les différents frameworks front :

Pastanaga

Une nouvelle UI a été dévoilée, Pastanaga UI (crée par Albert Casado). Elle devrait remplacer l'actuel thème Barcelonetta. L'objectif est de l'implémenter avec les frameworks front afin de fournir un thème de base dans l'air du temps, à la fois côté admin et site.

L'intégration pour Angular a pu débuter lors des sprints, en se basant sur Material 2 : pastanaga-angular.

Pastanaga

Guillotina

Logo Guillotina

En parallèle du développement de plone.restapi, un projet a vu le jour : Guillotina, il s'agit d'une toute nouvelle stack exposant la même API que plone.restapi mais basée sur un server Asyncio développé en Python 3.5, ElasticSearch pour l'indexation.


Les trainings

Optimisation web

Premier training de la semaine : Website speed in perfection présenté par Anton Caceres, on y apprend comment optimiser le chargement d'une page (côté front). Tout d'abord on fait un audit avec des outils tels que :

On constate souvent que les éléments les plus lourds sont les images. Quelques utilitaires pour optimiser les png ou les jpg :

  • du -h *.jpg : commande qui liste les images et leur taille
  • imagemagick : retaille des images à la volée avec la qualité voulue
  • jpegoptim : supprime les meta data des images (uniquement pour les .jpg)
  • optimng : supprime les meta data des images (uniquement pour les .png)

DOM / CSSDOM

Le rendu d'une page ne se fait pas tant que le CSS n'est pas chargé. Le navigateur a besoin de parcourir l'ensemble du DOM et du CSSDOM avant d'afficher la page. Deux techniques peuvent alors permettre à la page de s'afficher plus rapidement :

  • Above-the-fold content (ou CSS critical) : il s'agit de charger en priorité le contenu de la première partie visible uniquement, soit en mettant le CSS en inline ou en chargant un fichier CSS déidé qui sera chargé en premier.
  • async / defer : définit l'ordre de chargement des fichiers javascript

Python avancé

Pour la seconde journée de training, direction Advanced Python avec Oz Tiram https://oz123.github.io/advanced-python/book/. Le but de cette formation est de rappeler des fontionnalités de python qui sont à l'origine des frameworks comme Flask, Django, CherryPy.

Pour tester les exemples en question, on a besoin de ipython3 pour pouvoir coller du code python dans la console sous python3.6. La formation aborde ensuite :

  • Les middlewares
  • La gestion des sessions
  • dict vs slots
  • Les décorateurs (sucre syntaxique)
  • Programmation fonctionnelle
  • les modules functools et operators
ABONNEZ-VOUS À LA NEWSLETTER !
Voir aussi
PloneConf 2016, un vent nouveau sur Plone PloneConf 2016, un vent nouveau sur Plone 02/11/2016

Résumé de la conférence annuelle sur Plone qui s'est tenue à Boston.

Turning hackability into a use case 27/01/2015

When a CMS does not allow happy hacking anymore, it loses a very valid use case.

collective.z3cform.norobots: a captcha based on questions and answers 15/01/2010

I have released a new captcha widget/field for z3c.form in Plone. Unlike other captcha fields that ...

Plone Unified Installer and ZcxOracleDA 02/12/2010

Trying to setup cx_Oracle and ZcxOracleDA on a Plone/Zope Zeo setup using the Unified Installer ...

Connecting to Oracle with SQLAchemy and very simple Plone integration 11/06/2009

SQLAlchemy (The Python SQL Toolkit and Object Relational Mapper) allow Oracle connection through ...