Flex Databases
We made a website for a large company working in the field of clinical research.
We were approached with the unusual task of creating a training application to help pilots prepare for the Boeing 777 and Boeing 737 flight exams.
Piloting a civil aviation plane is obviously a huge responsibility. Therefore, we were given an adviser on behalf of the Customer who was a professional pilot with a huge flight experience. It was he who acted as an expert in the drafting of training materials and personally validated them.
B737/777 mentor gives access to current and constantly growing theoretical materials — training flip-cards (similar to those used in language learning), flight proficiency tests, and also — insides and first-hand news from professional pilots' communities.
The task was to develop an application for iOS. The client part was written on Swift, lightweight Firebase was used as a server.
We settled on using cloud storage as the server part did not imply the presence of complex logic and was needed only for the storage of static text, photo and video materials.
Having consulted with the customer, we refused to develop the administrative panel, and agreed to pay more attention to the implementation of functionality on the client part.However, it was important as well to leave the customer the possibility to adjust training materials and customize his application in the future. That is why, we have considered the architecture and developed technical documentation for working with Firebase before developing the server part.
During the content filling phase we discovered some limitations of Firebase structure, which we soon successfully solved.
The main drawback was the default lack of text formatting ability of Firebase. This is critical, as the material must be easy to read, that means it at least should be well designed. To solve the problem, a custom script was developed, allowing to format the text of the learning resources by adding special characters to the text of the document.
Along the way, we found that documents were added to the app at random. This is what we worked out by developing a document numbering structure. It allows you to sort documents in the app in the order they are added to the cloud storage.
Eventually, in joint with our customer, we have created a unique training application for the flight industry. The B737/777 mentor is already popular with a large number of student pilots, future professionals.