The idea is to, I don't know, it's a way to find distinguished elements in a space, in some sense, okay? So we assume that in our set or a space, we have a notion of tangent space, in some sense. And at each point, at each structure, we have, I don't know, it's like a, well, it's a tangent vector, it's a direction of improvement. I don't know how to say this even in Spanish, but it's a preferred direction, we'll see in the examples, that in some sense, in this direction, the, the, the structure is improved in some sense, you can think in, I don't know, in a gradient of functional or something like that. Okay, so as usual, we also have an equivalence relation in the set, okay? And we denote the equivalence class of each element in this way. Okay, and so these, these three things are, are enough to define the concept of soliton, which is when the, when, when the preferred direction is tangent to the, to the equivalence class, okay? So it's, in some sense, is what, what we are, what we are saying is that the, I don't know, that the structure is, is nice enough, okay? In the sense that the, the direction, so what is, is supposed to, to improve is, is tangent to, to its equivalence class, okay? So it, it can not be improved in some sense, in, in, from this point of view. And well, usually the equivalence class is given by the action of a group, and if you is a Che Guevara, and that we will, we will assume that everything, always, then the structure is a soliton, if and only if the whole class is a, is a solid, is a, consists of solitons. So maybe this picture can, can clarify what I'm trying to say, recall that we are in a very heuristic way, heuristic situation. So imagine that this is the space of structure, you have a structure gamma here, and it's a equivalence class. This, these lines in color, Jill, I think he's called the color. Are the equivalence classes. And then at each structure, you have these prefer direction. Okay. So that's, that's it. color are the equivalence classes. And then at each structure, you have this preferred direction. So you have another equivalence class here. And so what we are saying that a soliton is this, is when the preferred direction is pointed to stay in the equivalence class. So it's not improving the structure. OK. Of course, if you assume enough differentiability in the setting, you get the flow, OK? An evolution equation, which is this. And so in this general setting, what we are saying is that a soliton is precisely the structure which evolves cell-similar, OK? That the solution stays in the equivalence class. So it's like you are not getting anything new with this flow. So of course, it's like, well, these flows are invented or considered to find usually the fixed points of the flow. And solitons are not fixed, OK? They are moving. So they can be a problem. They can stop you in the search for the fixed points. So they are a problem if you are trying to prove, for instance, the existence of fixed points. But on the other hand, if you are looking for what would be distinguished or what would be the best element, it can be very useful, OK? So let's start with some, I don't know, baby examples just to show the idea. We have considered the vector space of n by n matrices. Well, from some point of view, the nicest matrices are normal matrices, OK? Each matrix is semi-simple if and only if it's conjugate to a normal matrix. And normality is invariant by this action, OK? So let's take these as the equivalence class. Two matrices are considered equivalent if they are conjugate by an orthogonal transformation of the scale. So this would be, I mean, if you, the tangent space at the matrix of the GLN orbit of the conjugation class is the bracket between a and something. And then if you put that something as this, measuring how far is the matrix to be normal, this looks like a natural preferred direction. And well, what you get is that a is a soliton if and only if this q is a multiple of a. So this part is gone of the tangent space. And this is a very nice equation for a matrix. You, it's easy to see that then either a is normal and c is 0 or a is nilpotent, but not any nilpotent. An nilpotent matrix satisfying this equation. You have here like the Jordan blocks, which are the matrices. So these matrices are the solitons and any orthogonal conjugation of these. So instead of the expected, I don't know, Jordan blocks with 1111, these are actually the nicest matrices if you want after normal matrices, beyond normal matrices. And indeed, they are well in a conjugation class, there is in a nilpotent conjugation class, there is a unique always up to orthogonal conjugation and scaling. But it's unique and these solitons are minimal for this functional, measuring how far is a matrix from being normal. So are really the global minima on the whole conjugation class. For polynomials, take the vector space of homogeneous polynomials, I don't know, quadratic forms, binary, terminal forms. And in this case, the role of normal matrices of nice elements can be played by harmonic polynomials, which are the silos of the Laplace operator. And then we can see beyond harmonic polynomials, what would be a nice polynomial. So consider also this action. Harmonic polynomials are invariant by this action. And then, well, this is a natural preferred direction. The fixed points are precisely the harmonic polynomials. And so we may ask, what else is a soliton here? And well, it is well known that the space of harmonic is irreducible under the orthogonal action. And actually, these are the other irreducible components. And then we have here candidates for solitons. And indeed, if you take a polynomial here, which is not harmonic, but it's a multiple in this way, then it's actually an eigen polynomial of this operator. This is precisely the eigenvalue. And so it is a soliton. And well, it's very easy to see that these are all the solitons. This is very related with the spectrum of the Laplace-Beltrami operator of the sphere. But OK, only this. And if you consider the flow, it's very easy to see that if you start with the polynomial, with this projection non-zero, then you will converge to harmonic. But if this part is zero, then you will stop by one of these solitons in your way to a harmonic polynomial. OK, let's see a more geometric example. And of course, a very sophisticated example. Plane curves, the set of all plane curves, the equivalence we consider is if the traces are the same up to rotations, translation, and scaling all together. And so, well, let me show. So what's the tangent space of a curve? It's not that this, in this case, is not only one arrow. It's a field along the curve. That's a direction. And well, it's, of course, very natural to consider the curvature. The second derivative of the curve, assume that the curve is parametrized by arc length. And so the curvature, the second derivative, is measuring how curved is the curve at that point. OK, it's exactly that. And so it's a very natural, preferred direction. And as you see, we can already see in this picture that this, if you imagine the flow, the flow is kind of trying to make the curve convex. OK, to make the curve convex. And if you imagine already a convex curve, then the flow will try to shrink the curve to a point. We can already see that in this picture. OK, so this flow is very famous. It's called the curve shortening flow. And it may be considered as the gene of all geometric flows, I would say. And some of its nice properties are these. All these kind of curves are invariant by the flow. Also, it's precisely the negative gradient flow of the length. That's why the name, curve shortening. So it's the optimal direction to shorten a closed curve. This is in the closed case. And so what we were guessing are actually theorems. So Grayson proved that any simple curve first becomes convex. And then Gays and Hamilton, not then actually before in time, proved that once it's convex, then it converts to a round point. That means that it converts to a point. But asymptotically becoming a circle. OK, which are the solitons? A soliton from the dynamical point of view should be a curve which flows according to this equation without losing its shape. Just by rotations and translations and maybe expansion or shrinking in the scaling. So of course, straight lines are fixed points. Straight lines are precisely the fixed points of this flow. And circles, you can imagine that a circle will convert to a point and will always be a circle. But this is not a trivial question. Are there other solitons? I think it's not very hard to see that the only simple curves which are solitons are circles. But this is a very good question. And let me show you the first example. This example was found by Calabi. It's called the Green Ripper. And it's the unique translating soliton, the unique one. Look at the formula. The equation is very simple. But it's curvature. It's precisely the little wings you need at each point to move the whole thing without losing its shape. This is beautiful. We have also these solitons. These are shrinking. So the evolution is just the same flower all the time, just smaller and smaller. This is there is an infinite family depending on parameters on natural numbers, classified by average and longer. And the pictures are by Haldorsson. Thank you. And Haldorsson finished the classification of solitons in 2012. As you see, this is not from one century ago. This is very classic. And it's still a very on-going topic in this time. So I'm trying to show all the behaviors. But for each behavior, there are a list. But the complete classification is really a list. So they are very, very special curves. You have here three expanding solitons, just expand. And these rotate, rotate. And well, you can rotate and expand or rotate and shrink. This is tennis ball or yin and yang, as you prefer. OK, so let's start with a talk. It's OK. So let's go to a differentiable manifold. And well, OK, so we keep the setting in a very general, in this slide. Take S as the set of geometric structure of some time. I don't know, Riemannian matrix, all moscalar matrix, spin-7 structures, some class of structures. This set is usually a subset of a vector space of tensors, and sometimes it's open. For instance, Riemannian matrix is an open set of the vector space of two symmetric tensors, for example. And well, a preferred direction will be some, I don't know, curvature tensor with respect to some connection, the gradient of a natural functional or a Laplacian or, OK, it's again a preferred direction or direction of improvement. The equivalence will be given by defiomorphism, but sometimes by a subgroup of, for instance, if you are considered Hermitian matrix, you have to take a holomorphic defiomorphism, right? OK, and so, well, again, these three, the set, the equivalence, and the direction gives you the concept of soliton, OK? And of course, we can assume that this Q is natural enough to satisfy this defiomorphism, OK, at least for these Hs. OK, this is a soliton in differential geometry, and OK, the first example is, of course, Ritchie solitons, which the name of soliton was used for the first time by Hamilton was introduced by Richard Hamilton. And so in this case, you have the space of Riemannian matrix, as I said, the symmetric two sensors. Here, you have all the defiomorphism and scaling. And OK, this is a preferred direction to go toward the Ritchie tensor. In principle, it's not degrading of any functional or anything, OK? So it's just natural. But well, in this case, the flow is the very famous Ritchie flow, we all know, introduced by Hamilton and OK, used by Perlman as a primary tool to prove all these very, very important results. OK, so let's go to other types of structures. But before, since we know how to compute this tangent space, then we get this formula for a soliton, OK? This is the lead derivative of the tensor with respect to this field x, because this is a typical element in this tangent space. And well, here, we also have a flow, at least an equation. But OK, this talk is more about solitons than flows. For instance, the first problem is, I don't know, maybe your preferred direction is not defined in flow, that you cannot prove existence of solutions. But so sometimes, you will get solutions uniting the short-time existence, but sometimes you don't. An example of this is the Ritchie flow on pseudo-Riemannian geometry that you can study solitons. There are many, many results and papers about that, but you don't have a flow. So you can use this soliton concept without the flow. Of course, usually most of the times, you have the famous flow associated. But OK, so with respect to the evolution structure, it's a soliton if and only if it's a self-similar solution. This is the concept, that the solution starting at the soliton is self-similar. So if you expect it to improve gamma with this evolution, you're not. You're not. You're getting all equivalent germane. OK, well, you have these notions of expanding steady and shrinking, depending on the sign of this C here, this constant C. And you get this kind of solutions for the solitons with these very poetic names. OK, so let's start with Chen Ritchie solitons. Here, you have a fixed complex manifold. So not only M is fixed, it's fixed as a complex manifold. The complex structure J is fixed. And you consider all Hermitian metrics on M. And then, well, instead of all symmetric, you have allomorphic symmetric two sensors. As I say, biolomorphic diffeomorphis for the equivalence. And well, a very natural preferred direction is the Chen Ritchie tensor. This is there is a connection called the Chen connection, which is the only Hermitian connection. Hermitian means that the metric and the J are parallel. And this is the only Hermitian connection such that the torsion is anti-J invariant. So the 1, 1 part is 0. So this is a soliton. This is the equation for a soliton. We also have these pluriclossed solitons. In this case, we take the Hermitian metrics such that this condition holds. These are called also SKT metrics, a strong Kailer retortion. And in this case, you may choose as a preferred direction the Bismuth connection, the Bismuth Ritchie tensor. This is another Hermitian connection in almost Hermitian geometry, but this is characterized by having a total skew symmetric torsion. OK. If you fix a symplectic manifold and take the set of all compatible metrics, and of course, take all everything is symplectic here, take symplectomorphism for your equivalence, well, Lea and Wang define this preferred direction, this flow, which is to take the anti-J invariant part of the Ritchie tensor. It's very natural. But I think this is another case that you have traveled to get a general short time existence theorem for solutions. But you can, of course, classify and study solitons, remember, without the flow. So this is very natural in symplectic geometry. And in this case, you don't fix a complex or a symplectic structure. You just fix M and consider the set of all almost scalar structures. OK, so everything will be moving here. So these are the almost Hermitian structures that the omega is closed. So of course, you are always in a symplectic manifold, but omega is changing. So it's not fixed, the symplectic manifold. And well, the vector space of tensors is this one. This condition will make, I mean, you need this to stay in the set of almost scalar structures. And in this case, you can take all the diffeomorphies because nothing is fixed. And this is a very natural flow defined by Street-Santiane. You also take the Chern connection and the Chern Ritchie form instead of the tensor, which is closed. And then this is pointing, I mean, you will keep having a symplectic strato. So omega will be closed in time. But then according to this tangent space, you are forced to put as the one-one part of this coordinate. And then as the anti-j-invariant part, you can put this very natural. And so this is the symplectic carbate flow. And well, the equation for a soliton is actually two equations. And well, the fact that everything is flowing is really challenging. And of course, the classification of complex surfaces is the main problem, I don't know, motivating all this, the study of all these flows. And well, let's go to some exceptional olonomy. I'm just giving some examples. There are many, many more. G2 Laplacian solitons. So in this case, you are in dimension seven. You take the set of G2 structures, which is a definite three-form in the sense that it defines a determinism metric and the volume form. The set of G2 structure is open in the space of three forms. And well, this is a very natural direction where delta is the Ho Chi Laplacian. And well, this is a soliton. This flow was introduced by Robert Bryant to starting with a closed G2 structure. The idea is to flow in order to find the fixed points, which are the parallel G2 structures. And then you get that the metric has a lot of it containing in G2. So this flow was introduced to try to find a lot of G2 metrics. OK, let's start with some, with lead groups. So we come back to the general case, not a specific example, but now our manifold is a lead group. We assume simply connected. And then, well, everything works mostly for homogeneous space is actually, but the presentation is much more technical. So let's stay in a lead group. But remember that for homogeneous space, this most of what follows works. So accordingly, we consider left invariant geometric structures, invariant by the action of the group on itself by left translation. And we can consider any of the above. In this case, since the tensors are left invariant, then G will be a finite dimensional vector space on the lead algebra. And well, also, accordingly, the equivalence will be defined using these, if you want, algebraic defiomorphism, which are the automorphies of the lead group. So you consider that two, I don't know, metrics are equivalent if they are equivalent via an automorphism of the group, not only a defiomorphism, to keep everything in the context. And the preferred direction can be any of the above. And so the solitons are called semi-algebraic. And you get this equation. So it's very easy. Why? Because the tangent space at gamma to this orbit is precisely this lead derivative. But now the field is not any field. It's a very algebraic field, if you want. Are these field defined by derivations? They are generalizations of linear fields on our end. They are not left invariant because of the identity, they vanish. But they are, OK, these fields, defined by these automorphies, attached to a derivation. And actually, the lead derivative of the tensor is equal to this very algebraic. This is the action of glg on the set of tensors. So everything is very unwell. Algebraic solitons are, if you, in addition, have this additional property for the derivation. But as you can see, this is full of algebra. All in this steel color is algebra everywhere. And well, the equation is very nice, because on the left, you have the geometry. Any geometry as above. And on the right, this term is very algebraic. It depends on the derivation of a lead algebra. And well, the most important is the quality part. OK, so in the Ricci flow or Ricci soliton case, Jablonski proved that every semi-algebraic is algebraic. And actually, every homogeneous Ricci soliton is isometric to an algebraic. So we will be talking only about algebraic Ricci solitons. They are called nil solitons on nilpotently groups. And well, there are many results on this. You have uningness, so it's a way to provide an nilpotently group, which is impossible to have an isometric on an nilpotently group. But you may have one of these solitons and it's unique. So it's a way to provide an nilpotently group with a canonical metric if you want. And they maximize this functional, this Ricci pinching functional, measuring how far is the metric from being Einstein. And so that's a very nice property of solitons, which is independent of the definition. And well, we have many classification results in low dimension by Will and Fernandez Kulma. And as you see, a lot of people, I must be forgetting someone, I'm very sorry, have worked on these nil solitons. And we still have, after 20 years, unfortunately, this painful question. We don't know. We don't know general abstractions, just that the nilpotently algebra must be n graded. But it's incredible. As usual, on nilpotently algebras, you get to a point that no answers or no nice answers, at least. OK. Well, solitons are on solvably groups, more general. And we also have uningness. So you can equip a solvably group without an Einstein metric, without admitting an Einstein metric with these solitons, especially unimoderal solvably groups, for instance. And they are also maxima for this rich pinching functional. This functional is equal to the dimension if and only if the metric is Einstein, right? This is because she shows us. But well, at least in these cases, we already know that for some reason we don't understand. But solitons are nice from this point of view. And also, for instance, nice from this other point of view, very different, which is symmetries. All these people have proved very, very nice results on maximal symmetry, that the solv solitons, among all left invariant metrics in the given lig group, they have maximal symmetry. So they are, in a sense, the nicest ones. And well, the only examples we know are solv solitons. But we also have some structural results on homogeneous spaces. And this famous Alevsesky conjecture, one of the main problems in the area, in the field, is in the homogeneous geometry, is that any Einstein homogeneous is actually a metric on a solvably group, is very relating with these structural results on solitons, on algebraic solitons. Beyond Riemannian geometry, we have examples on examples of algebraic solitons, in the Chen-Ritchie case, in the Simpleton-Kerbatov flow case. As you see, we found shrinking examples, because in Riemannian geometry, all solitons, which are not Einstein, are expanding. But in these geometries, you may have shrinking solitons. In the Plutic-Lose flow, for instance, Arroyo and La Fuente found semi-algebraic solitons, which are not algebraic. So this is also different from the Riemannian case. And for the G2 Laplacian flow, Niccolini found also semi-algebras, which are not algebraic, and also a curve, a continuous family of solitons on a given league group. So uniqueness doesn't hold anymore, at least in this case of Laplacian. We also have this shrinking, and it's really interesting that as an application of these algebraic solitons, these shrinking solitons are the only known solutions in Chen, in general, for the G2 Laplacian flow, which explodes in finite time. So this can be viewed as an application of algebraic solitons through the flow. So by now, these are the only known solution with the finite time singularity. And well, also Fino Rafferro worked on these Laplacian solitons. And for instance, to relate with some other property, you have these, they are called extremely richy pinch. They were introduced by Brian, close G2 structure. So as you see, are the close G2 structure close to behind time, in a sense. So they are very special. And we prove with Niccolini that they are automatically steady Laplacian soliton. We don't know why, but this is the other way around. From a very special geometric pinching structure, you get a soliton. OK, the time is so, well, underlying all these point of view of algebraic solitons is this approach that we call the moving bracket approach, which is an approach which allows us to apply GIT, geometric invariant theory results as moment map, the stratification, stable points, stability, I don't know, null cons. And the idea is, this is the last page, to say something about this, which is very related to algebraic solitons. The idea is that in the Lie group, you have a Lie group and a geometric structure, which is just a tensor on the Lie algebra. And then in the simply connected case, what you have is just a Lie bracket, a vector space, if you want, fixed, a Lie bracket and a tensor. And then you may say, well, why don't we fix gamma on the vector space and vary the Lie brackets? Instead of varying the structures, let's vary the Lie algebras. And then consider the variety. This is an algebraic subset because the Jacobi condition is just polynomials. And identify each point in the variety, each mu, with this geometric structure. So you take the simply connected Lie group with the algebra mu and always the same gamma as a tensor on the Lie algebra. And then this isomorphism is the key part of the approach. H is giving you an equivalence between these two geometric structures. So as you see here, you're moving, you're obtaining all the structure of the same time, all the metrics, all the G2 structures, all most Hermitian structures, if you want. And on the left, you are in the GLG orbit of mu. So you are getting all Lie brackets, which are isomorphic to me. And then in that orbit in the isomorphist class of mu, you can identify with the space of all geometric structure on a fixed Lie group. But the variety can be identified with the space of all Lie groups with all geometric structures of a given type. And then the nice thing is that, well, the usual convergence of brackets with the topology in this vector space sometimes gives you very, very nice notions of topology of convergence for the geometric structures. For instance, pointed or Chigagromov or smooth converges up to the theomorphist. And a very interesting thing is that you can with a sequence of Lie brackets, you can go the limit of a sequence of Lie brackets can be at the boundary of the orbit. So you may get a new lambda, which is not isomorphic to mu. So this allows you to have convergence of geometric structures on one Lie group to the geometric structure on a different Lie group, which can be even non-homomorphic. So that's very interesting. And the relation with algebraic solitons is that if you translate your flow to brackets, it's called the bracket flow, then you can study the solution for this flow now. And the fixed points of this flow are precisely algebraic solitons. So this is something which makes algebraic solitons very, very special. And well, I think I will stop here. Thank you. OK, thank you very much for a lovely talk. OK, that's my video. So now I hope we will have some questions and some discussion. So because we are almost 70 participants, maybe we can, maybe if you have a question, you can just write in the chat that you have a question. And I can just call each one of you in order. So let me just know. OK, so Claudio has a question. So you can start. I'm just trying to see this. OK, yes, thanks a lot, Claudio. I have a couple of questions. So the first one is, in the first part, you motivated this interest for solitons, like thinking to a flow. And then in the example, in these algebraic examples, you mentioned this property about maximizing, for example, this functional s squared over itchy squared. I mean, and then you said as a comment, I mean, this means that they are as far as possible from being Einstein, in some sense. So would that mean that you will not get these solitons by flowing? I mean, they are kind of self-similar solutions to the itchy flow, for example, but as soon as you move, they are kind of repulsive for the flow? I don't know if I understood the question. If you use lights, you mentioned in some example about the algebraic solitons, they are global maxima. So they are as close as possible to be Einstein, as close as possible. OK, so maximizing them, they are close. Because this function is always least or equal to the dimension n and equality holds if and only if is Einstein. So you are as close as possible. OK. But the itchy flow is not the gradient flow of this function. That's the problem. It's very difficult to see the itchy flow as you can. I mean, Perelman did as a gradient flow. But you have to consider the homo-thety classes. But yeah, you may have a lot of these natural functionals. But in some cases, for instance, this function is not monotone. It's not always increasing along the itchy flow in the homogeneous case. Sorry. And I have another quick question. Are there also nonexistence results? Yes, yes. I mean, is there some general conjecture about when they should exist and when they shouldn't? Well, that depends a lot on the setting. But in the itchy flow case, we have this tricky question that, yeah, we know that many importantly algebra do not admit, but it's very hard to get nonexistence results already in this case. But in the other context, yeah, we also have some league groups that we can prove that there are no algebraic solitons, but sometimes we don't know if there is a general soliton. Of course, algebraic solitons are solitons. I mean, they are solitons. They are just special. But sometimes, maybe a league group can admit a very exotic soliton, which is not algebraic. But yeah. Thank you. OK, so we have several other questions here. So the next question was, I think I will let Imogen Kan ask this question first, and then Fernando, and then Ludwig Tablasti. So Imogen Kan, if you have your question. Hi. My question is that imagining a soliton as a physical object, I have difficulty understanding what does semi-algebraic soliton, how is semi-algebraic soliton different from the normal soliton? Well, I can show you the definition. I mean, I can answer that from a physical point of view, of course. But the difference is that if you see, I mean, here you can see the difference that the general soliton, you can put any field here. But for the semi-algebraic, you can put only these fields, which are defined by derivations. And from the point of view of flowing, maybe it's more clear that the solitons are, we say that are those extracted flowing in this self-similar way. So for instance, rich solitons is when you flow with F of t, a one-parameter family of defiomorphism. A semi-algebraic soliton is when here F of t are automorphism of the lig group. They are defiomorphism, very special for the lig group. Since you are in a lig group, it's very natural to consider that, to ask for automorphism instead of defiomorphism. And that's a difference. But the Jablonsky's results tells you that in the rich flow case, it's more or less the same. OK. Thanks. And there's another general question, if you can answer that regarding the Poincaré conjecture, and its solution, which was done by Gregory Perlman. So I just want to ask if you have any idea whether solitons were used in that proof or are related to Poincaré conjecture or not? Yes, yes. One of the things that Perlman proved is the non-existence of solitons in dimension three. Right, right. Thank you. OK. So I think the next question was Fernando Rodriguez Villegas. Yes, hi. Thank you for the talk. No, I have a very naive question from an outsider. I always thought that solitons were these things that this guy riding a horse in Edinburgh saw in a canal and that they followed it for whatever long it was. Is this related to this? I get a sense that it is, but you didn't mention it. And so I was wondering. No, yeah, that's the problem. In PDE, the word soliton is much older. And it refers to this solution, quarterly debris equations that does water waves flowing without losing the shape. But yeah, in the differential geometry, Hamilton started to use this word in a more general sense for self-similar solutions. That would be the correct name in PDE. But is it the case that the PDE soliton satisfy your action? Yeah, yeah, it's the idea is these water waves that flow without losing its shape. Thank you. OK, so it's the same idea as in the curve shortening flow. That the soliton is to flow with the same shape. Yeah, it's related. But yeah, I think PDE people doesn't like the use of soliton in this. But it's already 30 years and spread. OK, so the next question is from Ludwik Dabrowski. Hi, thanks for the word of examples. I have also kind of a naive question. So when you started with examples on the curves on the plane, you spoke about rigid motions and scalings. And when you went to manifolds, you also had you substituted the rigid motions by default morphes. But scaling remain numbers. Later, they may depend on flow, on time, on parameter T. But they are numbers. Why they are not functions on the microphone? Is there some reason for that? Oh, no, no, because yeah, you mean like to consider conformal metrics. Yeah, that would be like a too big equivalence relation but for some purposes. But in the curves, we also consider just scaling by a number. So my question was there must be some reason. There's two groups of transactions. Group would be too big, yeah, that's what you said. Yeah, I think so, yeah. But yes, yes. Thanks. OK, so Yalong, Yalong, you had your hand raised. But do you want to answer? OK, you still have a question? Yeah, OK, OK. Thanks. I recall that you mentioned that for the trend-rich flow, you constructed the shrinking type soliton, right? For trend-rich solitons? Yeah. I remember you stressed that you constructed shrinking soliton, right? Yes. Also, I think you mentioned like for the new manifold, like also there are a lot of solitons. So I remember that actually you proved that there's no shrinking solitons on new manifold, right? But for rich? Yeah, for rich solitons. For rich solitons, yeah. Yeah, yeah, this is very different, yeah. So can you explain what's the reason why this kind of difference happens? Oh, right now? Maybe. Yes, on new manifold, you mean? Yeah, on new manifold. Yeah, because for trend-rich, there is something even more strange that any new manifold is a trend-rich soliton. So you have to go to solvably groups to make sense, because anything is a soliton on new manifolds for trend-rich. It's not a very strong condition. OK. So, but yeah, for rich, you prove very easily in one line that the constant C must be positive, so you get always expanding. OK. I don't know the reason to say that why in this order you may get shrinking is because it's very different. But right now, I can just give you a better explanation. OK. OK, thank you. You're welcome. OK, so, were there any other questions? Someone else who wants to ask something? OK. So it doesn't seem so. So, yeah, give you a second. OK, so if there are no more questions, then I would like to thank you again for this excellent talk. And I will just remind everybody again that this is a seminar that we will try to continue every week from now on for some time to come. And there will very soon be a kind of schedule that we'll put on the web page. And the next seminar is in one week's time, the same time, on Thursday at 2 o'clock, Central European Time. And I hope to see all of you here. Then it will be Elizabeth Gasparin, who will be the speaker. And I will see you all there. Thank you very much. Bye. Bye. Thank you, Jorge. Thank you, Sacarias. Thank you, Claudia. Thank you. See you next week. See you next week. See you. Bye.


Hello everyone and as you know I have one of the pine phones caddy edition super pretty looking box, but I also have now this one, which is a pine phone pro and I wanted to open it with you showing you what's inside because maybe you're interested in the project and You might want to buy one when you we actually have the not developer editions so let's Take the plastic off and I am not going to edit out anything. So I should have everything already like Ready because I can't make any cut the plastic is gone and inside of this we do a this little book which hopefully contains poetry I like that and And This which is a screen protector, which is nice to have again. This is like the developer edition So I don't know how much closely the actual box matches. What's what's inside? this is the phone and To do a bit of comparison with the old pine phone We've got both of both of them Yeah It's a pity that this is like the caddy edition and I gotta say this looks so cool I understand that not all pine phone can be pine phone the caddy edition So I will miss the logo on the back, but it's fine We still do get the little pine logo here, which of course won't focus But that's super nice to have like honestly is the prettiest thing ever I saw on a camera. I love it it is the same size if you like with them one on another Luckily they do have different logos so I can't mix them up. It is thicker But honestly, you don't notice like okay. You slightly notice it in the hand. It's not that ticker and And Except that it's the very same Like looks exactly the same of course, I guess neither of them right now actually boots up because I Didn't charge either. Okay. This one is actually Trying to boot up. I need to I think remove the battery thingy on this one and Meanwhile, I do that The box also have this The cable comes in red. I like the idea of giving different cable and This one is actually booting nice. I like the idea of giving different Cables different colors even on the very inside. I can actually distinguish them like that and Here We do get an adapter for the scene You can't probably see it very well, but it's there That's it. I Would still like to open up this one. It comes off right here and in theory there should be the battery and Near the battery. Okay. It's coming off. That was actually very easy Compared to last time I try to open up the Pinephone it took me quite a while and There's plastic in it here, I Think it's this coach here and I can take it off and it's gone and now I can insert it back There is a little what is this step two?  I can't read Sorry step two Please peel off this sticker Okay This one, I guess I don't know why Honestly, I can insert back the battery like that How much time has passed since you saw last so an Android phone that actually could open up and Like change the butter. I wonder if the battery here can go here. Oh, it's booting rock chip And let's see if it actually displays anything rock chip kernel. Okay. I don't know what's that. I Mean, I know what's rock chip rock chip kernel. I can understand. There's Android and There's Android so It's actually very snappy look at you With Android of course, but I Mean that's a good start already isn't it? and it's of course hole in Chinese and now you can take images and I'll make sure that next time you see this is going to run But this is nice. This is very nice. This is very fast like I A third worse You also have and this is funny because I never saw it Volume icons in the status bar and you press them. It is the volume. Sorry for this Android unrelated thingy, but it's what I have right now in front of my eyes and Nice I'll make sure as I was saying that next time you see this is going to run, you know the pine Plasma vile Plasma vile. Sorry. It's late the plasma mobile thingy So, yeah Very funny I'm waiting for the animation with the donations to finish and then I'll just close the video But you won't leave you will wait with me for all of the animation to end Okay, now they're done and I can officially say see you next time with Looking at how do you develop? Something for plasma vile. I think that's the most fitting content. I would be able to make for this kind of device This is going to lag so badly is it?


But I do regret and I don't say that often, but I do regret sending out that tweet things on My end could have been handled behind closed doors a hundred percent. Um, that's right Everybody Jeffrey star just went on snapchat to backpedal about his tweets about James Charles And there's a lot that we can learn from this tricky situation What is up everybody this is Chris from the rewired soul where we talk about the problem but focus on the solution If you're new to my channel what I like to do is take a look at the YouTube community some of this drama going on and take This mess and turn it into a message So if you're into that stuff make sure you subscribe and ring that notification bell and while you write it Make sure you're following me over on Instagram and Twitter at the rewired soul So you can get all the updates and I love interacting with all of you beautiful people out there So yes, Jeffree star just took the snapchat this morning to Backpedal a little bit about the James Charles situation and this dude this dude is completely missing the point All right, and I'll explain why so I'm not gonna put his whole snapchat story in here I'll put some clips and everything But if you want to check out some of the other channels commentary channels drama channels everything like that They have the whole thing. I bet it's up on YouTube everywhere else But TLDR Jeffrey star went on here and like I think I think it was good But Jeffrey star is completely missing the point. So the first half of his snapchat story He's very empathetic towards James Charles, and I'll be honest with you. It is It's like a big learning experience For everybody involved for James Charles for talk to Westbrook for Jeffrey star everybody's learning from this situation or God Please if there is a God like I hope they're learning from this situation because After this whole thing massively blew up People like Jeffrey star and talk to Westbrook are realizing how screwed up it was to do this All right, and we'll talk about that more in a second But then Jeffrey star he switches gears and in the second half of his snapchat story He gets real serious with all of you and don't you ever don't you ever compare his situation with Nate? Who was a straight man to what James Charles is doing all right even though even though the two the two? confirmed stories about James Charles are from two guys who have publicly stated that they consented to hooking up with James Charles and here is where Jeffrey is missing the point Okay, his tweet his tweet against James Charles called James Charles a danger to society So something I didn't touch on in my video about talk to Westbrook Her video yesterday about why I did something I didn't touch on was talking Westbrook Said like don't put words in my mouth, you know for everybody who's accusing James Charles of things I never said this and it's like you did talk to you did and Jeffree star and talk to Westbrook they are older than James Charles They need to know better talk to Westbrook use the word Predator, okay. She talked about tricking men, okay Then Jeffree star comes out and says that James Charles is a danger to society those two powerhouses in the community are Are the ones who created that narrative? They created that narrative, okay, and Jeffree star He is like this is what blows my mind about Jeffree star like We all learn so much and we grow so much, but there's still There's still these parts of us that are still there that come out, right?  I am a recovering drug addict I believe like what Jeffree star said I believe in giving people chances and other chances and and like the thing is Here's the problem We are as as people we're constantly comparing ourselves to other people, okay We're constantly saying am I better than or less than am I better than this person or am I less than this person? Am I better than this person or less than this person the problem with Jeffree stars tweet and His the way he he came out about the situation was he was acting better than James Charles That is the issue Okay, because we all need to recognize and this is something that is What the community is doing as well.  And like Jeffree star talks about how oh, I'm so tired of people bringing up these old tweets and it's like bro Because you keep saying stuff you can't continue to go around Acting better than everybody else when you have such a public history of Screwing up because the difference here the difference here is empathy Okay, that's what it is and like Jeffree star mentioned in a snapchat story. He was very emotional He was heated. He said that he regrets sending that tweet out and it's because when emotions flare up We forget where we came from we forget what it was like. I talked about this in my video yesterday Like when I get upset with my son because he did something I have to pause I have to pause and think about what I was doing at his age What was I doing before I get emotionally heated all right and like I've said before like somebody like Jeffree star Who has millions and millions and millions of followers like you can't do that like yo I am a small youtuber I am small in comparison to these people right and I learned the whole hard way that I have to be so Careful so careful about what I talk about on my channel what I talk about in DMs What I publicly tweet out what I say on my Instagram. I had to learn that and I am Tiny okay, there are these youtubers like Taty Westwood and Jeffrey star who have Subscribers and followers that is the population of like a city All right, so when they do something like this and they don't have a pause button Right like that would be like the city that you're living in and all the TVs go to like that emergency broadcast And somebody just saying something right like just boom like right there like that is how many people they're broadcasting it to And that's what I don't like with with everything, you know that that has happened to James Charles And again like you could defend the person without defending their actions like James Charles screwed up He messed up. He's going to learn he's gonna grow But here's the thing if Jeffrey star had a damn pause button He would have this snapchat that he released this morning. That would have been what he initially came out with right I've mentioned this before Shane Dawson and Taty Westwood. They came out and they were like Hey, everybody calm down with the hate and everything like that But a lot of people do not have a pause button and how does this affect you right like you guys this is why This is why we really have to take a look at how often We we say something and then we immediately regret it We do something and we immediately regret it like why do you guys think I preach meditation and mindfulness so much Science has proven that it strengthens this thing right here called the prefrontal cortex Which has a variety of functions But one of them is logical decision-making the other one is impulse control and another one is emotional regulation. So like I Think the issue that happens with Influencers as a whole is this autopilot right this autopilot like where they're constantly tweeting constantly snapping constantly making videos Constantly posting on Instagram all these other things to to to to to to and they get into this autopilot mode where they're just like Every thought that comes through my head. I have to put it out there, right? And it's dangerous like whenever I'm about to tweet whenever I'm about to do anything I have to sit back and say, okay, right like what's gonna happen like I've mentioned that I just finished a book called mental models by Shane Parrish something that a lot of us don't do and it's This is a prime example the Taty Westbrook and James Charles situation Something that we don't do is second-order thinking right? We only think about the initial thing we only think about this thing and we since we're Species who loves instant gratification. We only think about if I do this one thing here's a result I'm gonna get if we pause for a second and think about the second level of that What can this cause what can the reaction be right like a great example is the Trisha paid his video I made yesterday before I sat down and recorded that video. I sat down. I talked with people in my support group I talked with mentors of mine. I said, okay, let's run through every scenario that might happen after this, right? Like I know I've kind of rebranded for to more social commentary than mental health, but you guys like I Don't I People need to like start figuring stuff out. You know what I mean? And we need to learn and grow and everything like that but like I don't know just seeing Jeffrey star in this situation It is it also it also bumps me out seeing Seeing the bias for Jeffrey star so many people defend Jeffrey star so many people say he's talked about this He's explained it. He's done this for so long like you guys It's been less than a week since this happened to James Charles Like do you not see the double standard here James Charles hasn't even had the opportunity To learn and grow so when everybody's like well Jeffrey's already answered for these things Give James Charles a second to learn and grow before you cancel this kid. All right Anyways, that's all I got for this video. Don't forget to follow me on social media at the rewired soul If you like the video, please give it a thumbs up if you do make sure you subscribe and ring that notification bell Because I make a ton of videos and a huge huge. Thank you to everybody supporting the channel over on patreon You're all amazing and if you'd like to become a patron get your name in the credits get some other perks and benefits like our monthly Q&A Click or tap right there. All right. Thanks again so so much for watching. I'll see you next time


Echolocation, also called biosotar, is the biological sotanar used by several kinds of animals. Echolocating animals heme calls out to the environment and listen to the echoes of those calls that return from various objects near them. They use these echoes to locate and identify the objects. Echolocation is used for navigation and for foraging or hunting in various environments. Echolocating animals include some mammals and a few birds, most notably microchiroptron bats and odontocetithid whales and dolphins, but also in simpler form in other groups such as shrews, one genus of mechroptron bats, rousados, and two cave-dwelling bird groups, the so-called cave swiflets in the genus herodragmus. Echolocation is the same as active sotar, using sounds made by the animal itself. Ranging is done by measuring the time delay between the animal's own sound emission and any echoes that return from the environment. The relative intensity of sound received at each ear as well as the time delay between arrival at the two ears of the animal. As well as the time delay between arrival at the two ears provide information about the horizontal angle azimuth from which the reflected sound waves arrive. Unlike some human-made sotars that rely on many extremely narrow beams and many receivers to localize the target multi-beam sotnar animal echo location has only one transmitter and two receivers. The ears position slightly apart. The echoes returning to the ears arrive at different times and at different loudness levels, depending on the position of the object generating the echoes. The time and loudness differences are used by the animal's two perceived distance and direction. With echo location, the bat or other animal can see not only where it is going but also how big another animal is, what kind of animal it is, and other features.


The GRPC route to success. My name is Arkodas Gupta. I'm a software engineer at Techrade and a maintainer on the Envoy Gateway project. And I'm Richard Belville from the GRPC team at Google. This talk is about the new GRPC route resource, part of the Gateway APIs. This presentation is a special milestone for GRPC route because after two years, it is finally heading to V1. So we are excited for it to make its way into the hands of a bunch of people in the near future, hopefully some of you. In this talk, we'll be covering the basics of GRPC and the Gateway API for people who are unfamiliar. We'll lay out a few great reasons to start using GRPC route today. And then we'll tease you with a look at where GRPC route may be heading in the future. Before we jump into that, though, I have one thing to plug. Normally, this is where we like to show you all of the great related talks at KubeCon this year. But as you know, we are very close to the end of things. So we only have one talk to plug right now, which is what's new in GRPC. This is a maintainer talk run by the GRPC team, covering everything that's happened with GRPC recently, including a brief mention of the subject of this talk, GRPC route. And that is happening immediately after this talk. So if you want to follow me down the hall, I'd love for some of you to join me there. All right, let's dive right in. I think most of you are probably familiar with GRPC I saw from the show of hands. But for those of you who are new to it and curious, let's start with a brief recap. So GRPC is a high-performance remote procedure call or RPC framework. You write what are basically function signatures in a language called protobuf, and we will generate code for you that will efficiently serialize requests, send them over the wire, deserialize them on the other end, and then hand them off to a server that you have written. GRPC has a special place in the Kubernetes ecosystem because it's the basis for many of Kubernetes' own APIs. For example, the Container Storage Interface, the Container Networking Interface, and the upcoming KNI or Kubernetes Networking Reimagined Interface. Beyond the Kubernetes control plane, GRPC is used by thousands and thousands of engineering organizations to get their bytes where they're going and then make sense of them on the other end. For those of you coming from the rest or JSON of our HTTP world, let's call out a few key differences between GRPC and HTTP. The first big difference is that GRPC is schemed. That means that you write your API definition first rather than as a documentation step. Your boilerplate client and server code then gets generated from that definition. GRPC uses protobuf for serialization and deserialization. This is a fast, space-efficient binary encoding. It's great for speed and efficiency, but it makes it a little bit more difficult to debug and to send RPCs manually. Then there's the transport. GRPC is built on top of HP2, which solves some of the blemishes of HP1. GRPC does things a little differently from browsers with HP2. Browsers and REST clients generally only use HP2 with TLS. For plain text connections, which are useful for debugging, or when running in a secure tunnel transport, browsers and HP clients generally only use HP1. But GRPC is all HP2 all the time. It's totally normal with GRPC to use HP2 clear text without upgrading connection first from HP1. This also factors into the gateway APIs. And the final difference I'll highlight is GRPC streaming. Stream-based APIs provide a ton of benefits, including making it much easier to build reactive applications. Streaming RPCs can last four hours or longer, but long-lived connections can also be a little bit more difficult to route, jump into that later. And even if you're not using a streaming RPC, the GRPC library keeps TCP connections around a lot longer than most REST clients. We're using that connection to send multiple RPCs and to save you the latency of that TCP handshake. Again, you need to make sure that your routing handles this well. And with that, we'll hand it over to Arco. Thanks, Richard, for the introduction on GRPC. Now, here's a brief introduction on the Gateway API. The Gateway API is a Kubernetes project that started in 2019 that focuses on layer four and layer seven routing. These are APIs and require an implementation to be installed in the cluster that can consume these APIs and implement the routing behavior defined in the API. It's a successor to the Ingress API, which focus on exposing a service inside Kubernetes to the outside world. As the next generation of Ingress, the Gateway API has managed to make many improvements. It supports multiple protocols, such as HTTP, TCP, UDP, and GRPC. It has strongly typed fields for traffic capabilities, such as header transformations and traffic mirroring. It splits up the Ingress intent into multiple smaller resources. The Gateway class that's linked to the controller that holds common configuration for a set of gateways. The Gateway that links to the Gateway class and holds listener configuration and defines how external traffic can be accepted into the cluster. Then there are the collection of route resources defined for each protocol type, like HTTP route, TCP route, UDP route, TLS route, and GRPC route that link to the Gateway to define routing and traffic shaping filters, allowing users to match on specific attributes within the traffic flow so it can route the traffic to the service backends. These smaller resources can now be mapped to roles within an organization. For example, the Gateway resource can be used to expose a hostname on a specific port and also specify TLS certificates needed for TLS termination and authentication. This is something only an app admin or a cluster operator should be able to configure. Similarly, only app developers have the knowledge to define routing and traffic shaping rules for traffic meant for their service backends. This split now allows the organization to have isolation at the resource level while still sharing the same implementation infrastructure under the hood. Let's talk about Gamma. So Gamma is short for Gateway API for mesh management and administration. It was created in 2022 as part of the Gateway API to focus on roles and traffic management for East-West communication. There's a big overlap of routes and policies defined in the Gateway API for North-South and East-West, so this move makes a lot of sense. This slide shows one of the API semantics defined by the Gamma working group. There's the service producer, the server, and routes like an HTTP route that can be defined for it. The route links to the producer service using the parent ref field and defines specific traffic rules for any traffic meant for this producer. Now, any service consumer or client that's trying to reach this producer using the service's FQDN or front-end, that traffic will be sent, will undergo any matching or transformations defined in that route. This background now brings us to the main topic of this presentation, the GRPC route. This API was introduced by Richard from the GRPC team in 2022. The API proposal, also called a GEP, highlights the need for a dedicated API for routing GRPC traffic to the back end. The focus here is on GRPC routing over HTTP2 as a transport and protocol buffers as the message format. The existing HTTP route could technically be used to route GRPC traffic, but the addition of a new route type significantly improves user experience. As you can see on the right side, the proposal introduces support for method matchers, allowing users to match in GRPC-specific constructs, such as the GRPC service and method. This API is currently in alpha, but it's planning to go to V1 next month. It's great to see so many implementations already supporting GRPC routes today. Conformance tests for GRPC route have been recently added, and we're happy to share that they pass on contour, cilium, and Envoy Gateway. With multiple implementations passing conformance tests, we've met the last graduation criteria for GRPC route. And with GRPC route going to V1 soon, we're hoping more implementations add support for it so more users can access it. I admit I might have packed too much information on this slide, but I wanted to highlight the additional features within an implementation that can be enabled knowing that GRPC route is configured in the system. The implementation could emit additional stats for GRPC. If the protocol is set to HTTPS on the Gateway Listener, it can choose to only support H2ALPN and not support an upgrade from HTTP 1.1. Similarly, it can directly connect to the back-end pods over HTTP 2 without an initial upgrade from HTTP 1.1. GRPC web may be enabled to support GRPC web traffic. Least request load balancing can be enabled by default to spread the load across pod endpoints. Richard will elaborate later in this talk on why this is important. Thanks, Farko. In addition to those functional benefits, GRPC route also provides some great UX improvements throughout in GRPC traffic. The biggest improvement in the current version of GRPC route is method matchers. GRPC is, again, a remote procedure call system. More or less enables you to call functions at a remote machine. And while GRPC uses HP2 URIs under the hood, users of GRPC shouldn't have to know or care about the way that GRPC maps to those URIs. Method matchers let you route traffic for individual GRPC services and GRPC methods without having to use those implementation details of the GRPC protocol. So it's pretty common to route an entire GRPC service to the same back end. So if you omit the method field, that will route the whole service to that back end. It's somewhat less common, but you may have multiple services that have the same method names. For example, a v1 and v2 version of the same service. In that case, you can omit the service name to route all RPCs with the same method name to the same back end. There are a few other UX improvements that we have planned for GRPC route, and we'll touch on those in just a little bit. Now, diving into the service match side of things. Arco touched on this a few slides ago with the Gamma API slide. One of the most confusing things for folks using GRPC on Kubernetes is the long-lived connection aspect I mentioned a while ago, and there have been several talks on this in the past at KubeCon and outside of KubeCon. When your client creates a new connection for each outgoing request, as many HP clients do, you'll go through a full DNS and routing flow for every request. But since GRPC keeps connections around for as long as possible to improve performance, you only go through that process perhaps a single time over the course of an hour. Now, the most common way to route requests to a collection of server pods in Kubernetes is a service with type clusterIP. Services with type clusterIP get a virtual IP or a VIP allocated. This is the single IP for that service, and when a TCP connection is made to that IP, KubeProxy will balance that connection to one of the server pods associated with that service. When your client creates a new connection for each outgoing request, this will result in all of your requests being balanced across your server pods, so the request load and CPU utilization should be pretty uniform across all servers. For example, suppose you had 10 backends and 100 clients, each of them with the same request load, then the request load across your backends might look something like this. In this case, KubePC gets a relatively uniform distribution, but GRPC is much less so with clusterIP. So what's happening? We've got a basic setup here. One HP client in this case can figure to send request to a service named Foo. The client starts its first request to Foo, and the first thing it does is send a DNS request for Foo. KubeDNS gives the client the virtual IP I mentioned, in this case, 10.1.1. Then the client sends that IP and establish a new TCP connection for the request. Now Kubernetes will see the VIP is the destination of the TCP connection and balance it to one of the backends. In this case, the client got connected to backend one, and backend one returns back the result of request one. Good. Then the HP client sends its second request. It may or may not do another DNS request depending on caching, but it will almost certainly initiate that that connection goes to a backend, in this case, 10.002. Great. We have already seen a spread across backends. Third request, same story, yet another new TCP connection, yet another chance at hitting a different backend. Okay, so we have recapped how the vast majority of HP traffic in Kubernetes works. What happens when you drop a GRPC client into this picture instead? DNS looks the same. The GRPC client asks for Foo, and it gets back the VIP <IP_ADDRESS>. The first request also looks the same. It's when we hit the second and third request that we realize things aren't working the same way as with the HP client. GRPC keeps TCP connections around for quite a while because setting them up and tearing them down is costly in terms of latency, CPU costs, and network congestion. But because GRPC keeps them around, the cluster IP routing mechanism just isn't super effective. As a result, you get some pretty bad balancing. Coming back to this graph, this is really just the law of large numbers.  In the example here, GRPC got 100 rolls of the die, while HP got 10,000. That's a big difference, and that difference clearly has implications for load distribution. But of course, I'm telling you about this problem because GRPC route makes it better because the problem is service mesh. Service mesh moves all of the routing decisions directly within the client pod, so you will get rock-steady uniform load if that is what you want. And if you don't, you can configure the load balancing to happen exactly the way that you do want it. In the past, when folks have reported this issue to the GRPC team, we've recommended service mesh to them, and I've often thought, wow, that is a really heavy hammer. Service mesh involves a lot of setup, a lot of routing configuration, and that routing configuration might actually be done outside of the cluster. But now, with GRPC route, setting up a service mesh in Kubernetes has become easy enough that I no longer feel any hesitation in recommending it as the solution to this problem. It really is the simplest way to solve this issue. There are a couple of other more invasive solutions that don't require service mesh, and if you're interested in those, I invite you to check out the previous talks at KubeCon and at other places on this issue. So, those are a handful of reasons why you would choose to use GRPC route today, but as soon as the idea of a GRPC route resource was brought up, the community was eager to suggest a bunch of features, not all of which made it into the first revision. We've already touched on a few of those. The first is a feature that's already somewhat real, GRPC web transcoding. For those of you that aren't familiar, most browsers do not implement the full HP2 spec, and therefore they can't support the GRPC protocol as it's run in data centers. As a result, there's a sibling protocol called GRPC web that lets you use the same developer flow as GRPC from the browser. Historically, you've had to configure a proxy to do this transcoding, but several implementations of GRPC route, including Envoy Gateway will actually take incoming GRPC web traffic and automatically transcode it to GRPC proper. These implementations are running ahead of the spec. There's actually nothing in there yet about GRPC web transcoding. The next step is to use what's out there in the wild as the basis for an extension to the GRPC route specification that includes GRPC web transcoding. Very similar to GRPC web transcoding, there is HTTP plus JSON or REST transcoding. Very similar reasons for this as for GRPC web. Some people just prefer to use REST from the browser. These people put HTTP annotations in their proto. These add extra information that allow a proxy to map certain methods to the GRPC. So REST in and GRPC out. In the example here, you can see we've mapped our echo RPC to V1 example echo. So you should be able to hit the gateway with that URI and trigger it GRPC RPC to the back end. At the moment, the most common way that people accomplish this is to generate proxy code from their proto, compile that into a binary, deploy that into a REST cluster and configure traffic through that proxy. Exhausting, right? Well, the idea here would be to add a single boolean knob to GRPC route that says, hey, give me REST in and GRPC out. And voila, the gateway API controller that you've installed will take care of all of that for you. And then there's reflection. For those of you who aren't familiar, ProtoBuff is binary on the wire, so it's difficult to do that. You can do that with the ProtoBuff system, but that's a real pain. Instead, most people make use of the reflection protocol. Reflection is a secondary service you run on your server that tells clients the type information for that server. With a reflection server, tools like GRPCURL just work. Unfortunately for folks running GRPC servers on Kubernetes, this means that in addition to your application's standard RPC services, you also have to route through the reflection service to those servers. You wouldn't believe the number of times I've solved people's routing issues by telling them to add a catch-all route rule for reflection. In the future, we'd like to extend GRPC route to automatically add routes for reflection, probably as an opt-in feature. So stay tuned for that. And last, but certainly not least, there's payload routing. This would be a great example of how you can route RPCs to different back ends based on the contents of your protobuf requests. This sort of thing isn't super standard with REST because in REST, the payload is human readable. You'd have to parse the JSON to do this, which is pretty expensive. But with protobuf, checking the value of a single field is actually a really inexpensive operation. Surrouting this way isn't prohibitive. The sort of thing is done all the time and it's a really good example of what we currently have within GRPC route. So in this aspirational example, you see we're matching traffic for the login method only if it's a particular user logging in. Of course, this will require type information, so reflection will be required for this. There aren't currently any open source implementations for this, so it's a little further out than the other potential features that we've mentioned. We've been super happy to see how much Gateway API implementations have embraced this resource, and now I'm looking forward to seeing users put GRPC route into action routing production GRPC traffic. As always, we hope that this talk was helpful to you. If you have any feedback that you want to share on this talk, please follow that QR code and leave your feedback. So Envoy Gateway has just hit V1 with support for GRPC routes, so thank you for the question. And then there's GRPC Conf this August in Sunnyvale, California. We'd love to see you out there in a couple months if you want to come discuss GRPC in a little bit more detail. Also, if you want to follow me to the GRPC maintainer talk after this, we'd be happy to have you there. So with that, let's move on to any questions you might have. Thank you very much. It was a great talk. I have a question. Is any of this feature actually available? So, like, just all of them are around some limitation. Like, for example, I'm particularly interested in this payload routing. Can you tell in a few words how it works? Sure. So this is a future direction. This is not implemented or in the spec yet. It would be an additional piece that we'd work on top of this. It would work only with loading and routing. But, yeah, that should theoretically work out of the box. Got another question back there. You mentioned that service mesh was now a no-brainer solution to the load distribution issue. But it wasn't entirely clear to me why, you briefly mentioned it, but I must have missed it, why it was so much easier to use service mesh now that this had been implemented. If you could elaborate on that. One, in the past, service mesh has been sort of implementation dependent. So, like, if you want to use traffic director, you've got to use GCP APIs. If you want to use Istio, you have to use Istio specific APIs. And that is an additional piece that you have to learn on top of things. The onboarding process for Gateway API service mesh implementations is very turnkey. And so now it's one or two control apply commands to get a load balancing logic for your client. The other thing that I'd say is for a lot of people, service mesh has this connotation of sidecar proxies. That's not at all the case here. GRPC supports proxy-less service mesh. And so you're able to not have a sidecar, but instead have the client process do this load balancing logic for you entirely within your client. So, that's the root route type. Correct. And now there's a very simple way to configure that. Yeah. Okay. Cool. Thanks so much. All right. One more question. Hello. I have a question related to the service mesh that you mentioned, gamma at the beginning. I wanted to know, maybe I missed it, but what is the link or the special features related to the service mesh? I would like to understand the link between gamma service mesh that you mentioned and GRPC. What features or what is the... Sure. What do we gain around that? Thank you. Sure. So, in general, I would say service mesh solves the problem of flow distribution. Gamma gives you a way to configure service meshes in here to configure GRPC service meshes via gamma, via the gateway APIs. Just to add to that, you have an additional data plane that can do least requests, so you can actually distribute the load rather than do least connection. Right. I think that might be it unless anybody else says another question.


So, this is basically a journey, and I would like to take you on this journey, and hopefully by the end of it, maybe you also have some ideas to, you know, how you can at your community's crowdsource data sets, see this way or maybe other ways. So, yes, I am from India, hopefully next CSV config can have many more people from India, but yeah, it's a big country as all of you know, and there are 36 states. This is like how the administrative setup looks like. Now, this is the map of the country and there are 36 states, and each state is further divided into districts, and there are, so in total there are 765 districts in the country. This is how the judicial setup looks like. Like you have the top court or the highest court of land, which is the Supreme Court. Now that operates at a country level, and then you have high courts. Now, every state, you can imagine one state, one high court, but there are 25 high courts and there are 36 states. So, for some high courts, deal with two to three states, and then there are at the lowest level, you have a district court, which is for day-to-day matters, so every district will have a court. So, yeah, so let's first look at the topmost court, like there are 34 judges at the Supreme Court, and this is as on 31st March of this year, and on an average, so this is the number of cases they kind of closed per year between 2019 and 2021, and I think two of them were like COVID years. So, you can imagine this number to be a bit high on the higher side, not on the lower side. So, on an average, they are closing close to 30,000 cases on an year. At the high courts, we have 785 judges, and they close per year close to 1.5 million cases. So, a lot of cases, and now at the district court level, there are 672 district courts. This is the scale is massive, there are 19,000 judges, and they close close to 15 million cases. Now, it looks like a big number, 15 million, but it's not even, maybe 1% of our population, so it's not like a lot. So, yeah, so when you see that, you know, look at how important each judge is if they are dealing with and closing so many cases, but do we have, like how are the immediate question is, how are these judges appointed? So, let's start with the district court, which is at the lowest level. So, it's like a very simple process, there's an examination you apply, you go through the examination, and if you get selected, so it's like there is no subjectivity there. High court, now high court and supreme court, now here is where we have a lot of subjectivity because there are senior judges, and the senior judges have collegium, and the collegium decides who gets to be the next judge. I think this is simple, yeah, so this is where the subjectivity, I'm audible, okay, okay, yeah. So, we will focus especially on high court because supreme court still, there are only 35 judges, and there is a lot of coverage around supreme court, people know who gets to become a judge, but high court, there isn't a lot of coverage, they are, you know, very important at a state level, and there is a lot of subjectivity involved here. Now, let's understand how this appointment system has evolved over the year, so 1950s when the constitution, you know, we had like a written constitution, then in 1990, till 1993, the process of appointment was very political in nature, and this is when I'm talking to, about supreme court and high court judges, yeah, so it was highly political, and caste, religion, and political affiliations played like a massive role, and in 1993, a judgment by the supreme court kind of changed everything, and they're like, no, we don't want the executive to be involved, we will, you know, deal with our own processes, we will kind of ensure who gets to be a judge, we don't want any political connections here, so 1993 changed, and till now we are following what is called the collegium system. Now, it was meant to be non-political, but there is a lot of politics involved, so how this works, this is like a very easy way to understand it, so whenever there's a vacancy, and there's always a vacancy, the chief justice, which is like the head of the high court, you know, they know about it, they then kind of tell them, tell about the vacancy or inform about the vacancy to the chief minister of the state. Chief minister then works with, so this is also where a lot of, sorry, yeah, this is also where, you know, the executive is involved, so the chief minister knows about it, governor knows about it, then they will kind of write to the law minister, which is at the union, country level. Now, the law minister will work, this is where the collegium will decide that, you know, there is a vacancy in one of the high courts, they will come up with, let's say, four or five names, then the law minister, law ministry and collegium system will decide, okay, whether these judges can be appointed as high court judges, then law ministry finally sends a recommendation to the prime minister, the prime minister then sends us to the president, then further gets approved, it is like a very long process and we always have a shortage of judges, but this is how it works currently. And analyzing judicial appointments, has it happened before? So these are books, books have been written, so this is the first one and this is all supreme court judges, right? So a person named Rajiv Dhawan along with Alice Jacob, so they analyzed supreme court judges between 1950 to 1975 and I think most of these were done using interviews, qualitative interviews. Another study happened, this one is also very popular, it's between 1950 to 1989, a study of 93 judges, but after 1989, there wasn't anything and you remember the process change in 1993, so then this particular study was done by Abhinav Chandrachur and for 96 judges and the hypothesis of what he wanted to test was, has there been like, we have 30 years have been passed since the inception of the collegium system, but has it produced like a legitimate, efficient or a diverse judiciary than what we had before? Yeah, but all of these studies were done for supreme court judges, none for high court judges. So now, even if this is the question, even if, you know, so how can, is there data, there is, so when it comes to judges, there is no government database because executive is not involved, no public data maintained by judicial departments as well and judges are also exempt from sharing information. This is, if I have a right to information request back there in India, like freedom of information, so judges are exempt to form sharing information there as well. The only documented source of information about the judge is a profile page on a court's website. Yeah, so this is how it looks like and this, this profile can be two lines or can be 100 lines, there is no standard. I took this from a couple of different high court websites and you can see, you will find a few details like date of birth and, but nothing else. Yeah, so what you can inquire about the judge from like five lines or a paragraph, but this is like the only source right now. And a study was done to check how many, like percentage of judges who are disclosing their educational details or about their educational background and you can see that only 9% of the judges disclose their graduation specialization. Year of law degree only maybe 23%. So it's not even like 50% who are disclosing anything or everything. Similarly, now this is very important disclosing professional details. What were they doing before becoming a judge? Were they part of the judiciary? Were they, you know, a lawyer for a private firm? Were they doing something else? But no one discloses it as you can see. And this study is there on SSRN, you can check. Yeah, so there's a lack of data. We don't have anything, profiles lack a lot of details. Religion and cast play like a massive role in India as well, but again, no information on that as well. So will we ever have access to reliable data about a judge? That was the question. But it all started, so I am part of this team called Civic Data Lab and we got a great opportunity to build like an open data platform. Now for such initiators, we can curate many more important data sets around law injustice. And we got the opportunity in 2019 during COVID, we developed this platform and in 2021, we launched the Justice Hub. Now Justice Hub, it's like a community of lawyers, legal researchers, you know, anyone who is associated with the law and justice ecosystem is not just like an open data platform. So we want to work with people to curate data, where they can come share that data and anything related to law and justice. So this is how the platform looks. After the platform was launched, we kind of reached out to people who were working on such data sets and we had the first data for justice meetup. What we also wanted to do was we call this date with data. Date with data basically means like let's say if you are, you have some data related to law, you know, anything around law and justice and you have shared that on the Justice Hub, we will invite you where you can talk to the community about how you curated that data site, etc. And there's a community engagement through which you also get a lot of feedback. So we call this date with data. So our first date with data was organized and we invited Professor Rangin Tripati to talk about these three data sets which kind of he created and there are other data sets also which he wanted to speak about. And this is where the whole conversation in this particular webinar conversation started about judges appointments. Someone asked that, you know, these particular data sets only talk about the Supreme Court judges. Why don't we have any data for High Court judges? And he said that, you know, it's like a very resource intensive process. So what can we do? So someone like, oh, can't we just collaborate and curate? And I think that is where it all started. So we launched summer of data, like Google summer of code, we call it summer of data. And the objective was, again, working with a lot of law students because every year for a couple of months, they don't have like a lot of work to do. So can we work with them and curate these data sets? So between May and July 2021, we designed this program where we wanted to collect data from 25 High Courts, 40 students, and there were a total of 43 variables. I'll quickly go through this. So for one High Court, we assigned a couple of maybe two, three students. They collected data, then we had some automated processes to check that data and some manual processes where the professor was checking the data and giving them feedback. This I will skip just for the lack of time. So now this is a very important slide, how we validated data. So for every judge, we ensured that there are more than two to three data entries per judge. So then what we used to do is we created like a data processing engine and you can see this is like a judge. And then you have, there are 10 variables and wherever entries match between like let's say three students are collecting data for this judge. If the entries are matching, we assign this color. If they don't match, we assign this color. If let's say one of the students have collected the data but others haven't, we assign this color. So there were a few rules. So and we automated this process because there were like a lot of judges. And these were our students who data curators. We worked with close to 40 students I think, across law universities in India. And these were the mentors who helped them. Because these were law students and they weren't very familiar with anything related to data collection at all. We invited people from the community who worked on, who have kind of did similar work before. So to talk to students and we had these talks during the three months that we had. And the data sets were finally published on the Justizab and we called it Koj. Koj is a Hindi term but in English you can think about it as search. I think it's in Spanish it's Busqueda. So this is right there on the Justizab right now. This is one of the data set spaces. There are 26 data sets. Why 26? One is for the country and 25 for the country. The 25 data sets have been merged into one. We have removed all the duplicate judges etc. And another great story happened. We found a professor at the university he works in. There was a convocation. The Chief Justice of India was invited and we created this guidebook and we kind of informed them and they launched the data set through the process. So this again was a co-incident, happy co-incident that happened that the judges launched the data set themselves. And this is the discourse around the data set that because there isn't anything that existed before and now you have a data set of 1700 judges. So a few things you can you know analyze and we have close to 43 variables. Education details, professional details, all of that. And now we are working on coach 2.0 because the data set was updated till 2021. I think March 2021. We will update it on hopefully this Constitution Day which is on 26th November 2023. So looking forward to it. And lastly can we use this like what are some of the important ingredients here? So we have an anchor kind of community which is the Justizab. The mentors have played a very important role. Then obviously you have student community and the processes through which the community work to curate this data. Anything you feel is missing here. Like if we have to do this next. Obviously the funds. So yeah hopefully we will be able to replicate some more of data and create many more interesting data sets. And yeah thank you. This is where all the slides are. Thank you. Thank you very much for that great talk. We do have time for questions. We have about four or five minutes. We have one in the back. Thanks so much for your talk. That was really interesting. I'm just curious were there any surprises that you found in the analysis of the data? There were a few. Actually we have so if you go to this link we have a few data tables there. So one of the things with judges appointment in India is we don't we see a lot of lawyers who are appointed as judges and not judges from the lower judiciary who are getting appointed as judges. That is one. And again we don't have a lot of details about their professional background. So you know there's a mismatch there. When it comes to women lawyers getting appointed as judges that's also being very rare. Religion and caste were two variables which we were not able to find it online anywhere and we also just wanted to rely on authentic sources but I am sure that will play like a massive role there. Some students also looked at matrimonial websites. So one thing we did was so let's say if I am from a state from a southern state in India I will be responsible for the southern for a high court in that state. So I can I know about how the surnames are there family names are there and what is the religion and caste and some of them I just looked at matrimonial websites and see okay where but we don't want to rely on that information but yeah it's just lack but there will definitely be a few correlations there and yeah. This is super interesting thank you so much for your work. Did any judge engage with you were there judges who were like really great and every data point could be matched and you were like can you work with us? Yeah so we for I think a few high courts we I think one of them was madras which is like the southern state a lot of judges the profiles were filled. See there is no law which is required and there's no standard. We have been in touch with past judges because now they are not part of the judiciary anymore and they are kind of very helpful and supportive but yeah that is how it is. But some judges do maintain like a detailed profile but some of them just do. I have a question. Have you written up some recommendations for how the judges should describe themselves and their profiles now? Yeah so the paper I was showing where we were looking at how many judges have disclosed their educational details versus so a paper has been written but again it's like you don't know these initiatives have been very ad hoc but now since we have something to base our arguments on so that is the next step and with coach 2.0 we would like to kind of come up with a recommendation as well. Amazing well let's give you another round of applause.


I'm a second year postgraduate researcher in the Gateway PhD program with Manchester Metropolitan University and San Jose State University. It is a PhD, that's an independent piece of research. It's awarded by Manchester Metropolitan University, but it's the supervision to express between Manchester Met and San Jose State University faculty. You have the ability to work with researchers from both the UK and San Jose State, and what that means is that you have an incredible comprehensive diverse and global perspective. You're able to do this in a part-time basis in a 100% online environment except for the one week that you come in person to San Jose for an intensive research workshop. I looked at a lot of PhD programs and I wanted one that was flexible for my life circumstances, one that allowed me to continue working, and one that allowed me to jump right into my research, and that was really what attracted me to this program. We are using a European model so that you do not need to take classes. It assumes that you have attained a level of achievement in the career and you are ready to pursue research. It's broad, it's international, it involves perspectives from different people working with different technologies and different domains. I think one of the biggest advantages of the Gateway PhD program is the connection you have with your supervisors, but also the power of the cohort of the Gateway PhD program. So you get to know your colleagues, your fellow postgraduate researchers, as well as faculty from both institutions, and it's a really supportive collegial environment to work in. I 100% recommend this program for anyone looking for a PhD that is supportive. Faculty here really, really want to make sure that you get out of this degree what you came in to get out of it. And even if you don't quite know what that is, they're going to help you along with the cohort figure out what you want from your PhD. Many of our graduates of this PhD program have gone on to academic positions, they have gone into management positions, into consulting. So we have a wide range of interests from traditional library science to information data analytics, and there is a place for you in this program.