How to organize data in the database of a site that has five personal accounts

About the project

In 2022, the Decade of Science and Technology began in the country. Together with the National Priorities ANO, we developed an official website for the project. Its first version appeared almost immediately after the start of the Decade. It largely copied the website for the Year of Science and Technology, which we also developed – in terms of design, architecture and technical implementation. Over the course of two years, the project has evolved, grown tenfold and acquired federal status.

Now the site nauka.rf acts as a communication hub for all events that occur during the scientific decade. In 2022-2023 alone, in our country, the organizers held 5,600+ events at the federal and regional level. The total number of participants in the main projects of the Decade exceeds 30,000,000 people.

Nauka.rf is not only an educational resource, but also a workspace. The website contains all projects, face-to-face and virtual meetings, festivals and events that take place in the regions of our country during the Decade. All this content is generated by a huge number of people from different parts of Russia. They constantly update information on nauka.rf.

Who uses personal accounts on the site

Five types of users interact with the administrative panel:

  1. Representatives of the regions on the implementation of the Decade of Science and Technology.

  2. Curators of the Decade's initiatives.

  3. Coordination Committee.

  4. Operator of the Decade.

  5. Event participants and proactive citizens.

Initially, at the MVP stage, we introduced the same system of personal accounts as on the website godnauki.rf. However, it was immediately obvious that this was a temporary solution. The Decade Portal needed a more complex administrative panel, since not three full-time site editors from one department, but hundreds of people from all regions of Russia are responsible for the content.

All these people are not professional IT specialists. They are ordinary employees of government organizations. Typically, such a person uses 2-3 highly specialized programs. For him, the Bitrix admin is a technology bordering on science fiction, which one doesn’t want to spend a lot of time studying. Therefore, we decided to develop for them a custom system of personal accounts with different access rights, where all the necessary functions were immediately taken into account.

We have developed a formula for developing a personal account interface: simplicity + intuitiveness + a minimum of relevant functions

How we organized the first version of the workspace

We started by creating five roles and setting up permissions for each. What kind of system did we get:

We customized the admin panel to provide all types with the necessary functional tools. For each group in their personal account, we created their own tabs without unnecessary details so that a person can easily navigate the interface. Here are a couple of examples of what different roles see in their LC.

In this matrix, many have certain rights to manipulate site data. For example, regions, initiative managers, and the operator can add and edit initiatives, projects, and event plans.

We took into account all the functions that are needed for content management, but did not attach importance to the fact that the site will eventually be filled by non-professional content managers. And that their number will grow from a few people to several hundred. And when this happens, one database somewhere suffers.

How, after two years and hundreds of new users, we have improved the workspace

As part of the Decade, scientific projects and events are held in the cities of our country: festivals, competitions, lectures, master classes, excursions, exhibitions. They are offered by regional curators of the initiative in your personal account. To publish an event on the nauka.rf website, the user needs to either fill out the form manually or upload a ready-made file so that the data is included in the form automatically.

In the first version of the form, when the user filled it out, the name of the event organizer was automatically loaded into the filter on the page with initiatives.

Here we encountered a problem – often people simply copied working Excel files and uploaded them to their personal account as one file without editing. Because of this, the names of the organizers were displayed incorrectly. For example, just LLC instead of Scientific LLC, mysterious names like “State”. Plus, many organizers were duplicated.

All duplicates and incorrect names ended up in the site’s database – it grew exponentially. At the same time, information about the organizers was automatically loaded into the filter on the initiatives page, and at one point it became simply impossible to use.

In fact, we were faced with the fact that initially the workspace was created for a narrow group of professional content managers. It was a narrow b2c product. But over time, Nauka.rf has grown to a federal scale, and as a result, people for whom this workspace is inconvenient take part.

Changes were brewing on their own.

Solution

We decided that the easiest way to quickly identify the organizer is to search for him by TIN. It is unique, which means that duplicates will not work.

First, the developer wrote a parser to collect a list of all the TINs of the organizers from our database. If there was no index, the values ​​were automatically deleted. So we quickly weeded out all sorts of LLC, AAA and other incomprehensible words.

Then we dealt with the duplicates. From several identical names, those that were created earlier were selected, the rest were deleted and all events were tied to one organizer. To clean the database, the developer wrote a script that automatically removed all unnecessary data.

Protected the database and connected DaData

We've changed the mechanics for adding event organizers to keep the database tidy. Now the user simply enters the TIN numbers in the field.

When the curator enters the organizer's TIN, a hint with its correct name automatically appears. First, the request goes to the site’s database; if such an organizer already exists, the information is loaded from it. If not, the site sends a request to the third-party DaData service and receives a response from there.

It turned out to be a simple way: enter the TIN, click on the prompt with the name of the organization and fill out the field.

Simplified import of data from the admin panel

We've made it easier to manage content from the admin panel. For example, in order to publish 50 excursions on the site at once, you do not need to spend a lot of time setting up data import, which is included in the boxed version of Bitrix.

The developer wrote 5 custom parsers: for events, excursions, tours, universities and specialties. The user attaches a table from Excel, clicks on the button and the content is automatically loaded onto the site. For an audience who is accustomed to working with .XLS tables, this is a plus of hundred to loyalty.

***

This case reminded me of one important thing: always look at the interface through the eyes of a “non-programmer”. What seems obvious to a developer may be gobbledygook for ordinary users.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *