Is Plone a Good Choice for Large B2C Websites?
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 66 | |
Author | ||
License | CC Attribution 3.0 Germany: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/55306 (DOI) | |
Publisher | ||
Release Date | ||
Language | ||
Production Year | 2016 |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
Plone Conference 201637 / 66
4
5
6
7
8
9
10
11
12
13
15
17
18
19
22
23
24
25
26
28
30
31
32
36
43
44
46
47
48
49
50
52
53
55
56
57
60
62
63
64
65
66
00:00
Interactive televisionAxiom of choiceWebsiteImplementationMeta elementBeer steinSoftware developerSoftwarePhysical systemContent management systemOpen sourceGoodness of fitAxiom of choiceDivisorPhysical systemWebsiteStatisticsCASE <Informatik>Office suiteData managementImplementationPresentation of a groupInteractive televisionGrand Unified TheoryProjective planeElectric generatorWebdesignOpen sourceSoftware developerElektronisches MarketingWeb pageComputer animation
02:14
Computer wormImplementationComputer animation
02:30
Plane (geometry)ImplementationAxiom of choiceWebsiteInteractive televisionPlanar graphProduct (business)Information securityData managementMultiplicationFront and back endsContent (media)Physical systemProxy serverSoftware testingPhotographic mosaicProcess (computing)Event horizonProbability density functionData typeForm (programming)Computer-generated imageryMathematical optimizationPhysical systemData managementProxy serverGoodness of fitProjective planeWeb pageInformation securityMedical imagingRow (database)Content (media)Position operatorTesselationProbability density functionMereologyLevel (video gaming)BitResultantContext awarenessDifferent (Kate Ryan album)Latent heatCartesian coordinate systemFunctional (mathematics)Product (business)Subject indexingElectric generatorInternetworkingSearch engine (computing)Electronic mailing listCodeFreewareDatabaseMultiplication signType theoryModule (mathematics)MathematicsAxiom of choiceTexture mappingPhotographic mosaicGreatest elementGroup actionText editorRobotics1 (number)MeasurementMathematical optimizationMusical ensembleHydraulic jumpPlanningJames Waddell Alexander IIFigurate numberDirection (geometry)Mobile appHuman migrationDisk read-and-write headForm (programming)File viewerOptical tweezersWritingRAIDWeightWordSoftware industryAudio file formatFront and back endsSoftware developerShared memoryAuthenticationProcess (computing)Link (knot theory)Line (geometry)Service (economics)Information and communications technologyDigital photographyComputer animation
10:31
Form (programming)Computer-generated imageryMathematical optimizationContent (media)Data typeRule of inferenceImplementationPlanar graphInteractive televisionUser interfaceInformation securityDisintegrationDatabaseAxiom of choiceWebsiteInformation securityType theoryForm (programming)Probability density functionWebsitePhysical systemFunctional (mathematics)Content (media)Product (business)Medical imagingQuicksortProjective planeSubsetWeb pageServer (computing)Mobile appModule (mathematics)MetadataDifferent (Kate Ryan album)LastteilungRule of inferenceInteractive televisionINTEGRALMathematical optimizationDatabaseGoodness of fitSoftware testingGroup actionMereologyConnected spaceMultiplication signAxiom of choiceInformationRoundness (object)Text editorExtension (kinesiology)Level (video gaming)Uniform resource locatorProcess (computing)Cartesian coordinate systemObject (grammar)Front and back endsComputer fileInterface (computing)Computing platformInternetworkingWorkstation <Musikinstrument>Scheduling (computing)Black boxCuboidPlanningMusical ensembleImplementationElectric generatorOnline helpMetreMathematical singularitySeries (mathematics)RobotIdeal (ethics)Electronic mailing listDuality (mathematics)Social classClient (computing)Computer animation
Transcript: English(auto-generated)
00:04
So yeah, my question is, is Plone a good choice for large B2C websites? And yeah, first I'll throw in a quick introduction and an agenda of my presentation. So first I want to introduce myself, my company and my customer or our customer.
00:25
And yeah, then I want to go into the requirements. So I want to summarize it quickly, what we had to do. And this also leads directly into the implementation.
00:42
So what did we have to do for general requirements, technical requirements and how could we create a good solution for it? And at the end I want to summarize it and yeah, want you to help me to answer the question, was it a good idea to use Plone?
01:04
You find this agenda on the left side and so we'll see where we are. So I'm Lucas Gudzier, I'm software developer and project manager and I'm doing this, I'm working for Interactive GmbH.
01:21
And we're an online agency in Cologne and this is in Germany. We're using open source TMS systems, for example, Plone of course and Magento for shop systems and also doing online marketing and web design.
01:42
Our customer was Suzuki. So Suzuki is leading worldwide automotive and motorbike manufacturer. And in this case I'm showing you the motorbike site. On the 5th of October, so a few days ago, the page went online and there was the Intermod in Cologne.
02:04
So it's a big mess where they show the new motorbikes, they show the new stuff and also of course on your site. And this is this website. So this one was implemented with Plone 5 and now I want to go into detail what did we have to do to make this happen.
02:31
So is Plone a good choice for large B2C websites? Who uses Plone? There is a list if you look at Plone.org of a lot of governments, NGOs.
02:44
So there are some names but the big players, they are missing. One part of the thing is that there are a lot of internet systems. So you really don't know who is really using Plone and maybe it has to be something with brand awareness or something else.
03:04
But you really can tell the value of what they are. So I want to talk about the quick gains for companies using Plone. So what do we do for custom customizations?
03:22
What add-ons are from Plone? They are all ready to make this page happen. And how is the security working for us? And here at the end this is the question to answer. So the general requirement was to get a strict layout for the whole page.
03:44
And it's like in every project. But here it comes to that there are specifications. So you get a lot of specifications. This is good because you have everything written down what needs to get done on this page. But it's also a bit difficult because you want to get a good solution for your customer.
04:07
And you need to get the technical part and the specifications together to get a good solution. And sometimes this is difficult. So for example there is multi-site management.
04:21
So you have different roles of users and want to get this into several sites. You have front-end editing. So you can edit the page dynamically as you feel you are just on one page. You see directly the result and other things. And there is personalized content. It's still a big subject and I think that's one of the most important things that's coming.
04:48
The example is you are on the page and you directly see I am from Cologne. I see the map on Cologne and it just knows it and it feels like I am home.
05:01
And of course there are a lot of other things. Technical requirements. So it goes a bit technical more. There is a tile system I want to go into later on. For example you need working copy, inline editing and so on. There is a content proxy.
05:20
You need to add content in Cologne. So for example you can use search engine for it. There is image cropping, SEO optimizations, PDF generation, inline editing. So you see there is a lot to do. And I want to jump in some parts of it.
05:42
For example the tile system. What we did, we created our own tile system. Now I think you will ask yourself why did they not use PloNet Musik. As we started with the project, PloNet Musik was in kid's shoes. So it really wasn't that developed.
06:03
And we had a lot of special workflows that we had to implement. And there are some custom creation processes for tiles and a special layout. So that's why we created our own tile system.
06:21
So to give you a quick idea, we have content type tiles. It's a container and there you have rows in it. And in these rows are tiles. But I will show it to you after that. And you have a special workflow. You can set on one position, on one base position.
06:40
You need an API for the front-end editing. And you need models to edit stuff that isn't editable through inline editing. So this looks like the tiles editor from us on the Suzuki page. And there are three rows. So you see there on the bottom of the side there are actions.
07:05
You can remove it, you can move it. So these are the three rows. It's like image and text. And here is a headline. And in these rows there are several tiles.
07:21
For example, this is a row with three text tiles. So it's kindly built like Mosaic. Just that you get stricter, more stricter tiles. So you have like a three text tile and it builds you already in three textures. So we can handle a bit more what we give the customer.
07:44
Okay, and if you click on, for example, an edit button, it opens in Modal. As I said, if you have to edit something more, you can choose an image there. You can set a link or set an alt and title tag. Yeah. So the PDF generation.
08:03
There we had two choices between WeasyPrint and LaTeX that are Python modules. LaTeX almost so for mathematics and so on. Or I think the Plone documentation book is made with LaTeX. It's a really good thing. We use it in other projects, but it's really large.
08:20
And so you need a lot of time to use it. And WeasyPrint is the module where you can write your code in HTML and CSS. So most know that. And it generates your PDF. It's really good and for us it works good because we had a simple layout and just put data in it.
08:42
The inline editing was also very easy for us because Plone has the TinyMC4. And with a two-liner, you can just implement it. And there is the free text tile. You just double click and you can edit it with the tools there.
09:01
The RSS content. Yeah, so if you want RSS in Plone, you can put the feed in it, but you don't have it as content. And this was a problem for us because we have RSS in sliders, in overviews, so a lot of positions.
09:21
And you want to use the search for it to finding them. And so we need to index them somehow, so we created an own content type with dexterity for it. And there were a lot of APIs, so you get data from this and that. For example, the motorbikes, they have a special database for it.
09:42
And their support Python module, which was really helpful for us. And yeah, I just recommend to look into it. It's a good thing. Here comes the other parts. It's image cropping. So there is a Plone product for image cropping, but it's not migrated for Plone 5.
10:03
So it was difficult because we needed a cropping tool and then we had to thought about it. Can we migrate it or do we something else? And this was very difficult to migrate it. And we looked into the code and see what did they and what can we do.
10:22
So they use the cropper as the jQuery application and build it the same way more easily so you don't have all the functionality. But it's a good first step to using cropping in Plone 5. And maybe this is a thing we can put into the community.
10:42
Next thing is the SEO optimizer. It's a thing from Quinta groups. And it's also a product which is not migrated yet. And this is one of our most likely products. We use it on every page. Because you can edit the metadata and it's very good for SEO optimization of course.
11:03
And we had to do there something different too, create something different. And we did it with rules and the rules XML from Diazo. So we put our metadata somewhere in the content and it just replaces it on the same page.
11:21
So really it's a small thing but you can do a lot of it with it. So we would love to get this migrated too. And the third thing is the Plone form gen. It's based on archetype so it's like not for Plone 5. But what I've heard now from the last keynote there is collective easy forms.
11:44
So we should definitely look into that. Now we use Plone form gen. But the collective easy forms is also dexterity. So that's a good solution for that. These are our main things we want on our page because it gives us a good amount of editable stuff.
12:04
And it's just from Plone so you can just install it and it works. Okay and then there's the Plone app testing. So you have everything to test like white box, black box, acceptance test. Which you need to get a secure feeling about your page.
12:23
And it's all in Plone app testing there. So that's all that we need. It was very good. Also the documentation, there's things. So it's automated, you can create an RST file and it just generates you the whole documentation. So this was really helpful for us. So in general when I list up the pros and the cons.
12:46
In Plone 5 now we have a good looking interface. In the backend for an easy integration in Diazo. We have an interactive editing backend so there's all JavaScript implemented so you can do everything on one page.
13:04
Of course the ZODB, it's an object oriented database which is very secure. And also the security on the application level. For example the workflows, you can just type in an URL and it works for you. On the lowest level there's security for you so nobody can do things with no permission.
13:32
It's infinitely extendable with Zio cluster.
13:40
The page can grow as much as it wants. You can build up any more clients and do it with a load balancer. It helps us really much to get every big site running. And of course there's Plone app testing, Plone app caching, things. And so on which helps us a lot.
14:01
On the cons side, as I mentioned there are just a little amount of extensions that are already migrated for Plone 5. Like I said the SEO optimizer, the cropping tool or Plone formband but I put this back. There's easy forms we have to check out.
14:23
So now I want to throw the question in the round. What do you think? Was it a good choice to use Plone? You just have to stand up and say something. What was your traffic numbers? Were your content editors happy using the features of Plone to put in all the information about the motorbikes?
14:47
How was your project received at the client? The project has received very good. So you can do a lot with varnish or something to get a good performance.
15:01
So this was a good part. So it doesn't... I don't know how to say that. It doesn't exist on those speeds. This was not a problem for us. When did you start the project?
15:22
You delivered in October. Yeah right. So this was a really short project. But there are other sites from Suzuki we had to start earlier. And the tight system went further and further back with other pages. Like it started in Plone 4 for us. So this motor site was I think four months ago.
15:43
There's a lot of experience or connection with the community or knowing what's going on. I've worked a long time already with Plone. PDF generation, there are some very good modules for those. EAPDF for example. The feed stuff, I know it's still archetyped but I know we created it for eight years ago.
16:04
Product feed feeder, that does it. But it's archetyped and not dexterity so that might hurt. Image cropping was made available for Plone 5 in March. 2016. So there's a lot of things that I think okay. Of course it's not critical.
16:21
I'm looking back at myself like wait a minute, you're doing all this stuff when I know that a large part of these modules have been created for Plone 5. So that's something we really have to fix. Maybe it could make it easier for you partly to have parts of this functionality already created to you by using the upgraded module if you had known it existed.
16:45
Maybe this was the thing. I'm curious, I don't know what else the website does other than serve pictures and brochures of the product for example. Is there an online quoting system? Is there sort of a contact?
17:03
Like if somebody's interested in a particular motorbike, do they interact with the site more to get more information? Do you do ordering? Can somebody buy a motorbike through the site? So in the future there will be a functionality to order, not to buy a bike, but you can order a test drive.
17:25
So there's a form where you search your motorbike and it shows you okay, 10 km from here now it's in this shop. And you can try it out for like one week and you fill out the form and it goes into buying here.
17:47
So did they add all the product data themselves kind of manually then? Like as a content type, how was that handled? Sorry, please. They went in and added all the product data? Like for each bike?
18:01
Okay, so there's an API. So you have a database. It's called the PDB. And there where all the motorbike data came from. So we used this Python module SATS and created this as a ploned content type but automatically. So we have the cron job which runs nightly and create the new motorbikes.
18:27
Okay, thank you very much.