About this talk
This talk explores the fundamentals of quantum computing, emphasizing its evolution and current capabilities within cloud environments like AWS. The speaker discusses key concepts such as qubits, superposition, and entanglement, explaining how these properties differentiate quantum computing from classical computing. He highlights quantum algorithms, including Shor's and Grover's, detailing their implications for cryptography and data processing efficiency. The session also includes a demo using AWS Bracket to demonstrate real-world applications and the accessibility of quantum technologies for developers. Throughout the presentation, the speaker advocates for the potential of quantum computing to revolutionize various industries by solving complex problems that are beyond the reach of traditional computers.
Full transcript
test test one test one test one Well, good morning everyone. I hope that You managed to get some sleep. If not, I'm sorry. We are starting. There are some things outside. And I'm glad to see you this year too. U [applause] I want to tell you a little about Ruse. Comv and how all of IT was born tour. As you know, he is part of so aa
set of events. In fact, during the already distant 2012 group enthusiasts have gathered in Varna and We decided to gather some of them on the beach, I guess. Oh, let's do one. conference and they really made conference. Apparently it's become cool. They saw that there was ah there is a search for this thing and this something has grown over the years into a whole tour in these
five cities. These are Luktarnovo, Plovdiv, Burgas, Varna and I guess you know who Ruse is. Oh, so every year we have that, we do that. T-shirts for every event this year too. If anyone is interested, and he likes them, they are on the outside reception for a donation of 20, you can Get one. And this money that we collect from these t-shirts, they turn back into events
like this. Only I say, we don't invest them in questionable So, this person who just now We smiled at each other strangely, actually. this is a person who decided this year to supported our cause very strongly, for for which we are extremely grateful. Ah It's without the cat again, but we thank him again. I'm not going to point the laser at you here. I played enough this
morning. And others partners who really help us to do events like this, these are our media partners from D.bg. [music] Podkrepi BG Foundation with great causes. In the front left you can ask, to tell you a few details. And of course, our friends from Open Suse, they are in the front right, he is mine right, your left, Anyone who is interested can go to bombard them with
questions. So, important other important things. A coffee You probably missed it before. A the food will come after the third lecture, so what a free lunch, as you said the colleague. And the toilet is in the front on the left. I guess most of you know her, we just still say aa mine in front of My left is falling. That's right. Lightning Talks. This is a are
short five-minute lectures open to you. Anyone who wants to share something, thinks it would be interesting. can it to be recorded at the front of the registration. A I think we have about six slots for lightning so much. You have to wait 5 minutes. to tell his idea. After these 5 minutes here is this man, the almost invisible, aa starts to aggress and yes directly take out.
And joking aside, we really put it 55 minute timer. And the lecture should to be finished and that's it. I think we're ready to we are starting and now Lyudmil will tell us about Quantum Computing in the clouds. Oh, yes. And one more important thing to tell you about Wi-Fi Wi-Fi network. User preferences. It is also important for lecturers. What did we do? Ah, we're changing. Okay.
first lecturer and still continue with this enthusiasm. I see there are quite a few people who came here with an interest in follow the lectures a little about me. I have been developing software since 20 years now. A software architect technology mainly in the areas related to Java, with AWS Python. Lately I've been using active and a artificial intelligence hype, but quite a lot useful in some
situations. I have participated in the construction and the expansion of several company offices in Ruse. I have also conducted trainings in programming mainly in Java and my interest in quantum computers is more like a hobby. And still on most of the world is probably a hobby Reserch, because these are just starting to arrive. computers. I decided to give this lecture aa to show how far the process
has come or at least to what extent it can be currently using. What specifically will I show you? Is connected with the basics of quantum computers QBT, superposition, entanglements, several quantum algorithms, not all. I'll just hint in more detail. for the grot. Next we will go through the AWS bracket the platform. And I'll try to make a demo if The demo didn't work. Yes, I'm saying it
from now on. I have prepared the data directly ready at a presentation, but hopefully it will work out, because there are always those online events and live work, there may be some problem. And finally I will show you examples of real-world usage of these quantum computers from big companies, how they happen. Are there people here in the hall who have Interested in quantum computers? They know Okay,
great. Yes, that means you won't be I speak for myself. A that's nice. I hope we can discuss And then, right, when we're done, why quantum computers and why now? They are still under development at the moment. There are several large companies that are developed aa to a certain extent their your devices. IBA maybe is most serious such company that aa has the most experience in this
area, but there are companies like Google, they also have their own quantum computer, aa different universities in the world, so they are becoming more accessible to mass use. Each one of you can actually really touch quantum computers. I'll show you later. and how it happens and at what cost, because everything has a price. And it also has very easy access to the network, to the cloud, in
the sense of through the cloud, to quantum computers, so you don't need to go anywhere, right, yeah you perform these operations. And they are currently being used and in practice algorithms that develop and are trying to develop the industry way that the classics still a they can't do it this way yes, leave this one quickly, this one, this one speed and this fast action. And why? now?
Because the sooner the better entered than later. This is the person who may have given the foundation of quantum computers, Richard Fayman. And he said this thought that thinks no one understands quantum mechanics about 60 years ago. She still is still valid. Yes, there is a mathematical models that describe. We know roughly what's happening, but entirely someone to understand in detail why and how there is none.
Steps are being taken, but we are still early stage. And I'll start with the few basics the element of quantum computers. It is inevitable that we will go through a little physics and a little math. I've tried, haven't I? to remove completely as much as possible the equations, but still that we use quantum computers but it brings the need to know a little and physics, and mathematics,
not entirely programming, because in order to be able to we program for these algorithms, we we need to know exactly what's happening with qubits and to at least imagine what It happens. What is a qubit? In the standard postulate for bit, which is zero or one? Each of you has heard and knows. And it has two states, or zero, or one. We have no doubts there. And
long ago has been implemented, there is nothing that is not clear and it exists only in one of both positions. Qubits on the other hand It's called a qubit because it's a quantum bit. such a mechanism that will tell me a little more in detail in a moment. It uses such a mechanism or rather such is his nature that he can be in both states simultaneously and
at zero and in a unit. Or is that what they call it? is called superposition. next diagram, what you see is basically a block the sphere. It was created by a scientist felix block and perhaps best shows what exactly is a qubit with the mathematical equations that you they are needed for him. And now they won't I explain in detail, maybe they look complicated. Actually there is
little trigonometry, and vectors, matrices, but I won't go into details. It's about everything that is trying to describe this device, is the probability of where a state is located the vector or where the vector is located the state of this bit, because it a indefinite in space, right, definitely determined, and it exists in superposition that can be in every single point on this sphere. For easier calculations
have been taken as the base of the sphere with radius unit. And this radius unit actually shows and is used in many places as in the equations as total probability to find the state of the given qubit. What is a super position? I searched a lot for what picture to use to illustrate great position. One of the pictures that often used is a spinning coin. That is,
it can be determined that a qubit is in constant rotation, as the given A coin is spinning and it has no heads. or the tora, and it is in constant in constant superposition. Of course, in the real world we don't have such a real example, which we can give because this is very specific only for the quantum world. In the real world, only Let's give you an
example. And only when this coin is and stopped or be measured, then it is visible whether it is heads or tails. We actually flip the coin or we spin, when it falls it is zero or one is a dream. In a similar way, it is with the quantum bit. And of course Schrödinger's cat didn't have How can I not show it? I guess it's a lot. famous.
Everyone knows at least that much. A But what did Schrödinger want to say? It is very misunderstood and in many places this is a demonstration of superposition. And in fact, Schirroding wanted to show that There's no way the cat is alive or dead. Isn't this thought experiment, which is created here is related to the fact that we have some kind of trigger, we have poison gas in
a certain room. The trigger is collapse of the atom, example atomic decay, which in in the next hour there is a 50% chance that decay and emit gamma rays, which will pull the trigger. Accordingly we don't know if he will be released or not in this one hour and until we open this box that the cat is in, not we know whether the cat is alive or
dead. But the idea of this physical It's more of a thought experiment. Schrodinger's experiment is to show that it is absurd to suppose that there could be kind of like a superposition, but actually The reality is different. That is, he is not wanted to accept the fact that there might be something like quantum superposition and so did this experiment, not to show that it exists. short equations
for measuring this superposition or what does it mean? In fact, we can imagine in most cases that this is a a Pythagorean theorem that we have leg and hypotenuse, where the hypotenuse is a unit with is of length unit and it is the probability that a given state is in this position. position and this formula represents something like that. That is, the wave function, which is the
superposition of zero or one, is associated with some coefficients alpha and beta, whose sum of squares is equal to one. That is, the probability given function to be at zero or at one is to be at zero or in one is always one, that is it is always 100%. However, at the moment when let's do the measurement, the wave function collapses and respectively, the qubits of this
superposition, which has, he automatically chooses one from the state and we measure it either in zero, or in one. From then on, after this collapse or after measuring the qubits, he can no longer return to great position. He is finished. In order to continue the calculations, we need new qubit. And that's why these computers do this they do. create a qubit, perform certain measurements, then these measurements
end for the next experiment we will need new QBs, which to initialize. What is the power of the qubits, of the superposition that can to use? I have illustrated here that one Qbit is two states or is that two of the first degree. 2 qubits are two of second or four states. 10 qubits are 2 to the 10th, and 300 qubits that means, that we can have
2 of them at the same time degree 300 states of this system. And on calculations this is more than a more possibilities than are the atoms in The universe, right? sounds pretty ah impressive. Besides superposition, the other thing that used in quantum computers is quantum quantum entanglement or entanglement or interweaving. In Bulgarian there are many terms. In English, emlement. And actually I forgot to say that on
purpose I also made the presentations in English, because there are many terms that Bulgarian are difficult to translate and I decided to I use English entirely. So quantum entanglement we have two two elementary particles that can they could be photons, they could be electrons or any ions also use in moments that are woven through using different technologies. For example, the easiest way to weave in is using
a laser that passes through crystal. Oh, we have polarized light, vertical and horizontal and pass of this laser, actually the two photons, who are from this world, two photons from this light, become intertwined. In the tile industry means they are already one. That is, we we accept them as part of a wave function and no matter at what distance these quantum particles are separated, and they always
stay in communication, which it is not correct to say communication, because there is no such lightning-fast communication. Scientists are still trying to determine how exactly does this happen quantumly interweaving, but they remain in constant relationship, when and how do we understand that Is there a connection? This connection is understood, when we make a measurement of aa one from both from one from one of both elementary particles.
When we measure, we automatically we also understand her condition and know the state of the other particle with which This one is woven. The other particle can is millions of kilometers away, it could be in another galaxy. It has been theoretically proven that that regardless of the distance between them, and the moment we measure one, we can determine what state it is the other. And this has
been proven by a number of experiments that are also being conducted in the moment. Oh and there's still no speed established. Everything happens instantly. That is, it can be said that it is very faster than light, but that doesn't it must be assumed that they broke the barrier of light because the light is defined as having the highest speed in space for the transmission of certain information,
while here there is none information. Here we must assume that this is a wave function that a collapses into two elementary particles, for whose condition we know. Those were the basics, right, at a low level things that are used as superpositional for the creation of the quantum computer. What you see, we move on to so illustratively I have done I have taken two pictures that show how
it is right now the quantum computers, which are on the right, on the right is a picture of IBM. computer from a the last few years, and on the left is a The 40s. You see how the beginning of both some huge rooms with cables, all sorts of things. We hope soon this thing will pass into smaller ones scale and be more accessible. Why is there need
for such large rooms right now for quantum computers so that they can work and have a great position in tile and no noise, because these are very big problems that need to be are resolved. And a quantum computer has need for serious cooling. This cooling is achieved by a number of ways. they mainly use, right, and liquid nitrogen and other mechanisms, but the temperature it should stay
at, the chip, the quantum chip, is close to absolute zero, right, possible lowest. In theory, they're trying to upload this one temperature. there are successful attempts to it can be done, right, approximately usable in the camp temperature, but there encounter a number of problems, especially with noise and with the introduction of various interferences which and they break this process. What can be done in the classic with
the classical quantum computer and with with the classical computer and the quantum one actually? And you know, with the classic we have step-by-step execution. There is no way fulfill a lot of parallelism, because rather it is pseudoparallelism. Always us there we have bits that should be zero or one. No way. as in quantum computer to have this parallelism and the superpositions that give us theoretically quite large
quite large productivity and quick finding answers in any solutions. In the classical computer, when it becomes search question, we need specifically to set this search and crawl, be it arrays, databases, data or whatever anyway, while in quantum we have such mechanisms by which we strengthen the correct answer. Amplification means phase or something like an amplifier. Further on, I'll show you a diagram, and in the dark what
it is. We have this amplification mechanism we suggest to the given function that is currently performing the search that we want Let's prioritize this correct answer. And another problem, which a classical computer cannot decide or decide, but very slowly and it takes a lot of resources, it's with simulating different types of processes, as a simulation of a molecule bond, joining of molecules, substances or oh the weather
of atmospheric weather. It's a question. In this case, quantum computers they do quite well because they work with materials, that is, with the tools, which is real in the physical environment. That was pretty much the basics. Now, Of course, I couldn't go into detail. more, but I'll show you a few aa quantum algorithms or what represents exactly the quantum algorithm and why it's called quantum. First, the
quantum algorithm is specially designed to perform instructions on quantum particles. That is, it is not just a standard type algorithm that you have seen in programming a classical computer, and it is designed to use states such as superposition and quantum weaving to achieve the necessary result. the other or main thing that distinguishes from the classic one is that it can be used for many short time to
find a given given solution, using simultaneously all possibilities, that is, he goes through all possible ways and thus a gives us a much faster result. The most famous such algorithms, which are currently used both for resarch and for real situation, this is Shore's algorithm, Grover's. Shore's algorithm is actually this, there are prerequisites to break cryptography. It performs very rapid breaking of one to one tipper number of
multipliers, right? This is the main thing that is represented in RSAпt we have two huge a prime numbers that are multiplied and they create an impossibility for the number obtained to be broken. With our algorithm this it happens much faster. Now at the moment theoretically it is. In practice there is some attempts, but it's still far from that, which should happen, right? It's more like a bit
of hype in this algorithm right now than to did real work, but still It gets better and we move in that direction. Grover's other useful algorithm, he is used to search in unstructured data, such as the speed at which it can looking for, root of N or n is the number of records, which we have. If we have 1 million records, this means he can do only
1000 checks and get to the right one element. also has great potential. Practically there is more to be desired from it to start being used in real bases, because the base itself must to be prepared, and in order to be able to the grorim to be applied, and this preparation It takes longer than letting go. standard search with a classic computer. But let's hope you're going in
the right direction. The remaining algorithms we will not list them one by one. They are used, some of them are for example for is transformat. This is transformation of narie. She is very used in the short algorithm. Antum face estimation is used in the simulation of molecules. The National Quantum Agenor is the one who is for medicine and for That is, we will have a much easier
time there. application and rather testing of medical medicines, without the need for them to be directly applied to animals, humans, because we at the molecular level will be able to understand how they affect, which is It sounds pretty promising, doesn't it? And the last algorithm is Quantum Approximate Optimization Algorithm. He mainly used in logistics processes aa and in a schedules. Quite a few companies are trying to
implement it and be optimize the processes they have in them. I'll tell you a little more about the grove. the algorithm. I'll just sketch what represents one to get idea approximately and what does an algorithm look like and what exactly right. I have already told you, but partially. for him, but his idea is that it speeds up a lot of demand in unstructured and bases and has
potential to speed up and reduce search time in the future. What does this look like schematically? algorithm and what are the phases that right. So during initialization we assume that all elements are in one and same condition. Then we have like this the so-called oracle, but it is like a black box and it performs. By the way, if only I had forgotten to specify, all these elements
that you see, they are literally physical actions on the given set of qubits. That is, the initialization physically initializes these qubits. A the oracle makes it so that it marks and the response through phase shift. And yet the next thing that happens is an amplifier that tries to based on what Orako has done, to strengthen the response. That is, we have several the process they are trying
to simply put, to fit the correct answer and so they gradually arrive through increasing the probability of the correct answer, the correct one, the result becomes question. Eventually we get to increasing its probability. In quantum algorithms are all based of probabilities, because we have super a position that is not defined and it never cannot be determined. And that's why the whole idea of quantum algorithms is to
is made so that the probability a is can be ignored as much as possible, find algorithms to reduce the probability of error and to use this aa and increase the probability the correct result always comes out because in many cases in many cases there are those who still these algorithms are at a lower level and they are not as effective. What is real as a chain? So
what you see, are certain states. That is, we have entry level. The first aa the first signs, so to speak, are the qbits, and then with these notations, that you see, hx and so on and so on onwards, they enter different states, like aa first they go into superposition, that is initialize, enter superposition, then we have a quantum entanglement and so I won't go into details, okay?
It looks a little scary for sure. what there is, but imagine that This is a block diagram. Most of you, who were involved in programming, are learned what a flowchart is. This is quantum block diagram, a kind that shows what stages these go through qubits. And this is real, and these are real physical functions and actions that are performed on the qubits. And that's why there's no
way to go through only a programming of some language, and it must be understood and well enough what's going on with qubits and how they pass through different states. And so. So I already said that hypothetically the grog rhythm has quite a few a better chance of being and to find the searched element in many fewer operations, than the classic one. Yes. Because I see that time
is progressing like this, I'll speed things up a bit and move on to Amazon Bracket demonstration. Why? Amazon bracket and why I chose you show exactly that, which is part of the title of the lecture? Well, this is cloud Amazon service that is perhaps the most so currently available and offers opportunity to perform various types of aa operations on real quantum computers, as they have tried to
unify communication with these quantum computers. That is, we have one interface, a language we write in and accordingly we can choose whether we want should we use a local simulator, or we want to use a given given real Payment, as always with Amazon, is flexible. We have a free, I think it was an hour a day, free access to simulator, however, not to a real quantum computer.
That is, you you can make an account on Amazon, yes register, to play for real a notebook to show you the code and to experiment without paying nothing. Of course, you have to be careful, because sometimes just one click can it quickly costs you a few dollars or a few dozen or hundreds. It happens. very often. And what are the main computers that are do they use
Amazon bracket? These are real quantum computers or IQ, IQM, QR or GTI. They are different types of computers. quantum, which use different technologies, because right now quantum computing technology is not only one, right? Almost everyone is developed his own, based on this, which he considers to be the most applicable and best at the moment. You know, IBM they do one, Microsoft another, Google third. Accordingly, we currently
have access to these four real quantum computers. And What can we do with Amazon Bracket? We can do research on these algorithms. That is, we can use them ourselves. They are prepared and there visually. we can test the hardware itself and it can to develop open source software. By the way, these are all companies are very open to enthusiasts because they lack sufficient personnel, they lack people
to do tests, yes they invent new things. So I will and it would be appropriate or if you need to turn on and do experiment. That's right. What is Amazon in general? the brackets? We have a user who is trying to created a notebook. This notebook actually represents, maybe some of you have seen, we have code and text in one file where we we write the algorithm
we want to feasible. After we write this code, it goes through the Amazon bracket. It is performed either on a simulator or on a quantum computer, depending on what we are chosen. And the technical elements that it has. This I won't go into details so as not to I'm completely stuttering. I'll just pass by quickly. through prices. And you can see how much cost for execution on
the given quantum computer. Up and down about 30 cents per task and 0.8 cents per shot or attempt. What does this mean? We have a task, which is the algorithm itself, but in order to be able he should be well enough and natural and to be able to raise the probability, he must be executed repeatedly, 1000 times, 5000 times. That's why we have here payment. One is
for a task, the other is for a time in which it is performed. If you want to use and are reserved these quantum computers only for you, you see 7000 per hour, 3000 per hour and so on. Simulators on the other hand cost much cheaper, right? 7 cents, 27 cents per minute. I will show you. the demonstration I made. Total taken from what you will see here
on the presentation, is directly copied from notebook, notebook from the real environment, for not to run away, right, not to waste time. I'll give you a screenshot of a few. the code and what exactly I'm doing. So the first one is a demonstration of Bell State or this is the most basic. What does Bell mean? State? That is, if you see where it says circuit point H
0 C 01, what does this mean? We create a circuit that has Q in the state zero and it is in superposition. That is, H0 means we put it in superposition, and then CNE means we put this qubit with a second QBIT in super exchange. And below you can see the chain what is as code is shown. So maybe the other way around, right? It can be
done first. visually created the circuit and then the code. The chain can also be generated from the code. Then we have device selection, and where it says result. We choose device, we choose exactly what to feasible. The device is local simulator, of course, we can choose a real computer, and 1000 times to execute and below you can see what it is the result. That is, at 1000
executions we have results 1 1 and 0. Why only these results? Well, because the two are intertwined qubits and we have finite states, in which we can see. And this is the graph that comes out. That is, it can draw graphs directly in And the other thing I'm going to show is grower the algorithm. He, as I explained earlier, serves for searching in unstructured data. with him.
And here we have another given solution, which is 1. This is the result you should get find. Below the code we are showing is initializing this solution. After this is how we initialize Grower Search. What you see is the given chain, which is obtained. It's much more complicated, right, from the original one I showed. schematic, just so you understand about That's how it looks. I say again,
maybe from code to generate a chain or vice versa for there are such different tools. And here after this chain is completed, that is these are the real cubes that go into superposition, in Nankholm and so on various actions are completed on them, we arrive at aa result which shows the probabilities that can be in which they can be the results. That is, we always work with
probabilities. As we can see, there is one probability with 0.78. It means that the most this is probably a correct result, which we are looking for or he is 10 1, the one we are set initially. So after we went through all these elements and chains, we came to this result. And so. What are the real applications? Many companies like Google, IBM, Volkswagen, DHL have currently developed
and have the use of quantum computers and quantum computing in their algorithms. For example, in medicine we have serious so serious actions in this direction and Google have made a certain type of simulations. They use these and these quantum algorithms for testing drugs, to simulate proteins, to prediction of various diseases. In the financial sphere we also have real applications. Jep and Morgan together with IBM have tried
to make a quantum algorithm to optimize the price and to calculate the risk. Traffic optimization Volkswagen has actually created algorithms that optimize Beijing taxi traffic special. That is, they are trying to find better route for taxis, so to reduce traffic. DHO apply quantum algorithms in their warehouse software and logistics and so on. There are many different application areas. By the way, this one presentation will be accessible
because I see that I won't pass, right? faster, because time is advancing. I will the presentation will be available. In addition After the lecture we can talk if Someone has more desire to be we are talking. What are the main challenges? in this area? This is scaling. on the hardware, because right now the cubes, who have these computers are quite little use in real tasks. The more
qubits there are, the more we have a bigger problem with the interference, with the errors and must better solutions are being sought to can these hardware catch up our needs at the moment. And algorithms, for the same reason, must to be constantly updated, tested, to find new and new algorithms, which can exclude as much as possible the problem with a this probability or at least reduce it
as much as possible. Where are we looking ahead? To cryptography, which is the main problem because there is lots of solutions. or rather not so much a solution, but there is information to to date, that in case of possible scaling and improvement on these quantum computers cryptography will suffer. That's why there are already algorithms, who are struggling with this problem and they can to be used, regardless
of the power of the computer, they will still be enough to a good and will ensure a the security of a given connection or of given information. In the machine shop can to use chemistry, also in climate modeling. I have also tried to provide basic resources, which can be accessible use. Who wants to learn more about quantum computers and with calculations, one of them is and the
pioneer in this field is IBM, right? as the most serious. That's why I put [ __ ] on top as a platform. Only there you can come in and spend it, right? weeks, months in search and review. and a few more useful links to Amazon, which can be used. Well, that's from me. Thank you for attention. So, a little faster. I passed at the end, but if
you have any questions, please We have time for one, maybe two. faster questions. But you didn't have enough time, so just... a few words. QD Qay. Watermelon when will it occur and what resources are needed for that? Dyne of the quantum superiority, when all will be broken algorithms. So There will probably never be such a day, because as there was no such day with the collapse is
it a harbinger of all sorts of other breakdowns, and this is theoretical and such Armageddon, which they predict, I think will not occur because with improved productivity they also improve security methods. Algorithms are getting better, encryption is getting better. It is unlikely that has superiority. Yes. For the old for the old for old codes that are before application of the panko, that there will still be such
a moment. Yes, but it will be for educational purposes rather, because there's unlikely to be any left, right? some data or some servers to stay with old encryption from 20 years ago. Suddenly new algorithms are emerging that can to break it. I guess not. there is such a problem, as with computers It wasn't there when the dates changed, right? There were no old computers to crash. The
year 2000 or I think this will Yes, for the record I'll just repeat the question. me that he was for the already accumulated records so far there will be such a day, and for quantum resistant from now on there will be no to have such a day. Probably, absolutely. Accordingly, the old ones can be calm converted into use through unless they are useful to someone something like
intelligence. And they say it was also broken long ago by CIA, right, but nobody knows. It's not public, it's not mass. Yes. Thank you. Thanks, too. Great. Thanks to Lyudmila. And we continue in about ten minutes. short pause. Kayan, who will tell us about money in the digital world and security and fraud. And now Kayan will tell us about the money in the digital world, security and
more security. Hello. A if you think quantum mechanics is a long topic that can't be summed up in 30 minutes, and electronic payments are the same way, and on the same way. A short introduction. This is me. me. I have normal photos, but I prefer to show such things in a conferences. And many years, 21 years I was part of a team that developed e-commerce platform and
in Ruse and that's where my belief comes from, ah electronic payments are important for our industry as a whole. And it is useful. people to have more experience with them. By the same way they know what bases are data, HTTP request and response answers, it's useful to know how they work electronic payments. And and and in trying to organize my thoughts and shares the things that are
important, so not to overlap too much, we start with A little history, right? Most people connect electronic payments with credit cards, however credit cards are from before there were electronic payment. That many decades ago this started as the so-called charge cards as an easy way to give credit to people to buy a bigger things on credit. Ah then and first they are paper, then they become plastic.
Ah They have been developing as a product for many years. What is important to them that somehow the information must be signed, which is located on them. I don't know now. how many of you have seen the first ones offline credit card machines cards. They are like an indigo machine on them, which makes such a sound, which one you put on. And because of that credit cards,
most of them embossed. If you touch them, you will see how a the inscription with the number, with your name and are printed on them. This is so that it can are copied and easily created the checks against which they will later be sought oh the money. And as you understand, this is such a process, which although it is somewhat automated, and it also has its errors,
not optimal, and some very big smart one IBM head invents magnetic tape in, I think, the late 60s and the early 1970s and the magnetic tapes are starting to be applied to credit cards more or less during this period. The same is recorded there information you see on the page itself credit card and that makes a significant easier and faster copying. And sure and you've seen this
with the credit card you pass through such a sičitor for magnetic data and the data is transferred. Now what's the problem with magnetic tapes? There the information is as if written on a piece of paper and is very easily copied and cloned. Very easy. You've all heard of these stories of credit card problems. A you have seen and you have seen you have heard or if you
have had the misfortune of being a victim of such a scam from skimming devices on ATMs, which do exactly the same thing. When you insert your card, someone reads it. the information before it enters the device and so they collect data about it. And there is one consortium of EMV, Eurocard, Mastercard and Va, unite and I think in the late 90s, but in early 2000s accept the
standard for the so-called EMV chip, which is a mini controller, a microcomputer, You're a micro thing. not to mention a big one nonsense, but it's not like the magnetic one tape, because in it and through it they can to sign the transactions, right? each time it can pull out a different a result, instead of it being the same every time the same information as from magnetic alenty.
And if you remember, in Bulgaria There was a special campaign for smart cards. with a chip somewhere about ten years ago years, maybe 10-15 years. Then Chip cards became popular. A around the same time it was popular and Near Field Communication technology, which allows contactless payment and exchange of contactless exchange of information from there and contactless cloaking. A the other interesting branch in the history of digital
payments, digital payments is that they are used over the internet. Both things are important when it comes to a credit card. cards and with internet. First is Secure Socket Layer protocol. It was invented by Netscape. They quite briefly pass through several versions of it, but the one that becomes popular, third version is in 96 year. And by that time the internet is the internet, at least in
the States and it's convenient for shopping, for buying things, which doesn't have to be you physically in the store to pick them up. However, there is this problem that you have to be exchange information with the site on the other side country. And if I guess bigger some of you are colleagues, they know how it works The HTTP protocol, right, inside it hidden things, and there is
nothing visible and that is why it is information needs to go through channel encrypted. Ah, one of the first sites that took advantage of this technology is And will you plug his ears? And the first sites are the porn sites, because they offer such a service, where you have to pay for something discreetly you and yourself. And they are one of first sites to take advantage of
this terminology. CVV, CVC or so-called card secure cd. If you had credit cards or debit cards, you've seen on the back has a combination of three or four digits. And this thing is relatively invented soon in the very late 90s or in early 2000 2001. This is as a result of the problems with fraud with credit cards. I will speak in a moment. for both types transactions,
but this is a way to identify that you are physically holding the map within yourself when you present code that is on its back. He because of this is on the back and and so that if someone happens to copy you the card, to physically hold it, to be saw your number, expiration, and the date and your names, so he doesn't see the inscription on the back.
And this code confirms that the card It's yours. And our colleagues in the States had said that Now I don't know how true it is, but that's how it is I had been threatened. Recording the CVV in a database is a federal crime. This is the kind of information that you need. submits. You pass it to Pay to Payment Gateway and Pay Processor. Can you keep it
temporarily in the session, but it cannot to record it. That's right. And aa we get to credit cards. They are the oldest way to use for payments via the internet. So, to them to summarize them as a whole. And how many of Do you have a creditor? How? No, who doesn't? This is the 21st century, people. That's right. And you know, credit cards have number. If you've
been looking at the numbers on credit cards, you'll see that they have prefixes from before have the same numbers, with which a they begin. But that's for next slide. Now the important thing is that credit card numbers are validate, check if they are correct with an algorithm called lun or module of 10. The algorithm is very simple, but with it you can easily generate credit card numbers,
valid numbers on credit cards. The second thing, for what I said is the prefix or is it also called BIN Bank Identification Number. I don't remember the other abbreviation either. now what was, but is And have you noticed, Visa cards start with fours 41 or 42. Mastercard starts with a five, other types of cards have their own prefixes. They are usually a six of between four and
six digits that identify not only which banking network issued them, but also from which country they are, which bank works with them. And this is part of the information we are allowed to we record when we work with credit cards. It is also used in a protect against fraud, because if we know that your card was issued in a country that no and there is a big
chance of fraud, maybe it's better not to work with you because they will only become That's right. Their Well, when I watched it at home, it came together. everything is in one line. But yes. Transactions. Transactions this when you are skilled information with when you buy something and money must be taken from your account and go to the account of the merchant. Now there are two types
of transactions, two types of a operated with cards. A card present and card not present. Carpresante, when you go in the store and pay with your credit card card, credit card is present in the moment of payment. Internet payments are CMP, card note, present and we will mainly talk about them, right? Not that the other layers they are not digital, but in the context of this lecture
at both the 30s and 18s, which remain, we will only talk about this one payment type. Now how is the payment refunded? Oh, one I copied a diagram from a website. It is not so interesting. There are no things that are specific. The idea is that ultimately money will be exchanged between two banks, between yours and the merchant's bank. And between them will be a payment gateway
and later I will pay the processor or both together as a payment service, which will provide communication between the two parties to make sure that the transaction can be fulfilled. Well, that's a business question. Both things are used very often. payment gateway and payment processor, and we use them interchangeably, and most companies that provide payment and processing service are also payment gateway, what is the difference between
both? Payment gateway is collected credit card information from from you as a customer of the service or the site. The payment processor is the one who talk to the networks of companies, who issue credit cards to in order for the transaction to take place, right? If someone pretends to be me and asks you what the difference is between Payment Gateway and Pay Processor, very small. That's right.
Now transactions again for them. Types transactions. We start with the oldest transaction charge. And when you go to the store to buy something and pay with a credit card, this The transaction type is called char charge. The money is taken immediately. If you have money on the cards and it can be done the payment. The money is taken away. This is the most old-fashioned payment. It is
used everywhere. Uses even on the internet. Ah, but I'm a little I'm getting ahead of things. the second type of transaction old to rise. Now in a in the States, where a large part of and the business we were in, It is illegal to take money for goods, which you did not send. And you need a product that you bought to come to you so we can
pick you up the money from from the bill. And to solve this one problem, two types have been inserted additional transactions. The first of which one is this she checks if you have money in your account and if you don't have money, it will refuse payment, but if you have money I will concluded. He won't take them from you, but he will give them to you. concluded.
If you have electronic banking with credit card accounts and you are you see, they are very often with two columns, availability and availability, as in availability it may be bigger because you have locked money most likely from autoriz transactions, and the other is those that can to use. And now this industry has locked up this money, What do we do with them? This is the next type
of transaction. They they always work together. The guy takes the money. locked by the closing transaction. The Pt. is executed when the goods leave the warehouse and go to the man and send him away to him. And according to these rules that you I described earlier, everything is fair. Now, you are complaining and greater flexibility than charge, because For example, imagine that you are order five pairs
of sneakers each $27. Imagine if they had those. $100 is being locked out of your account because 5 times 20 is 100. And when the time comes to send it to you the package, it turns out that the warehouse only has four, and you have already given 100. But you don't you gave them, we just locked them in the bill. The captcha allows us to get a
smaller amount than what is authorized. We can't take more, but we can let's take less. And when it became a boil, The catcher will only catch $80. The remaining 26 they will be returned to you on account, that is, again to use them with you. Now charging the transaction. And there are exceptions to it. This was the first transaction that I'll take the money right away. If
you are sure about an order that is made today, you are sure to you manage to send it out of the warehouse until the end of the workday, you are allowed to use chaj, because you're not lying again never, right, until the end of the day when most of a aa transactions are remembered, are agreed upon, this is an option that can to be used. The other
option, when which a charge is used on the internet, is for services and digital products, right? As at my place colleagues the term was as, products that are not physical present. These are threesomes, services, and subscriptions. All these things are charging. The money is taken immediately because there is no What should I send you? over the internet. Yes, this slide is clear, right? The two transactions only
make sense when are used together. Only Authoriz not does no work. Capture without autoriz, because part of the input data, which he receives is the authorization number the transaction that needs to be to take a from which to take the money and that's how they work together. That's right. Void. A This is when you have an authorized transaction. and you decide that this deal won't work Okay,
you're making a howl. It is in Bulgarian. cancellation, right? The important thing is that the money is locked, but have not yet flown to yours to the account of the merchant and that's how they actually end ah, right, money that is locked in orders, but we decide not to serve them for whatever reason reason. The other type of transaction is refund. and it is evident in the
name itself that refund the money should have already reached you, so they can go back, right? This is the debit transaction against the credit transaction, right? And someone? bought something from you, is not satisfied, He gave it back to you and you have to give it back to him. return the money back to the account. This is a refund. the fees This is very important from a
business point of view. period, because everything has a price, no is free and every transaction has its own fee. As much as the more transactions you make, the more You will be charged more fees. And if I have time left at the end of the lecture. a question about a dog walk that my colleagues know, but I guess some of you no. So, I guess you'll learn
something if it is not useful meaning. Ah but about the fees the main thing that you should know that every transaction you execute against it There is a fee and there is some kind of fee. Nothing is. free of charge. And we come to micropayments. What will happens if you have a transaction for an amount, which is comparable to the FIA, which should to pay? You have
a transaction for $1 and FIA $1. Where will he pay for it? And this is where micropayments come in. All you use them. All you have apps to accounts and things of that sort. If not you know, these are micropayments. All operations that all the things you bought instead of being made for you small transactions for them and pay these extra fios, at the end of months
all the money is added together and with one transaction you are taken from a from the account becomes more efficient. The other option is prepaid, right? You fund your account with $100, you only pay one fee, one figazina It starts to pull you down little by little. for the things you buy from them. That's right. Fraud. This is not a path, it is not advice on how
to you are committing fraud, rather get to know what things are happening and protect yourself from them. We will talk again. only for Card not present. A cheats by the way as we were talking about credit card history missed out I would say that most of these improvements like VP and contactless payment they and they protect a large part of these fraud because no one physically holds
your card in hand and there is no chance of copying the information from and not years ago on the sea, if you've been there. They pay there. big hotel bills, like you for example, some of the staff who do not are conscientious enough if you don't your card to process your payment, if they can remember numbers easily and have some device near the race, very they can
easily copy your card from the front and from behind and then you wonder where where and when the infection occurred contactless payment, with NFC payments over the phone. This is much more difficult, because no one physically holds the card. Now the internet itself, it is with, as we said, a completely different category. There are CMP payments, when the card is not present. And yes, now charge back.
Charbak is not a scam. It is Chazhba. a mechanism where if you are not satisfied from a given purchase, you dispute whether it this is charge back is the things you paid to return to you. And these things They start out good. The man goes to the merchant and says he wants his money back for or I didn't pay for this, or something else happened, but whatever
Whatever the reason, give me my money back. If the merchant decides not to agree and to dispute it, one enters into such a chargeback mechanism, charge back procedure, with the merchant footing the bill for this investigation, which is between 20 and $50 in depending on the purchase, the transaction and the things that happened. And because of this and further, that you will be you will be we
are talking about another scam for friendly fr. If it happens that you want money back on things that are under 20 or $50, smart merchants just give you your money back and they don't bother, because if you get into Chabak, they will pay this money one way or another. otherwise because of a fee for the a itself investigation into the procedure and just not is it worth
wasting money on this situation, right? It's not fair, or at least not It seems fair, but it is rational. clone cards, pirated cards. If a you weren't lucky enough to be in Such a situation is not pleasant, but it happens. are. Numbers leak, websites get hacked. You sometime, if you are not enough careful, you can enter a credit card details on a site that it's not the
one you expect. And these things they can leak very easily. If someone write down your credit card number, you can to clone it and make copies of it and if there is data associated with it such as address and CVV, can use a Admitova. This is the most common a and a credit card fraud. As I said earlier, a lot of new the innovations ah they assume
this thing won't happen happens, but don't shades protect against arazash attacks where someone holds you the card and can copy the data from them. Ah, in this case we're talking about those scams that happen Ah, friendly fraud and charge back abuse. I talked about charge back a while ago. Why? is it called friendly fr? There are people who They act smart. I don't know how to write
it. in another way. And they decide to take advantage of this to twist their arms to the merchant and buy something and then he should return their money back. That's it. risk. It happens. the way to protect yourself from them and there is many systems that are for fraud detection and such charge back resolutions that they advise, right, if it happens to come such a person with
such a transaction, just don't bother with him, don't bother with him cancel the order and don't watch this movie you play at all, but they happen aa card testing and card a stuffing this is, imagine that you are like that after all criminal, bandit, you have a list of chalk cards. How will you know which one Can you use them? Well, write one. script there or with
whatever it you automate and go, you start to you are hitting some legal site, like try making small payments with these credit cards. And that's why it's called car testing and car stuffing. What is it? the dangerous? You are some kind of site that sells shoes, right? Nothing that happens often frauds happen with it. This bandit is coming. the criminal starts hitting your site with such a
car testing automation script, to validate his cards, to understand which one he can use or not. However, your payment method and payment processor sees it and says: "Well, here "Something happens and they block your account." And as a trader it's really bad, because in at the same time on the site you have legal users, people who really want to buy shoes, but when you can't to take
their money because Paym Gay you refuses the connection, sucks, right? And again in these situations it is well, but with the site itself, the business itself, who operates not to rely on the paym the gay guy to find this thing because By the time he discovered it, it was already too late, right? It's good that you take care of yourself. these things. account takeover attacks to it
is convenient for you, the sites offer you you record credit cards in the accounts, for maybe next time you won't write it every time, but to use it ready-made. Yes, but if I log into your account, I'll hit you. email and password, it becomes exactly an account takeover. All your saved credits The cards are mine now and I can use them. I use to make payments with
them, right? It is recommended when there is saved credit cards when paying with them, always make yourself make yourself the user to log in again to authenticates that it is him. But you like you know the username and password, you will log in I'll go inside anyway. Ah phishing and pagejacking, that's why I was talking earlier, sites that pretend to be things that are not. This year
there are many popular SMS for DHL shipments and FedEx says: "Well, you have a lot of money here." something left behind, but you have to pay 2.54 fee. Go in and enter these. data. You go, write your credit notes. cards, the bandit takes them and it's not pleasant at all. That's how they run out of you. the data. And from this situation what I'm warning you not
to doubt everything and yes, but don't approach. Anyone who asks for your credit card, keep one thing in mind and be sure that You know what you're doing in it. situation. For security. A there won't be enough time, but for example PSI DSS is one of the standards in our industry that shows you know What are you doing? When it comes to credit information cards, and the
latest standard is from last year. There are four levels of certification. They are according to volume transactions that the site can fulfill. Second, third and fourth levels are certify yourself against this list, right? You check everything to see if it is fulfilled. For the first level, there are auditors, who come and check your system, Make sure they know what they are doing. For example, there are requirements
for the length of the passwords of the administrators and the customers. To be sure, right, that they won't break? cryptographically, as it came quantum computers and things like that. 3D Secure. That's it. Yes. All of mine colleagues are very big fans of the 3DS, because it's a crappy technology, but as This is a factor. authentication for card payments and you probably saw it when you paid something
with a map on the internet and it makes you, right, or open the electronic marking there which bank you use to confirm or you will be sent an SMS with a link or something else is happening. This is a 3DS. In some countries it is not only advisable, and they imposed it as a standard. In England It might have been one, but I'm not sure. Ah, checkout.
And now the credit processing cards do not need to be on your website. It could be on another site and it is most likely a service that offers this thing. These are so so-called hosted checkout solutions like to checkout, checkout, PayPal there, things of that sort. Its other name is a redirect payment, because from your site sends to another site. And one such intermediate solution for hosted
checkout hosted fields, where the site for the payment form on your site, but in fact she is only pretending and everyone the fields you fill in, which point to the service that provides the payment. And that's what Hosted Fields technology is. Vols. Vosvanie, where a service that holds the cards for you and instead of you use credit card numbers, you gives tokens with which they introduce themselves
in the system. And where is the advantage that physically the credit card numbers are divided cards and those tokens with which they are presented? If someone hacks your site, If something happens, they have nowhere to go. data to use. that they have the entry of tokens that eventually, if they're smart hackers, they can use on the site itself, to do some simple things with them, but not
they can take them out and use them on another place. And there are such services for fraud detection as a count. An awful lot of them use machines learning technologies, because all kinds patterns, any patterns in behavior and data that is being collected, and most criminals, most bandits they use them quite often and they are constantly. And for example, we have two sites plamen.com and lyudmil.com. I
am leaving. I attack Plamen.com, I use the service of account. They think I'm a bandit and deciding to go attack the site of Lyudmila and they said: "Oh, we used to We saw you a little bit at Plamen's, didn't we? end." And that's why these services are quite useful in this situation. PayPal as a generalization has other ones services, but what is PayPal useful for? You pay
with your email, right? Inside PayPal will still put your credit card or you will raise money to you use, but on the sites that you go to pay, you leave an email your address, which is your PayPal account and in fact no infection can it happens because your email address people use it They know, right? And that's why PayPal is preferred payment solution by many people because
they feel comfortable doing share their email but not their phone numbers the credit card. Tips, I'll skip the tips quickly. If you have blocked orders from everyone these precautions that I listed for you a moment ago, write them down. Someday you will block orders that are valid. It's nice to earn another few leva from them by calling the person himself and asking him say: "Well, we stopped
an order here, "What happened?" And to put restrictions on who can use your site, right? You money from Pakistan, Vietnam, North Korea not at all, but those destinations where people don't shop over the internet, you won't do it because What are you doing on a website anyway? open to them. And velocity checks. Yes, if someone asks you registered very quickly on the site, went to buy something
and check it out, that's not normal person. This is most likely script, right? Normal people are slow, and dromavi. And the other thing is, look how new it is. is the account, right? Most people register, look at a little will be They start thinking about what to buy. If they are in, they are registered, they immediately added an item in the card and went to check it
out, there is a high probability that this is A fraud, a criminal, right? So Consider these things. Yes. Unusually large orders are also red flag, right? It doesn't happen often that such orders are made, so what if not to refuse them, but at least to block, check them with a call on the phone if it's really them. And the hotdog. I don't know the rest. Okay. Isn't
it? Can you buy a hotdog with a credit card? And if you told you that he could, but he The question is why? After all, he is not only To say yes or no, you have to explain, right? There's no time for explanation. Yes, but a the idea is that it can't because the price on the hotdog at least years ago she is commensurate with the fee
you will pay for her. The FIA won't pay you, if you get charged $1 for a $2 hotdog, right? And you are there to do profit. I don't know what part of the markup of the hotdog is in its price, but pay $1 per aim The service is simply not worth it. And now the second question. Can you buy it? aburger with a credit card from McDonald's
for example? And yes, there's no need to all together you say. The answer is yes. And now what's the difference? Why one? maybe, but not the other one? The difference is in the price. of transactions, in the price of fees on transactions because McDonald's is huge business and carry a large volume transactions to paym gayway, right, so like a big gorilla they can go and negotiate more
favorable terms with Paygayway, which gives them, right, prices of and of the fees in a single digits some a amounts, while all others where you do not I know how many doses you need to sell, but you can't compare to McDonald's, you will never be on the same level as them. And in general, this is the curious one fact about the difference between buying hot dogs and
buying hamburgers with the carp. And thanks for your attention. Well, I don't know if it will be goodbye. Do we have a few questions and thanks for the applause so I can I cough. Ah just repeat the question into the microphone, to be heard. Some sites like Amazon for example, they somehow manage to bypass the two-factor two-factor authentication. How does this happen? Exactly. Amazon is like McDonald's.
They are a big gorilla, a huge business. For example, on Amazon you can play order with the test credit numbers Visa cards. That which is four and 14 units after them. Amazon has a huge inventory in their warehouses and are not They worry that a fake will come in, which will lock up part of their inventory, so that someone else can't have it buy. And they have
such a mechanism that They will check within 36 hours to see if it will pass. the transaction or not. If not, they send you email and tell you or add credit aa either add a credit card, or I will we postpone the transaction. and Amazon rely the large volume of orders, right? all sorts of items and there the two-step one factor and the confirmation I am not
convinced that it was stopped at their place. Simply depends on who with which credit cards, which operators for which countries do they work. Ah, it makes the process slower and they because They don't want that at all, do they? Before years since Amazon didn't ask for CVV number, this credit card is a QR code the number on the back because it is only for confirmation that the
card is with them and they They say: "We will take this risk, for to make the process itself faster, right, "It's smooth for the underdogs." So Again, everyone has their own opinion, but on the other hand country not everyone is Amazon, right? good practices are rather recommended for smaller stores in volume compared to them than because how many companies are in their Thank you. It was a
very interesting question. in connection with the currency change in Bulgaria, possibly the introduction of the euro, do you expect in your personal opinion more or less fraud after the introduction of the euro? I have no opinion on this matter. No I think there will be a difference. And historically judging by what happened in Europe 25 years ago when they adopted the euro, and there were none there
problems in general, but then he didn't was payment so developed internet as a whole with them. At least I can't remember what obstacles there are at the moment. there would be this or some other problems. Oh, just to add something on the subject of the colleague. Ah, so right now everything What Kaloyan explained to us is related with the fact that the biggest, What is the common
name for Visa and Mastercard, those who carry out transactions, companies that network entities manage transactions because each transaction goes through one of both of them, each. And they can say yes or not. Europe has no voice there. With the adoption of the euro has a chance at the introduction of the digital euro after some time this blocking vote could also be in the hands of Europeans with
the European digital euro payment card, which is coming up in the future perhaps. And, as far as I know, I think there are seven. these large networks that serve payments. And American Express for example they left Europe in 2016 or 17, right? Here and there in the restaurants you will see more stickers for American Express, but not are accepted in Bulgaria and in Europe as but in
general. And there are some of the managers who are entirely euro European, but yes. Okay. And if you have any other questions, you can to find a cayman outside, I guess. Yes. No, So you have to be very fast. Ah, just for tonight. yes I found it Yes, yes. So tonight. And now we're making a short one. pause. After a few minutes we continue with Elisha's lecture
on vector search. And just before you leave, a quick one. And thank you very much to everyone. Also thanks also to Kaloyan, who is the main sponsor, right? And to all who organized by Rusekov. It will only take two minutes. takes you or less. I am Emonev from Startup Factory. We are organizing one entrepreneurial program. Her name is Base. I see Gabriel here. Where is it? Gabriel?
If you were a bass player. Maybe there are others. a, which starts exactly in about 10 days. And I just want I want to make an announcement to you and if any of you there are people who are more pre-Machine oriented or who have some idea want to develop it, and they can write in Google program Base Rus or open the Startup Factory website and find it,
as the program is really very high level. People who have succeeded, who have achieved great things, share experience, knowledge. It's a bit of a type. mentoring network, and finally present the ideas they have developed participants in Base and fight for a prize fund of about 10,000 BGN, which is distributed among the winners. But It is really very useful. And I invite you, if you are so entrepreneurially
oriented, Are you interested in business development? take a look at it and if you are interested in write down. Thanks for this inclusion. We continue with the third lecture for today. And in it, Lisey will tell us about vector Oh, hello, my name is Elisha. Ah, at 22 I am years old and I am from Ruse. Ah, I am certified. Oh, I have three. professional certifications. a
machining engineer, data engineer, cloud Google developer and today I tell me about a technology that maybe it doesn't sound very interesting, but a is behind almost all online modern search engines today aa and it is quite relevant about artificial intelligence, about a the way he understands the information. I will go like this and introduce you to one. problem, and I will present you with the possible solutions
to the problem and I will explain to you how a currently artificial intelligence and Search engines understand our questions. Well, I present you with a problem. A How many of you have experienced this when ask the artificial intelligence a question, return you inaccurate, false information? Yes, maybe you are quite a few. And how many of you Do they know why this is happening? Okay, okay. Ah so,
in the picture, and here we can see one of the most common problems. Is this factualination or just hallucination. Um why does this happen in general, because the work of large language models is not to give in the first place the most accurate information, right? Language the models, and they are not a database, age language models their job is to do beautiful sentences. And the work of
Large language model is to convince you that something It sounds good, it looks good and it's true, but in fact the Langage models don't know whether the information they gave you provide, is correct. And in this case too our user asks who is first a man who has walked on the moon and artificial intelligence brings back Charles Lindenberg. But that's not true. And When do we understand
this? What if we look for it? through an external source. And the most common problems are described here. Hallucinations, nod like this is when the models are trained, right, they don't have the latest information, but limited context Window, the blackbox problem, a Now how do we deal with all the problems from last slide and with the situation with the inaccurate answer. Well, these are the four ways
in which which we can influence an LLM. If we imagine that the artificial intellect from the previous slide is ours agent or we train him, and these are the four ways in which you can let's change the answer. promt engineering yes put in the prompt to give instructions who He was the first man to walk on the moon, right? great, that would work in this case but
we can't give forever agent's instructions because in some moment he will start to forget them not we can cover every case Toggle parameter to change, for example the temperature of the model the temperature is the parameter that is responsible for how much to be a creative response to large And in this case, if we try to raise it or reduce it, it is possible to give more
accurate answer. But only with such in another case it may give a more wrong answer, and in our case to give an accurate answer. Hearing or cancer is a category under granding category. This is when a give external sources to used by the LM so that it can always gives a correct answer. For example, when Someone asks him, who is the first person? stepped on the moon,
instead of him returning direct answer, can go see what does Wikipedia say, take it the information and present it to the user. That way there's no chance, right, he could be wrong or the chance is quite high smaller. And the fine tuning is as follows. He is perhaps the most unpreferred. This is when we retrain large language model. For example, let's take our detail, and we do
additional iterations of training on the large model. This is quite expensive and impractical. exercise. It may worsen the performance of the models and in general it is not especially popular. And that the most used the most used method of influencing the big language patterns is raga. Oh, how many of you? Do they know what cancer is? A raga stands for a retrieve retrieve augmented generation. And to
be it Let's imagine it with an analogy, raga is something like open book exam. And right in the university, and let's imagine that the agent is the student, and we are the professor and we ask questions to the student. Ah, For example, we ask who is the first person because the student may not know, and he first understands the question of the the teacher and goes to
look for it in sources, for example in the textbook. opens the textbook and sees that a Neil Armstrong is the first man, right? stepped on the moon and then thought a little, synthesizes the answer and returns it back to the teacher. This in general, right, in It is basically a raga and can be done with quite different types of sources. Am In general, these are the types
of sources. and with whom this thing can happen. We can use structured, unstructured data, and it can we use entire databases and yes instructing our aluzh model to walk to extract the information that he should summarize the information and returns it. We can make api calls, maybe to use websites, PDF documents, chats, right, whatever you can think of. And in this way, you can to improve all
the answers that returns. We can use it for many zz cases and all different. and one large language model. In this way he can answer questions from all kinds of different spheres, but without him being for example with a super long prompt or with yes bounds to the context of the window context. And how does this actually happen? How the big language models understand the questions, and
how is the information returned? This is with using vectors. And the vectors in most general generally speaking, vectors a are numerical representation of words. of sentences, of text, pictures, lots of things. There is lots of possibilities for vectors because computers don't recognize them, and they don't recognize them they know the relationship between words. When you tell a computer, for example, man or woman, right, for him in
most In some cases these are just words, just strings, but in order for these words to have some meaning for the computer, you have to but to give them meaning. The vector is like the DNA of the word. The vector contains the meaning within itself. meaning of the word and the vector space. And when we put a lot of words in the same vector space, they they
have exact coordinates. And the computer starts to work much better. understands the meaning of words when a start working in this vector space because it sees all the others words that are close to it. For example, if we look at the examples, and a king in vector space, vector space we can imagine as a coordinate system. In the case of the pictures it is three-dimensional, in reality
has many more dimensions. King in vector space is exactly against a queen. A man is exactly opposite a woman. A if we draw another line, and it will be seen that a man is also against a king and A woman is also against a queen. This, doesn't it, gives a lot of context to the big ones language models, search engines. And we see other analogies with the
same thing. And how is data vectorized? A The process is called bedding. And this is, when we take one piece of information and convert a text into a numeric one array. In fact, the vector is one very long numeric array and now aa how much is it long depends on what kind of embedding model we use. And in the case when we use for example model embedding
model in vector space, our data and stand have coordinates in the same coordinate system. For example, a picture of a dog will be located quite close in the coordinate system to the word dog. A picture of a cat, right? is located quite close in the coordinate system system to a the word cat. here it is very briefly in the picture The bidding process is also shown. And
it won't. I fall into it, but he is probably in at the moment it is quite accessible and as technology, if we compare it to if we look at a scenario in which, for example, you have to we categorize products, pictures, if let's say we are a big platform for announcements or something like that, and if we want to we categorize each object Aa we have several
options to use large language model, for example to categorize the listings. We can use machine learning model to categorize as well listings and we can also use we are looking for the closest matches. This is the cheapest option of all three. The Abeding models. And here are several different bedding sheets models depending on what it is our goal, are we doing strength search, are we doing clustering
or something other. And there we can use a different kind of embedding models, and they are with different number of dimensions. And this is how much is actually in our numerical array how many numbers are there and we may not fall into more details here. if we want to bet on unstructured information, but how it works the whole thing because when we bet on text, and we
catch a sentence, we run it through the embedding model, it works a bit like a mathematical formula and refracts it into some vector. When however, let's take an unstructured document, but in most cases there is more a process that aa that responds to split it into pieces, and we need to get the document, to divide into chunks. maybe even in most cases some other war language model
determines and in what way and the sentences are semantically related and what should the paragraphs be and what should be the parts of the text. Then are converted to beads and saved into a database from which it can then be looking for. That's right. And I've prepared a few demos, which I want to show the whole thing. The first demo we will make a text bedding. And
for this purpose, in this case I will I use que. The Embeddings they are supported in quite a few databases. For example, you can use postgresql. [ __ ], different ones can be used models, right, that's what embeddings are. They are framework as a technology, but there is no platform limitation. And here for the purpose of the demo and I made a Cloud bouquet with a slightly
different photos. Here we have cat picture, we have a picture of a dog, we have a picture of a king. And this or this or this will be the beauty of live demo? Oh, no. Okay, to have a picture of a man. It won't stop the internet, I think. Ah, what do we do now? Ah first Ah, first we make an external in the bit table, in
which he is told, honey, look, this are our photos, and we want them we use to work with them. And we check whether Our photos are already in a table. There is them, the connections are okay. we say which embedding model will we use. In the case of this demo we use multitimolbeding. He is quite suitable for semantic searches and for semantic search. There are models that
used for example entirely for clustering, entirely with other purposes. This one is for the purpose. on the demo is closest to how a search engine works. We create a table, in which we will write a the troubles. And in the pictures right now, what will make Big Quia will go, and actually he's already done it, he'll go and get it our photos from the directory, will If
we make trouble, he will write it down in a table, which we can then search on. There are two quick processes here. The one we check the entries for errors and whether there is a problem. Most likely not. And when we use, when we have large volumes of MBEDs, usually also made vectorial index. This is just for searches. pass quickly, and we will not fall into And
now we have a table, which has three columns. We have a table that has three columns. A to these pictures we have invented them IDs, we've given them a title, which corresponds to the content, right? inside and we've put a URL. And now we're starting to make demos of the search. This is query What does it do? And right now I will aa will do a vector
search from between between all vectors and will try to Compare which one to which of these six pictures is closest to each other. and so, as we can see, and distant the distance metric, which is seen below, is actually the result of the function, of vector search. In this way actually this thing looks a lot like mentally, the thought process of large language models. They similarly understand
what the next word is to be generate. And here we see the most the nearest picture next to queen but is king and we see the search result. There is a cat next to the woman. This is an interesting result. It's next to a man. dog, next to a cat is a dog, next to a dog is a cat and next to the king is a queen.
If we remove and the added filter doesn't show us the same images, we will see that when in vector search of the same picture to the same picture the result is a perfect match, right? Naturally. And maybe you should I put some more pictures of men, for let's see how the categories are connected and How is clustering done? if we put five pictures of men next to
each other another, always servering the results of the pictures of men, right, to a picture of A man will be closest to each other. compared to pictures of animals, for example. And so. The next one is currently going to show model embedding. Until now we only worked with the pictures. Currently we only compared the picture of a man with the picture of a man will now we
will make betas of the texts, we will we put in similar actually in in the same vector space and we will look for the texts to the pictures and we'll see whether the text is a of whether the word man A man answers the picture. It would be wise to get a mouse, yes morino. The trouble is over. And now we compare text to an image. And
what we see is perfect coincidence. We see that the distance is small bigger, but that's normal. And we see, that the word dog aa matches the picture dog. The word man is the same as man, right? we see these exact matches of aast to image search. We will now do a text tox search We will We will do we will try with MBEDs only of words, but
of unique categories dog, cat, right, like that onwards, towards each other, with whom they are closest in distance. Okay. And what we see is that also man with woman, the words man and woman as distance are closest. Cat and dog closest. A king with a man, right, bye bye The word king is closest to the word man. To the word dog is closest to cat, to woman
is a man. and next to the queen king, which is right also shows us a in here this picture, right, this analogy, that this thing is actually quite valid, right, the distances are the same when we do the vector search, and always, right? we get these results. And now this is to search for our text in Here we will search Oh, sorry. And right now what we've
done is Let's do a clean search. And right now we are looking for the word animal, the word animal. We embed the word animal, and also we search in all our pictures and we can do it and we can do it with different words. For example, next to, as we see next to an animal, The closest relatives are a dog and a cat. if we change the
dog, we can look for someone and to a person. Okay, it's not a very intense result, but woman, dog and so on. We can look up royalties and see that The king and queen are the closest. results next to the word royalties. That's it, right? text royalties to image. okay. Here we have a little repetition of the demo. And this was the first demo that I... which
we just want to show how they work the distances, the distant hearts and the troubles in reality. the whole thing it works on this one principle. Now I'll show a little bit more. a practical demo and something that, well, you'll show a real search engine made with the archives. We don't have the archives from this one. year, but since last year everyone IT events. And the IT
pages are taken down. Here we can see them. The IT pages have been taken down. And on randomly click Varnac archive 22 years old. I only downloaded the HTML. the pages because we do not have the rights to the domains. And at least with Google Out of the Box is coming out can we do vector search on a many types of a sources. For example, on Google
you can we say "We want you to vectorize the whole information from this page if we have a right, right, domain rights, because I don't have them rights to the IT domain, and if we have domain rights aa Google only goes, indexes the page, vectorizes it, breaks the information into chunks and makes a fully functioning search engine. And in I just downloaded the case and all of
them IT pages from 2012 to 24th year and right now we can do some aggregated searches on IT pages one one second one second. This is our search engine and we can set question what question would you ask about IT. Maybe somewhere it was held the event in past years. Okay. where now Are we doing a search? What he does, goes, goes through the documents, does search
for Rusekov, finds the pages. A this is not a pure search engine, because it also has large language model that processes the search result a, but a practically the raga part is the thing, which goes, travels the pages, indexes them and makes this search works. And what we see here In fact, the Russian conch only occurs in this hall. Oh, okay. Can I? tell me what the
lectures were and the lecturers 16th? A few spelling mistakes, but that's okay. models shouldn't be a problem for them. I didn't say Ruse Conf. We'll see what will come out. Okay, we summarize all IT Varnac tour 2016. probably all the information is correct and we can understand this because the search engine also gives us the sources and can we see which documents it is from took. And
in the demo, I've put it right now HTML pages, and really the whole thing also works with PDF and CSV files. Oh, even I think I can show what they are. the types of sources. Here it is. And here we can see a website content directly go to index it all over the web page and to submit it already in ready complete search form. And import from
database, and cloud storage. Inside We can install cloud storage, right? files, pdfs, and text documents, all sorts of things and so on. On Google, because they integrate quite a bit, huh? platforms, we also have aa directly pull data from Workspace. A That was, in short, very much like that. a functional search engine. In fact, on this principle is currently working for everyone other major search engines. Google,
Amazon, any search engine you can think of. Can the only difference is that in the big search engines and right now this, what we showed is that we only did vector search. Ah, most search engines they do hybrid search, which also includes the older technology that searches for words a and roots of words a along with vectors to swing better Oh, the third thing, what I want
to show is a demo of a company Nomic. Oh, they are busy. with the development of a data platform for artificial intelligence. Oh, I haven't used it. especially their products, just Their demo is pretty cool, pretty cool. visually. Ah, what we see in currently on this map are embeds of all reddit communities, right, which exist on Reddit with the title and their descriptions. And what they are
done, is to make dimensionality reduction of the vectors to get a two-dimensional one field and see in the two-dimensional field, what they did, and how who who aa categories to which they are close, which to which are far away and the vectors themselves, right, where are located in the vector space. In fact, the vector space, even if you have to imagine, right, it looks similar here's a
little wider to be seen. And what we see that, for example, gaming is close to Star Wars, ame and so on. And if let's do a search, also here we have a search, and let's make databases for example. Okay, there are databases. everywhere when we reduce the range from And they usually come out in around News, Electronics, tips and so on. A if we search Marvel, let's
see where it goes. And we reduce the Search radius. And in actually comes out about superheroes, and games, and fantasies and so on. yes, I think so That was all from me. And thank you. much for the attention and you can ask questions. Great. Do we have a question about Elisha? If there are none or they are loading, I have one. temporary question, a quick one. And
how much? Can this be easily integrated into a website? And quite realistically, a search engine on a website the vectors they if depending on what what database does the site use, if any for example, uses a database that supports vectors and like postgre, can directly in the tables to do vector column and to be written against each, for example, each category. above abeding against each product, for
example in the site to save product bedding, when a search is made, and each one search is real novbet and when user made a search, it is created novbet and it is looking for trouble in the base data of already existing products, when a new person, for example, does some new product aa on the new product aa mbet is generated at the moment of creation and for
example can be given proposed product categories aa similar products, and the soot in quite cases and in the pages the soot of products also work in a similar way, It's okay, huh? MB is being compared, all are being searched for the closest, the closest in meaning products to what we have opened. Thank you. Does anyone else have any questions? And one such question from me. Cancer, as
you said, it does a very good job for providing data and context to the models, but I have some experience so amateur with document search. At least mine is a raga experience shows that it handles well with, yes let's say, simple documents, but when I try to feed it more complex PDFs, complex with tables, large, soil difficult to connect information. Is there some, how should I say,
tools, embedding models to handle better with complex PDFs, spreadsheets, graphics and so on, which are more appropriate Enthusiastic end users? Well, what has the biggest effect is if we can turn unstructured information in but we are already leaving there, we are leaving from the frame of cancer. The collar is a little worn. abstract, right, with these distance hearts and aa there is a way that if we
break down the data, we enter it into a database data, and we can train a depending In this case we can train the agent to work and with the databases he should do it himself Hearts, right? It's already very relative. What are the specifics of the given problem. For example, if aa if we have if we're trying to give him some graphs and some very accurate data
and in PDF document, in most cases there is none to get it because that's not much easily understandable information from the enemy. However, if we give the agent, for example, section calls to write queries to base data, to retrieve information and when you ask him, for example, you have a database with and financial information and you ask him what is what is the financial information summarized for
last year and it you instruct where what is located in the database. He is very happy. easier to go and write, to get out the financial information for the past year year, to summarize it and in almost all In some cases, this thing will work. A with raga it's relative like you write to him last year, what is last year? year, if you are born to do
such a search in the document. Are there any other questions? Okay, if not, you can find it now. then Elisha. Thank you for the lecture. Oh, I'll just say that the food is now... She has arrived and is outside. Now we do long break with lunch. And in front on the left is right next to the coffee shop, and on the right, if anyone wants to sign
up for lightk and wants to take a t-shirt. Hello everyone. My name is Borislav. Koprinski and I took over from my colleague Flame. I won't cough so much, I promise. I hope you enjoyed your lunch and thank you all for joining to this IT event, and which we organize every year and will continue his lectures with his colleague Nikolay Ninov, who will explain a little about Robot
Manipulation Tasks. Hello, my name is Nikolay. In principle I am from Ruse, but since 2018 I have been living in London. A little about myself in London at the University of West London I got a bachelor's degree Computer Science, Master of Science intellect and now I'm doing my PhD on what I am about to present to you. Through At that time I worked in a large Japanese
investment bank, the largest in the world. Then I worked in a hchфund and we will get there and on my current position, which is related to crypto. No, I'm not one of those. the cryptocurrencies, but yes for the first role basically I was there as a data engineer and In general, we went like this the people of existence. So whoever teaches us from the University of Ruse
and becomes Excel Monkey, it will be automated. So Go to lectures and study as required, otherwise you will be automated. Oh, in the picture on the left is a Japanese one samurai armor, because here you caught me stress. And I've attached a QR code to the company. At my second job they were like the Finance memes, who by watching them online, oh yeah, in He's been pulling
his hair out all day. knows what's going on. And yes, basically this is in the middle best describes my life and what I did during that time. Oh, lots of coffee, a lot of Excel, all data uploads, great stress. Yes. And my current one a company called the Institute of Free Technology, and this is a crypto company. Everything we do is Open Source. And We have three
main projects. status, which is like a mobile app and can be used on Etherium the blockchain and you can use it there as key as a wallet and as am and and like chat. Nimbus ours provider, which you can even pull and all of this is open source and in him, and if you don't have a strong enough crypto hardware, you can just do it use in
the sense of the idea, if you want to verify transactions and we have like logos and which is more like movement and which has its sub-projects and in part of decentralization and also and preserve personal data. And in status ecosystem we have two main applications. The first one on the left is Network, which is Layer 2 Blockchain. I What kind of things am I talking about? The
idea is that you have no differences between you and any transaction heads when you do crypto transactions and the project on the right, it is Now available and can be pulled. All code is open source. And this to him It's okay, it's just a general thing, if you want to you use it instead of verifying yourself transactions a little like yours credit card. And from the outside,
all of them stickers that are crypto related are from me, so yes. And the logos ecosystem is rather than three projects. If, which is our peer tope decentralized network, who actually cares about status the application and anyone can from these projects that I have listed so far join, write a little source, one request and if well done, at least You committed everything, didn't you? That's all. It's
an idea for us all to work together, isn't it? Also That's good, it sounds fancy on your CV and The employer will be happy, I guess. A codex is a type of decentralized storage, who work and it's with the idea to supports the ecosystem and is still evolving in early development, but the general idea is, that blockchain is another one, but under the idea that everything you
do on it is anonymous. So even the person who verifies the transaction has no problems and will not knows who it is. That's it. Now much more complicated is in the sense written there, but in general this is for the crypto maniacs who are the tea. And now let's move on to the topic, which We will talk. And robots and what can we do with them, how
come related to people. One quick question. How many of you think robots will replace us? they will take over and kill us like the terminator? Okay. One, two, three, four, five. The whole team. Well, it won't happen anytime soon. Not now I think it will happen. Generally artificial intelligence in robotics is generally in the early stages phases. And now I'll show you with the robotic hands. And
if you more or less understand how work, you will have no problem to understand how one works, for example a humanoid, which is so in human form or something else. They generally work on the same way. the problems in depending on what it is, there are many bigger than what you will show. But a few use cases of these things I found that are related directly with
my doctorate, are the first this robot is used to do this to you the coffees, The QR code there is for the video, but... the general idea is that he can tell you be like a bag. And this is another project in America. Says Miss Robotics. Generally speaking, they are from many years on the market and generally they make burgers and fries and they are like that
in the kitchen. Oh and here's another one like that traditional skejs is how it can be They also use it in factories and for work. You these types of robots aren't actually robots, who will kill us. No, they are more like that. small and they can still do something to you injury, in the sense of at most someone finger missing. to hit you on the head in
the worst case, but it's not to end up died in the hospital. Now addiction, yes, from many things, but generally from through all these industries now, as we are It's Windows 4.0, and many things have changed. The robots generally went through industry 3.0 and from there, right? automatic cars and everyone was wow, right? this will replace a lot of work. Well, no, The people went and started
to hunt for other places in the sense of in the same factories. That's right. Industry 4.0, which is where we are right now. Everything is connected, right? Come on. there is none. We have people. Yes. Great. Now a little people are starting to think at least in Hey, how can people actually and the robots that they wrote together, that they weren't some You'll replace me, but you
won't. And the problem with all these things, that depending on the ustry, everyone has their own pros and cons the problem here in the industry 5.0 is because it's too new and flashy, and many things are not very clear and may Everyone should put their own things in order, whatever he wants, but generally I don't think that The robots will ban us, and yes, we will drink.
Beers in the thong as needed. Ah, but why artificial intelligence in the robots? Well, that's basically it. International Federation of Robotics and it even shows that it is yes, it is a trend, that AI, ML will be in robots, Cobots and in new applications so that they can use. And Mobile Manipulation is, so to speak like you have a car or something four tires, something to move
from it to get your things. Digital, in the sense I command him here, and he commands that one over there. something does the same thing I do in the manuals that release them are generally One Musk and BMW, I think, were the others. A Let's go over some quick terms. The Grease of Freedom. This means that every defector So, in this picture, where and who? direction it
can move and by how much. Forward kinematics is generally the process in which and you have to calculate where you want to you go, based on where you put them the coordinates. And the inverse kinematic is if you give him the end point, how will you Are you positioning these things? These things, as we do people, we don't even we think and don't think about how to
cook and we've been cooking since we were little and so we don't have no problems. But in robotics it is much more complicated. This is TCP. abbreviation of Tools Center Point is common taken in the way you want to you command, just move it in 3D system and yes and the hand automatically yes is moving. But you can move. the hand like this, could like this, you
can in some much more circumcision to be her you move, but it depends on what you're going to do and yes, from there you can make some a joint and someone gets stuck on you like that the hand and this is possible. That's right. The others two terms that are very similar used in robotics, are reinforcement learning and this is basically writing and how do you want
to communicate, what is good something you can do that is bad something you can do and tell him what is good and bad. And you have imitation learning, which I am also involved in this is basically you showing him how to do it does exactly like an expert and it just happens learns from data. Now it's very clear that people prefer more imitation learning, because it is
much easier to make and collect data, rather than, for example, being make your own. And now let's start, shall we, with what these are data, how they collect it and what happens there. Well, the inputs are very different and yes I know we're talking about language and it's not yet It's come, but it's just like that at the moment. the icing on the cake. That's all. problems
that robots have right now and you don't even need the terminator to but something will happen. And the inputs are from different cameras and what can be done with them? RGB, segmentation cameras, depth cameras or any other such as there are others, but these are the three main ones. TCP this is basically putting the final touch on it coordinate and knead the hand along it and the
defectors, right, all these numbers How do you want to move your hand? There is different ways. The output is generally yes figure out how to make the final scheme move your hand. You can do it or not. you mess up all the things, and how do you you can on the hand or just right you show an end point and that's it just calculate. Um, there are
many different ways to collect this data and the easiest way is Just to grab a person's hand and hold it you move it wherever you want and so on. But however That's where the small problem comes from, that when you what do you do with robotics for someone normal task, you don't need much. In the sense of yes you teach him this, but if you want him
to do it a few things, you won't go to You show it all. It can also be the other way around. forget. And there is a method that says Learn from Play and it's generally yes data can be collected by clicking. It's like clicking a video game. Easy to collect the data. You can show him what it is. good and what is bad. You give it to
him like this a lot of work to understand how it can to do a specific task. None no matter what it is because we can for example this is remote to it We can take it one way, we can take it another way. way and in what way we can gather all this data and there are no problems and it should be learned in depending on the
model you want to use And with this methodology, the main thing that is It depends on what you are doing now and what you want. to do in the future. And this is one type of models that if we call it like phoney, as if it's going to one from above a small space that is a laten plan space-down So, in general, he learned to do well,
so to speak. in a sense, it interacts with this object. And so, that's the whole idea, isn't it, and then These things are done in a 3D system. And now here comes the most interesting part language processing because it is the easiest Tell him to change me, that's what you did. Look at me, what are you? But, however, each one Are you saying that as a command?
If you have hours with the details, it will be a little complicated, you will have to to sit and look at the data. Here a lot it's okay. And also natural language is a very normal way in which Everyone talks too much. abstractly and you can say, you can Do whatever you want or give it to me. this and you know exactly what it is and isn't
You have to explain yourself to him a lot. Learn from play is a little different with language from the point of view that here mixes your endpoint or whatever the photo that's in purple on the first one or give it a language command. So a bit of a hybrid. This gives you the possibility that only 1% of the data is only cage command and from others only
photos, which makes it much easier the way the data is taken. And then When you're being tested, just say you use a test, in the sense of language commands and it should do it, as they say. But here comes the thin one moment with all these things and experiments is that many of these environments that I am here to tell you now showed in these photos and
daf, if you want you can say it's a bit biased, but okay, is that the objects inside are very elementary from the point of view that are uniform colors and we know that actually much more interesting colors There are also ranges than one pure color. or much more complex patterns or especially if one of your grandmothers has one such very trendy plate from last century and you're
some kind of hey there How will he learn something? So our world is much more colorful than these basic ones objects and here's another picture of how are they and in my research we will do is that we will we use more realistic looking ones objects so that we can see whether this Methodology also varies and how much it will be easier. And here we are right
now assembled, we have made an envelope, not yet on GitHub, but hopefully soon let's let it go. Well, we can get together. this data with just a click of a joystick and everything is realistic and can be easier to a module is being trained. We have three sets of easy medium and hard environments. how are they generally defined by how much it is easy to take the
object for granted there comes the subtle moment and how is it and mesh its structure and who is involved podcast with 3D modeling to deal with these things to make it easier for catching. Now in the sense of some things they are more likely to catch on than others, but yes. Now there are many models that can to be used for and to teach the robot how
to move, but for the models that I will mainly I'm talking about diffusion models. These are generally the models that, like him, Give a text and it generates it for you some kind of image and so much fuss give birth and it takes you even less time than What's up, what's going on there? For the dudes who don't know, this is common taken just like that from
some one, it becomes something out of nothing something. And in robots, what does that mean? Well, we give. its input, we also give it a language command. And what can we do? In this case can we generate a trajectory that actually do this task. This is actually an emplot, which is on the next slide and I'm on it I'm basing myself, right, on the model I want
to I'm training and I've shown you on your right. left, but how am I going to do that? the data and in general with these problems basically when it comes to diffusions it is, if we want to take how far back a trajectories now the current and how much in future and all this data from the past, now and the last in the future we give it
as input or if we don't have a picture we give language command and then project with diffusion module how many steps ahead we want the hand to move in our And how do we know if actually, dad or not dad, which is very important. Now in robotics the main thing something that is like that is that you have success rate, which means, like, 10 times How many
times have you done this task? If you have robots that talk to you, you have multitask language control, which It's basically like telling him 10 times. pick up the remote, it actually how much How many times will you do it? And then you have Long Horizon, which is a little more difficult because You should also give him a few tasks. after another and it should know more
or less is where the lef ofnalo came from, then that yes continue there and do the next one task. In other words, push the remote control. left, pick up the laptop, give me the bottle water and where it came from, without restart the robot to the initial position, you should be like that. Here is an example in the sense of how they just move the objects, it
might be tell him what to do in this case and he will do it However, other problems arise. These are the main Matrix and that's where the thin one comes from moment that Well, for each of these trainings, he needs a person. a lot of GPUs and GPUs are money and it is very, very much ignored. And what is trading actually like for you? the hardware, but
most importantly, You understand, give the money to John Hang and To the Moon and there is no success importance and we make it bigger, as cha GPT and watch now op, we are waiting sick with And in my experiments I will try with RTX 4090, which is still an expensive GPU, but however, it is much cheaper than say, A100, which costs hundreds of thousands and if you
take a server act and for your mother and your father. Also another something that is very important in my opinion robotics and what needs to be taken is safety. What does this mean? As we are about to click together the two of you. The robot is currently what okay? You know the robot is there, but The robot doesn't know about you. For example, if you have computer
data on this, and yes you might get caught without wanting to the picture, but you won't be the main one factor and the robot will not know how so that he can be more careful with you. What does it mean? this? Well, you have to be careful where you go. What are you doing? Before you do it, whose robot didn't hit you. And here you are. a
few examples with Osha, which are in the States and are Occupational Safety and Health Administrator. And if you drive there, you can you can see that there are a lot of cases of people, which actually yes, unfortunately are died from such accidents and the idea is, that hey, they haven't actually become these things, because they are not outside, but inside It makes sense to think about something.
In In our environment we have three distances. safe, warning and danger. We have one robot, who passes by a little like Nicky, because it was the easiest thing to do Let's make it boil, because we're not here physicists to calculate how to moves the person and that is not the main progress, but this is basically save distance. Enough so that there is no no matter what you're
doing right now and yes You can rest assured, he's a believer. War distance is generally a little closer and more necessary so be careful what you do. And danger distance is, well, you can do it. kill him, you can put him in the hospital another way, you can [ __ ] it in depending on what you do. And the next part of the resarch is these objects
that are currently in the photos, and if you put one label for each like oh this is how dangerous you are, How will this play out? Can one actually learn to know that the person is around him in one way or another way? Why are we doing all this in the first place? simulation? Well because it's the easiest way to collect data first. Second, for to do
the whole experiments and a lot you can go to bed faster, sleep faster and still to train, if you have it done right and as many do other people, is you train it in your environment and then upload it to real world robot and it should work as above in the same way, but that's also different problem when doing squ intelligence shoutout to the team of people
who work. Yes, we now have sound. So, a lot Thanks for the lecture, Nicky. Oh, yes. ask someone if they have any questions and answers and questions. I don't know if it's a question or an answer, but As far as I understand, you are laying the foundations. of the three laws of betting in the development of robots that In the sense of who he was, to remember
him, no problem. This also applies to AI. The three laws of robotics from science fiction are that and a robot can never harm It should not and cannot be used as a primary. The others two are that it cannot be done any other way and that it does not It should not obey man. But the main thing about them is the idea that the robot is in
a subordinate state and he takes care of it. It is not man who cares, but he who cares to No one was hurt. Yes, right now a lot of the research that is with these robots, I generally do the opposite. A person must be careful with the robot, but the robot is very much there The person or not is not that much of a problem. Now for
those more chimonic ones, which should work, at least for now The demos were made with teleation. Therefore someone is sitting in the back with someone motion caption and generally talks, chats and such with the people. But yes, there is also the subtle moment, that all these things that we have described about artificial intelligence and how it works, is that in humanoid robots, for example on the BMW
ones, you have two GPUs. The one GPU is used for inference and they generally do calculations where, what and how should it move, based on data from its current coordinate system. Maybe from the past, but he heard something, not from what what did he see? And the second GP is what actually do these things and yes That's how these things actually happen. But however, the problem there
is that depending from thin and how it is made, and maybe there is still some malfun from the point of view that oh, if one If the connection with the other one breaks, something can still happen. to become. So there's a lot of hardware there important and should be even less skeleton. We need to work on this one. Always. Thank you. Any other questions? You won't get
rid of it that quickly. the breaking. And while we're on the airboat wave, I wanted to ask how far it is in currently the development and development of these humanoid robots. I'm talking, right? while we start with the slightly dubious ones Tesla robot taxi and robot taxis to a on the Figure robot and that wasn't even me heard about BMW. No, Figures were on BMW, but I
forgot how the company is he said. I know they were under brunch. Some kind of, in the sense that they were pushing it, but yes. Okay, where are we right now from this? walk down the street with us and carry and shopping carts? Well they are now depending on Instagram your algorithm, there are memes and robots, where they walk the streets of China. They also had a
competition to robots are attacking, but it's very easy you run if you can if you can make it longer than its battery and needs somewhere to sit and wait to load. I think there's still a long way to go and The problem with all of this is that it's easier to do some kind of test environment, some specific scenario, than actually when you put it on to
see what happens live. There is very unpredictable things. So for a robot We're still waiting for the taxis. In the sense that They've been talking about it, I don't know, since 2015 and they would be there by 2025. They still We are waiting, and we may have to wait for them some more. He said they were released, whatever, okay, but until I see one from Ruse a
hole somewhere in the friendships and that's it or some driver, fast and furious. It's much more unpredictable. much more He needs data and that's where it comes from. the question of whether it is correct we spam transformers and some big ones architectures that are like steroids big and all that for Jensen Juan in his account from the point of view that all the GPUs used in competition,
they have to run somewhere, because where is King and that's a fact. These are the main GPUs that are used everywhere and I don't think it will It will happen soon. There may be more. hype, but depending on AI bubbles like guess who will be the next hype cycle, whether it will be quantum computing or robotics. Hello. And it was a very interesting lecture. My question is
about whether there is any development around new manipulators and biomechanics, because these things he shows on the slides, they are quite a long time ago and I'm interested, right, the last ones years there has been a lot of development around human prostheses. And do you care about these things at the moment? are some attention, especially when the creation of humanoid robots or no? And the other question
is exactly the same. Lamerian, right? The most famous a and robots that resemble something living, are those of Bon Damics. Do you know me there? how they are trained, how they are, how they are made something as high-level as for us the conference. Well, let's just start with the first question, that is... I forgot. Ah, biomechanics. Biomechanics is a bit different. something that involves other things. The
problem is when learning robotics, mainly in the AI industry, is that not everyone comes from Robotics Background and should you pick it up. In a sense, I am not. calculated something forward or inverse kinematics, but had to do some work to You can also pick them up from the simulation. For organic it will be a separate research field, because there will be a direct control over the
person and I guess his limb. As far as I've seen, at least from research, which I made, you can put it on it like those helmets that are tied to you to the brain and you can move your hand, but this is a special model that is made about that, but I would say it's a separate type resarch and is out of scope for this and there
there will be many more other factors that will include more biology, When I talked about prostheses, I didn't have considering that, but then again, how about it? they say tigerfowl, there are athletes who compete with legs and springs. These things didn't exist until 10, 15 years ago. Definitely will. find application in all kinds of noid robots that have to imitate something a alive. And that's why I
was curious, because last year when the robots came out Tessa, they didn't look like people at all. the way that at least people who are biomechanics fans, seeing my hands how the manipulators are made, They said, "This is just some kind of commercial." Nazi propaganda is hardly something that may have the same gryfdlan that we have we. That depends a lot. This is more mechanical engineering than
whether it is something related to AI. But yes, these hands would they should even have, for example, in this one case and less burdens to support. In the sense of the hands, the robot arms of these slides. Generally speaking The kilograms they can withstand are 20 kg. And if you go to the gym, you can 30-40 and this is just the beginning. But It depends a lot.
This is more than the physical aspect. Yes, it's a little bit for now. Grift. They probably haven't figured it out yet, they've been abusing it much, but I think the way we're going is It's a matter of when, not if. So what? was the second question now? Can you explain in simpler language? How are the robots at the Dynamis post? trained? How are they trained? Because they
are autonomous in the way they who handle tasks and that To some extent, you once said In general, what is your objective? Now about these things that I'm talking about In principle, you have a specific task that is yours. language. You tell him exactly what to do. In other words, lift the bottle, move it to the left. For those who walk the streets, they should be used
a little there more different types of algorithms and a mix of different experts to do something more complicated, but an accurate pelvis that is given, I'm not sure what it is. Hello from me. I want to ask about Obstacle Avoids, since now we are looking at this only hands, we mean the robot as a hand, but for example the AGVs s are also a type of robot.
And at obstacle avoidance is it reasonable to use AI or in the sense in your experience what would you said about this? It also depends on the sensor you used. There are many sensors that just for example oh how far away are you from me and maybe to do a basic calculation, but The problem is what it is. You don't know exactly. what is it. So yes,
we'll need cameras mandatory. That's where the more difficult part comes in, where you have the picture and from the picture you should calculate how far you will need to go there is not only RGB, for example, it can be also uses a depth camera to make some approximation of how far you are. So yes, it should be used. mandatory at least in the case of obstructed voidness.
with robot cars, someone might hit us. With the robots that will come against us, it's still basically the same. They will tell us hit, kill a child on the road. Hey so, while you're spinning Hello. Oh, I have another question. Why? we use AI, as the colleague said about obstructed Voice Dance, given that you don't know what the object is, do you, by the normal way. You
just know you have object and you must beware of it. You don't really care what it is, because it could be a person, it could be a wall, maybe that poster over there, you want to you run away from him. You don't even care. so important what it is. Why not uses, for example, simpler and quite faster and gentler ways to Are you maneuvering around things? They
may be useful, but the problem comes that's why, for example, if I do it with Eyes closed and someone tells you where What to do, now I'll be a little late doubt. It's best to see it. for obstacle voidance depending on What is actually in front of you, this diffusion? modules de generate and images in another resarch also used donate some object which actually not exist there,
for example, if we're filming this floor here and looking at submitted to tell him to generate me a phone number or a lab coat or some kind of backpack, something anything else I want to move. Now maybe someone else as glassy as a box. I dare not say any one person, because that depends a bit on the model and how well I can generate it unless you
don't have some kind of static images that they can be put together, but that too can be a little more basic, but there is also research in these works, but for these things it is mandatory you'll have to have some kind of some kind anyway eyes. Ah, thank you. Just because my example, which they used is can i give expensive example, but the cheap example is Roomba
vacuum cleaner. You start the rumba, it uses a simple algorithm to follows some wall that saw her and maps itself or in a sense seeks to Be careful, as it goes here and there, right, right Knock knock knock knock and all the way through maps the path and doesn't need it absolutely no AI. It's just elementary. algorithm, I would say. I can also give under another example
we have a robot a worker who uses the same thing, there is a wall next, but through it time maps the whole thing in which is and just moves forward, right? Walk a little left and right, but yes. In general case there is no AI on it. Literally Yes, these are the more elementary ones. types where they are not so chimonoid or have a specific task. Now
for the rumba I think it depends on the model. Some also have artificial intelligence so they know where to collects more dust in the house, but depends on the robot and what you want to do Okay, thank you. Any other questions? I think not. Thanks, Nikki. We'll have a 10-minute break, short. pause and let me remind you again that we have merch t-shirts that you can purchase.
They are almost sold out, so You better hurry. Also for lightning so much, who wants to be write down, now is the moment outside there is sheets and I can write them down. Thank you. We're launching. Yes. Okay. And we will continue with the next one. our lecturer Nikolay Mihailov. And he will tell us Tell us a little about Vibe Coding for Design in design rather, as
he is prepared some materials in which he is participant. We'll let you all go. take a look at what he's been working on, what are his interests, and what will introduce you here on this Hello. Thank you. We hear each other normally. And I'm Nikolay and this is my second time I will talk about coding. Ah because for several years now I've been writing code, respectively for
several months now I can say that I'm sending a code. And how many of you are designers? Let's see now. one designer, second semi-designer. You are all designers. The question is how we define the boundaries of the design and what I brought as books and materials are related to several type of design. And so I have one presentation that is now in Figma. Ah Does anyone of
you use Figma? Everyone uses Figma. Great. That's one of the things I wanted you to be. I wrote in part of the presentation because and for me as a designer it is important to how to say, to be able to speak in one and same language and with the people I work with. I did my first ying tok in Varna. presentation that I was showing some of
these things, but then I had 3 minutes, maybe three or five minutes and there were no such opportunities. So today is number two as a presentation. And that's it. I posted it yesterday because I liked it. the message. And one should be calm, because Coding requires calm. But from another side must be his interesting. And so when he does it aa to concentrate. I do things like
that. standard. This is what I've spent the most time on. money. 3D visualizations. And with VR. How much people know about VR? How many people know that the chief programmer Is VR from Ruse? Two. Vlado Koylazov is from Ruse, but I don't know How many times has he spoken in front of the Ruse audience. And in the end one of the reason I carry these books is
because very often people know about someone, however they don't know what he did and what things, How can I say, it has a contribution. Accordingly You see what kind of pictures I'm forced into work environment to do. What I did for Ruse 13 years ago years, and one project by architect Irinka Angelova, which I literally heard the other day and asked her:" "I'm going to Ruse, tell
me what's happening?" So she made a whole concept for the career zone and I did the visualization and therefore this project was partially fulfilled. He was aa so donated to the municipality, but in practice it wasn't developed, was it, in what she there was a concept. Oh, and one of the reasons I'm here is, because I said I want to see what it is done, let me
do another one photo. This is the standard software, who for years 3 Studio Max I used. Here is the VR panel, but what I'm going to show you today, I have nothing to do with these standard designs. softwares. I don't know how many of you have tried it, give me they are coding. I did this as image yesterday. And generally speaking, I don't. makes the computer, that
is, whatever it is there model or a application that use, to write some text that he starts to get some result, but subsequently there are a bunch of apps. And someone from Does war benefit you? Warp one person, second person, no second a person to confess. I used warp from a few days and now you'll actually see between these applications I will show CUR and warp. And
as I plan here, maybe within a week or two to start paying for warp, so I tried it, but some Things didn't work out for him. What things I've done it as a Vipe coder, if I may. so to speak? The website of this book, which I showed somewhere, here it is aesthetics and visualization. the site in currently not working and this is another one of the
reasons why I want to bring something to paper and to believe that paper and physical things are a very important part of our, so to speak, collective memory. But after a long time I had been making designs with Figma, with I had made different ones in Photoshop. HTML pages with Bootstrap Studio and in At one point I said, "But you have to be." I'll make the entire
site and literally in three hours the entire site translated into English and Spanish It was so vibed, if I may put it that way I say. I hope you can do it soon. The next thing I was talking about in Varna, is an application that I had as an idea for a long time. Now I'll show it in a moment, but the difference from apps and why
at all I started writing code. as a designer, but is that every time you Apple decided to make some changes or whoever is the developer there, right, on a mobile SDKs and platforms in general and your whole design changes, your icons are changing, your icons are changing aa currently design language from several months liquid glass this is the new an application that I can use in a
moment show. And if you see the difference, what is it? Well, it's not that important, but thanks now to WordP, literally from the code I had, since I was made Swift UI code, respectively I mainly use Swift UI. And this is mine. A Mac that I literally work on. From I've had a Mac for four years. I program from more time if I can talk about programming.
I actually graduated in animation and and I do 3D things. But in the end, when over the years I talked to different developers, and they said to me, "But this costs 3,000 BGN, this costs BGN 20,000, this costs 1000 hours and I'm giving up, right? I shout "Okay, but when will it happen?" Right? we have paid several times in different ways projects money and at one point
five go by months, eight months the result that you are looking for, it didn't happen. And so me as a designer mostly I'm trying to make frames. I'm doing this here and there. high fidelity screens and from there on I'm trying to see what can be done as code in within a few hours it will be out. Why? Because really many designers they go into some details
here and there, which I realized for myself was full It's idiotic of you to make any detail, which will never be able to implemented as code. Or they'll ask you for a hickey money, or will it just be user experience It will be terrible. Ah, so here's this app, which I will try to do in a moment I let him go, and this is the simulator on
the iPad and here we have it the application. Let's see if it works. the design and what you see. Now I will I turned it this way. It is practically the last stage of doing this whole thing. The idea is an encyclopedia of modernity filmmaking from the initial process of a the first steps of a team when gathers to write a project. Then aa what are the
types of genres, right? For example, we have action. Now they are missing here pictures, but what if we have one a bigger team, what was my idea for the project? The information should be in several the language, that is, we have it in English, French, Spanish at the moment and respectively to be associated with some pictures that are very schematic, they give an idea, and there aren't
pictures everywhere, but they do give idea where something is happening. what people participate and in practice for one a person who is external to the process, yes yes to get such a rough idea what is happening and how it is happening. We have beech, we have a change of languages, and on the first look at elementary things and this as primary first a code that was made
as HTML and JavaScript. That's it. I played Curser. Ah, CURS respectively for maybe about three hours of work with Curser. And how many of you have used CURS? Yeh, like that. Ah, well, I hope more. designers to use it because especially with Macka, right, now we'll do a little Mac advertising, and what do I it was very helpful. The idea is that you have all your code,
you have aa that is, all the files, the code and respectively, the chat where you describe something. But and but what gave me the opportunity CURS for the first time, is to copy-paste literally the screens I have, whether from my phone, whether from the simulator, which is from Shift UI on iPad. I copy the screen, I say "this is not for me" works, do I mark something
and literally I go through the clipboard without saving. any file. So a few the file plus a quick prompt give you the next decision. And the problem that I had so much time, I'll come back here a little bit now. is what we do with debugging because it can really seem like a lot interesting and fun for the first half hour. you see something coming out there
and at some point He's starting to accumulate some nasty things. which I honestly and that's why you I made some kind of personal strategy, because and as a person who, by doing right, 3D visualizations, It's really cool to do some 3D stuff, isn't it? things and then hop, right? appear on the screen. But to one such the degree you're on drugs, you say to yourself, "Hey, I
will do this, I will do this, "I will do that." And then there are some things that don't are quite okay, but there are some things, where your health actually went It's six o'clock, three in the morning, and what? we do, right? Do we take taxis, do we drink? Are there any more coffees and so on? So for I told myself that four to six hours is
the perfect time to Safe code, if I may call it that. Everything else is simple. A headache, if I may say so. The next application, which is still available today, the phone, difference before and after, this I was showing at the conference in Varna. Oh, I made this application first. 13 years ago, whatever that sounds like. And then Apple a year or two later totally changed its
entire design language. A let's say now change again with Liquid GL, but it was much more drastic back then. I had invented an application that was for iPad mainly as a concept, but I said to myself what are we doing. And if we want to collect a team in filmmaking and this team to come to a certain place. Here now we have cameras, we have photographers and
they they have to come and do their job later, when the project comes out, to receive credit for working on this project. And the whole a currently has a pile of modules. What I was showing in Varna how I had made it here are these two screens your account within maybe a few days ago But the main complicated thing about the app is the system of profiles,
and the connection of profiles with events, the job advertisements and the calendar, which in ultimately must unite This is what Castlio actually looks like in Curser, which I was showing a while ago. And in the moment I go to Hicks code, this which literally a week ago a weekly newspaper didn't do specifically, I hadn't set it up, is it to test whether what he spat out of
me as a solution, but it can be compiled. in most cases when I tried what he gave it as some kind of solution, he spits out, for example, a change of a pile files, it says okay, right, okay, right, everywhere and in the next moment Hikd starts with some red rings, with some yellow ones, right, and the red ones are critical, cannot compile. Ah, right? Now what
am I telling programmers here? things like that, but in the end not only is the problem that it cannot be compiles, but the problem is that it overlays some piles of things on top of each other, which I am aware of some of the modules that I did, but at some point, sir. starts making files that literally does not tell them to HOD indexes to the main
project and these files actually I have to manually add them to the list and respectively to see if it clears up and compilation errors, right? That is, my job, if I can call it work Before I start, let me know if the code was connected. with this the screens and the various elements, that I made up, that is, icons, fonts, margins, right? I will be back now.
Here's a screen. All these things I to make them as an interface, that is to take them out, to put them on an HD screen screen and possibly connect them. But how the application itself works, that is, the logic from behind? And I had no idea how right. I was trying to figure it out, right? some things. I looked here and there stack overflow, but when it
came out, chat GPT Perplexity, I started to connect and some functionality, if I may put it that way So now I'll open it up quickly, here it is. launched the iPhone 17 simulator. That's the other good thing that when you install hicks code before it came out, and so on the new iPhone is officially announced, release candidate versions or even beta the versions of codsh to see,
test your application and to make changes to the interface aa as a designer, what else happens exceptionally difficult. to take out some libraries, we stop, right, will it be liquid glass, will it be something else, but now it will come out here what, right? This is the iPhone simulator. and the other thing is, since for years I bought PCs, laptops, I'm three three changed, several workstations and
each every technique. And what turned out to be three or four years after you bought it, is outdated, not to say that it is the price has dropped to 20% of what it was paid and almost no serious work it doesn't work for you, while this Mac, so this is the first Mac Mini with Apple's M1 Silicon and has 8 GB of memory and 256 GB hard
disk. Now I hope this thing started. Yes. Just the first one initialization is slow, but the idea of literally my investment in this computer and all those, I don't know anymore I have hundreds, maybe over 1000 hours I got some code like that things, it really is the result I get. Now here You will see the exits, all sorts of things are coming out. nonsense. which some
of them of them I know what they are. Debulgari, right, it helps accordingly part of this, but on the other hand other are system errors and things that are related to whether the limitation of the a itself simulator, whether with what it is at all invented, which is done. So there you go. This is what it looks like with Liquid glass. I wrote accordingly, here is the
old one time for the conference. And the idea of the application, as I told you, we have a profile that is connected with three skills that you apply in three areas where you work, close to what Instagram is, except already very specific projects and people you can work with. Accordingly, and a few days ago this, What I tried to do was to enter and a function that
I didn't know about at all Will I be able to do it in any way? is a way. So we can do it here lists of people with whom, let's just say We've met, worked together. But the idea of I'll just save this list now. If we have operators here, if this is our new list here, yes send a message to all these people in within this
application, if anyone there is no application to receive SMS. And in a film production, as much as Strange as this may sound, in most cases people don't use the same communication system. That is, the idea is still from the very beginning of Cast was to give opportunity for at least half of the team to connects in one place and receives adequate information throughout the process the production
and presentation of one project. Because very often, when promoting a movie, series or whatever else, a number of people from the team participate, they are made premieres, screenings, traveling all over the world and there every one of these People need to do different things. So and what I did is the functionality to send messages and these messages are currently 100% simulated. the whole application is gone backend
and this is about to happen. But the idea from here, now here we have a okay man, I can add it to the list and I don't really know. Yes, right here like this goes out to this list and thus communication to become more optimal. Now here I think I went out twice and this is one of the mistakes I haven't made fixed. That is, one person
goes out twice in one list, but in the end, ah, maybe, right? relatively easy to edit the whole And now here I'm going to go back a little to CURS and what I mean is that from one side he looks like develop right developer environment, and what a designer, if he sees it, right, at first he will say: "I am not programmer, right, what? I will go
to I do some things like that." But on the other hand, if you have somewhere code, whether via chat GPT Perplexity you take something out, you put it where it belongs calls folders and he starts from here on out to make new code. You give him some structure. And now the thing that ultimately I figured it out, thanks to and WordP, is the description of the documentation
of functionalities. I mean, before that I had it in designs, then WordP, after literally four or five days with WordP, it started generating MD files that describe how they work things. I haven't watched them all, but this is maybe at some point something that I will do. This is what WordP looks like. And for those from for those of you who haven't seen it, it's very close
to CURSer, but the two things that were a huge difference, it started to make tests whether the code compiles and the second thing started doing these a MD files that later, when I gave it to CURS, made corrections to this is because WordP started doing it again Nasty things. And maybe they expect to be paid, right? right, which is normal. But in the end account the latest
adjustments that I made a mistake, they fixed some things, which I didn't like. So, like I said, these are our the last two screens and functionalities, compiling and working with liquid glass, so I know this thing works. The next steps for me are to start to pay for warp. Very quickly, for I think I have three or four days all the tokens they had expired. And as
a comparison, what I can say, definitely chat GPT perplexity, so as perplexity I use it mostly for translations and for some resarch. And with Curser and WordP things are very more than what a designer has within the last Hick code they scored directly functionality with GPT. How literally now maybe I'll show that. You click here and Apple comes up. Intelligence. You're telling him, right? You're pointing it
out. given a code, you write it down what you want to do. He does analysis, but honestly I really prefer to say it in short. this whole thing to happen. from there on, and what should designers do? Above all, think about quality structure, wireframes, read MD files, respectively, to have some kind of database, from which one to go, whether with pictures, whether with something to use, to
utilize chat GPT or for guides on how to develop, how to do do something and accordingly to write asking for help from developers. I I had to do it myself several times. Hikd installation. A friend of mine helped the first time and subsequently I've had people stare at me a few times. Tell me what I should do. But something, What I said to myself is that The
trouble was what Nicky told me, you have to code it yourself if you want to you make the applications you have. And what is good about a person like a designer should be able to know and use which I will try to talk about what represents basic HTML, CSS, how to adjust, respectively, the structure of a JON file, what is a JON file, right? to make a
mistake, not to work. These are the description of the events and announcements, who are with us. All these things I've been talking for a few months now. the so-called YouTube channel that I am named Colding Blues. Now it is time to I'm making more episodes, so I'll I use the feedback with you to what lies ahead. So thank you. Now is the time for questions. Oh, I
have some extra stuff here, but in general, thanks for your attention. If you have anything to ask, I would be happy to to answer. Thank you Nikki. So questions. hello What is yours? You explained about set, but I'm interested Rap and CUR are your top products with which you create an application. This is what you use in right now, right? Ah, Figma and I make different elements
there, but is how to say, right? If you see the salad that is became a castfolio like right elements inside if you see the salad, which is this and Cinema and Illustrated, right, you're literally here. I did this thing, that is, that is, I've done system design several times, I've done different things, but one of the things I really tried in Figma, in a moment when I
have the screen, who came out of like some mistakes, when this screen is generated, you are make the corrections and return it on Cursor, for example, correct this, this and that. So figma for icons, to collect some elements, but all of that, that is, you have to, right? you use one software and everything is there, right? to be inside you, especially with this one with that one
speed of action that I saw serp is just eat. So I don't know what will happen. happen now. Figma make. I haven't tried it. nothing in it. Ah, but when I saw Curcer and now with WP just one designer if has a desire to write something, to watch some code because a lot of people just they say, "No, no, I'm not, I'm a designer, "Right, I'm here
with my pictures." Did I answer? That is, to understand only one specifying question. to understand that you don't create the screens, but you only make individual elements and then I cut them short. Is that so? No. Ah so here are these elements that are This is what I've done to myself a lot. long ago. Accordingly, I have done the following as code in HD, but subsequently, as
I said, Apple changes things over time several years their design language and In two years, I see what Something new has happened and it's happening. And this, which now made from the design that it was and maybe this is what it gave me, right? the version that's here, right, today I showed. So I told him, "Fix it." the design and he fixed the design and and on
practice this is something that one designer, if he goes to play, he takes much more time." Yes, I understand. Thank you. Others Oh, hello. It was very interesting. A The only moment I didn't understand was... the things that are generated by VIB method, you use them to demonstrate a prototype of the application or the plan is to become an application that many people will use because the
goals behind vibe coding are usually quick to make a prototype from which you can you get quick feedback, but mainly about the behavior that is expected from the design, from the interface, right, then and then this salad, this casserole, which is from behind, it doesn't matter that much, because he will not see the light of day beyond the people who are connected to the project to They
understand it, right? These are the recommendations, that it is good to use for prototypes or for internal projects, where again will be limited, will be limited in number people who use it. Thank you. Ah on the one hand some things that are, how should I say, test, that is, for example, web pages of several languages or something like that, I'm them You made them in such a
way. Now I I was wondering what to name today's lecture and I told myself that this is on the one hand ketch, on the other hand, if you have to I'm talking to a designer about how it can work. real with code and he has this some practical value, ah definitely vibe codeine is something that will be given to him speak, right? Now as we said, there
is no many designers here because in most cases design designers, right, do several screens, connect interaction in Figma and have no idea how is their device real, whether theirs device or something, right, it will do this design, that is, how the code will run to actually work. And that's why I would rather people perceive this way, that is, they have invested in expensive equipment. A MacBook costs,
right, 4-5,000 BGN, and they can be they install all the IDs very quickly solutions. In this respect, right, if Can you please help me with a designer? help him, help him adjust The ID and let him go, literally the first one Hello screen, right, or something else there. But subsequently opportunities, and I call it for myself your VIB because I say I want to add some functionality,
I want to I correct some things and say to myself I limit myself to a certain time. Can you call it a sprint, but the last Now my goal is to get a developer's license. account. So far I've actually used three apps that I can put on my the phone or to work, but after developer account to tell him to do mikend. I have acquaintances, right, programmers.
Several We have done different backends many times. platforms, but ultimately I want to saw what he would do and especially with The iPad app, right? Cinema. Illustrated, I know I can 100% be make the app with all the things, which are inside, because they are words, translated with pictures and this can be sell it, right, we'll see how it goes, because marketing is a whole other ballgame.
I answered, I hope. yes. And by now I assume you have participated in application development projects, right? It is not to stick the frontnda to backend and start collecting it millions in the bank, right? There is maintenance, there are applications that are alive, they are evolving over time, things need to be added on them. And this is something that for me is still like a ghost, because
VIP, right, even before there was coding there was low cod and no cd solutions. Figma is somewhat like that because allows you to make transitions there effects, to imitate what it will look like, but it was never meant to arrive to the end user. And precisely because of this seems like a very good compromise for prototypes and for internal projects, while for things that they will see
for real a user, which we kindly we call half-idiots because they don't they put a lot of thought into their use. There will be some cultural quagmire there, because and especially for It seems you understand what you are doing. somewhat, however, for people who really They don't understand, for them the one who will confessed magic, right? It's interesting how it will be maintained, will is developing. And
on the one hand, how to I mean, the tools I use the last four years really not existed before, didn't they, when I was at the age of, let's say, a person, who enters into any industry, but AI is not at all existed, and Mac with M sicn there not existed. That is, you, if you want to be you are testing a Mac application, you need to
have a Mac, you have to have yourself phone and that way, right, simulators and all that stuff but just They didn't work together, did they? Well, at least now I could have blurted out some nonsense, but aa what hick CD with Swift UI me gives me the opportunity to see the canvas what happens to the code, right? Now here I don't have a preview, but I would
like to see many solutions. what will the interface look like before? to compile. Did I answer correctly or not? I will wish you a successful project. okay. Then Any other questions or should we close now? Yes, of course. Oh, hello. Thank you for the lecture. A I'm just interested in statistics. you mentioned some frameworks that you you put when you work with labels, but a I'm curious
if you've done any such as to have even a rule like interwood ratio with AI and then to shaping, so to speak, manually this, to touch the code, and not only the code, but also some on the final product. Yes. on the one hand, because he he invents, right, some icons and says, right, I'll use this system icon here, this there and so on, me I don't
like the system icons. and accordingly I know where to put what. A when I see that he has done some additions right in the code that just make them I wave as comments, that is, I wave the action of some of these things, but what the WRP in particular has now done, him with all these AMD files, me if I went to read and see what happened.
happened, right, I had to come to year at that time. And really at the next step where I have desire for this thing to become a production when I work, it means two things, one is yes, it should be on different devices works, the other, the second one is secque. And that's why I chose Apple as a platform, because we had a very big project 15 years
ago. This project it was wonderfully done, but in the end The security guys hacked it twice and three times Years later I said to myself, I can't. to endure problems more, right? with securities. And from then on, again Let me get back to your question. I try to touch less because I understand too little of this already, what I do. When I do new things, I try
to touch more, that is, completely new. So new applications, are they a I want to work with a group of people, yes. we tell them we're doing a hackathon for some theme and then let's try it out some things. By doing for YouTube I'm also trying out some new channels. it works, but that's about it. Yes. total of all the activities you do, Are you wondering, roughly
speaking, how much and working with these tools increases your efficiency? What if there is no money? I make a living by cheating, right? I don't know. That is, for me, for me I didn't get anything out of this, did I? For now, just some investing So, well... so as a design and nanobana now and who who who who who who Which of you has used the nano
banana? and it takes a person two days to do such things right in half an hour right if he make some adjustments and do it there some things for two days otherwise you have to be you're playing aa now I don't know how at at most of them, right, with you with coding, but ah something I want to talk about, right? I will now rule out that
time is passing, but just so a person can disconnect from technology, to be able to start on paper, to be able to communicate normally with other people, to write down everything they are their ideas and aa all this this narcotic influence, right, because See What can I do? Look what I can do. I will do it, right? Look what happened. Ah I've seen it several times and
definitely It's very hard to get out of it and Your head should be able to sleep just like that. onwards. So, ah, that's why. I brought these books. I want to talk. about the connection to the real world. Okay. Thank you. Well, now we'll move on to another one. a break, a little longer, 20 minutes, then we will continue with another one lecture of Mikhail Petrov and
architecture and offline development design applications and also the interpretations. Thank you. Thank you. with the last lecture for today, after which We have e-lining so naturally. A our next lecturer Mihail and this is how he does it another powerful lecture. We hope and Today is brutal. And he said that He comes from Plovdiv and said he is also furious. And Now we will understand why. Why am
I coming from Plovdiv and am I angry? This is the main question because the organizers have already allowed themselves for so much time to neglect one programming language that we so we like and love, and that's it It's amazing that we're looking at topics after topics related to artificial intelligence and nowhere a piece of playing JavaScript. Me too I'm coming here to fix this. injustice and talk
a little about the real things that of course we exciting as developers. Our topic will be related to a very painful problem and it is what happens when the internet goes down. And we still want to enjoy it of the pleasure of the applications that we use on a daily basis. Of course, as usual in my lectures, and this one is inspired by real life I was
also inspired by the greats. Somehow they suggested my needs. In the year 2000 or so the great Slavi Trifonov said: "If I knew "Only I, the Lord God's number." For regret this attempt of his ends with the subscriber's phone is switched off or is out of range. That is, there really was experience. This experience could have been successful if MTEL and the other big suppliers had done
their job and they had secured a network. Unfortunately the result is tragic. And what could happened if this conversation really happened had it been accomplished? We've heard of a Ferrari, but I I believe that history hides many others. 2019 year A popular Chalga singer said GPS doesn't work for me. finds and follows With the statement tonight I will splash the fair. Only the lyrical speaker knows best
what is behind this statement, but some such evil tongues They claim it is cloudy and bloody. And what? would happen if there really was a GPS range? We had found her and maybe there wasn't that something so immoral could happen Again, we can only guess. Finally, of course, one so famous Bulgarian lyrical rapper Keranov tell me where to find a blender Amadameli and Minced meat. And of
course the answer was I don't know. because the internet stopped. Tragedy again, which is largely inspired by the lack of adequate infrastructure and delivery of services. These three stories are tragic because they don't just bring us back in the past, they direct us directly to the land of dinosaurs. Here the only fun thing we can do to do is to somehow jump over and we sadly refresh
our browsers. Okay is like some software engineers, professionals and managers, people from business to think about how we can to rob people of their destinies, when we don't think about the offlineness of our application. So today you will be Let's talk about exactly that. I am Mikhail. Petrov. Because we are in the context of university, I can say that I am a doctor without being ashamed. So
you heard it here I feel very adequate for me. place and I will introduce you a little or many of my reflections on this topic and part of the experiments and projects, that we have developed with our colleagues recent years in this direction. Otherwise, in principle, I also work in a university that is a little more I'm trying to do more or less the same thing. something
on a weekly basis so to speak my students, the future is bright generation of the IT industry. The other day YouTube went down once again Ominous times have come. people in the office had loaded shameful playlists, which of course can be some to be not just a tragedy, but pleasure, but the truth is that somewhere that Power BI tutorial was being soldered there, which we wanted to
watch to decide the client's problem, but we were unable to. Why? Because offline capabilities, that YouTube provides us with are quite hang up. This is an application that can just to inform us that We don't have internet. Something that already To a large extent we are aware of it. When we see the scary dinosaur There is no internet connection, quite often Tears are flowing, but it must
be think about the extent to which we are guilty. So let's get started. we think Big Brain Time what they are usually the perceptions that we have as developers, when we start to we are building a software application. Well, for us, the network is always 100% hope. She is there. She will never fall. She will never be compromised in any way. 0% latency, that is, whatever packet
is sent, he will absolutely not be diverted from the network highway and at no point will he suffered some form of routing. Our bandwidth, of course, is endless. When we are told 1000 meters, we have 1000 megabits and they are never less, maybe even more. And Of course, our network is 100% secure. That is, whatever information packets we send, they will never be intercepted, they will never
be snuffed, never will somehow to be compromised by other foreigners, so to speak, eyes. We can safely We admit that a large part of these statements are logical and 100% accurate for us the moment we start we are making some kind of application. The truth is, that they are there, but we don't pay attention to them attention. And this is to some extent analogous to the so-called
eight fallacies and which are defined in Sun Microsyst creating distributed applications, namely these are the perceptions that developers have, but we don't think about the opposite, the opposite. The truth is that the network is never reliable and it can always become the object of everything we can we remember. That is, it can fall. Latency very rarely it can be 0% maybe only unity in certain regions. The
speed that our internet provider gives it as if it were a clean coin, so to speak, it can very rarely be 100% constant within the day and accordingly security as we know it lately years is absolutely illusory. This is some kind of myth. We can always become subject to some attacks. What are we for? can we think and work? By which of these problems? Well, to a
large extent, for security. That's clear. If we have considering that we can become the subject of attack, we can try to defend ourselves the application well enough. But the second thing that actually combines the first three, is the offline capability of a given application, that is, to make it work without internet. And yes, it is clear that by 2025 we will not have the idea the internet
is a lot, so to speak sweet and utopian, but everything is happens. We enter tunnels, we are entering low-range regions. Sometimes it happens that Google goes down, anything goes. So we need to think and for this option. And it can also we also have applications that largely degree require work without internet because of their peculiarities. So let's let's make a few categorizations of this, what we are
talking about. Well, to a large extent. applications that can be called offline first or in other words they don't have it, everything is fine and those who are online first, those who largely degree, if we don't have the internet, they are completely unusable. Even if they just show us that there is no the internet is so to speak completely useless. Slow internet is somewhere in between. For
many people these days slow internet means no internet. It even lifts us up the level of frustration to such an extent, that we are starting to get more nervous, than doing some work. So we should try to position our efforts in developing applications more or less in the left quadrant of this coordinate. That is, we understand applications that would normally it should have made sense for them
to work without internet and those that largely degree added internet would also behaved adequately. And here I want to introduce a term that I guess a huge percentage of the audience is not new, but due to some reason The reason is swept under the carpet and not speaks enough about him, namely progressive we app. The idea of Progressive Web App a potential merch between the idea of
Native mobile applications or in other words the thing, which we use on a daily basis and web applications as an application idea, living in the browser, applications that use the network 100% and applications, who are largely without a network have no very big meaning. Progressive Webaba has several principles, which are very important in his construction and the first basic principle is offline first. That is, every progressive
The application should have this much opportunities to be used without the presence of a network, with or without it we have a small percentage chance of doing it throw it away or turn it off. And now let's do a very quick one very quick analysis. You see on the screen nine application icons that support a different set of services, which we use on a daily basis. Google
Drive for example. This is one an application that we can safely use we categorize as offline first. This is an application that when the internet stops we should be able to use his 100% possibilities. And here we are doing one A very important note. To stop the internet doesn't mean he won't come one month. This means it stops at some interval of time. It could be 5
minutes, maybe while you're at the store for eggs, it may be within some down time, but the rest of the time it's there. During the other time it is synchronized, during the rest of the time he does his own thing should happen in principle. However if we currently have no connection to this number, we will not have any Offlineability Google products are largely on level. And their
calendar can be used in offline mode and docks Google Docs, their version of Microsoft Office can also be used without absolutely no problems at the moment, in which the internet is not there. Spotify for example they have a very interesting for their premium program. Every one a musical performance that you sing under somehow you have in your playlist, can also be played offline mode. How is this
possible, I will we'll talk in just a moment, but we also have apps that get a little hotter area at the moment when the internet starts to stop. Messenger for example, its main function is chat application. When there is no internet, yes we can load the photos, we can we also load old messages, which no matter how we look at it, it's something very useful. It might
not have been possible. Anyone could time the application is launched, yes an explicit request must be made to the server and load accordingly some set of files from the Jon case resources. But Messenger caches huge a percentage of everything you did in the form of images, conversations and audio files and they are yours available at any time. That is, we have ftiffs. It's useless as a chat
application, but it is very useful as a catalog of past conversations. And we go even further to the right. Revolt. Revolut is an application that without the internet has largely already begun to becomes useless. Why? Because the main A feature of this thing is to transfer money. Since we don't have the internet, we can't We transfer money. Yes. We can watch. what invoices in the business account
for example we have made or what payments we have made translated. But this is largely useless for such an application. A also Robinhood. Robinhood is one an application that allows you to track quotes and stock market movements. Again completely useless in the context of missing internet. And so somehow a lot we clearly create the parallel between when we need to think about offline capabilities, when we create
some application and when we can safely sweep it under the carpet and let's say well to a large extent it is It's pointless to think about this. If the main feature of the application suffers from the lack of internet, in this case to do the applications, not taking applications and all applications that to some extent they work with text and files, they can most likely They also
work offline. Notion for example, is one such application, with which you can organize absolutely all your notes offline the regime. So at the level of concepts we have to a large extent degree two things you need to we think. Caching and synchronization. Caching is when we we keep everything with us. Synchronization is the moment when some remote entity, in this case server can most often understand that
something happened in the system. Me too I add one number three. Very fast involvement between the two. How is it done? without the user realizing that the server has it fallen? Very quickly. Very, very quickly. Well, also when we do offline application, we have to be very fast, when we try to switch between the cached version, the current version, and respectively when synchronizing with remote the server.
To a large extent, flow of each an app that has offline capabilities, should be as follows. When we load it for the first time, we need to we cache the main files. I have to we have xHTML, we need to have CSS, JavaScript and all those important things visualization of the basic skeleton pieces. Why is this important? Because if we don't have internet and for the first
time we are trying to open this app, we won't we see nothing. That's clear. But in every next iteration we will see at least minimum skeleton that will give us some information from here on out. For example, in the YouTube scenario, this is what It's YouTube, but there's no internet. Sorry. From then on, when we start we are preparing the next step from offline the possibilities, largely
the idea we have to load everything from the cache we also have to keep the current version, which is the most current. From this moment on, the search continues of the online moment, that is, the moment in which our application will become active and we will be able to do all this synchronization. level synchronization deltas, that is, the last things we added to the application or complete
synchronization, if we have done terribly many additional interventions and modifications. So the overall process looks something like this in the following way. We always have some page, conditionally we have some kind of worker, something that synchronizes and some memory that must do the whole n between the performing one in this case functionality, service provider and respectively the page that will be refreshes. The network is our single
source of truth or in other words, where are you from? we take the relevant data. The first thing we need to take in mind, is caching or in other words, Where will we store our data? Browsers have evolved in recent years mega many and they give us an enormous amount opportunities to store information, which was previously more a corner, almost inaccessible and quite often I one could
even say unreliable in some degree. Years ago, if you didn't have access to some database, no matter whether it is on a local server or remote server, the amount of information that you can save it for the application is limited. Browsers gave us some possibility, but it is by no means was as adequate as in the moment. If you open as of today, let's say, Chrome Toolbox,
you can see calmly calmly in the application of Your console has different storage options. We have things like local storage, index db, cash storage and you can also see so we have shared storage and storage buckets. Suddenly our browser provides an awful lot of opportunities to we store random information about the user. And I'm sure everyone people who are engaged in some kind of form with web,
have heard of local storage. However, a very small part or at least not as much as I do I wonder if they've heard of index db. Local storage and the index db I can compared to these two great cats, which in I've just shown it on the screen. The top one is some kind of leopard, and next to the bottom one is the cat Gosho. And Gosho
the Cat has no instincts for storage. He is fat, but he is very Yeah, it's not that fun with him. It is not so fast. Actually, why not? Who knows. So local storage is a mechanism for storing information. Indexdb is also the mechanism for storing information that we we can use within our browser. If we have to do one thing very quickly comparison, things look more or
less the same If we want to store information in aal stage, we have something like 5 up to 10 MB, which is given to us by a browser to different browsers. Index DB is unlimited. Why? Because this is a no SQL database, which is baked directly into the browser. That is, to a large extent, the memory that we have within our hard drive, relatively speaking, is the
amount of memory, which can be set aside for storing some resource. That is, here we suddenly start talking about a lot a great opportunity for us to keep data about whatever it was. Local stage too, which is very small, cute and simple, it might work only with strings, while dbito is a complex database and it gives us allows us to put arrays, objects, strings, numbers and all
kinds of such abstractions. Some of the problems are that, for example, Local Storage can be used between different tabs, while dbit It's not that you can't, you just have to do it. Let's write it ourselves. Al storage is universal. All browsers have it right now, while x dbito is a bit more like flying, so to speak It is implemented in many places but no everywhere in the
same way. If we are in the chromium world, no problem. However, if we move outside the chromium world, It could be that we are in the Wild West. And here come the evenings. Where to apply local store story? Everywhere, wherever we want to keep things simple for our user's behavior. Clicked you took the dark mode button okay, I will keep. In the next one I enter your
the browser. You chose a little bigger. font on our site, we will keep it. We can also to keep some basic information like if you wrote The name will also be somewhere there. Index debit on the other hand is very suitable for storing large volumes from information. Notion for example, I will come back to it again uses index db for absolutely everything objects that you see within
your interaction with the page. That is, they are saved locally in your browser and can be reproduced in every moment. And here it is a lot interesting interesting subtle moment. fast caching of simple data. However Our index DB is an embedded database, in which we can abuse very badly. That is, we can put documents, we can to put on heavy jasons, we can we put everything inside.
However, we have one problem that I I shout plus one. That's the DB index. very complicated. If we talk about local storage, elementary set item, get item, index The debut on the other hand is an event. based database. That's where things start. to become a little more complicated, because in the moment we begin to we create any files, we need to define a version for it. The
moment we have any handler, file handler, from there on we communicate only with the help of cones. That is, we have callb, which tells us everything is adequate, your database is initialize, everything is okay, your base data can be used successfully. Something has become very thick, we have an error. A as we know, whenever we work in callback world, things are starting to smell because we enter
the so-called kobekl. Many things are tied to the tree and must be appropriately protected or with some promises or respectively with blue. Here is an example of how, for example is written to a single index db on your browser. A new one needs to be made. transaction with the existing handler. this new transaction to define fashion in an existing collection must be add the new record accordingly
and caught onclete or on error events. This is purely from a set-item perspective. get it is much more complicated and very easy can get out of control when we want to make a more complex application. Reading is largely absolute the same thing. Again we have a lot transactions, many in between state, which we have to catch and a lot respectively potential events that we can address. This
is probably one of the problems of index. db is not so popular because typically in JavaScript style the api is very complete the sentence Very bad. And that's why, when we talk about such screwed up JavaScript apps, usually some people on white horses are coming, they don't solve the problem by creating abstractions on them. Years ago this was jquy on the home. Subsequently, The framers appeared to
decide for us as the whole problem with foloa. Now we have respectively and problems that can be solved with additional libraries, such as one of the solutions that I can tell you, it is a DB signal. Signal DB is an abstraction over DB that gives us opportunity to manage ourselves very easily and the records using as weight. To pretty much everything has changed promisify and we don't
deal with nonsense. We can look at we can look at details about our DB index in respective storage the headquarters that are given to us by the browser. Here I have given a few examples of applications that respectively give us opportunity for us to look a little more in depth what is happening. The application you see, for example, is veterinary medical application software that can visualize information
about medications, diagnoses, protocols and so on. Works completely in offline mode and every time someone veterinarian takes it, he can get up to date information about everything, what happens in the clinic within the the last few hours, days, minutes and and so on. All this stuff is possible because all this information every time it is pulled and done locally. That is, we have no opportunity in any
way moment to become a victim of the missing The second problem we need to solve however, it's about how we're actually going to do synchronization. And here they come to our aid the tough guys, the workers. Several have emerged in the JavaScript world very cool concepts that some people threads, other people call it [ __ ]. In general, the term used is service workers and web workers.
Services Urkers are used as proxies between network requests and the application, and web scrapers are used as an additional process that occurs in the background. Accordingly, the service gives us the tools opportunity for us to follow absolutely all the events that happen on the network. That is, when an application is initialized, when activated and when accordingly, it is not used. All these events that we can capture
are our key so that we can we synchronize some information that we need it. Navigator object, this extremely bulky and full of all sorts of cool stuff, object in JavaScript that gives us ability to monitor USBs, clipboards, contacts, geolocation gives us access to this proxy in question. Service Work sits between the application and internet and every time you log in any request, we can do very, very
complex dissection and yes let's evaluate, aha, I made a request, no I got an answer, so maybe The internet is down, go down to mode or I made a request, it takes a long time, We most likely have a slow internet connection. How do Is this happening? Well, the service workers are register in our application at the moment it is initialized. It is very important to say
here that absolutely everything is a separate file, which we can write down this whole abstract logic for our proxy. If we have a screen like the site can be reached, sorry, nothing can do because this application cannot to start. However, if we can reach some application for the first time way, we enter the so-called installation event mode. That is, we can Let's just say it all in
this. let the application be cached using index db, local respectively storage or something else. And you see here on the screen from this code snipet i can get cache all resources directly in our browser cache stage. This thing gives me the opportunity to get one cached version of index HTML, CSS or JavaScript. As with every next sending data I can accordingly I assess if I have received
one or the other. response request, what should I do? Yes gets the cached version of the current one my current code or do some new request, delete the old one cash or to make some new request to the system to synchronize with existing ones.