Import substitution in practice. Part 3. Operating systems

Import substitution in practice. Part 3. Operating systems

We continue our series of articles about import substitution. Previous publications have discussed options for replacing deployed systems with "domestic" ones, and specifically hypervisors of "domestic production".

Now it's the turn to talk about the "domestic" operating systems included in register of the Ministry of Communications Nowadays.

0. The starting point

I caught myself thinking that I don't know how to compare LINUX distributions. climbed into Wikipediadid not become clearer. What criteria to consider? What to take as a starting point? As for me, the most indicative criterion for a server OS is stability. But within the framework of test tests, the word "stability" sounds at least strange. Well, for a week I will dig into the deployed system ... But a week is not an indicator in a world where a couple of years of uptime is not even an average value. Stress Testing? How to load the system on the stand? Moreover, it is the OS that needs to be loaded, and not the application, and loaded in such a way that it collapses ... And if none of them collapses - how to compare? ..

But then I came to the conclusion that stability can be conditionally tightened up from the distribution kit-father of the "domestic" OS. For Astra, for example, this is Debian, for ROSA - Red Hat, for Calculate - Gentoo, etc. And only for Alt it has spun off from Mandriva so long ago that it can be considered an independent distribution kit (in relation to all other "domestic" OS). But please remember that this is all extremely conditional, because it is not known what the finalizers stuffed with the source codes, and what was changed as part of the OS security increase.

A more monitored criterion is the composition of the OS distribution packages and the packages in its repository. But in this matter it is necessary to proceed from the requirements of necessity. I have my own tasks that need to be solved, you have your own, and the approach to choosing software should be exactly this: “The task is the choice of software”, and not vice versa, as is often the case in non-commercial ...

So, the services that need to be deployed when “moving”:

  • Mail server
  • Zabbix
  • DBMS
  • Web server
  • Jabber server
  • Резервное копирование
  • Office suite
  • SUFD and Bank clients
  • Mail client
  • Browser

AD, DNS, DHCP, CertService remain on Windows servers (this was explained in previous article). But in fairness, I note that the Directory Service can be raised on the same SAMBA or FreeIPA, and some distributions have their own directory services (Astra Linux Directory, ALT, ROSA Directory, Lotos Directory). DNS and DHCP are also raised on any Linux distribution, and not everyone needs a certification server.

Mail server. I like Zimbra. I worked with her, she is convenient, she can take data from Exchange, she can do a lot of things. But it can only be deployed on ROSA Linux. It can be installed on other operating systems, but this will not be considered legitimate. On the other hand, each of the "domestic" OS has its own set of mail servers, I ran into Zimbra.

Zabbix. He has no competitors. As part of import substitution, even more so. Zabbix is ​​included in Alt Linux, RED OS, Astra and ROSA. Do Calculate it is marked "unstable".

DBMS. PostgreSQL support all "domestic" operating systems.

Web server. Apache is in all server operating systems.

Jabber server. In general, it is planned to introduce Bitrix24, but I'm used to the fact that everything takes a very long time for us, and therefore I am considering the option with a corporate chat based on jabber. I am used to Openfire. He is in composition of Calculate. There is also ejabberd as part of ROSA, Viola, RED OS and Astra.

Резервное копирование. There is bacula, is part of Astra, Rosa, Alt, Calculate, AlterOS.

Office suite. Free office suite Libre Office is in all client (and often in server) "domestic" operating systems.

Mail client. Thunderbird is in all client (and often in server) "domestic" operating systems.

Browser. Least Mozilla Firefox available on all operating systems. Yandeks.Brauzer it can also be installed on all operating systems.

С SUFD and the Bank as clients everything is a bit more complicated. Officially, all this can work on almost all "domestic" operating systems. In practice, it is quite difficult to check this, since you need to take the user, bring them to the machine under test and say “try it”. It is fraught. So for the first time, I will leave the old scheme - a virtual machine for each Bank client with Windows and a token thrown into it. Fortunately, Linux can forward tokens for sure. And there you will see.

Next, let's proceed to the selection of Operating Systems that meet our needs. But for objectivity, I tried to cover as many operating systems as possible from the register of the Ministry of Communications.

1. What to choose from

The list in the register of the Ministry of Telecom and Mass Communications is quite extensive, but following a meeting of the expert council on Russian software at the Ministry of Telecom and Mass Communications of Russia, it was decided re-check «Ulyanovsk.BSD","RED OS" and "Axis«.

Systems that I saw fit to "touch":

  • AstraLinux
  • Alto
  • Calculate Linux
  • PINK Linux
  • RED OS
  • AlterOS
  • wtware

Systems that raise more questions than they answer (for me):

  • Ulyanovsk.BSD
  • Axis
  • QP OS
  • Alpha OS
  • OS LOTUS
  • halo OS

At first, I wanted to throw screenshots, descriptions, features for each OS ... But all this has already happened. There are a lot of screenshots on the developers' websites, the description is there and in hundreds of articles on this topic in Runet, a description of the features can also be found on the official websites ... But if you do not give any "practice", then everything will again come down to theory, as it was in the first two articles. Video? there is also ... Of course, there will be a summary plate, but that is not practice ...

So in the end, I decided to just write my personal opinion and thoughts about each distribution during testing. Well, a little more useful, and not very, information.

1.1. Astra LinuxImport substitution in practice. Part 3. Operating systems

Official site

Current versions:
Astra Linux Common Edition - 2.12
Astra Linux Special Edition - 1.6

The parent distribution is Debian.

The composition of the software packages can be viewed here. (Inconspicuous button "Details" under the pictures of branded software in the section "COMPONENTS OF THE OPERATING SYSTEM".)

It takes a very long time to install. It took almost an hour and a half to deploy the OS to the virtual machine ... That is, if there is a need to deploy it on 1500 domain PCs, it will take a lot of time.

This is Debian. This is an outdated Debian. Astra has even older packages than its parent, both in the build and in the repository. In case of urgent need, it is possible to connect the Debian repository, however, this automatically cancels any import substitution (in this case, you can update the system from the Debian repository with apt update && apt upgrade, and it will continue to work ... however, I'm not sure what kind of beast it turned out in the end, I he was shot out of mercy just in case ..).

Working table "Fly". For a GUI server, in principle, it is not required at all, although it simplifies some actions. But for a custom OS, you can't do without it. In general, it leaves a pleasant impression, while being as close to Windows as possible, which will simplify the transition to this OS for users. In general, there are a lot of “-Fly” things in the system, and all this is the development of NPO RusBITech JSC. Hotkeys for the most part work the same as on Windows. Win+E opens File Explorer, Win opens the taskbar menu, and so on. In general, apparently, the developers tried to bring the appearance as close as possible to Windows.

The OS joins AD, allows you to configure authorization, etc. During testing, it proved to be stable (as far as it can be judged during the period of test operation), not capricious and quite simple and pleasant Debian-OS.

Optionally, you can install packages not from the repository. I tried on the OpenFire example. You download the package for Debian, and everything is quietly installed.

To solve my problems, it can be used as a platform for deploying Zabbix, jabber server, PosgreSQL, Apache. As a custom OS, it meets all requirements (Nice interface, LibreOffice, Thunderbird, Firefox). SUFD and the Client did not test banks.

The Special Edition differs from the Common Edition in that Special is suitable for working with state secrets and other classified documents, it is certified for this. Common - "normal" OS, can be used where certification is not needed, and you do not need to work with a secret.

Price for 1 Special Edition license: 14 900 RUB
Price for 1 Common Edition license: 3 900 RUB

1.2. AltoImport substitution in practice. Part 3. Operating systems

Official site

Parent distribution - Alt Linux (in 2000 MandrakeLinux was taken as the basis)

The first thing that pleasantly surprised me was the installer. Before writing this article, I did not deal with this system, and I was very pleased with the installer.

Main functionality

Sisyphus repository

I really liked the server OS, I can deploy everything I need on it, with the exception of Zimbra as part of import substitution, of course. Including, you can deploy a domain controller (there is its own implementation based on OpenLDAP and MIT Kerberos).

The server has a KDE desktop. Relative to the original, there are practically no changes in it. The problem is that on the user OS, KDE has not undergone any changes, which indicates that users will howl out of habit.

The main advantage of the system is the fact that it has been developed in Russia for almost 20 years. She has an extensive set of software in the repository and an established knowledge base.

I would like to note that "Basalt SPO" - great fellows. They did something of their own even when it was not yet the main stream, and continue to do so. And they do it well.

Price for 1 server license: 10 000 RUB
Client OS: 4 000 RUB

1.3. Calculate LinuxImport substitution in practice. Part 3. Operating systems

Official site

Parent distribution - Gentoo

Packages can be viewed here.

There are editions with different implementations of the GUI, there are plenty to choose from for the convenience of users. The KDE edition, for example, is very close to Windows.

Due to the fact that emerge is used to install packages, setting up a workstation can be quite time consuming if done by hand. Ansible will be very appropriate here, but it is worth considering all the options.

The system is able to update itself automatically, it can work in the AD domain.

The biggest plus of the OS, in my opinion, is the Calculate Console, a very convenient and useful thing.

There is no support for Calculate.

In general, the system is worthy of attention, almost all the services that I need can be installed on it: Zabbix (in doubt, I need to test it in a production environment), jabber server, PosgreSQL, Apache. As a custom OS, it meets all requirements (Nice interface, LibreOffice, Thunderbird, Firefox). SUFD and the Client did not test banks.

Price per license: is free

1.4. ROSA LinuxImport substitution in practice. Part 3. Operating systems

Official site

Current versions:
ROSA Enterprise Linux Server - 6.9
ROSA Enterprise Desktop - 11

Parent distribution - Mandriva

The user OS on Hyper-V does not start. Even the installer can't start. "a start job is running for hold until boot process finishes up .." Had to deploy to PC.

The KDE desktop in the ROSA implementation is close to Windows, which is good for a custom OS. There are also options with GNOME, LXQt, Xfce, there are plenty to choose from. The only problem is that the LibreOffice version is pretty stale.

The software content can be found in ROSA Wiki

The server OS proved to be quite stable. On this system, you can raise all the services that interest me, including Zimbra.

With AD is able to work, is able to be authorized through it. Can also be an authorization server. Including there is its own implementation of the domain controller - RDS, created on the basis of freeIPA.

Price for 1 server license: 10 250 RUB
Client OS: 3 900 RUB

1.5. RED OSImport substitution in practice. Part 3. Operating systems

Official site

Just like in the case of Astra - a very long installation. One and a half hour +-

Parent distribution - Red Hat

The basic set of packages can be viewed here. Technical characteristics of the RED OS operating system in the “SERVER” configuration. Specifications of the RED OS operating system in the “WORKSTATION” configuration.

Desktop - KDE. With minimal changes from the original. The wallpapers are boring and the icons are red.

The version of the Linux kernel is one of the most recent of the "domestic" operating systems on the market.

Clings to AD, authorization can be configured.

Returning to the fact that the GUI is not important for the server, RED HAT is RED HAT. It is stable, documented and there are many articles for it on setting up anything.

I can say with confidence that the system is not bad. To solve my problems, it can be used as a platform for deploying Zabbix, jabber server, PosgreSQL, Apache. Bacula is not on it. As a user OS, by and large it satisfies the requirements (LibreOffice is outdated, Thunderbird and Firefox are). SUFD and the Client did not test banks.

Price for 1 server license: 13 000 RUB
Client OS: 5 000 RUB

1.6. AlterOSImport substitution in practice. Part 3. Operating systems

Official site

Current versions:
Server - 7.5
Desktop - 1.6

Parent distribution - openSUSE

All the time during the installation, as well as using the OS, I had a strong feeling that I was working with CentOS, and not with openSUSE.

User authentication takes about 20 seconds, which is at least bewildering.

On a virtual machine in the Hyper-V environment, the mouse cursor turned out to be invisible ... It worked, highlighted the buttons, clicked on them, but I did not see it. Reboot did not help, I did not see the cursor.

The list with the composition of the software packages could not be found, so I had to dig into the repositories by hand. It was not possible to dig everything that we would like, but in general a lot of things were found.

The KDE desktop with hotkey support is pretty handy. The design is pleasant, close to Windows, which is good for end users. In general, the GUI pleased, if not for a bug (or feature) with an invisible cursor.

With AD is able to work, is able to be authorized through it. Can also be an authorization server.

I had no problems with AlterOS, except for the cursor, so the system is quite functional.

To solve my problems, it can be used as a platform for deploying PostgreSQL, Apache. As a custom OS, it meets all requirements (Nice interface, LibreOffice, Thunderbird, Firefox). SUFD and the Client did not test banks.

Useful buns in the form of images and documentation.

Price for 1 license: 11 500 RUB

1.7. wtwareImport substitution in practice. Part 3. Operating systems

Official site

WTware cannot be called an OS in the usual sense of the term. This system is an add-on to the server OS, turning it into an RDP for connecting thin clients, this is a package that allows thin clients to boot over the network. Supports Windows Server 2000 to 2016, Hyper-V VDI, Windows Remote Management, xrdp on Linux, Mac Terminal Server.

It contains a TFTP server for enabling clients to boot over the network, an HTTP server that works in conjunction with TFTP, and a DHCP server for issuing IP addresses to clients. It can also boot client machines from hdd, CD-ROM or flash drive.
software is good documented.

Price each licenses:
1 - 9 licenses: 1000 rubles
10 - 19 licenses: 600 rubles
20 - 49 licenses: 500 rubles
50 - 99 licenses: 400 rubles
100 or more licenses: 350 rubles

1.8. Ulyanovsk.BSDImport substitution in practice. Part 3. Operating systems

Official site

Current versions:
Ulyanovsk.BSD 12.0 RELEASE P3

Parent distribution - FreeBSD

As it was written above, Ulyanovsk.BSD has every chance of being removed from the register of the Ministry of Telecom and Mass Communications, since it is based on FreeBSD, practically does not differ from the original, and uses its repository, which, within the framework of import substitution, causes a nightmarish confusion in terms of what can be considered legitimate software.

Ulyanovsk.BSD was "developed" by one single person. Something tells me that little has changed internally from the FreeBSD parent distribution. In a word, I will not consider it either, although I will give some data in the summary table, just to be.

Moreover, the downloaded distribution did not start on Hyper-V either in Windows 10 or in a 2012R2 cluster environment. The hypervisor simply did not see where to start. I decided that I didn’t need it at this time ...

I don't see the point in writing anything else, there are a lot of reviews on FreeBSD, so let's move on, don't delay.

Price for 1 license: 500 rub.

1.9. AxisImport substitution in practice. Part 3. Operating systems

Official site

Latest version: - 2.1

Parent distribution - CentOS

Since the previous article was written, the situation with the OS site has not changed, the download link still does not work. Comrade Zolg in the comments I threw a link to the distributions, thanks to the Man. But the very fact that there is still no answer to my request to the developers, problems with the site and the entry of the OS into the register of the Ministry of Telecom and Mass Communications have been called into question, evokes not the most optimistic thoughts about the prospects. At a minimum, I'm starting to think that OS updates are no longer worth waiting for, and if so, then the system is dead.

The fact that the yum update command gives “No packages marked for update” is also in favor of the idea of ​​​​ending support, that is, since the last release on 2018.11.23, which is already half a year, nothing has changed in the repository.

Package content OS OS is a standard set for work, nothing more than usual.

The installation is fast enough (in relation to all other distributions). The repository is rather scarce, the version of the Linux kernel is very old - 3.10.0, the software packages are also outdated.

I really didn't like the GUI. Not only is the taskbar menu strangely done (categories on the right, buttons on the left), but it is also uninformative. It is because of these GUIs that ordinary users hate Linux in any of its manifestations ...

The only thing that I liked, and what I was stuck on, was the built-in game 2048 ... I killed 15 minutes on it until I came to my senses ...

License price: is free

1.10. QP OSImport substitution in practice. Part 3. Operating systems

Official site

“QP OS is not a clone of any other operating system and was developed “from scratch” ...” (c) “Cryptosoft” presents this “uniqueness” as a plus of its system, in fact, from this we can conclude that no bugs have been identified “ features” in it is dark, and only developers can administer it, which significantly reduces its cost in the eyes of system administrators.

The last article provoked a reaction from Cryptosoft. Their representative registered on Habré only to express his “fi”. The comment was as follows:
Import substitution in practice. Part 3. Operating systemsWhich told me a lot about the qualifications of the developer. After this official announcement, I decided for myself that I would not come even a kilometer closer to their products. If a developer declares that “the division of hypervisors into types is a conditional thing,” then he clearly does not understand what he is talking about. But, I decided to be objective, and requested a test distribution. Didn't receive an answer. C.T.D.

In fact, "Cryptosoft" - well done. They really did something new, something of their own, and my attitude towards them is based on their strange logic (and the statement of the person who wrote comments on the previous article on their behalf). But it is also worth noting that they have a very strange approach to developing interfaces. For example, the interface of their hypervisor is 99.99% copied from VirtualBox (including the “design” of the buttons ..), the interface of the QP DB Manager Tool is from Veeam, etc.

Price:
Another reason why I don't want to get involved with QP is that the OS is not freely available.

1.11. Alpha OSImport substitution in practice. Part 3. Operating systems

Official site

Apparently, the OS as such does not exist. I'll explain why. It cannot be bought. It cannot be downloaded (even on blocked sites, if you know what I mean). She only has a description, a closed VK group, one video on a youtube channel and a website with a description (several screenshots and a video). All. News section hasn't been updated in a whole year. And no one ever responded to my email asking me to buy it.

According to the description, this is almost a God-anointed gluing of MacOS with Windows. Exclusively client, server version does not exist. Pretty, and the wallpaper isn't boring... Though their self-promotion is fun. Arguments in favor of Alpha OS sound like this:If there is a place in the staffing table for a specialist in multimedia or advertising materials, you will have to pay an additional 21 rubles per year for each application that is needed for his professional work:
— raster graphics processing: Adobe Photoshop Creative Cloud ~ 21 rubles. in year
”(c) And then the tale that Alpha has a free GIMP ... And not a word about the fact that it is also available for Windows ...

Price:
Wasps are not for sale even by direct request to the developer.

1.12. OS LOTUSImport substitution in practice. Part 3. Operating systems

Official site

«In nature, there is no trial distribution of Lotus OS. There are many reasons for this.
You can purchase a single license in softline, for example, or from company partners.
Testing (meaning testing in accordance with the requirements of the GOST34 family), as such, the Lotos OS has been going on for 4 years, in different instances with very high competencies.
Thanks to such testing, the Lotos OS is in the information security forms such as SecretNet (Security Code), DallasLock (Confident), cryptographic information protection tools such as VipNet (Infotex), CryptoPro (CRYPTO-PRO), antiviruses such as Kaspersky antivirus.
If you are concerned about compatibility with your existing software or hardware,
we, taking into account your interest, will connect to the solution of your problem. Testing for the sake of testing is not interesting.
"(c) (exact quote)

Since the developer did not want to provide a test distribution, he is not interested in implementing his product. Even Windows has a trial period... So the information will be purely theoretical, taken from the documentation and analyzed.

From the interesting:
«Lotos Directory Native Directory Service…" (from)
Well, it's hardly her own. Under the hood, there is either the same samba, or FreeIPA, or something else ... This is not in the documentation.

«The Lotos OS implements the ability to use group policies from the administrator's graphical interface." (from)
Judging by the video presented on the developer's website, yes, you can. But the feature set is so small and limited that it leaves a lot to be desired. Yes, it's better than nothing, but... I don't know. I was not convinced. For it looks like sending commands to the same selinux and firewall ... Well, of course, I’m mistaken, but it doesn’t change the essence of the matter.

The administration console of the Lotos operating system isolates the configuration files of the operating system from the administrator, providing him with a clear graphical interface for changing system settings" (from)
What does it mean that the configuration files are hidden even from the administrator ... Well, how can linux admins, who are used to red-eyed, work with this? For windows admins, this is a slightly more familiar mechanism, which will simplify requalification a little ... But it will significantly complicate the life of linux admins ... In a word, I would leave access to files and screw the user interface on top, but that’s not all ...

The composition of the packages in the repository also could not be found. So the question of what we can get as part of the OS remains unanswered.

Price for 1 server license: 15 555 RUB
Client OS: 3 666 RUB

1.13. halo OSImport substitution in practice. Part 3. Operating systems

No information was found for this OS. It is simply in the register of the Ministry of Telecom and Mass Communications, and that's it. There is a link to the product that leads to the integrator's website, but no information.

About prices. My personal opinion, which I in no way impose on anyone, and do not ask to be accepted as truth, is the following:
The absence of a product in direct sale suggests that this is not really a business, since each customer will have their own price set within the contract, and I personally consider this as a “standard situation” in the country, which has nothing to do with serious business, and directed solely at cutting cash.

2. Summary

So, we bring the dug up information into a digestible form.

Basic information on server OS:

Import substitution in practice. Part 3. Operating systems

*Ulyanovsk.BSD is FreeBSD almost in its purest form.

Key services that can be raised on server OS:

Import substitution in practice. Part 3. Operating systems

Custom OS:

Import substitution in practice. Part 3. Operating systems

AstraLinux - workable. Debian is stable. For the user, the GUI is close to Windows Explorer, which will simplify the transition to a new OS. As a server, it is suitable for solving almost all the tasks that I need to solve. Everyone except Zimbra.

Alto - quite a decent system. Maybe almost everything I need. Stable. The desktop workstation users will be extremely unusual. As a server, it is suitable for solving almost all the tasks that I need to solve. Everyone except Zimbra.
But there is one big BUT. Support cost. A perpetual license costs 1.5 times cheaper than technical support for a year. 24 rubles a year ... If not for the price of the issue ...

On the Calculate Linux you can deploy almost everything that interests me, but the lack of support is such a thing. Yes, for free. But if something happens, the heads of admins will fly.

PINK Linux - workable. On it, you can raise all the services that I need, including Zimbra. From the point of view of the user OS, the problem is in the outdated version of LibreOffice.

RED OS - rather yes than no. In addition to the mail server and backup system. As a custom OS - probably not, just because of the outdated office suite. But the price of distributions is higher than that of competitors… But this is RED HAT… but… but…

AlterOS - neither Zabbix nor the jabber server can be set up on it. Other than that, it's a pretty decent system. As a client OS, the problem is in an outdated office suite, if not for this, then it’s quite a good solution.

wtware for the work of thin clients - it is quite suitable. But this is not an OS, so most likely it will not be possible to count it in “pieces”. That is, in my case, when there are 1500 client PCs, it will not be possible to report on import substitution by the fact that we transferred all 1.5k employees to thin clients and we have another 300 server windows, because these 1.5k are not OSes ...

Ulyanovsk.BSD - No. For it raises concerns due to the fact that it is likely to be removed from the register of the Ministry of Telecom and Mass Communications. Although FreeBSD is a good and proven thing, but this product ...

Axis - until the issue with the viability of the developer company and support is resolved - definitely not. If the decision is positive... most likely not either... Although I'm used to CentOS, I still don't.

QP OS - Definitely and definitely not. With such specialists and such an attitude… This is my subjective opinion, but it will not change.

Alpha OS. What is written about her on the Internet and shown in the video sounds tempting. If only this system existed in real life...

OS LOTUS. Buy a pig in a poke? No thanks. If you are not interested in testing, then I am not interested in buying your software for the sake of testing.

halo OS for obvious reasons - also not, because I generally have no idea what it is and what it is eaten with.

3. Сonclusion

For deployment Zimbra Collaboration Suite I need at least 1 copy ROSA Enterprise Linux Server, and preferably 2 - to configure the proxy.

To raise all other services, it makes sense to use Astra Common Edition or RED OS, since in the future the price of these systems will be the most profitable due to cheap support. But personally I like Astra more.

Part of non-critical services can be deployed on the basis Calculate Linuxso it's free. But due to the lack of support, these should be such services, the downtime of which is not critical for the Enterprise, since system administrators are directly responsible for their performance.

Custom OS - I prefer the same Astra CE. It has the latest office suite, a user-friendly GUI, and the system can do anything you might want from it. Yes, it is cheaper than competitors.

If there is a need to deploy a directory server and other infrastructure services, it makes sense to look at the OS of the same family that will be deployed to users, at least in terms of compatibility. In my case, if I still need to do this, it will most likely be Astra CE.

4. PS:

I'm not familiar with CAD packages yet. And I don’t even know if it’s worth starting, because I found free “domestic” software in this category only in ROSA packages. But there is a huge problem with licenses, because if there is some mistake in the calculations, due to which the expensive product of the Enterprise will not work, the responsibility will be borne by the engineer who developed it, and not the software manufacturer, who should have guaranteed the error-free operation of his systems ... This issue is complex, and most likely it will be decided by leaving PCs running Windows in the development departments, or all this will somehow be redone and all calculations will be redirected to the data center. I haven't thought about this yet.

4.1. PS2.: "From the author«

a) I tried. Is it true. But I understand perfectly well that I probably screwed up somewhere. Please, before you furiously poke the “lower karma” button, write in the comments what is wrong, and I will try to fix everything if it is appropriate and objective.

b) I understand that the information in this article is not presented exactly as I would like. There is some confusion and partiality here, which I myself consider not quite correct. But in view of the fact that the work has been done quite a lot, I reserve the right to submit it all in the form in which it is.

Source: habr.com

Add a comment