So I wanted to make a few comments about last time. First comment was about Dane twists. So I said, you just suspend a Dane twist in an annulus. And yeah, you can think of it like that. But I prefer to think of it the way I originally drew it. So we have two spheres, concentric spheres, with S2 cross i in between. And the outside sphere is fixed. The inside sphere rotates by 360 degrees. And all the intermediate spheres, so first of all, you pick an axis, sorry. And first of all, and all the intermediate spheres rotate by some amount between 0 and 360, maybe 200, whatever. And I like that picture, because I think if you think of the suspension picture, well, it doesn't look very smooth at the cone point. But this, on the other hand, is definitely smooth. And to get you to think about this, I put this as the first exercise for today. So somebody asked in class, I think it was Joe, what the horizontal slices looked like. So you can figure out what the horizontal slices look like for your first exercise. So that was the first comment. The second comment is about why the cut vertex lemma gives you an algorithm for deciding whether something's a basis. And I'm just making this comment, because the picture I drew at the end of class last time wasn't really the right picture. So what's the point? So that the star graph having a cut vertex, so what is the star graph? The star graph is the union of the images of all of the generating loops. I should have written it in orange. OK, and so there's this big graph that you make. And suppose it's got a cut vertex, A. The point of having a cut vertex is I can draw two other spheres, one on this side and one on this side. And both of those spheres intersect the star graph in fewer points. The sphere I drew in class also had that feature, but it wasn't one of these spheres. It was just a random sphere that happened to intersect the star graph in fewer points. But the fact that there's two spheres, if you look at A is only one half of the sphere that I cut open on, so A bar is somewhere else. It's in one of these spheres, say S1. So the fact that S1 separates A bar from A means that S1 is a non-separating sphere in the three manifold. So you use S1 separating A from A bar. Is there anything else? S2. S2. Thank you. Yeah, use S2. Separate A from A bar. And what do I mean use S2? If you remember, that means switch S2 with A. So you have a new sphere system also, and separating spheres. It also cuts the thing into a ball, a punctured ball. And then the other question somebody asked was, well, so I use S2. What happened to an edge that was over here? I guess, right. So this edge doesn't intersect the new sphere at all. But think about this edge. This edge goes into A, so it continues out A bar. If I glue A, so I glue A and A bar back together, then I've cut open along S2 instead of A. So this edge that was coming from B to A keeps going out A bar and goes somewhere else to C. So in the new picture, this edge doesn't intersect S2 at all, but it does intersect C. So I just don't have that. So anyway, that's what happens to the edge. So I just wanted to answer the questions that I didn't answer last time. OK, right. So what about today? What are we going to do? So we're thinking about two models of the free group. I'm calling the rows this thing. And the doubled handle body I'm calling MN. And we know how to tell whether a map from the free group to itself is an automorphism. That's Whitehead's algorithm. And we also, if it's an automorphism, we know how to factor it into a product of elementary automorphisms. So they were the permutations, inversions of a generator, rho ij's and lambda ij's. So that's what we did last time. So what we're going to do today is start thinking about the entire group of automorphisms out of Fn. Or out of Fn, today actually I'll be thinking mostly about outer automorphisms. So this is pi 0, homotopy equivalences of Rn. And I'm not going to stick in the base point. If I wanted to think about automorphisms, I would be thinking about pi 0, homotopy equivalences of Rn that preserve a base point. And we also saw that this was pi 0 of homeomorphisms of Mn, modulo-dane twists. Yeah, pi 0 of homeo of Mn with a base point. Again, modulo-dane twists. OK, so we want to think about these groups. So how do you think about a group? This is a conference about geometric group theory. So geometric group theorists like to have a space with an action. Let's do out of Fn. And what they require of this space is that the action be free or almost free. In other words, they want it to be proper, meaning that point stabilizers are finite. We're thinking of these as discrete groups. They're discrete groups. And co-compact. So that's what you want to do to use geometry to study the geometric group theory. On the other hand, you might be an algebraic topologist. And there, what you want is a space x. Space x isn't good enough. You do still want x to have a proper action, but you want a contractable space x with a proper action. And actually, you don't really care whether the action's co-compact or not. The reason is that topological invariance of this quotient space are topological invariance of the group, like cohomology, Euler characteristic, things like that. Here, quasi-isometry invariance of this space are quasi-isometry invariance of the group. So you may be interested in. So you want this for more geometric applications. You want this for more topological applications, algebraic topological applications. So we're going to get a space x. We're studying the group of outer automorphism. So we'll start with outer space. And outer space will satisfy the second one. We'll make algebraic topologists happy, but not geometric group theorists necessarily, not yet. Satisfying algebraic topologists. And but after we get this space, it turns out there are closely related space. Let me give outer space a name other than x. Actually, this is how outer space got its name. I was giving a talk many, many years ago about outer space. And I was calling it x. And Peter Shailin yelled out from the audience, you should call it outer space. And it was a really good suggestion, because everybody is hurt, even if they don't know what it is. Outer space, that sounds cool. OK, outer space, making algebraic topologists happy. But x has closely related spaces. One's called, I guess I should write. I was going to give it a name. How about on? It has closely related spaces. One's called k and that's called the spine of outer space. Then there's also on hat called the boardification, outer space. And both of these make everybody happy. They're both contractable. They're still contractable. The action's still propertor. And the action is co-compact. But first, we have to describe this space, outer space. So we define free groups in terms of graphs and in terms of three manifolds. Right. This is the third time. Yeah? When does it have a metric? This is true. But if. So we're not that happy. Well, it does have a metric, of course. It's got a non-symmetric metric. Anyway, this one will be a simplicial complex. So you can just make every simplex a regular simplex. And then you have a metric space. And then it's quasi-symmetric. You happy? No. No, you're happy. Good. We've talked about graphs. We've talked about this three manifold. Actually, the quickest definition of outer space doesn't use either of those ideas of a free group. What else is a free group? Uses the fact that a group is free if and only if it acts freely on a simplicial tree. So a free group is definitely free. So and it acts on trees. Right. So what do I mean? So for me, a tree is a one-dimensional simplicial complex. My trees, I'm not looking at real trees at the moment. I'm only looking at simplicial trees. So I won't bother to say simplicial all the time. For me, a tree is just a one-dimensional CW complex. And it's contractible. And what else? Action. The kind of actions I'm going to look at, these are going to be simplicial actions. Or in other words, they're going to be graph morphisms the way I defined them last time. So they send vertices to vertices and edges to edges. And what does it mean to be a free action? Every group element moves every vertex, well, every point. So one way to get an action of a free group on a tree is take a graph with the fundamental group, a free group, and look at the universal cover. So this is G. This is T is G tilde. And then the fundamental group of G acts on G on the universal cover, which is a tree by deck transformations. Right? So to cut down this, so we're going to make a space out of these actions. And to cut down the size of this space, I'm going to make some assumptions. I'm only going to use minimal actions. In other words, I'm not going to allow any invariant subtrees. I'm also not going to, in this picture, when I take a graph and I look at its universal cover, and I think about the action of the group on this universal cover, I don't really care where the, I don't want to care if I sprinkle bivalent vertices in here. That doesn't really change the basic picture, the tree or the action. So actually, this can be technically phrased so that it automatically does this, but I'm just going to say it for emphasis and no bivalent vertices. So I'm going to use, I want to make a space. Now I want to make a space of such things. All I've done is shown you an example. I've shown you how to get lots of examples. Take any graph with the right fundamental group. Look at its universal cover. We have an action on a tree, but I want to make a space of such things. So in order to make a space, I'm going to make these trees metric trees. I want, in order to have, I want the action to be by isometries. So I'm going to make the metric invariant under the action. So now I've got points, and at least I can sort of imagine what a nearby point would look like.  But to make that precise, I should say the set of these things makes a space. To make a space, put a metric, and then use the equivariant Gromov-Hausdorff topology. So I'm assuming that not everybody knows what that is. Is this true? OK. So what's the equivariant Gromov-Hausdorff topology if x and x prime are metric spaces, then x is close to x prime. For every finite set in here, you can find a corresponding finite set in here, where the distances are within epsilon of each other. If for every finite s and x, there exists an s prime and x prime, also a finite set, and a correspondence by ejection s to s prime, so that the distances between points and s are within epsilon of the corresponding distances of points and s prime. I'm just going to write it like that. So that's the regular Gromov topology on metric spaces. But we don't just have metric spaces, we have metric spaces with actions. So to include the action, so this is the Gromov-Hausdorff topology on metric spaces. How do you make this equivariant? Well, x with its action and x prime with its action are close if, well, you need finite sets in x and finite sets in x prime. And you also need finite sets of group elements in x and x prime. And you want if for every finite s, s and x, there's s prime and x prime for finite s and finite a and g. There exists s prime in x prime and by ejection. And what do I want? I want the distance between two points s1, not just the distance between s1 and s2 to be approximately the distance between s1 prime and s2 prime. I want that. But I also want if I move s2 by a group element, it's still true. This is supposed to be true for all g and a. So basically, if you understand this, then this isn't much harder. You just throw in the group action to make sure the group action does approximately the same things to s and s prime. So since I now have actions on metric spaces, there is an echo variant topology and right. So now I could define definition one. Is there any way to draw what invariant supreme would look like? What an invariance. This is one of your exercises. For one thing you could do is supposing you had a perfectly nice action on a tree and you put a little spike in the middle of each edge of every edge. So the group still acts on this tree, but these spikes are completely unnecessary because the tree without the spikes is an invariant subtree. Definition one is the space free actions of fn on metric simple trees. So that's a nice definition. It has the advantage of being succinct. It doesn't really tell you a lot about what the space looks like. I say it has two advantages. First of all, it's very short. Someone asks you at outer spaces and you don't really want to talk to them. You say, that's the action of fn on the other hand. I'm sorry. Yeah, it also has many other advantages, one of which is that it's easy to generalize to other situations. Like if you're looking at if your group is not the free group, but a free product of groups, you can make similar spaces. And a lot has been done with that. But anyway, that's the first definition, right? But I want to go to the second definition, which was actually historically the first definition, which is using graphs. Oh yeah, so I didn't actually tell you what the action is. Maybe I should tell you what the action is. Maybe I'll put it here. The action of fn on on as described. So what's an element of on? It's an action on a tree, which I could think of as a homomorphism from the free group to the group of isometries of a tree. That's of, yeah, sorry, no, an action of a free group. So a point in this space is an action. So this is a point in outer space. It's an action of a free group on a tree. So how does the group of outer automorphisms act? Well, if I have an outer automorphism, I can lift it to an actual automorphism. And then I could just compose, this was rho. I could just compose fn with this actual automorphism. And I'll get, this is phi hat, from fn to fn. And I'll get a new composition, a new map from fn to the isometries of t, rho composed with phi hat. So that's a new point in my space. It's the same tree, but it's a different action on the tree. Because I've twisted the action by this automorphism. So that's how f, I'm sorry, yes, you're absolutely right. I'm asleep. Action out of fn on on, right. Do you have fn twiddles? No. No, I'm sorry. This is b, yeah. Right, a point in outer space is an action, which is a map into isometries, from the group, the free group to the isometries. And if I change this action by an automorphism, I get a new action. And one of your exercises is to show that, oh, yes. I guess I'm really not done with this definition quite yet. Only use minimal actions. And I don't really want the action to depend on how I drew the tree in the plane. Say two actions are equivalent. If there's an isometry, so fn acting on t and fn acting on t prime. If there's an isometry from t to t prime, making the commuting with the action. So for instance, let's just take the free group on two generators. Say a maps this way, b maps this way.  You're probably familiar with this picture. So that describes an action on this tree. But I could have also drawn it like this. So I could have made b go down like this and a go across. Same action of a and the flipped action of b. Well, I can give you an isometry from this tree to this tree. My hand just did it. Does that? OK. And that commutes with the action. So those are the same tree. I just drew them differently in the plane. Right. So I should say free actions on equivalence classes. Is it not space of equivalence classes or free action? Space of yes. I think your hour just needs to go somewhere else. Do you make all the assumptions minimum? Yeah. And the metric is not necessarily the metric coming from the special can be? The metric on the tree. This has to be the metric of the special complex or can be. So the trees have metrics. We don't have a metric on the space yet. We just have a topology on the space. But for a given tree, we have more than one possible metric? Or we're using only the? No. A given tree has, I think of it as a metric tree. So a tree has a metric. Comes with a metric. So yeah, fn acts on a metric tree. And the metric is part of the data for this point. So if I made this edge a little shorter, it would be a different point. Is that clear? So another thing I could do is interchange the a-axis and the b-axis, do a diagonal flip. If these two edges weren't the same length, that wouldn't be an isometry. So it wouldn't be the same action. But if they were the same length, it would be an isometry, and that's the same action. Yeah, this might have been more than a five minute elevator talk, describing the space. Um, yeah. But anyway, so that's definition one. That was supposed to take no time. Let's get to definition two. So this is going to be a definition in terms of graphs. We want this space. So definition two in terms of graphs. So as I said, historically, this was definition number one. So supposing you have an action, fn acts free action on a metric tree, then the quotient is a graph. In fact, it's a graph with fundamental group, graph g with fundamental group, fm. So I have, yeah, I already drew this picture. I have a group acting free, free group acting freely on this tree. The quotient is going to be some trivalent graph. So an exercise that you have is to check that if this was a minimal action, no invariant subtrees, then the graph doesn't have any univalent vertices. No, it is finite, first of all. Has no univalent vertices. And in fact, I also didn't allow my trees to have bivalent vertices. So I won't have bivalent vertices either. So if I'm looking at my space, it's a space of minimal actions. So the quotients by these actions will be graphs with no univalent or bivalent vertices. So instead of looking at the trees, I want to look at the quotient graphs. But I have to incorporate the information about the action. So how do I do that? If I had a point here, then in this case, my free group is on two generators. I can look at the image of this point under all of the generators. Maybe this is a1x. Maybe this is, I don't know, a2x. I don't know where a2x is. And that gives me a map from a1, a2, the standard rows into, well, after I go to the quotient. So a2, this path will get wrapped somewhere around here. And this path will get wrapped somewhere around here. They may be long paths. This gives me a map from the rows into the graph and exercise this map as a homotopy equivalence. In other words, the induced map on the fundamental group of the rows to the fundamental group of g is an isomorphism.  I've identified the fundamental group of the rows once and for all with the free group. So what I can think of is my action gives me a way of identifying the fundamental group of the quotient graph with the free group. Gives me an isomorphism of the fundamental group of the graph with the free group. So what is the marking? What information is the marking? Actually, it's just the iso, well, depends on what you read. Today, it's just an isomorphism between the free group and the fundamental group of the graph. And notice I'm being sloppy. I'm not talking about base points because I'm talking about outer automorphisms. So the marking, g star is a marking. And if I have an isometry between two trees up here that commutes with the action, I get an isometry. So equivalent actions give me isometric graphs. The markings commute. So the isometry commutes with the action. So that's going to mean that the marking commutes in the sense that I've got this isometry from g to g prime. And I have this marking. Well, here I just find it as a map from a rose to g. And there's also a marking from the rose to g prime. And the fact that the graphs are isometric and the actions are equivalent mean that this map commutes up to homotopy. So I call such marked graphs equivalent. So when it's equivalence, classes gives me some notion of equivalence of marked graphs. So let me repeat. If I have an action on a tree, I'm going to get a quotient graph. And I'm going to get a homotopy equivalence from the rose to the quotient graph, which induces an isomorphism on the fundamental groups. So I could either think of this as the marking or the induced map on pi 1 is the marking. That's unique up to homotopy. So here's definition 2. On is the space of equivalence classes marked graphs g, g. But now I have to say some more things. I have to say g has no 1 or 2 valent vertices. And g is finite, has no 1 or 2 valent vertices. And g, well, you can either think of it as a homotopy equivalent from the rose to g or look at the level of fundamental groups. Right. So that's the second definition. That was, as I said, the original definition. Although the original paper also talked about action. So I'm going to get a homotopy equivalence on trees. I want to, this business about markings can be very confusing. Maybe it's not so confusing if you realize where it comes from. This is, let me leave that up there. Nope, that's the wrong one. Yeah, OK. Let me just, let me see how to show you how to, think about how to think about one of these maps in a single picture. So let me give you a picture of a marking. So here's my graph. There's my graph. And I want to think of that not as a graph, but as a marked graph. So what do I need to do? I need to identify its fundamental group with a free group. So one way to do that is pick a maximal tree like this. There's a maximal tree. Then every other edge kind of defines a loop in the graph. And not a base point, but what could be if you want. So then label all the extra edges. Well, I'm imagining I have an identification of the fundamental group of this graph with a free group. So each of these loops is an element of the fundamental group of the free group. So each of them has, it corresponds to a word in the free group. And these elements form a basis for the free group. Is that a maximal tree? Yes. It's not a maximal, yeah, this one, this is a maximal tree. Maximal tree. OK. So label the rest of the edges by basis for the free group. That completely describes the way I've identified the fundamental group. So it describes the isomorphism of the marking. Now, one reason I wanted to look at this is think what happens when you collapse the maximal tree. So that the whole maximal tree becomes a point. And you have edges labeled by u1, u2, u3, u4. So this is a picture we've already seen when we were talking about foldings. Now, one point in outer space is just to rose with edges labeled a1, a2, a3, a4. So the isomorphism with the fundamental group just sends each generator to a petal. And I know, or stalling's nose, you all know now, how to find a path of graphs from this picture to that picture. So somewhere along the way, you'll get a path, some intermediate graph. It's about there. As you travel along this path, the identification with the fundamental group is going to change. We know how it changes because we did this folding business. And so what that tells you is that on, described in terms of graphs, is connected. Stalling's folds gives you a path from this arbitrary graph, the arbitrary marked graph that you started with. You collapse the tree. That's certainly a path in the space. And then you start this folding process. And it will eventually land you at this base point of your space. So that will imply that O n is connected by Stalling's folds. Now, of course, there are many choices in how you take this fold path.  But you also might have two edges over here that have the same label. And which do you fold first? It's up to you. And there is another problem with this picture. Anybody see another problem with folding to get from here to here? These are metric trees, right? What if I run out of edge before I do all the folds I want to do? I'm stuck. So actually, before I start any of this process, well, I have to go down here, and then I have to change the edge lengths till they're big enough so that I can do all the folding I want. And end up here. But that's a big idea for how you prove the space is connected. Right. And as before, what does the action do? The action just changes the marking. So remember when I described it in the space of trees, the tree didn't change. The only thing that changed was the action of F n on the tree. Same things to here. The quotient tree isn't going to, the quotient graph isn't going to change. The only thing that will change is the identification of the fundamental group with the group. OK? Yeah? Can you explain your general knowledge of topology on this definition? Well, it's the same space, so it's the same topology. But I'm going to give you a different way of thinking about this space after I give the next definition that will give you a different topology, which is much easier to understand. And there's a theorem that says that this is the same topology. So in a minute, I'll tell you. But basically the idea is I've got this graph, this marked graph, it's got a metric. Things close to this marked graph are things where the graph looks like this with the same marking, but the edge lengths are slightly different. So that's the basic idea. Can the metric be culturally big? At the moment, yes. I haven't normalized. That's the next statement. It's often convenient to normalize. OK? So right. Yeah, so I claim that this definition in terms of graphs instead of trees makes it, gives you a much better idea of what the space looks like. But in order to be able to draw pictures of a reasonable size, I want to normalize my graphs so that the sum of the edge lengths, I should have put. I didn't write the word metric here, did I? I should have. I mean, there's a metric upstairs when I take the quotient. It's invariant under the action. So when I take the quotient, I get a metric downstairs. And I can normalize graphs so that the sum of the edge lengths is equal to 1. That turns out to be convenient. Then with a graph description, O-N, graph description, decomposes into a disjoint union, well, of open simplices, sigma of gg. So sigma of gg is a simplex containing g. And what is it? It's what I just told you a minute ago. I look at the same picture, the same graph, same labeling. But I let the edge lengths vary. But now I'm letting the edge lengths vary, but I want to keep them the sum equal to 1. Equals a set of g prime g such that the edge equals a set of g prime g obtained from gg by varying the edge lengths. So for instance, supposing I have this graph, simple graph, u and v. It's labeled by some elements of f2. Then what simplex is it in? Well, I can make a whole line of graphs that look just like that. On the one over here, the v guy is really tiny, and the u guy is big over here. The u guy is really tiny, and the v guy is big. And this whole open simplex is contained in the space. It's a space of marked graphs. Notice that the endpoints of this interval are not in the space, because if I collapse v all the way to a point, it doesn't have the right fundamental group anymore. So this is sigma of that. If you haven't seen this before, yeah. So why is it just an interval? Because I want to keep the sum of the lengths equal to 1. So if this is the length of the u edge, and this is the length of the v edge, then I'm just looking at the length of u plus the length of v is equal to 1. It's just a line. Otherwise, I'm looking at the whole cone. And let me do one more. Let's take a graph with three edges, l1, l2, and l3. They're labeled by words. We only label the complement of a maximal tree, say u and v. And then I've got three lengths to play with, l1, l2, and l3. But the sum of the lengths always has to be equal to 1. So I'm going to get a simplex sigma of u, v is that. When I collapse, say, the middle length to 0, I'll get this simplex up here. So this is a simplex in outer space. It's missing its vertices. This is a simplex. This is a simplex. And this is a two-dimensional simplex. So I have a two-dimensional simplex that's missing its vertices. I guess I don't have time to do that. I was going to do the three descriptions in the first lecture and then go on. But I guess I'll let me just talk a little bit more about this. So I've got this u, v. So u goes that way and v goes that way. Now, the way I happen to draw this, as I pointed out, if I just flip the direction that u goes, that's the same point in outer space. That's like flipping the tree like this, which is what I did in my example. So if I flip it, so in this picture, u goes this way and v goes this way. But if I flip it and expand it out again, then u will go this way. And v will, what did I flip? I flipped v. v will go this way. So in particular, so the u-loop hasn't changed. But the v-loop goes the other direction. So in particular, u times v, for instance, will go around like this. Whereas here, u times v went like that. So that's a different marking on my graph. It's a different simplex. And one of your exercises is to draw at least five simplex pleases in outer space of rank 2. And yeah, the exercise says, explain the picture I drew in class of all of outer space of rank 2. But I didn't draw the picture. Other things to do in the second lecture. So draw a picture of outer space in rank 2. If you can put five simplexes together, you should be able to figure out the whole thing looks like. Yeah, I'm out of time for this morning. I mean, for this one.


U.S. Senate's Montfort Point, the first landing platform ship, was christened at Nazco shipyards in San Diego. The ship is named in honor of Camp Montfort Point in North Carolina, the site where the first African-American Marines were trained. I deal personally with a lot of the original Montfort corners and I listen to their stories and I understand the sacrifices and the struggles that they went to and by them going through that it made it a lot easier for me from Montfort Point would serve as a floating base for amphibious operations and operate as a transfer point between large ships and small landing craft. This is just not black history or a marine court history. This is American history and the world needs to know about the man of Montfort Point. Reporting for San Diego, I'm Petty Officer Carlos Vasquez II.


Hello everybody. Good evening. Thanks for coming to this activity. My name is David Perez. I'm from Costa Rica first time in Detroit, so Thank you all So what I'm going to talk today is a little bit about it is cd or it's cd a Couple of concepts that are important to understand the performance of at CD through for the latency how to benchmark at CD with a benchmarking tool that comes with it at CD and some remediation and tips in case we face that problem So first of all, what's at CD? at CD is a distributed Q value store for a store in critical information critical data for a distributed system You can use it for anything, but it's probably most known for being core component of Kubernetes and You don't actually talk to it at CD Right with your applications But that is part of the cube API server functions to talk to at CD to a store and retrieve the cover net as cluster estate So even though you don't directly Speak or talk to the at CD. You can still see issues there These are two examples that I saw One from the at CD log that says that a request took too long to complete and some other Logs in the cube API server saying that there were some Harbids that were missed Indicating that the server is likely Overloaded but what is exactly to be overloaded in at CD terms? so we need to understand two concepts throughput and latency and we understand latency as the Time taken for an operation to be completed and throughput the number of operations that are completed in a period of time So in single terms you can see latency as how fast Operation is completed and throughput how much data or how many operations are completed in that period of time So about the benchmark tool that I was talking about at CD has A known benchmark tool as you're seeing here in the screen that you can actually easily configure you can give a many arguments to the CLI and do different kind of testing against at CD and To to make a quick demonstration here I put on the top side of the screen some requirements and the above it is the Information from at CD documentation they did they did a benchmark on those requirements and I took them But I changed the the disk. I'm using a hard drive disk in the part below And when we do the benchmark we can notice that we don't have that much difference when we are using one connection and one client but when we go distributed with a Thousand of clients and hundreds of connections we start seeing a lot of difference in the throughput They request per second and also in the latency also for the read Information we see a similar thing right similar case that with one single connection. There's not much big deal but when we go a With multiple clients and multiple connections we start seeing problems in throughput and latency Especially on prem, right? So when you face this what what can you do to remediate this? so First of all when when you're designing a system make sure that if you can Design and have ahead on time the number of requests that your application is expecting So do you don't overload at CD? Also try to avoid HDD at all But if you cannot do it because you cannot afford it because the cluster is already there make sure that the HDD is at least 15k rpm and also There's something you can do you can configure with tools like ionize the disk priority So it is it takes priority writing to disks and also turn some at CD settings like the Harbit timeout the election timeout so you don't overload the server and Also, there are some more tools like the this benchmark FIO and also the not conformance from Kubernetes that will help you address more issues rather than just the benchmark for at CD So I went ahead and did a change just changing the HDD to SSD And we can see here the big difference that we have now the same cluster But using solid state drives We can see that the requests per second the throughput goes actually double which is good So Doing a quick recap if you want to know more about benchmarking at the CD especially on prem You can see the operations guide in the documentation and the performance section Also, there's a guest there with some scripts You can use to create your own three member at CD server And it will also give you some commands to do benchmark if you want to test it more. So that's my information Thank you very much. I appreciate it


Good morning people. This is Lugano at 640 in the morning and a couple lights on a couple of people commuting to work Anyway, it's time for me to commute to work, which means heading over to my office Over here Stopping at coffee along the way My first thing in the morning is usually I always have a task ready first thing in the morning If you read all those productivity Blogs or books or tips or whatever, you know They always say don't check email first thing in the morning and stuff like that and I'm a big adherent to that And so first thing in the morning. I always have something set up this morning. It has to do with sales I'm tweaking these emails that I'm gonna be sending out to legal firms for sales And so that's what I'm working on now. So I'll do that and this is this We're going this is the same view, but at 830 we're probably 45 right now And as you can see the light has come out and it's a brand new day here in Lugano, Switzerland So what happened? Really backlit So what happened was I created these sales emails and what I'm doing I wanted to speak a bit more about it because I think sales is extremely important for freelance translators And so I'm really trying to get better at it. I have a sequence of six emails that I'm sending out and And I'm getting email addresses. Well, I used to get them haphazardly or try to search for them wherever now I actually hire someone online to give me email addresses and you know, I'll get like 200 email addresses from a Virtual assistant online who helps me out with them someone who does data research in specific areas in specific industries And then I target them right now I'm going to be targeting people in the legal industry in the German part of Switzerland and you know See if I can provide translations for them as I mentioned a couple times I'm also transitioning into an agency and working with other translators to provide many different languages So that's what I'm going to be trying to do and that's what I've been working on so far this morning Okay, I mean I can yeah and I can evaluate how how hard I want to make it for them or not I guess but actually yeah, that should be good for now Well, the call went on for about an hour and a half but but it was good because actually I was able to get quite a bit of stuff done and Now I'll go over the website see how that works. Anyway, now I need to get some work done going to a coffee shop and Unfortunately in spritzland, we don't have star but or at least my part of spritzland We don't have Starbucks. We don't have those other types of coffee shops So going to a coffee shop means going to either co-op or me gross or manner And so that's what I'm doing right now gonna pass by manner But I think I'll end up at the me gross close to the airport get some work done there until my meeting at 2 p.m Here we go So I'll talk to you then two hours later so The me gross was full full full full of people because it was lunch time So I ended up going to this coffee shop close to the Ikea here, which had the worst ink internet connection ever So anyway, I was barely able to get anything done. Actually I got quite a bit done everything considered but yeah, that'll teach me to Go look for an internet connection during lunchtime here in the vinyl Unfortunately when you're in Lugano, those are some of the things that you need to take into account Yeah, in terms of stuff like that actually Lugano is very inconvenient because even the you know down in Italy, it's better and And up in this German part of Switzerland is better, but here in Lugano. That's what are you gonna do? Now I'm heading over There's some repairs that need to be made to the house so I'm heading over there to talk to the repair guy and get a quote and Then I need to get some more work done, but I'll probably do it from home And that's about it. Also, I didn't take the clue that everyone else was eating during lunchtime So I didn't eat so I'm really starving which means now I'm having this Bon appetit And now I'm back home. I'm gonna get some work done Before the end of the day before the end of the work day In fact, I just got a call but from a guy who wants to translate a book But he's looking for a very very low price which unfortunately I cannot accommodate now but we'll see what happens and Yeah, otherwise that's it I want to finish up some stuff and then if I have time go downtown get some photo copies done And maybe buy some groceries and stuff, but we'll see how that goes. Anyway, now it's back to work 6 p.m. It's time to go jogging and Maybe if I take a break, I'll take some pictures too 20 minutes later I'm back I'm back After a good jog out of breath Time to go home and eat some dinner This music I listen to while I jog. I'm cooking dinner I realized that I came back to Switzerland about a week ago And so I've been doing this and I should have done it when I was back in Taiwan because that would have been pretty fun unfortunately there I was with my wife and You know, we're really busy doing all our stuff there. So I mean it just I didn't think about it But you know, we'll see where we go It looks like in a month or two we'll actually be moving to the States So I'll definitely do one from there if that's the case. Otherwise, this is another day my life now I'm cooking dinner back here and and then I'm gonna relax chillax and Call it a night. That's the cool thing about being a freelancer You can run errands and stuff during the day if you want to and you know skip out on traffic You don't have to do it after work or Saturday like everyone else But it also means that you need to keep on top of your own stuff and you need to you know Keep on top of what you need to do.  So that's what I've been doing and hopefully you found it useful. You found that informative and I'll talk to you next time. Bye


So, what you've heard so far is the report on research. What is next on the agenda is a brief update on policy interactions that we drive at Lydon Foundation Europe. And now, of course, this will include our favourite topic, the Cyber Resilience Act. So, if you're interested in that, then please stay. And I promise to be relatively brief so that you don't have to wait for that cup of coffee for that long. Let me see. We've got 30 minutes for that. So, okay, so this will be an update on some European policy topics that we're interacting with, and before I even dive into it, I would like to point to the back of the room and say, thank you, Kiran and Open Forum Europe, for the coordination work that you're doing here. It's invaluable. Without you, we couldn't do this. Okay, so, first, we look at the Cyber Resilience Act. The first part of this presentation will be an overview. Can I ask for a show of hands? Who of you has read the whole Cyber Resilience Act and know exactly what's in it? Okay, a couple of people in the room. I would like to first give an overview of what the Cyber Resilience Act actually is so that we all know what we're dealing with, and then give an assessment of what we think it means. It's a horizontal regulation. So a regulation that is about the functioning of the EU internal market. Essentially, it means you have to comply with this act to be able to bring products in the European market, and it doesn't matter if your business is located in Europe. As long as you're offering something to European consumers, you have to comply with this act. It has three policy goals. Reduce the vulnerabilities in digital products. Ensure cyber security is maintained through the product's life cycle, and to enable users to make informed decisions when selecting and operating these devices. There's some key provisions in this act that are important to know. So as I said first, everybody who places a digital product in the EU market will be responsible for the obligations about reporting and compliance. These responsibilities entail fixing discovered vulnerabilities, providing software updates, and auditing and certifying the products. Now here comes the first part that is maybe a bit surprising. The responsibilities the three listed in the bullies are borne by those who develop the software, not necessarily by the downstream integrators. That means upstream making a component available already is responsible under the Cyber Resilience Act to, for example, audit these products. Who is affected by that? There are three groups, essentially. Individual developers that develop open source in a non-commercial way are excluded. This is, however, a blurry exclusion because it says unless as long as you only occasionally receive funding through donations, what as soon as you make a real income out of that, it's basically considered commercial activity. So if you are, for example, a sponsor developer who receives a regular monthly payment, that exclusion does not cover you anymore. It speaks explicitly of donations. If you're a not-for-profit organization or foundation developing open source, you'll likely need to comply with the CRA because the description that the CRA contains how commerciality is defined basically does not include open source foundations. If you're a private company, you definitely have to comply with the CRA. Another maybe important point is that the CRA does not distinguish between open source and closed source software. It speaks of software and the only mention of open source is this exclusion for non-commercial open source development for the purpose of research development. Not to hinder scientific research, so not market oriented. The obligations in the CRA, they are staggered in three groups based on risk. They are non-critical products. The assumption is that 90% of all digital products are in this group of non-critical. By the way, digital products mean software and hardware. That's another distinction that the CRA does not make. So it speaks of digital products and includes software hardware and the combination of the two. For non-critical products, the expected procedure is self-assessment of compliance with the CRA. So you can basically self-declare. For low-risk critical products, for example web browsers, you can either apply an existing standard or go for a third party assessment. Now, the problem with the existing standards is that they don't exist. But that's okay because usually legislation like this comes with a standardization request to the European standards development organizations that are not known to be super knowledgeable about regulating the software ecosystem. So in any case, so these standards don't exist yet. So this means you probably have to go for third party assessment. And then we get to high-risk critical products. There you have mandatory third party assessment. And currently, at least in the current draft, the list of high-risk critical products includes operating systems for servers, desktops and mobile devices, hypervisors, and container runtimes. This is clearly open-source critical software infrastructure. This is not something primarily released by industry. So very clearly here, the obligations under the CRA target large-scale open-source projects. How should vulnerabilities be handled? First, you need to provide a risk assessment. You need to ensure that the product is delivered without any known exploitable vulnerabilities. At the time of shipping, you cannot have any known exploitable vulnerabilities. I'm looking at Greg over there who will say, I can never ship a product. And I'm looking at the other thing. So I'm looking at the other thing. So Linux kernel, because we know the vulnerabilities in there that we cannot fix. By you. Anyway, so this is one of the quirks. We need to ship software, so digital products, secure by default, minimize data processing to limit the attack surfaces, and we need to provide security updates along the lifecycle of the product. Many of these things we would clearly support if the customer is handling. If you find a vulnerability, you need to fix it without delay, perform regular updates and security reviews, disclose exploitable vulnerabilities, and provide vulnerability patches to users. Now, keep in mind that all sounds great if you're a business, but as I said already, this can be the responsibility of an upstream foundation releasing a container runtime. Yeah, and even for a business, it's vague. But this is also vague because I'm just giving you an example. And vulnerability reporting, actively exploited vulnerabilities need to be reported to the European Union Agency for Cybersecurity within 24 hours. So, one day, you have documentation obligations, a description of the design, development and vulnerability handling process, and assessment of cybersecurity risks. You need to say which harmonized EU cybersecurity standards the product meets. Mind you, they don't exist yet, but that will come. And a signed declaration of conformity, that these things have been met, and a software bill of materials documenting vulnerabilities and components in the product. Last bullet is a bit unclear because it's required for part of the products, but not for all. But let's expect that long-term three months, three years from now, software bills of material will be required. So everything I gave you so far, besides my snarky undertone, was just the summary of what is written in the text. I would now like to give a brief assessment to try to explain why you were worried about this, if it's not clear yet. There are many concerns from all sorts of stakeholders. There is this exclusion of non-commercial open source development from coverage in the CRA, and I think if there's one topic that we've spent hours of group discussions on how to improve this wording, it's that. There are product lifecycle requirements. Since they don't distinguish between open source and proprietary software, there could be a requirement that if we make a stable software release, that we have to maintain this for, I think, the assumed period is five years. Now, the open source development model is more, we make the next stable version that automatically deprecates the previous one. So we wouldn't maintain the old version for five years if we have a better new software. Record keeping requirements might be difficult for open source communities and the vulnerability disclosure requirements, they throw up a lot of worries, for example, what if we need to disclose something before a fix is ready? Or what if that disclosure comes into the wrong hands and therefore can be exploited, the security vulnerability can be exploited even wider and we can't fix it? But, yeah, in the end, for me personally, the key problem with this series is it does not distinguish between software development for open source and contributing to upstream and bringing a product into the market commercially along a normal supply chain. If you want to get more details on this, it's in this long blog post that I wrote last week, but that is really the key issue because of this deviation from well established norms, it can be that upstream open source communities are now responsible for security vulnerabilities introduced by commercial projects downstream, which is weird. There are two essential misconceptions in the CRA that we were not able to clarify with policy on lawmakers even though we tried to explain it. One is there's an assumption that the developers who know best about the software and its vulnerabilities and how to fix it are in the projects. And we tried to explain that upstream means that people contribute there, but that the developers are sitting downstream somewhere at all these commercial companies building products. They fix things as they build products and contribute back upstream, but that doesn't mean that upstream has developers. Yeah. And the other misunderstanding I would say is that open source foundations are really large, well funded funds for big tech. That might in cases and individual cases be true, but I gave this example of the Linux Foundation, if you divide the budget of the Linux Foundation, which is admittedly not small, by the number of projects we have, we can pay for not even two FTE per project. So certainly we cannot pay for security staff doing regular code reviews and security reviews on all the projects. So we are suggesting that besides the well-developed amendment proposals that the group organized by Open Forum Europe has developed with us, we are just suggesting that two things should happen with the CRA to make it work. One is that the responsibilities and obligations that it imposes must clearly be aligned with the structure of the supply chain, which means anybody who brings a product into the market is responsible for that product's attributes, not for less, but also not for more. And you cannot point to upstream and say, I consumed insecure upstream software, it's their problem if you introduce a product into the market. That's the first demand. And the second one is that the commercial entity placing a product must bear all the corresponding responsibilities. However, these are the demands. They're heard in Brussels, but they're not yet, they haven't led to changes in the text. Where does it currently stand? This is with the red arrow points to the trilogues. This is the next step. So trilogues mean the European Commission, the Parliament and the European Council, the member state representation are getting together and are hashing out the next version of the text in a three-way process. And we have briefed all three groups intensively, repeatedly and in detail. And we hope for good results. So, and by the way, the trilogues are supposed to begin late this month or early next month and then it goes to a plenary vote if there's a successful outcome of that. What do we at LF Europe do? We continue in this ongoing collaboration with the CRA Commission. We have an open forum Europe coordinates. Again, I can express how grateful I am for that work. We have a call to action on Linux foundation Europe web page. This has been updated last week, so if you read it three months ago, you can now re-read it again. There are two blog posts linked on it that one explains what does the CRA contain in detail that open source developers need to know. The first one is the potential policy implications. We will continue submitting our opinions, offering our advice to the trilogues phase. And on Thursday this week, as part of the open source leadership summit, there will be a panel discussion on the CRA where we have representatives from the kernel community, from somebody who provides a development platform, GitHub and others to say how this is going to work. So, we will continue to talk about this. Question. I can't elaborate on that much. Kieran could maybe do it more, but essentially for me, what I know is that the trilogues result in a new version of the text that all three branches do agree on, and that will be submitted to a plenary vote, and when this happens, I don't know. How the process happens, I don't know. Okay. If there are any questions, I suggest there's a coffee break coming up after this. We can meet in the hallway and discuss there. I would like to give a great brief rundown of the EU AI act, which is the other one that is raising a lot of interest. The AI act is a proposal for the regulation of the European market. The idea here is that AI systems, again available in the European market are safe to use by consumers and respect European law. It also aims to facilitate investment innovation in the AI, however, with strong governmental oversight. And this is a bit of a tight road walk, because you're trying to make the innovation possible. I think it's a bit of a challenge. Well, at the same time, protecting consumers from potential harm. The AI act applies a risk based approach based on application. So it doesn't look at or doesn't say what the technology looks like, it says what is it going to be used for. So the AI act is very important in human rights. Limited risks brings transparency obligations, that means you need to disclose details about what data you collect, et cetera. An example would be a chatbot. High-risk applications require an ex-ante, that means before it's made available, conformity assessment. An example here would be an example of how potentially harmful the use gets, the stronger the obligations get. And then there's an acceptable risk. The use of these systems will simply be restricted and not allowed. Examples, systems that exploit vulnerable groups. Or systems that can be used to facilitate the violation of human rights, et cetera. These systems will be able to offer disaster system in the market or to operate it. Enforcement here is done by the member states. The EU will set up an oversight board, the artificial intelligence board. And for high-risk systems, the responsibility for compliance will be with the member states of the European Union. And this may require access to an oversight board if you are in the high-risk group. And this may actually result in corrective measures may include fines, but also restrictions of use or the obligation to withdraw the system from the market. Yeah. So, what are the stakeholder concerns in this case? One is that the definitions are too broad, so somebody argued that the way the European Union describes what artificial intelligence is already is covered by sorting algorithms. Some groups say there is regulatory overreach, like it's too broad. Others, however, say that there is underreach and that it's not covering everything it should cover. So this is a good political debate to have. So civil rights groups call for wider prohibition and I think it's more business groups that say you're overreaching into technical flaws, like emotion recognition is not very well described and so on. So you see that there are plenty of concerns. One is, again, similar to the CRA, that by referring to existing standards you are actually delegating regulatory power to standards development organizations because it's difficult to argue against them if they promulgate the standard and people comply with them that maybe that wasn't the right way to do it. And yeah, there's a clear lack of individual enforcement, right, so as citizens it would be difficult for you to enforce. Legislative process here. Trilox also supposed to start in September. There's input from the council that would like to narrow the AI definition but there's also a suggestion and this worries many people in the open source community that you can cover general purpose and foundational models. Now, general purpose models are models that are generally trained on, for example, image recognition but don't yet have a specific purpose and those are the typical playing grounds of research and development, academia and open source. You develop something that is useful for potential class of use cases but it's not market ready yet and with this proposal, the AI act would already cover such like systems that are still experimental or in development. Yeah, so that was my overview of the AI act. We are before the trilogues. These are the responsible people. I picked the two, CAI and AI act to tell you that in the European Union we're developing strong regulation that will affect the tech sector and the European Union market represents one third of the global market. The assumption is that all this regulation will have a global effect similar to GDPR a couple of years ago. We talked about the CAI, we talked about the AI act, there's the product liability directive that will be updated, the regulation on standard essential patents and data act and they all affect what we do. So that's to explain to you why I spend time in Brussels and we have to deal with the AI. We're starting tomorrow. You can actually get stickers hopefully when Susan is back from the printers. I look like this. Fix the COA. There's a Twitter hashtag. And you can please if you are an individual developer this will create a tweet for you where you tag the European parliament and say please fix this. You can use this one. There are some responses and I really picked European industry responses here, not the open source community. So for example, Nenner Labs says the COA could create a series of unintended adverse consequences to the security and stability of open source systems. Faudia asked the German automotive association clearly a European industry association not known to be primarily a software source code developer. They are, but it's not their primary business. Yeah, and they say interestingly very clearly that the cyber security obligations should apply to the companies that bring fast to market and use it commercially and not to the developers who make fast source code available for your charge. So very much what we say is supported by European industry. Okay, I leave this here. Q&A will be in the break over coffee today. Thank you very much. Oh, and here is the link, links to the blog post. Thank you.