📜 ⬆️ ⬇️

Bitrix for the programmer and manager: love and hate

Hello. I have not written in php for a long time, but every now and then I come across online stores on the website management system Bitrix. And I recall my research.

Bitrix does not like Moscow in the early 2000s: a successful and financial project that objectively did not deserve its success. The developers are also divided: for some, this is a subject of hatred, while others look with condescension and point out that this is the most commercially successful site management system. My publications about Bitrix could not please either one: one side is disgusted by the very mention of Bitrix, and the other does not like to ignore the official recommendations for development under Bitrix.

And this is all very interesting.
')
Joomla makes you laugh.
WordPress is surprising.
Bitrix causes hatred. Why? I wanted to answer precisely this question, and this answer was unexpected.

Non-compliance with the recommendations of the developer Bitrix


Six years ago, I took the Bitrix developer courses. At first, I honestly tried to follow the recommendations and set up standard modules, but they did not perform the required tasks. Then I began to use lower-level functions of the system, but they also worked strangely.

Gradually, I attached a normal template engine, switched to pure SQL, and generally abandoned the architecture offered by this system. In fact, my development, it was no longer Bitrix, but a kind of add-on over a database with a predictable structure.

On some projects, the control panel was also almost never used, since import of goods into the online store and export of orders to 1C, export of the list of 1C stores to the site, and the like was established. In fact, only the database remained from Bitrix.

I justified it for myself optimization. But the real reason was revealed only after a while. And she is from a completely different area.

Cheated


Hate is born out of deceived love, and love is a glance from the screen. When choosing a system for a project, you, the customers, promise mountains of gold, and as a programmer, of course, you expect a breakthrough architecture that will give you pure pleasure from programming.

But the farther you go into work, the more you get frustrated. And the money has already been paid, the forces have already been invested. But only this would not give rise to such hatred. Who does not happen, lolanulsya like everyone else. But this is only the beginning.

After the purchase you continue to be convinced that everything is as it should be. Your programming style is a reflection of your vision of the world. You are urged to change it. And this already leads to a collision within you.

You cannot accept this style, but you need to accept it or refuse to work. And if you are trying to defend your point of view, suddenly, you are in the minority, even if technically you are absolutely right.

Justification of business for working with Bitrix


From a business point of view, leaving the system unchanged, following the recommendations of the system manufacturer as much as possible, using standard solutions is a reliable way - a non-core company trusts a well-known IT manufacturer with a huge fleet of services. And at the other end is trust in our own hired programmer, whose quality of decisions cannot be verified, which can quit at any moment. If the site slows down, you need to purchase a more powerful server: this is a clear and simple solution. And optimization is tied to the decisions of a specific programmer. Imagine being afraid of you.

Programmers think in paradigms, managers think in budgets. They communicate with the same managers from supplier companies. They speak the same language with each other, and they may simply not understand your words if they are not translated into money.

Internal developer conflict when working with Bitrix


If you look at the problem from this side, it is easy to understand why the leaders are not on our side. Managers do not see technical subtleties, they bought the system, and they also pay you money. For them, it is easy and simple to justify the costs to directors and owners. But for the programmer, all this provokes an internal psychological conflict.

Why technicians lose


But why the years go by, and does Bitrix still sell? The defeat of the opponents Bitrix is ​​born out of the wrong question. Yes, technically you are more literate, but you are not the one who decides about the purchase, otherwise you yourself would be managers. And the development of Bitrix is ​​caused by just such a petty confrontation between management and technical specialists, each decision to purchase a license.

You play on the field in which you propose to play. You are talking about optimization - but it is not obvious, and the benefits do not outweigh. You are talking about usability - but you will not make your own control panel for one project? Even under a few. You say that integration out of the box is a myth, but, firstly, for others it is no better, and secondly, why then? And, most importantly, you are talking about architecture - and they do not understand you. All your arguments are in the technical field. But it is you who are a technical specialist, and therefore, it is your task to make everything work technically. So you say.

Managers are strong in word work. In addition, they are usually more than one. And you need very strong arguments to convince them, even if you are consulted. But in this dispute you will lose. Usually, a programmer at this stage will not have enough technical, managerial, and just life experience to engage in such confrontations.

Technical aspects of claims to the site management system Bitrix



The technical arguments seem untenable, almost every one of them can be answered, and other questions can simply be talked about, and the standard programmer has less experience in verbal confrontations than the manager. Usually a lot of private and minor claims are presented to the system, which can be answered with an adequate level of preparation. On all these minor disputes, and the opponents of Bitrix are conducted, and in these disputes they lose.

But let's try to highlight the main thing.

- There is no single entry point in the system. This means that you can put the entry point anywhere: in the confusing directory structure you can hide a file that authorizes anyone as the site administrator. And this mad nesting of subdirectories seems to be specially created for such implementations.
- There are modules duplicating each other in the system, and none of them can be customized for their own needs without making changes, despite the fact that they have dozens (!) Of settings. And the presence of these settings is confusing: it seems that all functions are provided, but in fact, this is only an illusion created intentionally.
- In order to gain access to the data, you need to call many different functions, whereas all this can be put into one simple SQL query. There are even regular tools in the system for working with the database, and why then all these various modules and functions? To splurge, and hush up the issue of optimization.
- The same goal has the so-called three-level caching and other similar functions, which are technically completely useless, and introduced solely for the inclusion of a mysterious, and therefore attractive, term in an advertising campaign.

And now, seeing that so much effort is applied precisely in order to present the system as multifunctional, modern and universal, should not experienced managers doubt that all other arguments of sellers of the same plan arise? ..

New Version Argument


But, even if suddenly, Bitrix starts to lose the argument even technically, and this question is ready to answer: a new version, which takes into account all the flaws of previous versions. It's funny to watch this general reception, when cyclically, once every two or three years, the same manufacturers offer us to buy new and good things in exchange for the bad and the old. Which was new and good two or three years ago.

The reason for the hatred of developers to Bitrix


As a result, there are several aspects:

No matter what quality the system is - the main thing is that it is sold, and then, when they buy it, the programmer will figure it out.

- neglect your work
It’s not enough just to give you back, you need to demand that you do it exactly as recommended, so that you continue to support this wrong architecture.
- psychological abuse
But it is architecture itself that gives rise to problems. Wins exactly what is wrong at all.
- injustice
Documentation creates the illusion of the widest variety of functionality of each module due to the presence of a huge number of settings. Behind the mysterious and attractive marketing names of pseudo-new technologies, technically completely useless functions are hidden.
- deceived expectations
Technically wrong, but marketable - brilliant. And you, on a fully technical field, can do nothing about it.
- powerlessness.

As you can see, there are no purely technical reasons. Therefore, the reaction is so emotional.

Ways of programming in the site management system Bitrix


We figured out why Bitrix is ​​causing hatred. Those who are forced to refine this system, inherited it, installed it because of the management decision, given the opportunity to choose. You can follow all the recommendations of the developer Bitrix.

It was difficult to act differently because
- disapproval by the developer and management community
- lack of information about alternative ways of working

This article will help eliminate the contradictions of the first paragraph, at least your internal ones. And subsequent publications, which, I hope, laziness, employment, and the presence of an audience will allow me to do, will give answers on the second point.

Search programmer Bitrix


Look at the bitrix programmers market. They are on average the cheapest. A cheaper - means lower level. There are special accelerated courses for Bitrix developers from scratch. Do you want people with an initial programming level to develop your product? Then you will be responsible for it, and next to you will be an inexperienced person who will not be able to solve problems, at least slightly beyond the scope of the trivial ones.

And if you want to defend yourself by ordering a site from a specialized development company, then you should know that they, in the majority, use the work of the same Beatrix developers, you just overpay for it to a software company. In the well-known partner company 1C, the official distributor of Bitrix, just after I was trained in it, a vacancy for the developer of Bitrix opened. And I was offered one and a half times less money than I had at that moment in my current place of work - and this is the market leader!

Yes, the process of hiring such an employee is quite easy, so the requirements for them are formalized. If your own programmer goes beyond the requirements for the Bitrix developer, it is clear that in the future you will need to make your requirements for the programmer, and this option of easy hiring for you will disappear.

But just replace it with another qualification: knowledge of SQL. This is enough for a person to understand and work normally with any system, including Beatrix.

Working directly with the database Bitrix does not allow to update the system


You can update the system, you can - no. If you do not use modules, this will not change anything for you. There will be no new features that the programmer cannot implement. But you can get possible incompatibility problems, even in those modules that you never touched.

Do not be afraid of changes in the database: they will not be in the main tables, these are too expensive changes for a system with such backward compatibility luggage.

The main thing is that the system update is an excuse to sell you a so-called “subscription”, without which the update will not be possible.

Recommendations when working with the site management system Bitrix


It is impossible to go long against yourself. But it is important to understand the reasons in order to make an informed choice, which, as always, remains for everyone.

Source: https://habr.com/ru/post/459330/


All Articles