Re: [Plone Mosaic Sprint Barcelona discussion] Re: Plone Mosaic Sprint Barcelona June 10 - 13
Dylan Jay <djay-n0pU0XVUApFWk0Htik3J/[email protected]>
| Newsgroups | gmane.comp.web.zope.plone.devel |
|---|---|
| Message-ID | <[email protected]> |
On 19 May 2014, at 8:01 am, Simone Orsi <[email protected]> wrote: > Hi guys, > > I'll try to shortly summarize (clearly, hopefully) what we discussed at the PLOG and what the goal of the sprint is (or should be). Thank you Simone very much for the summary. It's helpful to bring the offline discussions back online since we are such a geographically spread out community and not everyone can make it to a sprint. > > Almost all of us provided custom tools for building landing pages. > Someone use products like PortletPage or ContentWellPortlets or Collage or build customization on top of them. > The last one in terms of birth date is collective.cover, that was explicitly created for getting rid of its ancient and limited predecessors. > > Each of us has her/his own use case, and maybe has her/his own idea on the technical solutions and above all on how the end-user UX should look like. Starting from this assumption is clear - I think - that it would be impossible to produce something that will make everyone happy and satisfied 100%, especially in a short term work like a sprint. > > So, at the PLOG we tried to figure out which are the common needs.The first steps we can do, is to get to a point where we have a strong blocks-engine (let's call them blocks and not tiles or portlets or whatever) that will allow anybody to get as much closer as possible to her/his own idea or customer needs. > > The first thing to do is to get rid of the 3-columns constraint that we have right now. The idea is to render the blocks (again... portlets, tiles, viewlets, it's the same) as a stream, one after each other. Each of them will have some metadata attached and exposed via data- attributes for instance. Those metadata can be based on type of element, type of content, global rules, etc. > > Than we can decide how to render this stream. > > Yes, you can move things around simply via diazo. But if you want more control, another easy approach is to have predefined renderers, that for example can renderer a standard 1/2/3 columns layout. Those layout can be coded by developers and the user cannot modify them, but for instance she/he can choose one of them on the context if needed. > > Note that, the main goal here is to ease the way we present the content of the page (what's now identified by the #portal-columns element) not the entire site layout. What the user can play with, in this case, could be a well-defined set of options on top of each block, like a sort of predefined styles. > > Here - more or less - comes what Guido aims to (or at least, that's what I got from him :P): an advanced developer-crafted rendering engine that adjusts the rendering of the blocks based on predefined rules and / or deterministic calculation (based for instance on the location of the users, on the weather, and stuff like that). > > A more complex approach is more or less the one pictured by the Deco prototype: allow the user to create pages using blocks and predefined layouts. > > The difficult part here, is to determine how much freedom you want to give to the end user, and what kind of UX you want to give to him/her. You must decide which kind of limits you want to impose to this freedom because otherwise you end up with an unusable or not comprehensible UX and into a mess of code to deal with it. very true. I would go one step further and say the themer should be given the freedom to decide how much control the admin and editors have over the layout, ie a decision made at the birth of a new site. So how much freedom you want to give the end user (end user in this case = editor) is something that can be dialed up or down depending on the nature of the site. For example, a social intranet you might want owners of sections to have lots of control over the layout of landing pages but a simple ecommerce site which has been carefully designed to by the themer, then they want to ensure that editors can upload new products and prices but not "screw up" the design. If you add this requirement then it's even more difficult to achieve. > > Another difficult part - maybe not so difficult - is: which kind of blocks do we want? We had an interesting discussion with Ramon about the fact that portlets could fit the requirements instead of tiles: > > - reliable, they are there since decades > - they are tested and used in real life > - they are used and extended across different addons > - we a good set of them > - tiles are not maintained nor improved since years > > The bad part is that they are more complicated than tiles (yes, because they have a more complex machinery behind them) and they are heavier than tiles on rendering, because of a lot of calculations on context, hierarchy, user/group, etc. > > So, a good amount of work should be done either on moving the same functionalities and options from portlets to tiles, or -maybe better- move the good parts of the tiles to portlets. > > To finally sum it up: on a lower level we need a good base for making rendering easier. On an upper level we need to find a good balance between flexibility and complexity. Is Deco enough for this? Maybe. We'll have for sure to bring back the "lost knowledge" from the deco experience (the project is kind of dead since nobody has move it forward since years) and try to take the best from it. > > The goal of the sprint, as I see it, is to come up with an addon that will be usable just the day after the sprint by whoever need a nice and flexible way to build the content of a page. One other goal that wasn't mentioned aspart of the discussion was one of the original deco goals of simplifying the editing experience by removing default pages, folders and collections and replace them with a way to insert blocks/tiles/portlets into the middle of the page. This goes right back to the origins of the where the deco ideas came from. I realise this will unlikely be in the minds of those at the sprint. However I think that we don't want multiple systems in the core to do layout and insert stuff, so hopefully whatever is built should be thinking about how to make plone simpler for beginners managing content not just provide tools for the most complex sites. That's my hope anyway. > > Cheers, > S. > > > On Fri, May 16, 2014 at 7:35 PM, Guido Stevens <[email protected]> wrote: > Lewis, you'll love this! > > On 16/05/14 16:16, Héctor Velarde wrote: > > if you haven't yet, take a look at this interesting article about > > Flipboard and Duplo, their new layout engine: > > > > http://engineering.flipboard.com/2014/03/web-layouts/ > > Wow, thanks for that reference! > > "Duplo computes the best pairings of content with slots, by optimizing a > fitness function built on dozens of individually-weighted heuristics." > > Note also how they re-calculate the layout for each device form factor, > favoring layout solutions that maintain tile proximity across form > factors. Very much what I have in mind. > > :*CU# > -- > Guido Stevens | +31.43.3618933 | http://cosent.nl > > s o c i a l k n o w l e d g e t e c h n o l o g y > > > ------------------------------------------------------------------------------ > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE > Instantly run your Selenium tests across 300+ browser/OS combos. > Get unparalleled scalability from the best Selenium testing platform available > Simple to use. Nothing to install. Get started now for free." > http://p.sf.net/sfu/SauceLabs > _______________________________________________ > Plone-developers mailing list > Plone-developers-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org > https://lists.sourceforge.net/lists/listinfo/plone-developers > > ------------------------------------------------------------------------------ > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE > Instantly run your Selenium tests across 300+ browser/OS combos. > Get unparalleled scalability from the best Selenium testing platform available > Simple to use. Nothing to install. Get started now for free." > http://p.sf.net/sfu/SauceLabs_______________________________________________ > Plone-developers mailing list > Plone-developers-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org > https://lists.sourceforge.net/lists/listinfo/plone-developers ------------------------------------------------------------------------------ "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs