Laravel is a free, open source web application PHP framework.
N/A
Plone
Score 9.0 out of 10
N/A
Plone is a free and open source content management system built on top of the Zope application server. Plone can be used for any kind of website, including blogs, internet sites, webshops, and internal websites.
Laravel is ideally suited for fluent PHP developers who want a framework that can be used to both rapidly prototype web applications as well as support scalable, enterprise-level solutions. I think where it is less ideal is where the client has an expectation of using a certain CMS, or of having a certain experience on the admin side that would perhaps be better suited to a full CMS such as Drupal or WordPress. Additionally, for developers who don't want to write PHP code, Laravel may not be the best solution.
The larger your organization, the more appropriate Plone will be. This is not to say that Plone is a worse choice for small websites, only that the minimum investment for a Plone site is certainly higher than for other platforms. If you already use Plone for your site and are looking for a redesign or an overhaul, I would only advise switching to a different platform such as WordPress or Drupal if your organization is downsizing. For any other situation, Plone is the natural choice for your growth.
Plone is a folder-based system, organising content in a similar way desktop-users are doing for the last two decades. No need to teach non-tech customers some relational-database like paradigm for content management.
Plone is secure. It is the most secure CMS you can get your hands on.
Plone is flexible, and makes fast development easy.
Significant learning curve. You cannot be an expert in a week. It takes many experimentations to properly understand the underlying concept. We ourselves learned it by using it on the job.
Too much to soak in. Laravel is in everything. Any part of backend development you wish to do, Laravel has a way to do that. It is great, but also overwhelming at the same time.
Vendor lock in. Once you are in Laravel, it would not be easy to switch to something else.
Laracasts (their online video tutorials) are paid :( I understand the logic behind it, but I secretly wish it would be free.
The eloquent ORM is not my recommendation. Let's say you want to write a join, and based on the result you wish to create two objects. If you use Laravel to do automatic joins for you, Laravel internally actually makes two calls to database and creates your two object rather than making one join call and figuring out the results. This makes your queries slow. For this reason, I use everything except eloquent from Laravel. I rather write my own native queries and control the creation of objects then rely on Laravel to do it. But I am sure with time Laravel will make fewer calls to DB.
Not everything is configurable or editable by Plone, and when you need to adjust or add custom pieces in, you need to deal with Zope. Zope has an ugly, confusing and difficult UI and structure as a backend.
Using 3rd party products is difficult to do - there are a few different ways to get them installed, all of which take a bit of luck to get right.
Building custom products for Plone is not fun. You've got to deal with an archaic framework to tie in that is not well documented (there is documentation about many things, but not great documentation and there are a lot of holes in the documentation).
I no longer use Plone because I got an internship in the web development field and my current place of employment uses their own content management system that they created. After getting to know other CMS's and similar software and comparing them to Plone, I would enjoy using Plone again in the future, but there are more complicated software that I'd like to learn as I progress in my field of study.
Compared to the amount of Plone sites, users and customizations we have in our organization, the amount of support requests and training needed is really small
Plone is very intensive in its operations, and if not configured well it can be slow. However it is designed and built with speed in mind and with proper use of coding, templates and caching can perform extremely well under high loads. It is capable of scaling to very high load availability environments with no specific coding requirements.
Supporting unit testing is bigger plus point in Laravel than any other framework. Developing with Laravel is much easier. Other frameworks have value in market, but Laravel has taken the lead in popularity among PHP developers in recent years. The large community supports you if you have problems. Using Laravel, integration became easy with third-party libraries, but it was costly too.
Drupal: Plone is cheaper, so with Drupal is more complex to reach the required ROI. However, Drupal has a lower learning curve WordPress: For our necessities it has a more expensive learning curve than plone. Joomla, is easier to use. However, it have some issues on security and web content where Plone is much better
Laravel allows us to rapidly prototype and build complete, scalable applications internally, which saves us time and allows us to have internal tools that fit out precise needs. We use Symfony for a similar purpose, but Laravel is an even higher-level framework that we find saves us substantially more time when building many types of web applications.
Laravel solves many of the underlying concerns of building a large application (such as authentication, authorization, secure input handling) in the right ways. It saves us from handling those low-level concerns ourselves, potentially in a way that could take a lot of time or sets us up for issues in the future. It's tough to assign an ROI to this, but I'm sure it has prevented issues and saved time, which both have an impact on our financial situation.
As a development company Plone allows us to provide complex web applications in a short amount of time.
Plone is quite robust and reliable so when you customize some parts you do not risk to damage other parts. This is quite positive for a web development framework,
Plone allows our clients to spread their activities among different employees improving the efficiency of content generation and management.