Before you buy or create another CMS - check out Pimcore

Jan 23, 2022 5 minutes read
Pimcore (pimcore.com)

There are many tools that accelerate the process of building IT solutions. Often, RAD frameworks provide a lot of ready-made components from which you can build a working system very quickly, and creating an MVP is sometimes a matter of several dozen hours. Cloud operators also provide easily integrated services that can literally be clicked and integrated without programming work. However, the problem with frameworks and cloud services is that they are usually very generic, and creating custom solutions entails constant investment in programming projects or expensive consulting services.

The same applies to data management systems and platforms. When making any decision, the chances of the success of such a project should be realistically assessed. To create such a system, you certainly need someone with a vision, an experienced team and resources that will allow you to continue work in parallel to current investments. To buy, in turn, you need funds and a certain conformism to the limitations of the target platform.

Over the past decade, the number of available solutions and tools for businesses has increased enormously, but the final dilemma has remained the same. Should I buy a ready-made solution or can I create my own the flexible one? It is very difficult to find the correct answer because it all depends on available resources and expectations. If you have small resources, take advantage of popular solutions offered as SaaS. If your resources and knowledge allow you to effectively create a dedicated solution, go this way. And if you have infinite resources, delegate this work to an external vendor and focus on developing your products and services.

By the way, from the programmer's point of view, working on another CMS is nothing exciting. Especially that in the case of CMS, CRM, PIM / MDM or DAM systems there are tasks of the same type - authorization management, data access, building reports, data import, workflow management, image editing etc. Remember what you thought when creating the next and the next CRM?

Hello Pimcore

Pimcore is an open-source tool, developed by the Austrian company Pimcore GmbH. It is an enterprise PHP software platform for data management (like MDM, CMS, CRM, PIM / DAM and Digital Commerce).

In my opinion, Pimcore is a half-answer to the above dilemmas. First of all, because it is neither a ready-to-use platform like Salesforce, nor a Django framework (with a very simple admin panel). Pimcore is a platform that has a lot of "business" components that, with appropriate configuration and software, you can adapt to build a universal Master Data Management system.

Pimcore basis (pimcore.com)

According to information on their website, Pimcore is used by over 100,000 customers. More interestingly, they have over 350 Customer Case Studies.

Pros

Language

PHP is the most popular programming language on the web. Some websites state that there are about 6 million PHP programmers in the world (2019 Daxx). Regarding Pimcore, you don't need a programmer to create the entire architecture but only configure your system. The latest version of Pimcore is based on one of the most popular and oldest PHP frameworks - Symfony. It has a large community and is powered by one of the best ORM - Doctrine.

Open source

Open source is very beneficial since it enhances sharing information among programmers, developers and other professionals around the globe which leads to development of good quality. The project is hosted on github.com.

License

Pimcore offers two variants here: Pimcore Community Edition or Pimcore Enterprise Edition.

Documentation

Good documentation is gold in IT. Pimcore provides public documentation and a lot of tutorials, thanks to which every programmer is able to recreate the local development environment.

Headless CMS

This enables easy and pleasant management of the business structure of your entities.

Access management

User permissions in Pimcore are based on a users and roles concept. This provides many benefits and speeds up the software development process. You don't have to worry about building standard models, just create an account and assign roles.

And more

  • Built-in API
  • Workflow Management
  • Application logger
  • Image editor
  • Full Page Cache
  • Thumbnail Generator
  • Audit log

Cons

Developer required

Unlike average CMS such as Wordpress, Pimcore is a platform that requires knowledge of PHP programming. To quote docs: one of the basics you absolutely need to have acquired before getting started is a profound knowledge of object-orientated web development with PHP. It cannot be denied that it is a large system, but thanks to this it provides a lot of ready-made solutions. If you master the basics, your projects will get a nice boost.

Database

May not be a big problem, but it limits DBA - Pimcore supports only MySQL, MariaDB and Percona.

Deployment

Well, to quote Pimcore

Since Pimcore is a framework that can be used in many different use cases, development workflows and environments, it cannot provide THE ONE solution for deployment. It only can provide tools and best practices which can be utilized in the actual environment Pimcore is used.

Docs

I totally understand it, however the documentation lacks some general examples or templates with a ready script for ansible (or fabric?) or even simple bash script.

Closing note

If you are wondering which system to choose or whether it is worth building your own solution, I encourage you to familiarize yourself with Pimcore, even if the technologies of your products and services are not related to the PHP language. Pimcore speeds up development and reduces the need for programming work. It is written in the most popular web programming language, which makes it very easy to find specialists who will be able to develop or extend your system.

Pimcore - Live demo

Disclaimer: The opinions expressed here are my own and do not necessarily represent those of current or past employers.
Comments (0)