
In our century, new technologies are replacing the old so quickly that sometimes it becomes even terribly when you realize that in the last couple of weeks when you have not read the news, so much new and interesting has happened. And the last time can be described as the time of change of ideas. And completely in various fields. Yes, and what has not changed in recent times.
In turn, I would like to talk about the so-called “Loading” moment. By this familiar word, of course, I mean the principle as a whole. We all remember perfectly the text of the form "Connection ...", "Download" or more often "Loading". And now in a huge number of different applications and devices, we see this. But what about the world? The world is going to revolutionize design, style and ergonomics. Devices are becoming more productive, the Internet is getting faster, the design is getting simpler. And only recently I began to torment the question: “From what are we still connecting and loading?”
If it is already direct, then from what in our century of super-fast technology and the Internet, we are still forced to observe the process of connection?
Perhaps it is worth avoiding this? Any process requiring a long time or indicating the very fact of “connecting” “or loading” should be considered obsolete. This moment is so firmly settled in the minds of developers that it is often not noticed. What can I say, I myself would not mind showing this point to the user.
')
It's time to move away from this relic. You turn on a device that does not connect to the Internet, it is already connected! For you, it did not even come out, for you there is no expectation from the connection, there is only an unproductive system or a communication channel incapable of satisfying minimal requests. Of course, the process as such may be present, but externally this should occur imperceptibly or ahead of the need itself. It is necessary to completely deviate from the principle of waiting for the user of something. If it is not possible to download all the data through such a narrow channel, then it is required to build a process so that the user can already receive a response from the system allowing him to form the first idea of ​​this data. As, perhaps not the best, an example can be given a comparison with the GIF format, when the uploading can be carried out gradually, and the user may already evaluate the first weak impression.
By the way, the problem does not only rest on the Internet or network applications, this point can be traced to very many types of applications that work with a decent amount of data or require significant CPU time. Often, all interaction comes down to “request-response”. So for serious treatments or downloads, it turns into a “request-pause-answer”. This swift world cannot live in a pause. The trend of the modern world requires urgent manipulation.
By the way, not everything is so bad. A lot of things have already been achieved, perhaps not bypassing the rake. So a good example is the process of watching videos on a portal like youtube. For the contrast of the problem under consideration, remember how the entire movie was uploaded to just have a look at the moments.
Places where this problem exists can be listed for a long time, but until it is formed into an idea that will be followed by the majority, the situation will remain for a long time in the old direction.
So what are the main points to determine?
- 1. The program interface should not be strictly dependent on the process.
So by pressing the button for long processing, the user does not have to watch as the program “hangs”, or it prohibits manipulating its parameters. There should be no twitching of the interface or the appearance of graphic artifacts. The program should work just as smoothly and respond to user requests. Ideally, even suggesting some changes to catch up on the fly for an already running process, say.
- 2. Data transfer should be formed from the principle of "1 to 1000" or "1 to 1 second."
The meaning of the “1 to 1000” principle is that the user can already perceive one thousandth of the transmitted information and possibly even make some manipulations. The same principle is “1 to 1 second”, where information is transmitted guaranteed for a second and everything that the user managed to transmit was able to see.
- 3. The process controller must take precedence at the architecture level.
As it becomes clear from the two previous points, the process controlling the other processes should have its guaranteed remainder of the processor time, and this guarantee should be carried by the architecture, and not by the execution.
Without listing, but wanting to see, I would like to mention a “hot” reboot for the user's main devices.
Yes, perhaps many will say that this is all idealism, or that is not required in some tasks, and in some ways I would agree. But with the above, I propose not to change only myself or my programs, I propose to change the approach, the very basis.
I think this is the time when computers are changed for people, not people for computers.