Hello, I'm Lukas Doktor from RedHead, from VIRT Team, and today I'd like to talk a bit about bisection and not just for Git. So first, I'm not sure how much familiar are you with Git bisect, who here is familiar with it? Like half-half, cool, that's a great beginning. So I'll do some short introduction for those who are not that familiar with it. Then I'll give you our usage and things that we were solving and may be reused. I'm trying to be really practical here. And then we removed to places where Git bisect actually didn't work for us and why we actually, in the end, had to create something new, but pretty much inspired by Git bisect. So bisection, what it is, in short, it uses interval-halfing to quickly find the way where things changed. In Git terminology, you have a good commit or a bad commit, and you want to quickly find out which commit in between caused the issue. So you start in the middle, there is a cut, so you start in the middle, and if the result is same as here, you jump to the right into the middle of the range. If it's the same as so on the bad side, then you jump to the middle into the left. Bear with me, it's not exactly great on the picture, but plus minus. And then you keep jumping until you find two commit parts where one is good, one is bad, and return the first bad commit. By the way, bad doesn't mean it's bad, it just mean it has the same output as this one. As this one, and not as this one, okay.  Since then you can tag a certain commit as good, bad, or skipped. Skip is very important, I'll talk about it on the next slide. And once you specify one bad and one good commit, bisect will automatically start checking out the commits that it thinks you should check next. Afterwards, you can manually set that, okay, this one is good, this one is bad, and you know, keep jumping until Git is happy and tells you, okay, this is your first bad commit. Alternatively, you can use git bisect run, which where you can just hand it over a script or a command line. It will execute that script on each revision it thinks needs to be checked out. And based on the return code, it either assumes it's a good result, it's a bad result, there is a skip resident code of 125, and everything above 128, including, means a critical failure, which means interrupts. So don't be scared, like if something interrupts immediately and you don't know why, it's probably because it returned minus one, for example, because it's above 128. And you can address the issue and resume the bisection from there. Afterwards, you can use git bisect log to see whether it's sensible, because sometimes Git can wander off and git log is useful for that. I mentioned skip is very important. This is because bisection is fast method to converge, which means take this example, when you start on this commit, and immediately this one fails, you leave out this part and you never touch it, because it was bad, right? You can skip this, never look at it again, which means you jump here and here and return this as to be the first bad commit. In reality, if this was not related failure, it was, for example, a setup issue, and not a real failure of this case. Instead, what you could do is you can skip the commit, you can say, okay, I wasn't able to test this one commit. What Git does is it jumps very close, tries that commit, if it works, it jumps to the right, to the right, to the left, and finds the first bad commit. So it's important, you can use it for, for example, setup issues or for unsettlement issues, like let's say you have a certainty level and you say, okay, I'm really not certain whether it's failed or passed, skip that. Worst case, you can just bisect it again without that. The sample workflow looks pretty much like that. We will need that in the second part of the presentation. So you start a bisection, you can give it a bad commit and good commit, and then just run it by section. Where the script can look somehow like this, it could be just a simple wrapper, where you don't need to check out the commit because Git does that for you.  Why? Because Git doesn't know anything about how to deploy your application. So sometimes people just forget about this and you can see how easily you can just skip this commit if this fails. Unless it's expected, then you can just return, for example, one.  You don't need to read this slide, just focus on the colors. The red lines means lines that you manually enter. Yellow lines is the output of bisector, which tells you, okay, I'm now on this commit, I have those many revisions left to test, et cetera. So you can see how it's progressing, for example, if it takes too long. And then you have blue output, which is the output of the script.  You can perhaps guess how it ends up, right? And in the end, what Git tells us, okay, there are only skipped commits left to test. What it means? I had actually skipped commits, I had a good commit, then I had a couple of skipped commits and I had bad commit. So Git won't test those skipped commits again. Why? Because they are skipped and it's on you to decide like which out of those three commits were the first failure. So pretty useful. Good thing, like note about merge commits. It works, it descends them pretty well, so you don't need to care about that part. Everything works seamlessly. Git by sec log, again, no need to read that now, but it's just there and it's available. Now, if you remember, I mentioned I'm from Red Hat, from Vert Team. And actually the project I'm working on is the performance QMU CI. And it's called CI, except each build takes 8 to 12 hours, which means I cannot really afford running a CI, which means per commit basis. But I'm faking it pretty well, nobody actually noticed it because I'm running daily jobs and sometimes weekly jobs. And in case of failure, I just rerun the same test but with limited set of tests, using Git by sec to speed up the process. There were three little issues with that and I solved that in the Czech script and I think you can inspire by it, that's why I'm here. First problem was I mentioned performance testing. So it's not a feature testing, which means I don't have good, bad, I just have one throughput and other throughput. So how to deal with that? You'll see on the next slide. Then reproducibility is an issue, even though we use usually five samples and use the middle one to improve the reliability, it's still not that reliable. So I usually use two other three modes but if the reliability is under 50%, we can for example switch to does it fail in three consecutive rounds, et cetera. Helps pretty much and can be implemented on the same place. Second thing we do is I related to the good and bad part because we are actually reusing the already assessed results to further improve the like next assessment. And last but not least, not just with perf testing, but sometimes you may want to plot some outputs and it's good to have them sorted according to Git log and not according how it was jumping with Git by sec. It's pretty simple but maybe not that obvious so I'm including it here as well. So this is a part of like slightly simplified part of this file from our project and it basically shows how we drive the execution. Again, you already seen that on my slides before except we don't specify the revisions here. We just check out the good revision. Then we run our check script telling it this will be the good baseline. That's important. You will see how it's treated on the next slide. And the result of this is if you get two directories, like directory one is called good one, directory two is called good two. And in there you would find JSON results with multiple throughputs or whatever is currently measured. Then we tell Git that this one was actually a good one. We check out the bad commit, do the same except we tell the check script that this will be the bad baseline and it creates bad one, bad two. Again, with JSON results. Tell the Git that this is bad which means we are ready to run a by-section. We run the by-section this time telling it okay, don't just run the test but also check whether they were closer to good or closer to bad. And afterwards generating a report. So this is the by-section script. Don't try to check which language is it. It's like simplified to fit into slide better. But what we do is we execute run perf which is the tool we use for testing that generates current results using this suffix. And if it's a good or bad which means we're generating the baseline we simply just run it again with the suffix of two, generating current result two and afterwards we just move the results which means we use the current result and move it to the name good or bad using the same suffix. So all files or directories that are called current result we just move them to good one two or bad one two. That's it. So that's the baselines. Next we run the check part which means we are not in this branch so we just skip this one, right? So we still execute the run perf get the current result one and then we execute a tool called diff perf that understands the directory output so it looks at all directories called good and g and bad and b and creates two groups of results. And it tries to assess whether the current result one is closer to here or closer to that. That was the first implementation now we are actually using standard deviations to assess which is more probable but works the same way. I mean you can just inspire by places where you can do that. After and yeah, the return code is zero or one, closer to good, closer to bad. So that's the first questions like how do we check whether it's good or bad? We just looked at which is probable, which is more probable. Is it like more likely to be good or more likely to be bad? Then we execute run perf for the second time. Remember two out of three mode, get the return two. If they match, which means we are done. No need to do anything else because two out of three why would you execute the third one if you already know that two of them are matching. But if they are not matching, we need to execute run perf for the third time based on our return code on this one because if you already have one good one bad, the third one cannot have a third state which means it will be closer to one of those. And afterwards we move the results but this time the name will be the index, like a global index like one, two, three, four, five, six, seven, eight, whatever, one million one. And we suffix it with B for bad results and G for good results. This is very important because we need to distinguish which are goods and which are bad and need them sorted for the report. And the suffix is also important because here, you may have noticed that I don't look at only for good results but also for anything suffix with G which means in the next round I will include all those results that were assessed as good. That includes those results that did not originally look like good ones which means in the next step, even though they previously were assessed as bad ones, can be in the group of good results and further move the good results likely to bad results. This worked well for us and significantly improved the base section unless we had an error at the beginning. If you have error at the beginning you can just rerun that again. But if you don't, as we go, we further improve the standard jitter that is acceptable for us. And afterwards, we exit based on the return code. In the end, I mentioned we are generating new results. So again, it's very simple. You can either use git log and try to match which commit belongs to which of your results. And it's kind of tedious, especially with merge commits where you can have those commits in a weird order. But you can just stop and think. And if you start here, and on good result, you jump to the right, into the middle, so you're not jumping over anything. And on bad result, you jump to the left. What you can do is you can just take all good results, leave out the bad ones, and let them sort it as they go, like first, fourth, and fifth. Then you take all bad results, leave out the good ones. And because you're jumping to the left, you need to reverse the order. So you take them in a reverse order, which means you have third bad, second bad, and then you have the bad results. It as simple as that. And the result is like, again, no need to understand everything. The main thing you can see here is we are jumping from left to right, which means we have all those commits that were good, and there are all those commits that were bad. And like four tests not important for this presentation. I'm just demonstrating that it works and it really draws the line. So that would be the introduction to git bisect, and some goodies for you if you already are using it. Anyway, where git bisect didn't work for us is mainly downstream. And it's mainly because we don't have a git to bisect over. We just have a list of nightly bills revisions. And it's solvable. I mean, imagine like after two weeks finding out that something is wrong. Sure, you can spawn a job and you know, run 14 times to find out that, okay, this nightly bill actually caused the regression. If it's enough, that's good. But we can usually see like, for example, 20, 30 packages that were updated. And sometimes you can guess which one caused it. But sometimes there are so many changes that you can't really say who is responsible for the failure. So what we would do is we would just provision the old restore, try to install a package, you know, one by one, okay, it works, doesn't work. In the end, you find out that this is our sentence, so you can rerun it again. Then you find out that you need multiple packages together to actually get this failure, like you need to QMU and a LibWord change in order to reproduce. And it's quite chaotic. For years, even before PerfCI, I was looking for a tool, and if you know of any tool that would allow something similar, like git bisect but not on git, I would love to hear about it, but I fell to find one. So I just said, okay, enough. I have to do something about it, and I did that. And by working on it, I mentioned we have usually multiple packages, and they are independent. So I don't need to just bisect whether this package is important, but I also need the combinations. So I said, it would be nice if I can bisect over multiple independent access. And, you know, since I'm reinventing the wheel, let's edit as well. And here you can see the usage is pretty much similar. I mean, why would I reinvent that, right? I just reuse what git already does. So the command line is similar, except you need to specify all the arguments yourself. I have some helpers, but for this, let's try that. And you can see that this time I used the same commit range and in the previous example, but on top I added two more access. I said, okay, but we changed multiple things, not just the git revision, but in our CI, we were so brave that we changed revision and some complexity and some test suite, for example. And we changed it all simultaneously so we don't know what of those things actually caused the regression. We need to tweak our script a bit because bisector doesn't know anything about git. I mean, it's independent project. It uses list of strings. So you need to check out the commit and skip if it doesn't work. You still need to deploy your project and then you need to run the project and maybe you want to pass those extra two access as two extra arguments, right? So let's see how it's gonna work. Again, it's no need to read things. It's just read, you need to specify all the commits that's the only difference. Then you get a summary, which I find pretty nice because you have multiple access, so it's not always obvious how things will look like in the end. So you get the summary. If you are happy with that, you just run the bisection and you can see again some yellow and blue outputs that are changing, changing. We have more access, so more variants. And in the end, it will tell you, okay, first bad commit is this one. Unfortunately, we don't list all the skipped ones to be delivered. And it tells you that we ended up in nine steps and the failure was caused only by the access zero. If you remember, we had three accesses. So the first and second accesses were useless. They didn't change anything because they don't do anything. And only the first access, so the git revision method in this example. The looks look slightly different. I can compare it here. I just shrink the shells here. So this is the git log. This is our log. I mean, you would probably guess why is because if you use arbitrary strings, things can be pretty long and you wouldn't actually guess anything from that. And second, we use multiple access, which means escaping that so we understand which revision that was is hard. So we just use serial ID of, I mean, index of that item and separate that by minuses. So what do we have support currently for? For the arguments, comma separated list. That's pretty simple. We do have a support for Python like range. More importantly, like we don't use that, but what we use is the URL thing, which is very simple HTTP parser, but it works well with Koji or brew if you're familiar with that. You can just, you have a page where you have all the brew builds and you can say, okay, I'm interested in all revisions between this build and this build and it will give you links to the brew builds. And you can easily consume it in your test suite, install this brew build and use it. So this is what we use 90% of the time and the rest of the 10% is the beaker helper, which gives you a distro revision.  Now for arguments, I already showed you this part, right? We run the suite and it automatically injected all the access, like keep changing the values of those arguments, like first, second, third, like repositional arguments. Alternatively, if you don't want to use run and you want to do it manually, you can use bisector arcs to get all arguments or access an index of the access you are interested in and it will give you the value, the current value after you check out the different value, it will give you a different value again. Alternatively, if you just need a wrapper, so why would you write for a wrapper? You can use your templating mechanism and use the check run instead. Last but not least, we have the multiple access thing which is interesting, but I don't think it's the best way but it's systematical, which means it works for me. Imagine a situation where you have actually eight kernel changes, eight libver changes, eight Qmer changes, and eight BLKIO changes. What a coincidence. So you know that on index 0000, you have the good versions, right? You know that those are tested, so you don't test it, like you believe the user. Then you have a bad revision, which is the last of combination they actually gave you, right, the 77777. So what do you need extra, unlike in git bisect you have multiple accesses, so you actually need to know whether the current access is useful.  So to save time, you start with all that, then check out the first access and say, okay, let's try whether these accesses actually affect something. So in here you can see that previously 777 was bad, now 0777 is good. So there is something happening on the kernel front. So you check out the third one, fifth one, fourth one, and you now know that the fourth one is the first bad, which means the 4777 is bad. We can build on that. So we switch to the access one, do the same. Again, it's a good one, which means, yes, libvert is also like a suspect. So we bisect libvert and find out that, yes, we have the first bad on the index five. So we can check out the next access, so like 4, 507, and see nothing changed. It's still bad, which means this access is really irrelevant, no matter what you do. I mean, maybe somewhere in the middle it would work, you don't know, but it's likely that if before it worked and now it doesn't, nothing changed. So we can skip this one and not investigate it at all. That's like a slight speed optimization. Then you need to check out the next access. And again, you're using the first bad, which is in this case, zero. And you find out that the seventh is the first bad here. So in the output, because you don't have any further access to investigate, the 4, 507 is the first combination that is bad. What does it mean?  What it means is that if you use Kernel, Libber, Kimu and Libby LKIO with 3, 507, it will work well. 4, 407, it will work well. 4, 506, it will work well. But 4, 507 is the first bad combination, which means first, second, and third, and fourth access, like the Kernel, Libbird and Libby LKIO changes are needed together. Note, when I actually started with bisector, I used different approach and these kind of failures were pretty hard to find by that way. I mean, they didn't look that nicely, but all kind of failure worked well. So if your workflow is likely to use all kind of failures, feel free to contact me and we can bring it back, but it was just prolonging the bisection. So I'm happy with this one because in RCI, this is the only thing we are looking for. So the key takeaways are, Git bisect is cool. If you're on Git, don't even think about anything else. It's cool, I mean, don't use anything else. Git bisect is fine, but maybe you can inspire by some of our goodies that I provided you here. If you're not on Git or if you want to, for example, bisect multiple submodules because they tend to break as well, you may check out our project. You can add the Git provisional, so you don't need to specify all the revisions in between and it can help you with bisecting over multiple arrays or just simply over things that are not Git revisions like nightly builds or your images, it could survive that probably. Just know that it's like early beta stage which is good and bad because you can join and help me and improve the tool. I know that skips are not that well implemented at this point, but in terms of good and bad results, it works pretty stable and we are using it in our pipelines. So, any questions? Yes? This is on you. This is a very simple project, it does, POSIX like, you don't do anything you are not supposed to do. What Git bisect does, oh, sorry, what bisector does is it will just give you, okay, use this string. In our case it's, for example, the brew build like link to that kernel. What you do afterwards is on you and we are storing information in hidden files so you can reboot the machine freely if you want to. So it's on your checkscript, what do you want to do? Basically. And yeah, the question was whether I can reboot the machine and, okay, I'm engine now. Okay, there was another question there or no? No, no, one slice. Okay, so what did you? You mentioned that you might not know this part. Uh-huh. How do you bring in the history? So first question was whether we store all the information what was good and bad. Yes, we do because if it was, for example, sparse access, sometimes you don't need to test that again because it's still the same. And besides we need to show the user the Git log, or I'm just keep calling it Git log, it's bisect log but it's the same log. So we are storing that information. And second question was what happens like when we are bisecting improvement and then following by a regression. If you don't catch it, which means you are here and you are here and you don't see anything, you just don't know anything because it's bisection. You don't test that, right? How would you know that it happened? But if there is like, like if you have certain level, certain level and in between there is a spike, then again it's like slightly outside of the scope of this presentation but what we do is we start the bisection and this will be actually so unprobable that it will probably be this one. I mean, we were trying to do the skip things but we haven't had time to do that yet but so it would be best to skip those obviously but we are not doing it at this moment. And one more thing, we previously and sometimes like if you have like really oscillating values that the probability doesn't work, we just use the nearest neighbor. So obviously this one will be closer to that one. But I mean worst case, what we usually do, I mean that's why you have git log or bisect log for because you can see that okay from here it looks somehow odd. So you can rerun with a shorter range which is what you should probably do the best. Okay, I think there was like to skip them in advance because you know, because you know that, okay. So if I understood the question correctly, you have some git revisions, right? Like revisions and you know that some range should be skipped because you know that they can't be tested, right? Yeah. Okay, with git bisect you can do that because before you start the bisection and even if you start the bisection, you can always use git checkout to check out a certain commit and you can say, okay, git bisect bad. Git bisect skip, sorry. And then you can check out the other one and get into that the same.  With bisecter, unfortunately, not at this moment. So git bisect, yes, we don't at this moment, few, three, two, commit it. By the way, it's Python project so you can just import the project and use it in your project as well if you're interested. You don't need to use the command line. For it, for best scripts. Any other questions? Okay, there. Yes, I thought about multiple different use cases. Like for example, to test it, I just, you know, try, for example, booting the biggest machine with different kind of sizes of RAM. It behaves nicely. So yeah, it could be used for some kind of tasks as well. But I mean, you name it. Yes, I forgot to repeat the questions. I know. So yeah, the question was whether it can be used for something else. And yes, there are certain ways. Like for example, in tuning, you can search for different arguments, although we're jumping from one axis to another so it may not be optimal for that case. But again, open source on GitHub, so you can contribute. Contribute that, like different modes are welcome. Anything else?


Good afternoon. Welcome everybody and thank you very, very much for joining us. Today we're really honored to be producing a wonderful series on addressing racism in real estate. This is our inaugural launch. For this we have been very, we're very grateful to the Office of Dennis Mitchell, the Vice Provost for Faculty Advancement for a grant that we received and then the wonderful people who worked on this is particularly Ed Potiet and I will introduce Ed. He is our host today and also Diane Brownch who is an alumna of our Mesred program and is helping us in this initiative. So if I may I'll introduce Ed because Ed has been with us almost 10 years as an adjunct professor absolutely at the heart beat of our program. He himself had studied urban planning, Yale Economics undergrad and then urban planning at Hunter College and has proceeded himself to do it. He's been out there developing affordable housing. He's developed over more than a thousand units, 300 million of real estate in the Metro New York City area. He has, this is his own development company and he focuses on affordable housing. At the same time he has helped us and shared his insight, understanding and experience with our students over these many years providing them with an education that not only tells them how to do the technical aspects of creating affordable housing but also introduces them to the notion of the community spirit, what this actually means for societies and how to be part of a positive contribution in that way. Ed himself has invited our guests today and he is going to introduce them. He's just been tremendous at getting very, very incisive people to talk to us and we're all here to learn and explore and thank you very, very much Ed for doing this. Patrice, thank you. Thank you so much for that introduction. My name is Ed Potate. As Patrice mentioned, I'm an agent professor here at Mesred. I'm delighted to be here today and I do want to talk about the topic systematic racism in real estate. I first want to discuss though why this topic is a little personal to me. I was born and bred in right by the university in Harlem. I grew up in the 80s and 90s during crack epidemic that happened in Harlem. But the funny story is no one ever told us that it was a crack epidemic. So it's just how we grew up. So it was much different than it is now, very rough, a lot of crime, a lot of drugs. But I also have the benefit of going to private school in the city, a school up in the Bronx called Horace Mann. And then afterwards I went to Yale, graduated from Yale. So I really saw two different sides and lived in two different worlds. And so my entire professional career has been devoted to issues and notions of social equity and equity and fairness. Because growing up, I didn't understand why Harlem was the way that it was. I didn't quite get it, but that I knew that it wasn't exactly correct. So I spent my entire professional career trying to answer some of those tough questions. Why is there difference in economic opportunities for poor black and brown people versus others? Why are housing opportunities different for different types of people? Why is our criminal justice system different for different types of people? Just really trying to figure out some of those issues and then really trying to understand how to make those issues more equitable. I've devoted my career towards housing and for the past 20 years have been doing housing development throughout DC. Just to give you one story though, talking about growing up way back when I did, I had friends that lived on the Upper East Side. I went to a private school, had friends who lived on Park Avenue on 91st, 92nd Street. I lived and grew up in East Harlem, which what's crazy to me and what was crazy to me is East Harlem and the Upper East Side, the Upper East Side, probably one of the wealthiest neighborhoods in all of New York City right next to East Harlem, which is one of the poorest neighborhoods in all of New York City separated by five or six blocks. So I would walk home from visiting my friends who lived on Park Avenue, walking out Park Avenue to 97, 98th Street, 110th Street and seeing that massive disparity really in a 10 block neighborhood, galvanized me to then really try to answer some of those questions specifically towards housing and equity there. But before we talk about systematic racism and real estate, let's talk about systematic racism in general. And I want to spend a moment talking about the Black Lives Matter movement. I am so proud and I'm a now middle-aged black black man. I'm so proud of those kids and how they spent the entire summer galvanizing our country to understand why racism is a problem and something that why our country has to deal with it, not tomorrow, not years from now, but right now. And the issue around George Floyd and how malevolent that was in terms of the randomness of his life being taken is something that most black people can empathize with that most black men have had to deal with. I was 16 years old still trying to figure out what college that I wanted to go to visiting various colleges and me and a friend of mine, a white friend of mine, we went to Georgetown just to see, okay, maybe we may come here after we graduated from high school. So we're there to 16-year-old kids checking out the campus. And at this point I had never dealt with racism before I think at that point. Visiting campus we saw two police officers on the corner. And so we go up to them, you know, good 16-year-old kids and said, you know, can we help you? Is there anything that we can help with? And the cops said, you know, well, no, there was a mugging here and we're trying to find the assailant that did that.  It wasn't us. We're just visiting campus. And so we start walking off. As we start walking off the cops say, stop. And so at this point, we're curious as to why the cops are talking to us like that. And I think that my white friend kind of got what was happening more than I did at that point. I'm really in La La Land. So he steps up and says, we're visiting my sister who's here on campus. We're from New York City. And we're going to go back to my sister's house. So we start walking off. And then the cop comes to me and says, drop your backpack. So I drop my backpack. He opens it. I'm 16, right? So nothing but sneakers and books in there. So I go to pick my backpack up and he says, you fit the description. Now, every black man knows what that means, right? And so he proceeds to tell me that there was a mugging down the street near campus.  So they put me in handcuffs. They put me in the back of the police car. And as my friend now comes to intervene, that they said, no, this is his problem. This isn't your problem.  So now they drive me off to some other part that's near campus. The woman who had gotten mugged was in an ice cream parlor. They turned off the lights in the ice cream parlor and put floodlights on the corner. So she could see out and I couldn't see in.  Luckily that the woman did not identify me as the mother. And the cops are right that you're lucky. And I'm lost on campus now, but they took me out of handcuffs and I walk. So, you know, issues of police brutality. Again, it's something that's obviously personal, but personal, I would argue the most black men in this country, obviously not at the level of what happened to George Floyd. But I'm so proud that those and I'll call them kids decided to say the the America that is is not going to be what it will be for us and we're going to make this country stand up and make sure that things are different than it was. Whereas people in my generation unfortunately had gotten used to the way things were. But something else that the Black Lives Matters protest brought to the fore to the lexicon is this notion of white privilege. We've been talking about racism in this country for centuries, but we hadn't begun talking about white privilege, and you can't really discuss racism without talking about white privilege that they go hand in hand. So when you deny a certain group a thing when you give them less access to health care and housing, education, and capital creation, you also give more access to others. Right. So this notion of racism and white privilege literally go hand in hand. And the reason that it goes hand in hand is I think everyone on the zoom call would say in the abstract, you know, racism is a bad right. However, the reason why racism is so sticky. It's not that it's just a random bad thing, but it requires that certain others give up the benefits that's transferred to those that don't experience racism. Let me say that again. The reason why racism is so sticky is that others have to give up the benefits that are transferred to them, those that do not experience racism. And that's why this notion of racism and white privilege go hand in hand. I'm excited that you're here today because pretty soon you're going to be freshly mended, I really educated Columbia graduates. So even if you will never experience racism in your life, and I hope that you don't, pretty soon in six months, couple of years, maybe as soon as you graduate, you will be in positions of power, you will be able to make decisions for institutions, you will be willing to empower, and you will be able to make decisions for the greatest society and so that I hope that as you start to step into that place, that you're cognizant of systematic racism and white privilege and making decisions that are equitable, right. So that's why we're here today. But we're here at Columbia. You didn't come here to listen to an impassioned speech about the ills of racism. So I'm not going to give you one. You can get that somewhere else. This is Columbia. So my plan for the next 20 minutes is to quantify actually how this thing works, right. Not to talk about it from a qualitative point of view, but to actually look at the cost of systematic racism to black and brown people and the corresponding benefit to systematic racism and white privilege to others, all right. So let's dive in. In front of you that you should see a screen that, let me get somewhere, that talks about income and wealth disparity by race. You have on the left column, black, white, and on the headline columns, you have income and wealth, right. Blacks make roughly black, medium income in this country. Household income is $58,000 a year. Black household medium wealth is $17,000 a year. And blacks make up about 17% of the population. For whites, white, medium household income is $89,000. And white, medium household wealth is $171,000 a year. Whites make up about 72% of the population. Next slide, okay. So here's where it gets interesting, right. If everyone was equal, if there was no racial disparity, if we were all treated exactly the same, the weighted average income for blacks and whites is $74,000. And the weighted average wealth for blacks and whites, if they were one in group, would be $126,000 here, right. Here's where the next slide gets interesting. Now let's talk about the cost of systematic racism on black households. And let me go back to the first slide for a second, because some may say, well, wait a second, the numbers for whites may be skewed by, you know, guys like Jeff Bezos and Elon Musk that are worth $5 trillion, right. These numbers take that out. Because we're dealing with medians, it actually takes out the outliers such as the multi, multi, multi. So now let's go into the cost of systematic racism. The average black household income weighted average, I'm sorry, excuse me, the average black household income is $58,000. The weighted average income from the last slide is $75,000 for blacks and whites, if there was just one group of people. Therefore, the cost of racism to income to blacks is $17,000 a year to the average black household. And now it's worse when we talk about wealth. The average black household wealth in this country we saw in the last slide is $17,000. The weighted average household wealth is $126,000. That means that the cost of racism to the median black household from the wealth point of view is $109,000. Now for a different presentation, we can talk about, especially on the wealth front, whether we're talking about slavery or Jim Crow, why that is, but that's the cost of systematic racism. So when you hear that term, yeah, we all know that it's horrible, but it's actually tax for lack of a better word on black families. Again, though, that you can't talk about systematic racism without talking about white privilege that they go hand in hand. So let's look at the benefit of white privilege and what that cost benefit is. The average white household income from the last slide or last couple of slides is $89,000. Weighted average income, if blacks and whites were just one group of people and there was no difference at all, $75,000. That means that the benefit, the economic benefit of white privilege is $14,000 a year for white households. Average white household wealth is $171,000. Weighted average household wealth between blacks and whites is $126,000. That means the benefit of white privilege to the average white household is $45,000. That's the cost of systematic racism. That's the benefit of white privilege. The reason why systematic racism is so sticky is that no one ever wants to give up anything. No one does, black, brown, purple, blue. No one ever wants to give up anything. And so whether we are talking about the civil war that happened because there was a taking from the South, whether we're talking about Jim Crow that happened until 1960 or 60 years later until now, the reason why racism has been so sticky is because of these benefits that, again, no group wants to give up. And unfortunately, whites would have to give up in order for us to have, again, an equitable system. All right. So now let's talk about systematic racism as it relates to real estate. I'm going to talk about red lining and what that means. My dear friend William Allen, who I've dragged on this panel and who is a very prominent person in Harlem, has been very active many, many, for decades in Harlem, in Central Harlem, will then talk about environmental racism and give you a case study as to how environmental racism has impacted the Central and West Harlem community. So let's talk about red lining. This is a map from Atlanta about 90 years ago. FDR, when he created his new society, made a lot of great programs. He also created a housing program, H-O-L-C, and I believe it stands for, give me a second, trying to find it. The Homeowners Loan Corporation to help give credit to Americans so that they can buy homes. What this group did, though, was around metropolitan in the U.S. metropolitan areas, they created maps, areas where it was better to land and areas where it was worse to land, and they would put those areas in red, i.e. called red lining. So that's where this notion comes from. So this is a map from Atlanta, which was created in the 1930s, where they redlined parts of the city to let lenders know, yeah, don't land in those areas, but you can land in the other. And that's where this notion came from, comes from, and it's been, I'm going to stop here for a second, and it's been here ever since. Now, after the 60s and 70s, it was because of the civil rights movement, and throughout the 70s, institutions were forced to begin lending in black communities. You don't see specifically any more institutions saying we aren't going to lend in black neighborhoods. Getting back to that wealth creation gap, though, wealth has created over generations.  So we don't see it, though, so much now as obvious as it was back in the 70s and back in the 60s.  So that is still a form of red line, not as obvious as it was 40, 50 years ago, but still happening today. So let me give you another example of red money, and I'll go back to the share screen. All right. So who is Ernst Valerie? I don't know, average black guy who, like a lot of black guys shouldn't have access to credit and should have a hard time banking. No, Ernst Valerie is a graduate from MassFred in 2006. He's a lecturer, or I believe has been a lecturer at Columbia, working with students from previous years. And for us now, in capstone, yep. Yep, in capstone. Thank you, Patrice. Both more developer, Ernst Valerie files class action lawsuit against Wells Fargo alleging racial discrimination. Now, let me give you this story. And I like stories. Let me give you this story. Ernst is working on a deal. Ernst gets a check from, I think, the state of Maryland for $3 million. Ernst goes to deposit those funds into his bank account, his own bank account. And when he goes to do that at Wells Fargo, I believe the branch manager or a teller who then talked to the branch manager said, you know, we can't let you do that because we're not sure where those funds came from. All right. We have a different process. You can go through our merchant system where merchant associate system where we'll take out a few points for processing and verifying you for processing and verifying those funds. And then we'll let you deposit those funds into your own bank account. So systematic racism and real estate, real live example and not, again, some random guy that although it would still be bad if it happened to a random guy who we didn't know, but no, let's track Columbia because of the color of his skin, did nothing wrong except being black. And then to deposit funds into his own bank a account, well, so yeah, that we need to verify you and take a few points from the funds going in to then make that happen. So systematic racism and real estate is real that red lining still happens in terms of access to credit, access to banking still happens and happens even if you graduated from Columbia, it still happens. So with that being said, that I want to pivot now, William, and I hope that you're there. William, how you doing, sir? So we're going to talk about next environment of racism, another very serious issue that impacts poor communities of color that's related to real estate. William Allen, again, is a friend. He's worked for numerous community groups throughout New York City. He's been involved, very involved in housing development in Harlem, housing development in the Bronx, works for healthcare providers in the Bronx and Jersey. I believe William that your last notable position was you were a national director for Al Sharpton National Action Network, and he will be our next city council member here in Central Harlem. So with that being said, let me turn it over to you. Thank you. Thank you, Eddie, and thank you, Columbia University, and thank you, Patrice and Diane for having me. In preparation of joining today, I like being a good student too. And like Edward, who I call Eddie, because I saw him grow up here in Harlem with my siblings on one 10th Street in Babu, I wanted to at least do some research. So the things that I know, I wanted to be able to put into some kind of context, right? And so I just wanted to say, Eddie, I did my homework. Here's one of the greatest books you can read about Black life and the 19th century to the early 20th century in New York. This was written by James Weldon Johnson, who was a prominent head of the NAACP. Great book, well written, and it really gives you a whole sense of the economics and politics of Black folks in New York. Another one I looked at was this one by Adrian Brown and Valerie Smith. I want to strongly recommend that folks take a look at this. And to give me some sense, I said, when did Black folks arrive in Manhattan on Harlem? And I'm thinking they arrived, you know, during the mass migration in the 1930s and 40s. But I learned we were here in the revolutionary days and pretty much was in Harlem in the 19th century, right? In fact, we arrived in this part of Harlem where Columbia sits, because Columbia, I believe, was somewhere else. It wasn't really on the West Side, it was somewhere else before it landed there. And this kind of book kind of helped me out. And this was written by Jonathan Gill, who actually also taught at Columbia University. A very good historical perspective. It actually covers 400 years of Harlem. Could you imagine reading a book about Harlem coming 400 years? This is the book. And then finally I want to thank Kevin Magruder. Kevin Magruder was one of my colleagues. When I was at doing development work at Harlem Churches of Community Improvement, he was the head of development for Abyssinian Baptist Church at Abyssinian Development Corporation. And he wrote this great book called Race and Real Estate, Conflict, Incorporation, and Harlem from 1890 to 1920. Could you imagine? 1890 to 1920. So all these things you've got to be able to put in context of these conflicts. So Eddie and I was talking about the Riverbank State Park. And how does it fit into all these historical situations? And so now we find out so in 1985, Harlem gets a new park. And people were a little happy, but it was at a great cost. This park is called the Riverbank State Park. It's now named after Herman Dennis Farrell, who's an, who's African American former assemblyman, right? Who had chaired the Ways and Mean Committee in the state legislature in the lower house in the assembly. And he was very, very powerful. And they named the park after him, but they didn't name the park out of him because he was, he was dying and they were to celebrate his life. He was brilliant. They were going to put this wastewater treatment plant in Harlem against the will of Harlem people, even though we had asthma and all these other kinds of illnesses. And the fact that a predominantly white and upper middle class neighborhood had rejected the project. So they said, you know what, let's find a neighborhood where maybe people don't vote and they have no power. They have no money. Let's just throw that them. And so here you had, you know, the state government say, hey, you're going to take this project and the project, Riverbank stretches about, we see counting here about eight city blocks, the Hudson River from 137th Street to 145th Street. And so one of the major concerns of resident at that time, and particularly a civic leader named Peggy Shepherd, who created WEAC, and WEAC ended up getting funded through this project to get more African American people of color into environmental justice initiatives. They complained about the orders coming from the plant in the backyard, residents initiated court cases to prevent the building of the treatment plant.  And it has a concession to the community through Denny Farrell's negotiation, the city promised a 28 acre state park to be built on top of the sewer plant. I mean, you can't get no better than that. And in seven years after the sewer plant opened, the $129 million facility, officially known as Riverbank State Park, which today is called the Herman Farrell Riverbank State Park. It was the first of its kind in United States to be built on top of a sewer plant, as well as the first state park to be built in Manhattan, the fifth for New York City. And so Eddie wanted to talk about this as a planning study and as an issue of race, real estate, politics, economics, who had the power, who did not have the power. And here was a situation where a community was really forced to take this treatment plant and look like they couldn't get out of it because of Emmett Dillmaid and the power of the state. And they had a whole bunch of court cases and it seemed like those court cases were going nowhere. And so at the 11th hour, Denny said, okay, then you're going to have to give the community something. And so therefore we got this park, Eddie. Thank you. Thank you. Thank you. So great story, right? Isn't it an interesting story? It's a scary story because when you think about the health outcomes of folk that live in West Harlem and for those of you that don't know where Riverbank State Park is, it's actually right up the street from the university. So Columbia, let's say, is from 116th to 125th. Riverbank State Park is right on 145th, right by the water. So if you walk up 20 blocks, you'll run right into it. But when you look at the much higher asthma rates that are in West Harlem, or you look at my old neighborhood East Harlem, that's three bus depots, that services all of Manhattan and other neighborhoods don't have one. And East Harlem has the highest asthma rates in all of Manhattan and some highest asthma rates in all of New York City. It's not by accident. It's because these facilities that are dangerous to any community are forcibly put in communities of color, because other communities obviously would litigate for centuries to make sure that that doesn't happen. And so what does the city say? Let's go the easy route. We have to place these things somewhere. So we're going to place them in communities of color that are powerless to stop us from making that happen. So again, just to wrap up, if you look at redlining or environmental racism, these notions are not airy fairy notions. These are very real things that are happening right now to guys like Ernst Valerie, let's track Columbia. That's happening right at the street from Columbia Riverbank State Park. That's still to this day, William, is still emitting toxic fumes. What's happening right in East Harlem, again, that has some of the highest asthma rates in all of New York City. So I want to thank Columbia. I want to thank you, Patrice, for giving us the window to express these things because I think they are important. Diane Branch is not on this seminar, has been pivotal with me to organize these seminars. We plan to make these seminars monthly. Diane's going to be working on the next couple of seminars that will talk about other aspects of systematic racism in real estate. And my hope as we wrap up is, again, as I said earlier, you may never be impacted by racism. And I hope that you're not. But you will be because of where you are and where you're going to graduate from, be in a position of power relatively soon, making decisions for yourselves and others relatively soon. And when you do that, I hope that you think about these issues so that you're making the most equitable decisions and choices that you can for yourself and others. With that being said, Patrice, thank you. Thank you very much. Edward, thank you very, very much. And what tremendous insight from William. William, thank you for sharing that narrative, that historical perspective to show that these things are long rooted in our society. And now, even though we're talking about a sort of a broader city view, rather than just real estate development itself, real estate works within this context of this urban inequality. So very, very insightful for our students to see that this is what they go out and work amongst. And this coincides with Edward's class this semester. That's right. Absolutely. Edward's great class. So we're on a roll here, folks. And thank you very, very much for doing this and for launching it. And with such an impressive person such as William Allen. Thank you very, very much. Patrice, so there's a few questions if you don't mind. That's right. So there's going to be some questions. Now, would you like, would you like to respond directly to them or we'll, we'll, firstly, there's one, there's we can enter them in the chat room or folks can raise hands. Well, why don't they enter them in? Because I don't think, I mean, maybe you can see them, but I can't. So if they can't see the questions. How about I can go ahead and read the questions Patrice, unless you'd like to. That would be great. Thank you. So let's start with this one. I think it's a great way to start the conversation from Esteban. How can young designers combat these issues of systemic racism in their own cities? How can young designers now, because I can't talk to Esteban, I guess that the question is if you're an architect developer, how then would you then make that happen? First is what's done in New York City, which is a benefit to the city is we have the largest affordable housing program in the country by far. And what New York City does is that the design aspects of affordable housing is very strong. So for example, you can go buy in a affordable housing building in New York City, and you might think that it's a condo, because they are very strenuous on how these buildings are designed, so that although it may be affordable housing, a low income housing, it doesn't feel like it. So I would say one way, if you're not going to be here in New York, we're going somewhere else to make sure if you're designing projects to put as much effort and energy in that project as you would if it was a marketary project. And that way you make it equitable. Okay, so continuing on sort of a different line, we have a couple of questions here that are both about the numbers that you shared. So we have one question about the sources of the data and then also how are the numbers presented as the financial benefits of systemic racism annual number? So maybe if you could just talk a little bit about your process for gathering that data, that would be great. So the numbers come from the Brookings Institute that analyzed average and median in income and on wealth. I learned the difference recently, all of that I knew it, but I learned it again, the difference between median and average, because the medium actually takes out the outliers, which is important, because the average number is actually much higher for white households, but because there's the super wealthy that kind of skew those numbers. So that's where the numbers came from. Someone else asked a question about how do you define black and white? The current census, and I think that they get it right, is they leave out Latino as a race, which I think is correct. So you have black, white, Asians and Native Americans as the four major categories. Latinos can be black and white, so they're listed separately. Those people regardless of the color that I identify as Latino. So that's where the numbers came from. Great. So an additional question here, which I'm going to paraphrase a little bit, is about the sort of conversation around environmental racism and if leader Allen wants to join us back for this part of the question. Essentially what we're saying is that, or what we're asking here is, obviously there's this riverbank state park, and it has its environmental impact. We're asking if there are any follow-up studies to that. And then also, I think there is like a little bit of a conflation here maybe from about asthma rates or bus depots, different various components of environmental racism. Could you maybe talk a little bit more about how those things are studied and how those impacts are come to on the neighborhood level? I'm especially interested in this area and how that impacts actually your work as a real estate developer and how we might think through those issues in our own profession. Sure, that's a good question. I'll talk about the bus depots in East Harlem, and William could then talk about riverbank state parks. So two separate issues, started for confusing those issues. In East Harlem, there's three bus depots that are cited there. Those bus depots service all of Manhattan. Those bus depots could be anywhere. You could put them on the Upper East Side, you could put them on the Upper West Side, but they're all in East Harlem. Correspondingly, East Harlem has the highest asthma rates in Manhattan, and some of the highest asthma rates in New York City. I don't have on the tip of my fingers if there's been direct studies as to the number of emissions from the bus depots and how that's changed the asthma rates, but it's somewhat obvious that if you cite three bus depots in one neighborhood, and that neighborhood has the highest asthma rates in the city, that that's coming from the fact that those three bus depots happen to be there. William, are you still there or did we lose you? Because I know one's a busy person. I guess that we lost them, but with Riverbank State Park, I haven't looked at the health disparity specifically in West Harlem. What I do know is that in the 80s, when I was a baby, they were trying to figure out where to cite the sewage treatment plan that they needed an extra one in Manhattan. They were first going to cite it on the Upper West Side. The Upper West Side said, not over my dead body, there's no way that you'll put that for me. What they did is that they cited it not on the Upper West Side, but they cited it in West Harlem because they could. That's the story of the state park. Although it's a good thing that we have a state park, it's horrible that there's a sewage treatment plan next to a residential community. It's even worse that it happens to be in a poor community of color. Thank you for that. An additional question I think is super important is, how do developers build responsibly in Harlem with the neighborhood's history and the risk of gentrification with this conversation in mind? I have a question. Why is the anonymous A10D anonymous? Sorry. Okay, so anonymous. I think it's a little to do with our transmission issues. Okay, no problem. Sorry. They're coming through. Yeah, yeah. No problem. So I've spent a lot of time studying gentrification. It's had positive and negative impacts on home. The question is, how can you build responsibly given gentrification and given the impacts of gentrification? I actually gave a TEDx talk a few years ago specifically about this one issue. And it's really understanding that gentrification is a force, that it's a tool. It's not a good or bad tool. It's a question of how you use that tool, right? So for example, we have guns, right? And guns are bad in the hands of wrong people. But we need guns at times to fight wars that we care to fight. That's how I feel gentrification, which is it's a tool that can improve a community as fast as any other program. The question is, how can you do that and yet improve the outcomes for the local people living there, right? So things like rent stabilization, things like education on economic opportunities that are coming, and things like really proactively helping small businesses, local small businesses to be better ready when gentrification comes. Those are things that you can do to help gentrification as it happens. That I gave a speech to a bunch of planners and not way upstate, but in the Newburgh Kingston region recently. And they were dealing with this issue because they're going through their own way of gentrification. And one of the things that I implore them to do is you have to understand what you want for your community, right? Developers are just interested in building a project, making the money that they can and then getting out. Some of them want to do well by doing good, but they have so many pressures that they're really focused on getting that building built. It's up to planners, it's up to municipalities to really say, how do we plan for gentrification, right? Where do we want these new builders to go? How do we look after the local residents that are there? How many local residents do we have that are low income and are we providing enough affordable housing for those residents? So when I was talking to the planners in Kingston that I said, as this comes, you have to plan better. You have to understand how many low income households that you have and do you have enough low income housing for those households? If you don't, then again, use gentrification as it comes when that's fine to then also raise revenue to build housing for the low income households that you have in your community. And or if there are local businesses that are cultural icons for your community, realize that they may be under pressure from landlords in four to five years as the rents start to go up. So figure out what local businesses are meaningful to you and begin to figure out ways to protect those local businesses so that they can benefit from gentrification and not be overrun by gentrification. So those are a few recommendations that I would have as to how you can correctly use gentrification to help your community and not be overrun. Thank you so much. I think that these there's a couple of interesting questions we'll take maybe two more to end at two o'clock. So a few different issues being brought up. What do you think that the our policy changes that can empower developers to work against racial discrimination in housing and home ownership, particularly in urban areas? Policies that would stop developers from being bad characters or policies that would help developers be good partners. I'm not I'm not sure of the intent of the question. The intent policies that would help that would basically like how can we change the restrictions and regulations that we're working with in real estate to incite more equity in our community? Yeah, yeah, it's really interesting. I said earlier that I'm really proud of the Black Lives Matter movement because it really shook things up. And this notion of equity even when it comes down to our little community is being talked about a lot now. And there's a lot of cool things that are happening to then make that happen. And so for developers of color, we historically have had lack of access to capital. And it gets back to the earlier notion of that wealth gap, right? Many developers start by working with friends and families, raising capital. You know, our former president, Donald Trump started off by raising money from his daddy, right? So if your dad or granddad or uncle don't have wealth to then transfer to you, it makes it harder to get in the to then get get in the business. So a lot of financial institutions now literally like in real time right now are looking at ways that they can bring capital to communities of color, B of A, Chase, Citibank have all come up with multi-billion dollar initiatives on bringing capital to Black and Brown communities. So that the story is going to be told probably later on this year that there were things happening in real time now that are helping to bridge that. So it's very exciting now, all coming from what those kids did, as I'm calling kids, back last summer. And Edward, I'd like to just add that Ernst Ballery has launched his Equio Fund, which is specifically focused on helping funding for Black and Brown developers, young people in certain postcode areas, zip code areas and so on. And we're looking at assisting Ernst with that by providing the training in doing the development analysis and the financial analysis. So Ernst has launched that. It's great. Equio Fund will, I'll try and put it up on the on the chat, but private people are going to do it as well. And leading directly from that, I think this is a great place to end the conversation is the question is, are there specific approaches, specific developments, or specific companies that you think are doing really interesting and good work on this? Who are you seeing that is kind of moving us forward? Sure, sure, sure. So sorry for your shameless plug, but our firm has a very cool product that we're working on now on 124th Street in the in the heart of Central Harlem called Marcus Garvey Village, that we're building 330 units and two buildings. One's going to be all market rate, one's going to be all affordable. It's a $290 project, but what's cool is that we're using the proceeds from and the profits from the market rate project to be able to fund the affordable portion of what we're doing. And so there was a question early about policy and governments are getting there. New York is getting there, Seattle is getting there too, I think other governments will start to follow where they say, if you want to develop anything, you must have an affordable component to it. And once that policy is set, it'll force the hands of all developers to then begin to build more affordable housing in their projects of all types. Great, thank you so much. Thank you for this work and also we're really looking forward to the rest of the seminar in the series. So thanks everyone for joining us today, thank you Patrice for introducing and thanks again to William Allen, our new district leader. Thank you, thank you Wadewood, Professor Poetkin, well done, fabulous. Thank you so much.


Alright, let's jump right into things. First of all, definition. Recursion. Procedure calls on itself. Example. The tree. The seed creates the tree which makes more seeds which creates more trees. Another example. Humans. Human creates more humans which create more humans. One of your lines of code is procreation. So, why would this reality itself not be recursive? That the trajectory, the telos, is an auroboros. That the procedure of reality calls on itself, a.k.a. we make more reality. Okay? Let's jump into things from a perspective of thousands of years of studying metaphysics and consciousness. We've had the ideas of nonlinear thinking This is linear thinking with us for that long of a period of time. What does it mean to live simultaneously between the two? Can you hold both perspectives at the same time? In the sense of first and foremost, you are eternal, you are infinite, you are the cyclical time. Time being an illusion. Okay? First of all, and can you hold that at the same time of your biological clock ticking right now?  So, you have to hold that simultaneously with eternal time. Okay? Because what you want to do given linear time is you want to actualize your gifts into the world. Okay? So, we're going to hold those two simultaneously. Cyclical, eternal, infinite time being an illusion at the same time as my biological clock ticking and wanting to actualize gifts into the world. Okay? So, the more that you ponder the telos, the telos, the purpose of reality, the more you ponder the word infinity, the more you ponder the word eternity. Okay? The more you ponder the word recursion, the more you ponder or oboros, the more you get ultimate reality. There's a really good song that goes, you might say that we've been here before. Okay? Think about that. You might say that we've been here before. How many times has that happened to you via deja vu's, via all of the different scenarios that you've had where you think to yourself, is this an eternal return? Have I been here before? Why does it feel so familiar to me? Another way to think about this is automata, an orthogenesis. So, very simply put, that there is a automatically making, an automaking process, and there is an orthogenesis, a unilinear evolutionary process towards an attractor. Okay? What is an attractor? It's mathematics of what a complex system evolves towards. Okay? So, the recursion is at the Godhead, and that's the attractor, and the mathematics of our complex system is evolving there via automata orthogenesis. Okay? And you can think about this like John von Neumann, one of the smartest people who's ever lived, the universal constructor. Okay? And what does it mean to make an iteration or a mutation in that tape of that code that is evolving? It means doing something as simple as creating the capacity for humans to fly in the air. One human gets the imaginative idea from watching birds and goes, we need to do that. And the next thing you know, they're assembling an airplane, they're flying an airplane somewhere around 100 plus years ago.  That cut down travel time across an ocean from weeks to less than a day. It creates more empathy. It creates more gnosis of the other as the self. Okay? Very profound. And that's all that you have to do. Steve Jobs and so many other people have said it, just look around you. Every single thing around you was created by the imagination of people that decided to seize those ideas and just relentlessly, obsessively execute them into the world. Okay? It's that simple. You have to push to achieve beyond what is just the 40% of what is David Goggins and Dave Blaine. And so many other people talk about is us just being stuck at that 40% of what we can achieve. Work harder. Achieve your full potential. Fast more. Work out more. Sleep better. Execute more. Stay focused. Such simple things will help you get up to 45% of your full potential, 50% of your full potential. Hold your breath underwater for 30 seconds, then 35, then 45, then 50, then 55, then a minute and keep pushing yourself and just feel that incremental pace of yourself becoming more and more self actualized to your fullest potential. Fight against the incessant ghrelin that the hormone being called by your body. I'm low on glucose. I need to eat right now. I can't work if I don't eat. Yes, you can. Yes, you can. You can burn fat. You can enter ketosis. You can stay focused on the project that you're trying to execute into the world. That's how you achieve your fullest potential. That's how every single greatest mind of all time has done it before now.  They made those iterations and the mutations in our evolutionary trajectory that gave us all of the beautiful abundance that we have today. And the other 99 billion were common. Be the uncommon amongst uncommon people. Ultimately, when you ponder that telos, when you ponder our evolutionary trajectory, you get the idea at a deeper level when you look at virtual reality, when you look at simulation theory, when you look at artificial general intelligence, when you look at all of these things that people from even 100 years ago, let alone a thousand years ago that we're studying, metaphysics did not have. What we have now is the most beautiful way of immersing ourselves in what is ultimate reality. It's so simple.  It's that simple. Think about it. It's such a clear mirror. It's such a clear hint that we are evolving towards that telos. It's all triangulating. Even the West is triangulating via AGI simulations and virtual reality on the same thing that Eastern metaphysics has been thinking about for thousands of years as ultimate reality. John Smart calls it the Transcension Hypothesis. The fact that we look out and we see there's nobody else in these massive star systems that exist yet for us to find out, Fermi's paradox, Enrico Fermi, where is everybody? Well, guess what? It is highly possible that where everybody goes is, of course, it's important, make life interplanetary, go and create beautiful bases on the moon and Mars and go and explore the moons of Saturn and Jupiter, looking for life on Europa and Enceladus and Titan is very important and very fun. But it's also super important to think about virtual reality, AGI simulations and transcending in inward, inward, at the same time as we go outward. Why is inward so fun? Why does inward have such a deep calling as a recursive function? Let's think about it this way. Why do you think people like video games so much? Why is a great example, Japan, as Dan Fajella likes to say, a canary in a coal mine? Why? Why are there so many people around the planet obsessively playing video games? Ponder that for a moment. Why? May it be because we already exist in a video game? May it be because they, by playing video games, they gain the ability to feel like gods? Maybe that's why. Maybe when you pick up the controller or when you immerse yourself in a virtual reality, what is happening is you feel like a God.  We all are. Maybe that's what video games give us and maybe that's why they're so damn popular around the planet today and that that's the trajectory where they're going. You are God.  You get to decide when you want to exit out of that world.   You get to decide how you want to level up, what attributes you want to level up. Think about it. That is exactly what you get the opportunity to do right now. You are infinite potentials and you get to pick if you want to stay at a stagnant static 40% or if you want to achieve your absolute maximal potential across every single category that is possible for you to achieve, unleashing your fullest divine unique gifts into the world by pushing yourself harder. There is going to be very soon and we'll all be seeing this decade in the next decade an infinite amount of designer realities for us to immerse ourselves into. The idea of being that given the significant computational powers that we are unleashing and given the absolute indistinguishable realities that we are designing and those incredible graphics and sensational and and sensory experiences that we are building that we are unleashing so many different combinations of what is possible for creative virtual worlds that you will get to pick what you want to immerse yourself into any time and you will find that to be fascinating because one moment you will be in the normal math and physics of a of a universe just like this and you'll be exploring what it's like to be on the planet and going between the the wall of China and the Eiffel Tower in Machu Picchu and you'll go back 500 years and you'll live in the Enlightenment you'll go back 2500 years to the time of Buddha and then so you'll bounce around like that but then guess what you'll do then you'll go and you'll jump into new styles of solar system design and then you'll be like okay cool well all our solar system has this star and earth and it has these amounts of planets and it has these big planets like Jupiter and Saturn and whatnot and now what you do is you go well what if what if I enter into a different style exoplanet around a different style star system and they have a different style of life that has evolved and you go and immerse yourself into that that will fucking blow your mind that will blow your mind will blow my mind and will blow all of our minds because that's what's coming and there's even a step beyond that the step beyond that is to design virtual realities that don't even follow the same laws of math and physics as our universe does so all of a sudden you'll be immersed into these abstract realities that you just can't comprehend it so much more difficult for you to understand it's not simple DNA double helical carbon based life forms and that style of coding it's different and we get to design that and we get to understand what actual infinity means as we go through that style of a recursive or a Borek process and you just think about this reality when you realize that you are the publisher and the player we are the publishers of the game and we are the players of the game the deeper that you embody that as a gnosis as a Gnostic being the more you realize that the more you realize that we ourselves have designed and buried the actual codes we have buried the codes think about it think about it for a moment where are the codes buried there's there's this titration of remembrance that's happening as we're evolving we're unlocking more and more of these remembrances that are waking us up think about it we've talked about so many of them AI virtual reality simulations even back thousands of years ago people could tell that dreams were a crucial hint what about all of the shamans on the planet and all of the ways of leveraging the beautiful entheogenic plant medicines we literally we encoded the secretions of plants to wake us up to ultimate reality we are the designers we wrote those codes and if you don't see plant medicines and if you don't see dreams and if you don't see VR and AI and simulation technologies as codes that we ourselves programmed to remember to remind us what ultimate reality is contemplate that more that will help you a lot and think about it also in terms of octaves it's so musically beautiful you can think about it this way if you would like here we go ready see two three four five six seven see two three four five six seven see right that's the auroboric moment when we go from seven to eight is the auroboric moment and so many people have talked about the evolution from three to four which is where we are at right now hypothesis is that we're going from e to f right we're going from me to fa do re mi fa so la ti do right from me to fa and what that means is we're going from service to self service to self i'm self-dealing i'm obsessed with my ego to service to other to other which means that i am serving you because i understand the divinity within you that you are me that we are the one self that the mathematics of the infinite is diversity in oneness thank you shri arubindo in the mother mirah al-fasa love you both so much and so that is our evolution and notice how there is no e sharp which is very interesting and what that means is that it's very hit or miss okay that either you're going to get it and you're going to understand service to other and our future or you're going to stay in the ego in your service to self mode and that you're not going to get it so get it faster wake up faster push yourself to wake up faster to service to other and where we're going you have the full potential inside of you to awaken to it unveil unveil unleash the kingdom of god within you unleash those beautiful unique gifts into the world and this plays every component work forever infinity eternity this beautiful dream symphony that we are a part of place every component work forever that is the logic of the infinite the fact that we are we unleash an infinite amount of illusory affinity as a validation mechanism that we are truly infinite that is the logic and that's why the logic is also recursive an eternal self actualization loop eternal self actualization loop eternal self actualization loop it's a key thesis of the project that we are releasing and that becoming is the only being the only being that is available is an eternal becoming and that's what we are and that's what's going to continue happening forever ultimate reality is nearly indescribable nearly indescribable don't let people tell you that it's not possible to describe ultimate reality don't let people to tell you that it's not possible for us to uncover our source code because it is and we are and we are going on that recursive process and that ultimate reality needs the best storytellers possible the best synthesis the most general generalist polymaths possible to sponge up all of the novel peaks on the fitness landscape and then create the story of what ultimate reality is and disseminate that in such unique millennial gen z and generation alpha consuming ways that we all wake up way faster that's our role with our show so that's why simulation in 2020 and beyond this decade is going to be unleashing the best synthesis the best storytelling around ultimate reality so buckle in buckle in because that's what this channel is that's who i am that's what i'm unleashing into the world and you're here early and remember that the earlier that you are here the more you have an advantage you have an advantage that you are taking in the most cutting-edge understandings of ultimate reality and you by embodying that sharing that with people and building up on top of it and working your own unique creativity with it will get to level up we're shooting a portal to you jump through the portal and enter into a new dimension of thinking about where we are heading who we truly are and where we are going and what we truly are okay remember this reality is recursive an eternal self actualization loop one of the lines of code of reality is to call on reality we're making more it's an eternal cycle simultaneity of the eternity of time with your biological clock ticking and wanting to actualize your unique gifts into the world this is your heartbeat you're only going to get two and a half billion of those if you live until you're about 82 years old so you have to have simultaneity in those two things reality is recursive eternal self actualization loop that's the automata orthogenesis to the attractor of the godhead and the transcendent hypothesis contemplate it more agi virtual realities simulation technology infinite designer worlds the logic of the infinite contemplate these concepts more i'm leaving you what is a very important trail so dive into this trail the more you do the more you'll pick it up and the more you pick it up the more you can create gifts from it build on top of it and wake people up to where we're going okay i love you very much remember also that the mathematics of the infinite is diversity in oneness we are one being and we have all of these diverse unique individuals that are expressing gifts into the world so unleash yours go beyond that 40 stagnation staticness go way beyond that challenge yourself love you very much thank you for tuning in everyone such an honor and a pleasure to be able to have people that care about what we are bringing to the world as a gift so thank you very much i'm honored and privileged and i'm very grateful and buckle up we're bringing some insanely beautiful things forward and uh i'm just so grateful thank you everyone thank you thank you thank you let me know more as you go through this process let me know your thoughts in the comments below about where you're getting along this process i want to hear from you i want to hear from you we're gonna have some bonkers things lined up where we're also be bringing the community together in person so i'm so so pumped thank you everybody thank you you guys know what to do subscribe if you haven't like the video share the video with other people awaken people faster and um truth ultimate reality number one nothing's more important than that it's that simple dedicate yourself obsessively to ultimate reality and the truth and it will yield it will yield


We are government of the many and not the few. We are government of all the people and not the specially chosen. Every proposer has been costed and accounted for. And you will see that everything that we have proposed has been framed within the existing global, technical and institutional support for our program. I'm to the people of solution. We see trust in the leadership of this. What makes me happy is that the proposals in the manifesto and the budget, we have taken them out one by one. We have taken them off one by one. We have taken them off in the first 18 months with COVID, with Ukraine Russia, we have taken them off one by one. The good news is we ended 2022 in a much better place than where we started. We have entered 2023 before renewed optimism for the prospects of our economic growth. Despite these difficult times and raging challenges, we have kept our mantra of putting people first. And I have delivered on many of our promises to you as aligned in our manifesto. I sincerely believe in the resourcefulness and resilience of the people of solution. I believe that the majority of solutions understand that there are challenges and that together with the help of God will overcome and make our one of the best places in the world to live and visit.


Lenka says, hi, I'm a beginner, and I need advice on how to create an organizational structure in SharePoint. She is a beginner because she spelled SharePoint with the lowercase p. So we know that's true. I tried PowerApps, but I don't know much about it. When I create an application from SharePoint data, I don't know how to upload it back to SharePoint. Thanks for the advice. I'm curious what a PowerApp SharePoint architecture would look like, but that's just me. Why SharePoint though? Why not moving Viva and Gage? We can go better questions. You can mark it, you can have that feeding into your SharePoint site. Well, that's the next question. Can you define the function? My question is the org chart. She's saying like, I need an org chart or the people, or they're trying to do an org chart for like, how to organize. Right. I think they're trying to organize or do I need a person reporting structure? Yes. Because it says an organizational structure in SharePoint like she wants to display the organizational structure of the organization. So my question is, have you seen the web part called org chart? Two, a lot of people, you can use search to build different things like corporate directories and have filters and based off the departments and stuff and pulling from your different features from your profile like your manager. That's how you essentially build your org chart, but you can do that for corporate directories and all that kind of stuff. So there's a lot of things that you wouldn't need to go custom development to do to pull the org chart information. Now to make it pretty, you probably need someone who's a little bit of a designer to help make it look pretty, but just to pull the data, it's technically already there. Well, I put a link in the comments in the spreadsheet for the Visio org chart wizard. Yeah. So you can extract it out to Excel. And I've used that to plan the whole architecture of a SharePoint environment. It doesn't have to be used to create an org chart. It's just a way to create related hierarchies within your organization. So if they want to use that, is she trying to create architecture? Is she trying to create an actual reporting structure with people or the org chart of a company? Yeah. And if you want something that's pretty, that's already pre-built, there is one out there on GitHub that I've seen, probably a couple of it by this time, because it's been a while. There are some org charts already built that already look pretty that you can bring in. Well, the org chart is built into SharePoint. If your active directory is properly populated. Yeah. If your manager fields are correct, you get good data, but yeah. Could you do a flow that came from there dropping into Visio and the Visio part dropping into SharePoint and do it? Could you do that? I can't say I've played with it, but... SharePoint uses Excel to create the... And you kind of have to refresh it. So you could create the... You could create it in an Excel workbook and then use that as the data source for Visio anyway, if that's what they're looking for. But yeah. Yeah, you could get super fancy and use the graph and then use Power Automate to grab from the graph and then use the connector and then link it in and then dump it into somewhere and then present that in Visio. Maybe have a data verse. You can export it out to Excel and create a Visio chart and publish it once a week or something. So many things you could do, but yeah. I don't feel like we have all the information there or it's not very clear to give her a very straight answer. I don't think she wants to... I don't think she wants an org chart. I don't think she wants an org chart. She wants someone to tell her how to organize her SharePoint. Like, how do I make sites and site structures and lists and libraries and where do I put them and how do I organize my company's SharePoint architecture? I think that makes sense if you read the first sentence. If you read the rest, she tried to build a Power App to do this and she wouldn't build a Power App to do that instead of a SharePoint architecture. Well, this folks is why it's important to... When you're asking for help or for guidance on a forum somewhere is to put a little more detail and explain the scenario what you're trying to do is because so often like this one, my first reading too, I was kind of divided on is it a SharePoint architecture question or as I read on, I went the same conclusion. Like she's talking about org charts and like there are third party solutions. There's the org, the app. I mean, there's multiple options. You can go build something that's out there but this would be great if we could follow up with Lenka and ask some other questions but yeah, we can't. Yeah, I was with the architecture thing at first until I read the next sentence and I was like, nope, she really means an org chart. So, yeah, but it's still iffy. Can I say that I have so much... Oh, I'm sorry, Jonathan, I didn't hear you. Sorry, I think the second question's unrelated and showing that she's new to SharePoint. She also through SharePoint tried to create a Power App and didn't know how to put the data back from Power App back into SharePoint which is either a submit button on form, a patch statement on fields or something of that general nature, maybe even a Power Automate flow if you wanna get fancy. That's how I reconciled the difference is how do I structure my stuff in SharePoint and also I tried from Power Apps, I'm brand new and I didn't understand what to do. I'm asking for two pieces of help in one question. Possibly. Hey, Norm, you were gonna add something? I have a lot of empathy for Lenka and people in Lenka's question. All right, position, excuse me. Conceivably, she's just trying to get to an end result, making an org chart. Presumably, she's working in HR and this is part of their ongoing responsibilities. And then they're gonna use the tools that they have at their disposal. Well, I mean SharePoint, I have a SharePoint site, I have a list. There's that Power Apps button, let's create a way and then you end up going down this slippery slope of God help the poor person in HR trying to learn Power Apps when they don't need to. We're having to go through all these solutioning. Can you imagine being in HR and then someone like blasting all these questions at you about how are this and how are that and Azure this and Azure that?  It's like, it's really hard for just a normal user trying to get their job done. And this is where, you know, all the people on this call, what we can see, hopefully, are doing, you know, advocate for the users, try and map out a requirement to a solution that is something that they're capable of doing. As a recovering HR professional, covering a completely relate to this, you know, every time somebody got hired, you know, promoted and I was the person that I had that had to maintain that org chart and publish it and print it and post it and email it. And yeah, I don't, you can tell I don't miss being an HR professional. You drank a lot during those days, didn't you? I mean, potentially there's another solution. If they have Visio, the desktop client, there is a way for you to do a custom import so they can connect to a SharePoint Foundation list so they can connect to a site and just import the data there and then work with whatever shapes they wanna work within the org chart or work with a specific template that they already kind of have set up that they like in Visio. And then just bring that data in and you have it assigned to those shapes and you're good to go. So I think there are, if we take it back to the basics of maybe not having to work with Power Apps or Power Automate or some of those other things as we were saying, like that might be too complex for really what the need is here. Visio, go to that data ribbon, look at your custom import choices. It could be an access database. It doesn't necessarily have to be an Excel workbook that you're bringing in. You've got, I think, more flexibility there and also from the learning resources that you have available to you online. We're asking more questions here of us to help you along the way too. We have some Visio MVPs we could, of course, reach out to and get some answers also if you need it. I think that that might be a quicker way to get you up and running and then also for managing it down the road, right? Because as you have changes, having to go back in and change that Power Automate flow or change Power Apps or whatever you're using, that might be a little bit more complex too. I don't know if I've missed a little bit. Maybe I missed a point here, but for an organizational chart, and maybe the question was trying to say, how do I build an entire organizational chart, like top to bottom and display it and show it out? But there's tons of features in SharePoint and Teams that already will show organizational features, right? In Teams, you can right click on a person and show organization and see those details. And I'm trying to understand, and like I say, maybe I missed something, but I'm trying to understand what's the actual scope of the ask here? Is it to show like the entire organizational chart, excuse me, entire organizational chart, like top to bottom, several levels deep in one go? Is that the ask? I think that's what we're assuming. I mean, without being able to ask follow-up question, because that was my thought was that, if you're the danger of building an external solution, whether you build your own automation or you use a third-party solution, you're pulling it outside of that to be able to go in and structure the organization, move pieces, maybe you're doing a reorg and you want to be able to see all the pieces and move things around, it's then dead to the live system. And that ideally you have something that you're viewing that information, you're making changes there in the system, not outside the system, so you're not having to do a whole bunch of other work to bring those changes back in. Yeah, just leverage the profile services that we have, right, there's not only AAD, there's SPODS, which will give you the option to, like we have dotted line scenarios and you can take an individual user and you can see their dotted line connection to their manager and so on and so forth. So yeah, there's a whole, all the data's there, it's right to the folks that were speaking prior to me, it's just the case about how do you build the canvas that displays that information if they want something more complex than what we have already.


The management of the University of Benin said it has granted no fewer than 500 students who had overstayed in the school an amnesty in order to give them room for graduation. The Vice-Chancellor of the University, Professor Lilian Salami, disclosed this during a press conference in Benin City as part of activities to mark the 46th and 47th convocation, 51st Founders' Day ceremony and Golden Jibre anniversary of the institution. The report is presented from our studio. The Vice-Chancellor of the University of Benin is Professor Lilian Salami. She has said no fewer than 500 students who have overstayed in the university have been granted amnesty by the school senate. This is to enable them to graduate from the institution. She also said that 125 students bagged first-class degrees and 2,794 bagged second-class upper degrees in the 2018-2019 academic session, 157 bagged first-class and 2,631 bagged second-class upper in the 2019-2020 academic session. The Vice-Chancellor said this as a briefing in Benin on Monday as part of activities to mark the 46th and 47th convocation of the university. It is now my pleasure to intimate you with the line of activities for this year's convocation and other matters of importance and to solicit your support to ensure maximum publicity before, during and after the ceremony. This convocation, according to the Vice-Chancellor of UniBen, will be used to mark the university's 151st Founders' Day and Golden Jubilee ceremonies. The cases of more than 500 students who have overstayed in the university were looked into by the senate and they were granted amnesty to graduate from the system. Ahead of the commemoration of the university's 46th and 47th convocation, 151st Founders' Day and Golden Jubilee Awards celebrations. This celebration is particularly significant because it falls within the golden era. 50 and 51 years of existence of the great university. We want to send our speech to the busy and the married members of the school because one of them has predicted that the university will be conferring honorary doctorate degrees on left-wing general Theophilus Danjuma, Chief John Odige, Oyegun Dr Natalia, Mr Oluwakemi Pinero, S.A.N. and Dr Thomas Ilube. The former Vice-Chancellor of the university, Professor Osayuki Osrodin would be unveiled as Professor Emeritus.


So you wish there was an easy way to randomly control your parameter values from inside the Niagara particle system, not a problem. You can see we get some different looks by adjusting the radius, the density and the speed of these values. So ideally we would like to randomize these values each time a particle is generated so it looks different from the last. In order to set that up, we just need a dynamic parameter node, name all the variables that it's going to control, and drag them in like so. Then in your particle system, add a dynamic material parameter, and you will see all the values you set right here. From this point, you just click the down arrows right here to randomize whatever you want and you're done. From now on, no two smoke particles will ever look exactly the same. Hope that helps and as always, hope you have a fantastic day and I'll see you around.


By the way, I had a conversation with two people I should know it was three of them, right? in 2000 and it was 2002 in Vancouver and I was doing the club scene.  It was a local hangout. We had that pool tables Started there and that they're the night mornings, I guess right and I knew my places. That was a hangout, right? and we had three Three kids at the time. They were probably 19 years old 19 20 years old, right? There were soldiers near American They came up from Seattle to Vancouver. Why? from Seattle From Seattle to Vancouver.   I was very good I could clean the table, right? I could do two twice, right and They said yeah talk with them a little bit.   I left it there.