Bitrix for programmer and manager: love and hate

    Hello. I haven’t written in php for a long time, but now and then I come across online stores on the Bitrix site management system. And I recall my research.

    They dislike Bitrix much like Moscow did in the early 2000s: a successful and financial project, which objectively did not deserve its success. Developers share the same way: for some, this is a hate subject, while others look with indulgence and note that this is the most commercially successful site management system. My publications about Bitrix could not please either one or the other: the very mention of Bitrix rejects one side, and the other does not like ignoring official recommendations for development for Bitrix.

    And all this is very interesting.

    Jumla causes a 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 Bitrix developer


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

    Gradually, I added 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 on a database with a predictable structure.

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

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

    Cheated


    Hatred is born out of deceived love, and love is a view from the screen. When choosing a system for a project, you, the customers, are promised golden mountains, and as a programmer, of course, you expect a breakthrough architecture that will give you the pure pleasure of programming.

    But the further you immerse yourself in work, the more disappointed you are. And the money has already been paid, the forces have already been invested. But only this would not give rise to such hatred. With whom it does not happen, laughed like everyone else. But this is only the beginning.

    After the purchase, they continue to convince you that everything is as it should be. Your programming style is a reflection of your vision of the world. They urge you to change him. And this already leads to a collision inside you.

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

    Business Justification 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 service park. And on the other end - trust in their own hired programmer, whose quality of solutions is impossible to verify, which can quit at any time. If the site is slow, you need to buy a more powerful server: this is an understandable and simple solution. And optimization is tied to the decisions of a particular programmer. Imagine you are afraid.

    Programmers think with paradigms, while managers think with budgets. They communicate with the same managers from the 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.

    Bitrix internal developer conflict


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

    Why do technicians lose


    But why do years go by and Bitrix is ​​still for sale? The defeat of the opponents of Bitrix is ​​born from an incorrect statement of the question. Yes, technically you are more literate, but not you decide on the purchase, otherwise you yourself would be managers. And the development of Bitrix is ​​determined by just such a small confrontation between management and technical specialists, each decision to purchase a license.

    You play on the field on which you are invited 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 not better, and secondly, because then why are you? 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 the technical specialist, and therefore, this is your task - to make everything technically work. So they say to you.

    Managers are strong at work. In addition, there are usually more than one. And you need very strong arguments to convince them, even if you are consulted. But in this argument you will lose. Usually, the programmer at this stage will not have enough technical, managerial, and simply life experience to enter into such confrontations.

    Technical Aspects of Bitrix Content Management System Claims



    The arguments of the technical plan look untenable, almost every one of them can be answered, and other questions can simply be blabbed, and the standard programmer has less experience in verbal confrontations than the manager. Usually a lot of private and small claims are made to the system, which can be answered with the proper level of training. Opponents of Bitrix are involved in all these minor disputes, and in these disputes they lose.

    But try to highlight the main thing.

    - The system does not have a single entry point. This means that the entry point can be put anywhere: in a confusing directory structure, you can hide a file that authorizes anyone as a site administrator. And this crazy nesting of subdirectories itself seems to be specially created for such implementations.
    - There are modules duplicating each other in the system, and none of them can be customized to your 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 reality, this is only an illusion created intentionally.
    - In order to access the data, you need to call a lot of various functions, while all this can be put into one simple SQL query. The system even has regular tools for working with the database, and why then all these various modules and functions? To splurge and hush up the optimization issue.
    - The so-called three-level caching and other similar functions that are technically completely useless and introduced solely for the inclusion of a mysterious, and therefore attractive, term in an advertising campaign have the same goal.

    And now, seeing that so much effort has been made precisely to present the system as multifunctional, modern and universal, should experienced managers doubt that all the other arguments of the sellers are of the same plan? ..

    Argument "New Version"


    But, even if Bitrix suddenly begins to lose the argument even technically, and the answer is ready in advance: a new version that takes into account all the shortcomings of previous versions. It is funny to observe this general technique, when cyclically, every two or three years, the same manufacturers offer us to buy new and good in return for the bad and the old. Which was new and good two or three years ago.

    The reason hate developers for Bitrix


    As a result, several aspects can be distinguished:

    It does not 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 of your work It’s
    not enough to just give it to you, you need to demand that you do exactly as recommended, so that you continue to support this incorrect architecture.
    - psychological violence.
    But it is architecture itself that gives rise to problems. The thing that wins is generally wrong.
    - injustice
    The documentation creates the illusion of the widest variety of functionality of each module due to the presence of a huge number of settings. Technically completely useless functions
    are hidden behind the mysterious and attractive marketing names of pseudo-new technologies - deceived expectations.
    Technically wrong, but market-ingenious. And you, on a completely technical field, cannot do anything about it.
    - powerlessness.

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

    Programming methods in Bitrix site management system


    We figured out why Bitrix causes hatred. Those who are forced to modify this system, inherited it, installed it because of a management decision, have the opportunity to choose. You can follow all the recommendations of the Bitrix developer.

    It was difficult to act differently because of
    - the community of developers and management disapproving
    - lack of information about alternative ways of working.

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

    Search for Bitrix programmer


    Look at the bitrix programmers market. They are on average the cheapest. And cheaper means lower level. There are special accelerated courses for Bitrix developers from scratch. Do you want people with entry-level programming 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 that are at least slightly beyond the trivial ones.

    And if you want to protect yourself by ordering a site from specialized development companies, then know that for the most part they use the work of the same Bitrix developers, you just overpay for it to the developer company. In the well-known partner company 1C, the official distributor of Bitrix, just after I went through the same training in it, the vacancy of the Bitrix developer opened. And they offered me 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 a Bitrix developer, it is clear that in the future you will need to draw up your requirements for the programmer, and this easy-to-hire option will disappear for you.

    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 Bitrix.

    Working directly with the Bitrix database does not allow updating the system


    You can update the system, you can not. If you do not use modules, this will not change anything for you. There will be no new features that the programmer cannot realize. But you can get possible incompatibility problems, even in those modules that you have 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 baggage of backward compatibility.

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

    Recommendations when working with Bitrix site management system


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

    Also popular now: