Okay, well welcome back everyone, thanks for coming and joining. My name's James Roper, I am from Australia, I flew in yesterday due to flight delays, got to my hotel room at about 3am and then didn't sleep at all. So I did have a two hour nap before I came here, so hopefully that's just this morning and hopefully that's going to sustain me for this presentation, but if it doesn't, please wake me up. So I work for LightBend as the architect of Calix, you've probably heard a lot about Calix so far, I've heard some people saying that LightBend for some reason isn't here but this other company called Calix has come. I've been talking about Calix a lot these days, but my presentation today, for the most part I'm not going to talk about Calix, I'm going to talk about Cervilis, which obviously Calix is a Cervilis problem so it's going to lead to Calix, but we're going to spend a lot of time looking at Cervilis and why I believe that Cervilis is the problem that Reactive has been looking for. So to start off with we're going to go back in time and look at a brief and very incomplete history of Reactive systems because I think it's important to understand that none of this stuff is actually new. So to start off with the actor model and for those that aren't aware, the actor model was formalized in 1973 in a paper by Carl Hewitt and a few other guys and they actually came up with it in trying to build AI systems. And the idea is that you have this concept of an actor which is a universal primitive for concurrent programming. So actors can run independently and fail independently from other actors. They communicate via message passing which is what allows them to fail independently because they're not dependent on each other running. And then over the years there's been a few actor systems implementations. One of the major ones was Erlang which was created in 1986 for systems that must run non-stop. For example Pabax Exchanges. So Erlang was built on the actor model and there's a really great demo that you can see that they produced back in 1986 and that these developers show fixing a bargain redeploying a system that while it was running and without interrupting an existing phone call. Move on to more modern times. ACA was developed by Jonas Bernier who we heard earlier today. And it's a modern actor model for the JVM inspired heavily by Erlang. So we've got these concepts of actors, of message passing, of being able to fail independently, of being able to be deployed independently. But there are also other things that were kind of brewing over the years. Another thing that's probably a bit more modern is conflict-free replicated data types. These were I think first kind of the term was coined around 2010 in a paper. But they've definitely been around for a lot longer than that. They're designed for distributed systems. The idea is that they're always available. So reads and writes can occur concurrently regardless of network partitions and what's running and what's not. So again we've got this theme of resilience of things being able to run independent of failure. They are eventually consistent. So no matter what changes you make on what node, in what order, you can make 10 different changes on 10 different nodes. And then eventually as long as they all gossip to each other at some point, they will all converge on the same state. And importantly, this requires no coordination. There's no point where they need to synchronize and say, okay, everybody, we all know what the state is. We're all agreed. Okay, let's commit. Nothing like that. These are able to run independently and converge independently on the same state. Another concept that has been coming to prominence is event-driven architectures. Now, events have been around for probably much longer than the actor model. And there's definitely been versions and systems that have been built that could be described as event-driven for a long time. But it's probably become more popular through the 2010s, especially with things like Kafka and similar message brokers. So in event-driven architectures, states communicated by streams of events. In contrast to when you need state fetching it or updating it synchronously as part of the request that needs it. And again, this allows components to be isolated from each other. So if one component needs to update another component and that component is not running, it doesn't matter because all that component has to do is publish its event stream and eventually the one the failing component will come back up and be able to consume it. And event-driven architectures also allow components to scale independently. If one component has a huge amount of load, that's not going to push a huge amount of load on everything that it depends on because it's consuming their event streams, not calling them synchronously. So on this background of ideas of things that are resilient to failure and that can scale independently came the reactive manifesto. So it was first published in 2013. We've talked about the reactive manifesto a lot already today, so I won't go too much into it, but at the top we have responsive. So this is kind of the overarching goal of what we're trying to achieve with reactive to be responsive to users. Then we're also resilient. This has achieved the responsiveness by being resilient in the face of failure, being elastic, so being able to stay responsive in the face of varying workload, both small and large. And then to achieve those two things, to achieve the decoupling necessary to do that, we need to be message-driven. And I should point out an earlier version of the reactive manifesto actually said that was actually event-driven here. So event-driven is a system that is event-driven is reactive, but message-driven is a bit more encompassing because things like CRDTs, which can fail independently, they're not event-based. They just work by gossiping in their state, hey, this is my state, hey, this is my state, and communicating that way. So after we kind of coined this reactive manifesto, what was it good for? Who would actually use this reactive patterns to build systems? And in the early days, it was mostly web-scale companies. So, you know, I mean, if you remember back in the 2010s or late-naughties, people from Google, if you ever met Google employers, would talk about Google scale as if Google problems were at a whole level of transcendence above everyone else's problems and nobody else had problems like Google. And so, I mean, Google did use many of these patterns to build their systems, but other companies did start having the same sorts of load that Google faced, Facebook and Twitter, and so they had to build event-driven systems and so on and would use, maybe without actually using the term reactive, would use these reactive principles to build their systems. And there were also niche use cases, so things like high-frequency trading, and where did my screen just go, and very large IoT systems. So at LightBend, we had a customer, the Dutch border control that had tens of thousands of sensors all around their border that needed to be able to communicate and work independently of each other to be able to control the Dutch border. And they were using ARCA to do that. But then in the mid-2010s, Cloud native started becoming a big thing, and at LightBend and people building the tools to support reactive systems, we were excited because Cloud offered a great opportunity for people to... Alpha was a perfect place that we felt that reactive was good for. So reactive systems, the cloud is less reliable, it's on your control, you're not actually running things, so you need to make sure that it's resilient, and reactive systems can help achieve this. And cloud applications also had to be elastic because cloud offers almost unlimited resources at your fingertips, but to be able to make use of those resources, your applications need to be elastic, and reactive systems help achieve that. But it wasn't the perfect use case for reactive because old patterns could sort of be made to be good enough. So you add a few constraints, 12-factor apps is a good example. Keep your application nodes stateless, use distributed databases, and these practices would sort of work until they didn't because the database becomes the bottleneck when you could have caching issues, but people kind of hobbled through being able to use the cloud by applying Band-Aid fixes to these issues. And of course, when everything falls over, you can always just blame someone else, so AWS went down, it's not our fault. So serverless came along, I don't know, 2017, 2018, and at face value, just like with cloud, it looked like the old patterns will work because, like, Lambda's are just stateless services, right? The fact is that Lambda was nothing like stateless services, and people found this out very quickly. You couldn't cache with them. Database access was a problem because you'd be creating these database connection pools just for one request to be handled. Performance can be a problem when you link them all up together. Reliability becomes a problem because you have no control over when these things are started and stopped. And many of the hardest problems were not solved. So you still have to manage a database, and that database still becomes the bottleneck.  So what if the database is down? What if this Lambda isn't functioning properly and so on? But at the same time, there were people that started publishing success stories about how they successfully used a serverless. And what you saw was they talked about being event-driven. So responding to events and publishing events rather than going and having these big chains of Lambda calls. And they would talk about being able to update state independently without having to coordinate. And you even started to hear about things that sounded a bit more like actors, durable functions and things like that. And so we kind of saw this almost reinventing of reactive that people had to do in order to use serverless effectively and successfully. And so that's where at LightBend we started talking about serverless 2.0. So the idea with serverless 2.0 is that it's reactive from the ground up. So we're not just trying to... We're not just providing these kind of abstractions that you then need to go and put the reactive principles on top of. It's reactive from the bottom and you just write your application in this constrained environment and you can be successful doing it. So an important thing in serverless 2.0 is that state has to be a first-class concept because state really is one of the hardest problems to solve in computing. Coordinating around it, sharing it between components and so on. So in a reactive serverless platform, you think of it as deploying entities, not services. Okay, so underneath you're still deploying something that runs on a server somewhere. I mean serverless doesn't mean there's no servers. It means you're not thinking of it in terms of servers. And just like in the same way, you're not thinking of it in terms of services that are communicating with each other. You're thinking of it in terms of entities that you are deploying. These stateful things that have stage. These entities are actors. So they communicate with each other via message passing. Those messages might be events or they might not. But they're not dependent on each other running. The entities themselves are run, manage, persisted, cached, whatever needs to be done in order to run them by the platform. You don't need to worry about where they run, how many of them are running, what their scale is. That's handled by the platform. And as I said, they communicate via message passing. The second thing about a reactive serverless platform is that it is fundamentally event-driven. So one thing that that means is that entities themselves have to be sources of events. So you don't think of entities as, here I go and put some data in a database and then I might go and publish an event somewhere or something like that. Anything that you do with the entity is an event. So any time you change an entity, that's an event that something else can consume. In order to provide such a platform, we have to have multiple state models. Because these kind of reactive patterns, as I talked about before, we had actors, we have conflict-free replicated data types, we have event-driven applications. And these all kind of solve different problems in distributed computing. And not every use case that we have requires the same model to solve it. So an example of a state model is event sourcing. A simple value could be a state model, a CRDT could be a state model. You will have views that aggregate multiple entities together. There's another state model and so on. And so developers will select state models based on requirements and they're not going to use the same state model across the whole system. For each different entity that they have, they will choose the state model that best suits what that entity needs. So if they have certain latency requirements, then they might choose a state model that ensures that the state is at the node that receives the request already before it's handling it. So something like CRDTs. Similarly, if they want concurrent rights or if they don't want concurrent rights, they'll use different state models for that. And if they want, depending on their consistency requirements, if they want eventual consistency, do they want strong single-writer consistency, they'll select a state model that meets those needs. So an important thing here is that these state models mean that we have these constrained state patterns. And Jonas did mention in his keynote a little bit about the importance of constraint, because tight constraints gives the platform more power. If the platform understands your state model, it can do a lot more with that, such as scaling horizontally. It can know how to replicate that. Does it need to replicate it in one way, or can it replicate two ways and then merge what kind of options does it have for replication? When you use a constrained state model, the platform can make those decisions and the developer can just focus on their business logic. And the platform can also make and meet consistency guarantees. And the platform can also make decisions to stay available. And there's also an unrealized potential here that goes far beyond serverless or that pushes serverless beyond what I'm talking about with serverless too. So, for example, replicating all the way to the edge. And I don't mean just, like, to the local region in AWS. I mean, like, to the cell phone tower. So we could share state at the edge without having to go back to the central cloud thing if we're using the right state model that allows that that the platform knows how to manage that and get the state to where it needs to be, when it needs to be. And even go all the way to devices. So this is where I come back to Kalex. And Kalex is the platform that LightBand has built that is the embodiment of serverless 2.0. So it's hosted by LightBand. We launched it in May of this year. We've actually been working on it since 2019. It's gone through various incarnations of names and ways of distributing it. It's GRPC-based, so we describe the entities using GRPC and declare how their state model works and so on. And it's Polyglot, so currently supports Java, Scala, JavaScript, and TypeScript. But it can support any language that supports GRPC. So I'm going to give a demo now. And I'm going to run it through it fairly quickly because I don't want to run out of time. But what I've built here, so if we go to here, Kalex service list, you can see we have a service deployed, the asset service. I'm going to create a proxy to that with a GRPC UI front-end. So Kalex supports, like, creating an Internet-exposed ingress, but when you just want to test a service, we offer a way that allows you to go through an authenticated proxy that doesn't have to expose your service to the Internet, and that's the feature that I'm using now. And so this service, what it does is it tracks information about assets, and the only thing that it currently tracks is location. So if I get an asset, I'll just make this bigger. If I get an asset, let's say I want to check where the hammer is. Its location is the toolshed. I can move it to... I'll take it out of the toolshed and check it into the yard. And then if I go back and load that and invoke it again, you can see it's out in the yard. So in a real asset tracking thing, there might be other states for assets, but in here it's just very simple for this demo. I'm not going to go into too much of how to actually implement this entity. I'm going to show implementing a new entity, but you can see here important things is we have this checked-in event. So whenever I check something in, it emits this event saying that the asset has been checked into this location. And we track the current state with this location here. And I've implemented this in TypeScript. So you can see when I get the check-in message... the command, I emit a checked-in event. I could do any validation here before I do that and fail if I want to. And then in my event handler, the check-in event, I simply update the entity's location. But the important thing that I want to show here is this assets publisher service. And what this does here is I'm declaring the input for this... for this GRPC service is... So this is an... what we call an action in Calix, which is not an entity, it's just some code, some stateless code. But it's going to subscribe to the asset event-sourced entity stream and publish that into what we call a direct event stream, which can be consumed by other services. And over here, we have the code for actually translating that internal checked-in domain event to the external checked-in event that we're going to put that other services can consume, which in this case is actually the same event just for the simplicity of this demo. So what I'm going to do now is I'm going to implement a new service, which is a view service. So I've taken the liberty of already setting up the initial project and the initial protobuf here, and I'm going to call it assets by location. I'm going to tell the Calix code gen that it's a view. And I'm going to say that it's going to subscribe to the direct eventing from the assets service consuming that published event stream ID called assets. Now I'm going to declare this update location method to handle the checked-in events that I'm going to start receiving. And this is going to produce an asset location, which is actually the schema for my view. So that schema is pretty simple. It has the asset ID and it has the location. So then I'm going to tell Calix that this isn't a view update method. It's going to update the assets by location table. And I'm going to need to transform some of the events it receives in some code. So now I'm going to move on to the query method. So this is going to be what actually receives the requests. It's called get assets. We have a by location request, which simply passes in the location that we want to get the assets by the location. And it's going to return a assets at location response, which has a list of asset IDs that are at that location. So coming back to the query, another Calix annotation, and this is where we declare the query itself. And this is an SQL-like thing, so we want to select the asset ID. So that comes from our asset location table. And we're going to put it as, whoops, need to remember my shortcuts, as assets IDs. So that's going to put all the asset IDs that it selects into this asset at location field. And, oh, yep, from assets by location. So that's saying I want to get it from the table that was updated here, where location equals the location from this by location request. And so that's almost all I need to do. I'm now going to let the, let Calix generate some code for me if I can type on my laptop. So that's generated this file here. And the first thing that I'm going to do is import this asset location protobuf, and then I'm just going to transform the checked-in event to the asset location schema, which gets the subject of the, that's the entity ID, the asset ID, and the actual location from the event. And I've now finished implementing the view. So this is the slow-part MPM run package. So I'm going to build a doc image, and I'm going to publish it. And so if we copy the tag here that I'm building, you can push that, and then we're going to do a Calix service deploy locations. Now, I need to talk just for a little bit more while that's going to take a little while to pull the image and then create the tables needed for the view and so on. So we can see it deployed there, and it's not available yet. And so if we just give it some time. So hopefully this is going to work. But going back to this SQL here, so we don't support a full set of SQL. One of the things is that it is quite constrained because if we supported just any arbitrary SQL here, the platform wouldn't know how to manage the state. It wouldn't know how to guarantee various caching and consistency guarantees. And let's... Okay, it's ready now. And so now I'm going to start a new proxy to the locations, opening GRPC UI that's going to point to it and on a different port to the other one. And so you can see here's my assets location, get assets and all the assets in the yard. I'm not sure why that's not... And for some reason did I enter that wrong? Oh, I pushed Yard too many times. And so there you can see our asset IDs, including the hammer that we moved before. And I'm running out of time here, so I'm not going to show more than that. But an important thing to notice here, when I wrote this location service or when those assets were loaded, this location service didn't exist. Because this is an event-driven system, fundamentally event-driven, I didn't have to do a data migration or anything like that when I deployed my location service to populate it with data. I could just... It just consumes the event stream that's just there. And it can bring itself up to date in its own time without having to worry about the fact that it didn't exist when those events were created. So that's a very brief demo of just basically one of Kalex's features. But if you're interested, I would strongly recommend going and signing up for a trial account and trying it out yourself. So thank you. We might have a time for... No, we don't have any time for questions. Okay. If you want to ask me questions, I'll be outside afterwards. Thanks.


Okay, I'd like to first say, Assalamu Alaikum, and we know that means peace, peace of God be upon you, and we want to welcome our senator, Bernie Sanders, and we are very grateful for him taking the time out of his schedule to visit us. This is a very historical moment for us here. This message here has 80-year history and 55 at this very location, so it just goes to speak to that Muslims have been here and in the nation's capital for a long time. In fact, this is called the nation's mosque because it's the first one that was built in the nation's capital by American citizens. And so we thank him for this being the spot where he will come to make some statements to address things that really serve to divide us, people are hurting, people are being attacked, etc. So with that, senator, we very much appreciate you being with us and certainly Congressman Keith Ellison as well. Well, let me thank you, Imam Sharif, and all those who are here with us for coming together at a very, very important moment in American history. Let me begin by stating the obvious. There is enormous anxiety and fear in this country. Our people are deeply concerned, justly so, about the threats of international terrorism. They are also worried about the state of economy and about the future of their children. They are worried as to why they are working longer hours and why they find it harder and harder to retire with dignity. They are worried as to why they're working so hard and yet almost all of the new income is going to the people on top. They are worried that we have more people in jail than any other country on earth and they're worried that maybe their kids will be one of those people in jail. They are worried, as Pope Francis recently reminded us, that our planet is heading in a suicidal direction with regard to climate change. What kind of planet? They worry we will be leaving our children and our grandchildren. And on and on it goes. And the truth is, these are very difficult times for our country. We've got to own up to that, not run away from that. And in fact, very difficult times for our entire world. The question is, how do we best address these issues? Do we focus on bringing people together to find real solutions so that we can effectively rebuild the disappearing middle class and effectively address the threat of international terrorism?  Do we come together or do we allow demagogues to divide us up? That is the issue of the moment. It is no secret that throughout the world and in our own country, we have seen centuries of bigotry and discrimination, sometimes with unspeakable results. We must never forget what happened under the racist ideology of the Nazis, which led to the deaths of millions and millions of people, including family members of mine, as well as Poles, Russians, Gypsies, gay people, people with disabilities, people who were quote-unquote different, people who were quote-unquote inferior. Let's not forget what happened in Rwanda. Hundreds of thousands of people killed white because they were of different tribes. Let's not forget about Bosnia, where people had lived together and then suddenly were killed because they were of a different religion. Let's not forget about the fact that in our own country, from its very inception, from the very beginning, we saw horrendous pain and suffering inflicted upon Native Americans, upon African Americans. We will not forget the Chinese Exclusion Act, the Japanese American internment camps, and the rampant discrimination that took place against immigrants coming into this country from Ireland, from Italy, from other countries around the world. Again, people thought to be different, discriminated against. But throughout this painful history in our country, something else was happening. And there was an extraordinary movement in this nation led by courageous people, incredible courage, people of all colors, all religions, all nationalities. And that was the effort to end bigotry, to end discrimination, and to do as Dr. Martin Luther King, Jr., so aptly said, Look to a day when people will not be judged by the color of their skin, but by the content of their character. And I would add to that, not judged by their religion or their nation of origin. And we should be proud that we have made, in many ways, enormous progress in ending bigotry and ending discrimination. And let me give you just a few examples. Let us go back to 1960, not so long ago. And people said, what terrible things would happen if a Catholic, remember that? If a Catholic was elected to the presidency, and until his tragic assassination, it turned out that John F. Kennedy was a very popular and effective president. And we were told how terrible it might be if an African-American was elected president of the United States. Barack Obama won in 2008, and he was re-elected handily in 2012. And we were told what a terrible idea it would be if a Mormon, a Mormon ran for president, Mitt Romney ran, and he did pretty well. Whether it has been the struggle for religious tolerance, for racial tolerance, for women's rights, for gay rights, for the rights of people with disabilities, we as a nation have made enormous progress in combating discrimination, and we should be proud of what we have accomplished. But now, at this moment, with all of the fears and anxieties that people have about terrorism and about the economy, there are demagogues out there, people like Donald Trump, who once again are attempting to divide us up in xenophobic and racist ways. They want us to believe that people from Mexico coming into this country are rapists and criminals. They want us to believe that the average Muslim is a terrorist, and they want us to stop Muslims from coming into this country. And unbelievably, unbelievably, in defiance of the basic tenets of our Constitution, there are some who are even talking about shutting down mosques like the one we are in. And I should say, since Trump's incendiary comments, we have seen in this country, shamefully, an increase in hate speech and attacks on the Muslim American community, including death threats, directed and represented by Andrei Kosunov in Indiana. I have talked to Muslims in this country who are frightened. A young Muslim American recently told The New York Times, quote, I feel the last two months have probably been the hardest of my life, end of quote, and I think that person speaks for many thousands. It is time to say enough is enough. It is time to end religious bigotry. It is time to build a nation in which we all stand together. Catholic, Protestant, Jew, Muslim, Buddhist, all religions. And work to create a nation that benefits all of us. So today I am calling on all of us in public life, including my fellow candidates for president. And all Americans, to stand together and condemn the anti-Muslim rhetoric and hatred that we are hearing, to say no to those who promote this hatred and to make certain that we create an America that works for all of us, regardless of our religion or the color of our skins. Thank you. We certainly thank you for those comments. We can say this is a place of faith. We pray that the Cogleys and other leaders in our government will heed and see that the statement that you are making upon the very foundation fabric of what makes us great and what we are built upon. And of course we have with us our good congressman, Steve Ellison, so we will give him our opportunity. Well, Senator Sanders, thank you for your excellent statement. I really think it takes a lot of courage. I know you might not agree with that because this is just who you are. You've always stood up for all people. But in a time when bigots are leading in national polls, it takes a certain amount of courage to stand up and call us to our higher, nobler values, which you have just done. Thank you for that. I also want to just say, Imam Talib Sharif, as a leader of this mosque and a national leader yourself, I'd like people to be aware that you served our country in the United States Air Force for many years. And my son is active duty army today. He's a Muslim. He practices Islam and is inshallah, which means God willing. He's going to join us, join me for the State of the Union. He's from my district. He's an active duty soldier. He's a Muslim. He loves our country. He's a medic. It's his job to try to protect life. And I also want to say that I'm so very gratified to be here with both our Jewish leadership in clergy and Christian leadership in clergy and Muslim leadership in clergy. It's so important that we stand here together, hold hands together and let the world know that this is all of our country. And I would add one thing, if I may, I think as we all heed and wisely heed the call of Senator Sanders, we should also consider what we might do in our local communities. If you'd indulge me, I remember one year when Ramadan coincided with Yom Kippur on the calendar. Senator Sanders, it happened to overlap about a few years back. And so Imam Makram El Amin, dear friend of mine and yours, and Rabbi Marsha Zimmerman, who is the leader of the largest synagogue in Minneapolis, said, let's get the congregations together and we broke fast together. About 80 people said they were coming, but about 120 showed up. And the Imam and the Rabbi said, this is a good problem. And as you know, when the Muslims and the Jews were getting together to break fast, the Christians said, hey, we want to see this. So we had a multi-faith group and we went down there and we did it, weren't enough chairs and there weren't even enough meals. But we were together and we shared this important time. And I think that's something that people all across America should do, reach out in your local community. Thank you. And as our congressman just mentioned, I did serve in the United States Air Force 30 years of active duty, very proud of that. And I'd like to also say that it's a part of my family, my children. We've affected the lives of six, two Air Force, two Marines, and one Army. Right now, as we're speaking. And certainly after having spent 30 years, that would tell you that I joined in the 70s and it wasn't popular at that time. It wasn't a lot of accommodations. But again, because of the Constitution protecting the rights, religious liberty and freedom, they began to make accommodations. We were one of the ones that pioneered. We didn't have any chaplains. It was difficult at the time. For Ramadan, you know, 30 days of fasting. And eventually, we had some milestones that we eventually achieved in 1993. Our first Islamic chaplain for all of the armed forces. And he's at the table with us today. First, Senator Sanders, thank you very much for your comments. I think your words resonate, not only through this community in terms of the values that we hold in terms of what our religion espouses to, but also as a representative of the United States Senator. We are very pleased to hear from you these types of words. One of the concerns I think that as a religious leader, and I think I can loosely speak for most of us, if not all of us, that concerns us is not so much of the individual opinions of bigotry, but when those opinions become platforms, when they become a way of thinking throughout communities, then we become extremely concerned about that. The social and the economic concerns that could come about as a result of this type of thinking, of espousing or putting dispersions of negativity upon a group of people, an entire group of people, for the misgivings of a few. We've seen this many times before in history. And you think, as it was said recently, if we haven't learned from it, that we're perhaps doomed, all of us, not just Muslims, but all American citizens are doomed. So I thank you for taking the lead from our government yourself, Congressman Ellison, Congressman Carson, and many others being outspoken on our behalf as American citizens. As Imam Sharif said, I served for 22 years in our armed forces. I deployed to Iraq and Afghanistan, and I make no apologies for my service to this country. And I will go in any mosque, any synagogue, in any church and say exactly the same thing. I don't expect that we will always agree on everything, but I do expect that we will come away with a level of tolerance and respect for the way God created all of us at the end of the day, that we all deserve that. And differences of opinion is what makes this nation great. And so I thank you and Congressman Ellison for being here with us today and representing us so well at the level of government that we so desperately need. Thank you. So we are just one of many in terms of who have served this country. Really, Muslims have been in this country serving even before it was a country.  Imam W. Dean Mohammed picked up the American flag, literally physically picking it up, not just in words, but picked it up and said that if you all won't pick it up, I will. He's called America's Imam. First one to pick it up and now we know many have engaged and embraced that identity. He said we have an obligation to support, defend and protect our society. And from that, we also have in this room the commander of the Muslim American Veterans Association that was started a year before we brought him in, was able to get him on as the first chaplain, which we have many, many now. And also in the room we have Command Sergeant Major, who's just retired. He's a member of the board here. He's in this room right over here as well. Just spent 32 years, longest serving, active for the whole time. Yes. Commanded more than one-fifth of the army. Had the highest position for Muslim as an enlisted in the armed forces for us. We are very pleased with that. And he mentioned earlier the religious bigotry. But he would have with us right now one of our Christian brothers. We're very close. We thank him. He's been here many times speaking. He is one of the original freedom riders. And we know what that means. He's been through a lot. So, sir, if you want to have him make some comments as well. Senator, let me thank you as well at my voice to the many of us gathered here. As an appreciation for your tenacity, for your courage to stand up and speak as it often is referred to truth to power. The other thing is I'm just pleased to be in this sacred space at this sacred hour. To share the meaning of diversity and what immigration really is all about. How important it's been for this country in its evolution to become what it has become. Always evolving, always trying to get better, always trying to live out the truth. Has evolved from challenges after challenges to bring us to this point. And yet, having witnessed all that we've come through as a nation, we would be at this point in time where bigotry is rearing up its ugly head again.  Let me also speak from the context of my pastoral role. This is the city I grew up in. My two classmates sits over there. My high school classmates are Oliver Cromwell and his wife, Yutha, who are dear friends of mine. We were then high school together. We remember the days when I grown up in Southwest could not even go to some of the junior high or high schools in the district because all of that preceded the Brown versus Board of Education decision. And I tell the story how in junior high school we would have these little singer groups. That's how African Americans entertain themselves. And the first tenor in a group I had in junior high school was a fellow named Marvin Gaye. I thought I'd add that in. But to be here at this table and to watch, I'm always impressed, Representative Ellison, with your work in the Congress tonight. Thank you for your work. I want to thank those who come out to be a part of this, to sit alongside these two religious leaders. And I say religious though understanding we are called to be more spiritual than religious. We are at a juncture in this time period where we must recall that the struggle of America has been about liberation. And if we lose that, then no matter where this election goes, we are really in trouble as a nation. And to demagogue and make one people an issue of this campaign is ludicrous, it's sinful, and it's egregious. And today, we sit here today together saying that let us all walk together in a negro spiritual and not get weary. For there's a great camp meeting at the promised land. Thank you so much for being here. Senator, we want to give you a chance to weigh in on anything at this point before we go to hear from our Rabbi. I'm doing just fine. And we do a lot of things together in the way of interfaith. This is my sister, Rabbi Betia Stanloff. In fact, we're in some audiences that the labels, they just go away. Because we're dealing with human issues, things that are common to our nature as humans, which is first. So we want to give her an opportunity to make some comments. Thank you. I'm grateful for this opportunity to be back at Masjid Muhammad and to express my appreciation for everyone seated at this table and for everyone in this room. No one knows better than, no community knows better than the Jewish community, the danger of hateful speech and the danger of identifying an other and finding someone to scapegoat. And as we are all part of God's creation, we need to come together and cherish that creation because that is what God has asked us to do. And it's very hard to find a forum for people to get together and say everybody's getting along great. It's very easy to take a microphone and say who's the enemy. But it's hard to get somebody to say, look, we're all together again and we're all enjoying each other's company and learning to make the world a better place together. And I'm very privileged through my work to spend so much time with so many people in this room and to work together to build America as a country where we can all cherish who we are and cherish who we are together. Thank you so much. Thank you very much. Again, we know that one of our motos for this great nation is E Pluribus Uno. That says many, from many one. But we can reverse that and we can say from one many. And that connects us back to our first life and our common life as humans. We're human firsts and when the first human was here and we said it in the plural because we know everyone was comes from a male and a female. If there's someone that don't have that composition, we'd like to know about that person. But we know the firsts. We say Adam and we know that's a common, but we know all the other faiths. They may use another title, another name. But from Adam, he was given an identity and that identity was not a racial identity. It was not an ethnic identity. It was not a national identity, but as our first identity, to give it to him about the one who created him and him being the first, it was human. If that is our first, that should be our most important identity. And from him comes these many wonderful, beautiful expressions that we see of human life from the human family of Adam. They've all have contributed to making this a great and beautiful nation, this diversity that we have. And we say in our pledge, one nation, under God. So that says our nation, as we know it is very founding, we recognize, we acknowledge the Creator. We are at a table with people of faith, under God, indivisible. It shouldn't be divided with liberty and justice, not just us, but just do right by us, all of us. Do the right thing by all of the citizens that have contributed to making it as great as it is. And we're just only a small, small fraction of the diversity. We're just so grateful to the Senator for being of those who take this stand to come here. This is unprecedented to have this happen, to come to Amos, particularly here, and make this statement from this location. Senator, we're very grateful when we want to turn it back over to you. Well, let me just maybe conclude by saying this. All of us are proud that we live in a democracy. And the democracy people have different points of view. We learn from each other, we argue with each other. That's what democracy is about. But as you have heard this afternoon, this country has struggled for centuries. We have struggled for centuries and brave and courageous people whose names we do not even know, who stood up and said, we are all human beings. It doesn't matter the color of your skin, it doesn't matter your religion. We are all human beings. We have the same needs, the same loves, the same hopes, aspirations. We have kids who we want a great future for.  We're not going to allow that to happen. And that's where we are today. We are not going back. We are not going back. We have suffered too much. There's been too much division. We are going forward. And as a people, we are going to address the very serious problems that we face.  And that's what today is about. And thank you so much.


In this set of slides, we will look into cache poisoning attacks. In the introduction, we have seen the typical name resolution process. In practice, for efficiency reasons and to keep the number of DNS messages on the Internet lower, only part of this process might take place. Resolvers have a local cache of recently retrieved records that is used to answer frequent queries. Imagine students in a campus dormitory all accessing Facebook. It would be a waste of time and resources to resolve Facebook.com for each one of those requests. The result of this query can be served directly from the local resolver cache. However, caches are subject to aging, meaning that an entry, even when it is frequently requested, cannot reside in cache forever. Otherwise, the local resolver might miss updates to the record. DNS avoid aging by using a time-to-live field, or TTL, which gives an upper bound to the validity of a cache record. Once the TTL is expired, the resolution process needs to be repeated. Cache poisoning attacks aim at corrupting the information in the caches. Let's look to a first variant of a cache poisoning attack. In the past, alternative name servers could send, together with their request resource record, also so-called additional action with external information. The additional action could contain, for example, a resource record for a domain not related to the one that was requested. Let's see how this work. Assume that a malicious host issues a query for doblot.eckers.com, a forged domain. The local resolver will ask the authoritative name server of Eckers.com the a record for doblot.eckers.com. The malicious-alternative-the-name-server answers with the IP addresses of ...acres.com and an additional section containing a fake A record for another domain, say ..example.com. The local resolver will then cache both the information about ..acres.com and information about ..example.com. From this moment on, the cache of the local resolver stores unverified information. This means that all queries to ...example.com will now be redirected to a possibly malicious IP address. This issue has been solved by introducing the so-called Bayley-Wick Check, meaning that the local resolver checks that the additional section only contains information about the same domain as the requested one. If this measure is in place, the local resolver will ignore the update about ...example.com because it was carried into a reply related to ...acres.com. Let's now see another way of implementing a cache poisoning attack. Let's assume, in this case, that a legit host issues a query for ..example.com. Eventually, the local resolver will receive a reply from the authoritative-name-server for ..example.com. As we know, this answer will be cached by the local resolver for possible later use. Let's assume now that an attacker succeeds in forging a fake DNS reply for ..example.com. If the local resolver is fully intercepting the answer, it will cache the malicious mapping, and this is another instance of cache poisoning. Two aspects are key here. One, this is a timing attack. The attacker needs to be faster than the legit answer. Two, the forged answer needs to be well-formed to be accepted. To understand how this can happen, we need first to know when a local resolver accepted the DNS answer. A resolver implements the following mechanism to accept a response. An answer is accepted if the UDP port is the expected one. If this is actually an answer for a request we issued. If the answer has the right query ID, which is a field used for matching requests to replies. And last, if additional data are present, those must be related to the domain of the request. With this mechanism in place, how is then cache poisoning still possible? Cache poisoning is harder, but not impossible. Clearly, there is quite some guessing to be done from the attacker's side. Think about the UDP port and query ID, and the malicious answer needs to arrive at the right time as well. Let's rework our example in more detail. First of all, the malicious host can prompt a query about the domain it wants to poison. In this way, the attacker gains an advantage, because it does not need to guess a query. While the local resolver goes through the resolution process, the attacker has time to brute-force the query ID. The port number is often not a problem for the attacker, since it is often the same for all queries from the local resolver. Things were even easier in the past when resolver incremented the query ID by one for each request. If the attacker knew one valid query ID, it could simply brute-force a range of query, close of the initial value, and wait until its answer could eventually be accepted. This points us to a first observation on how to mitigate such attacks. Randomization of the query ID can get you a long way in making the guessing harder. It does not solve the attack, though. Let's see more. Let's add even more details to our example. This version of cache poisoning attacks was discovered in 2008 by Dan Kaminski, and it is considered one of the biggest vulnerabilities in DNS seen so far. These attacks require more preparation from the attacker side, but the gain makes it worth it. Let's assume the attacker has set up an authoritative name server for the target domain. This is allowed in DNS, because if everything works okay, queries for the domainexample.com will be asked only to the legitimate authoritative name server. This assumption is actually the problem. As in the previous version, the attacker prompts the resolution process. However, this time it does so for a random cell domain of example.com. This has two advantages. First, a random cell domain is unlikely to be already in the cache. And second, if the attacker does not guess the answer parameters in time, it can try again with another random cell domain. Again, as in the previous case, the attacker brute forces the answer hoping it gets accepted. The crucial difference in these attacks is in the content of the forge answer. The attacker can use the additional section of the answer to delegate the resolution process to another server. In this case, the malicious authoritative name server. If this query is accepted, the attacker captures the entire domain because from that moment on, any query to a subdomain of example.com will be answered by the malicious authoritative name server. If you're now asking yourself how the situation can be solved, a few considerations are important. First, as first response once the attack has been discovered, the resolver port has been randomized. Together with the query ID randomization, this blows up the number of tries an attacker should make to now guess both a random query ID and a random port. In theory, this should solve the issues. A study conducted at the University of Amsterdam has looked into how the query ID and the ports are distributed in real DNS traces. The scatter plot on the right based on data collected at one of the authoritative name server in surfnet shows that there is a good degree of randomization of those two elements. However, the picture also shows that some patterns can occasionally emerge like horizontal or vertical lines or higher density zones. This suggests that although the mechanisms for randomization are in place, they can occasionally not be used or there might be occasionally less entropy than we think. Let's now wrap up with two more considerations about mitigation. First, although we have not said it explicitly, the last two examples of cache poisoning attacks works because the attacker is able to spoof the IP of the authoritative name server. Blocking spoofing is therefore also part of the solution. Second and last, a considerable effort has been put into developing DNSSEC, which allows the resolver to authenticate the answers, therefore checking if they really are generated from the legitimate authoritative name server.


Deezus Mero, great to see both of you. I feel like we're in the showtime world, because you both have the exact same background that you use on your show. I appreciate that. And I'm starting this interview with a Garrett Cole type fastball. So I'm coming in with the high heat on you guys. Let's go, let's go. Which one of you is funnier? Which one of us? True question. True question, it depends on who you ask. I've mastered the art of the dad joke, you know what I'm saying? As I have for progeny project, you know what I'm saying? But, you know, it's apples and oranges. Like we have very simple humor, but there's certain sections where we kind of deviate. Deezus is really good with like deep, deep references that like, it takes me like a beat and I'm just like, oh yes, K and Ali, this had come from 1986. That ran for two seasons. That's what we're talking, you know what I mean? So there's, you know, there's, we're not congruent. We're similar for all my math nerds out there. You know what? I'll take it a step further. Let's use some Wash Yankee references. We're not different. It's just different, it's different types of humor, but at the end of the day, it's the same situation. It's like, let's go back. It's like the difference between bringing in Jabba Chamberlain versus bringing in David Robertson. You know what I mean? There's different uses. There's different depending on who's the batter, but it's not a matter of who's funnier. I think it's the chemistry when you get the two of us together. That's what people really like. That's when you get, you get a little bit of both. You get a little sugar and soul at the same time, like peanut butter on pretzels. Oh yeah. I'm glad you said that because that's one of my next questions. And I'm going to ask you guys to compliment yourselves, but why does this collaboration work? Why when you two guys sit down together, does the hilarity just ensue? Because it's natural. It's natural. It's from the Bronx. If literally we did not have this show and we were hanging out at the McDonald's across the street from Yankee Stadium, the jokes would be a little darker, but they'd be about the same.   And we're taking the viewers on a ride with us because everything we experience, we're experienced pretty much for the first time. So the viewers are experienced for the first time as well. Cause we meet people, for example, we'll go to award shows and we'll meet other celebrities. Like the whole time we're like, yo, look at that celebrity. Look at that celebrity.  Like this is a work event. I need you to calm down.  And we're just like, sign us up for as many. We're like, we're going to this and we get a free swag bag. Let's go. I get a free iPhone and a free food and like I get to hang out with Tay Diggs. Like sign me up.  But when you started the bodega boys podcast, what's the goal? What's the aspiration? Where are you guys thinking you're going to be able to take that? Just have fun. It was funny. Yeah.  Which was nice, which was great. Cause, you know, we are working class dudes. You know what I mean? So in that time, it was that little 250 bucks extra a week really made a difference. You know what I mean? Wait, wait, you got 250? I mean, 50 bucks a week was. No, you know what? We just went in blind. We didn't even know really what a podcast was. And then we did it and people just loved it. And it wasn't like, okay, TV show next. We were just like, all right, I guess, we were a little happy. We were like, I guess we could just do this podcast for the rest of our lives. And next thing you know, shout out to DJ A-Track, our homeboy. He had us host Fool's Gold Day Off in Brooklyn. So now we're hosting an eight hour mega concert with all these rap stars. We have no stage experience.  And after that, people were just like, yo, the world is kind of your oyster. And after that, we just ran with it. I've asked numerous baseball players this question. And I'm gonna ask it to you guys from a comedy perspective. When did you know you were a lot funnier than the average person? Ooh. I had a feeling when I was like around seven or eight just because I could make my uncles and my dad laugh.  Coming up next on the stage, we got a little Mero and I would go up there and do impressions of my uncles and like my family members and like everybody would just be in stitches. So I'm just like, okay, maybe this is, you know, and my brother and they would, they would call my brother and then come to do it. And he was just like, ah, you know what I mean? And my sister was even worse.  I used to do security for nightclubs way back in like the early 2000s. And what that would entail is maybe six or seven hours just standing in front of a building, just alone, no one else is out there. But every now and then someone, because New York had the recently passed smoking laws, people would come outside to smoke. So basically I'd have to do a tight five just to pass the time with this person I don't know.   And they're like, yeah, I know or whatever. But just interacting with people like that and just their reaction, they're like, wow, you're really funny.  And I was like, you know what, let's see where this nightclub stuff goes. And well, you see, I made a better decision. You both have roots in the Bronx. Yes. When and where is that Yankee fandom born? Is it from the crib until now that you guys are both Yankee fans? Yeah, absolutely. Absolutely, it's from the crib. But I really, like I went from like, not casual, but just like, I'm from the Bronx. I'm a Yankee fan to like, I'm watching, I'm looking at ERAs. I'm looking at base percentages in 96. Derek Jeter's rookie year, World Series, that really like cemented it. That stamped it for me. Like this is my squad forever. Like I'm not gonna be one of those kids that's like, oh, they got this guy, they got that guy. So I'm a fan of like the Angels now because they have Mike Trout. Like no, I will never switch my allegiances. The Yankees can go over 160,000 and I'm still a Yankee fan.  Cause like you like the Yankees, the Cowboys and the Lakers. And I was like, I'm actually from the Bronx. Like I'm allowed to like the Yankees. And my first experience liking the Yankees was because when my parents came in from Jamaica, my mother loved Don Mattingly and just, she would always just watch back when the games were on. Let's date ourselves here. WPIX, who had the World Trade Center, rest of the piece as a logo. And after Yankee games came on the honeymooners, but my mother will watch that and just, I would just sit there watching over her and then she'd get the, she got me the onesie, the Don Mattingly onesie, which I still have. And it was such a weird time in New York. The Yankees were not the most popular team at the time. People really loved the Mets and I think CBS owned the Yankees and it was just like kind of a mess and they were signing players. But that whole time I always was just like a Yankee fan. I remember my father would come home with Mets tickets to go to Shea Stadium and I'd be upset. And I'm like, Yankee Stadium is literally across the street. Why are we going all the way to see the Mets? So I've just been a Yankee fan like that. And then it got even worse when I moved out on my own in like around 09, my day would start with me logging on to Yankee blogs, then immediately logging on to Red Sock blogs to see what they were up to and then checking the weather and then checking the email. Just living and dying. Just my TV's on Yes Network all day. It's on in the background. They're talking about sports money, no matter what they're talking about. I'm just listening, just taking in the stats. Can't even enjoy the game because I got the ER raise. My girlfriend's making fan graphs. It was a dark time, but 09, listen. Worked it, worked it.  Where did you say your TV is on all the time? What station is it on for baseball? On the Yes Network, which is- That's right. Listen, as we said- Home of the Yankees. Home of the Yankees, and one of the most amazing stations ever.  You made it.  Okay, as I said before, we interviewed Obama. All right, former president, I get it. You guys between from the Yes Network social media or even a Yes Network mention or the time they showed the Deez and Mero ad on the Yes Network. You see people on Twitter like, hey, I love those guys. And you're like, hey, thank you for a 1-1. Thank you. Thank you. Joe from Staten Island, yeah. Hey. The feeling is mutual and not that you ever had to prove any of your street cred but the Don Mattingly wants this story. That's a winner. Tell that story every time. Every time. But I wanted to ask you guys about your show and I even see it right now. In terms of your wardrobe, you guys are almost always making sure you're rocking some Yankee gear, whether it's a sweatshirt or the cap or whatever.  All the time. All right, shout out to Satya San, our stylist and she knows the only teams you could possibly bring us are the Knicks, the Yankees, the Giants. I believe you all right with the Rangers? Yes, the Rangers. Okay. And that, but- No, I moved to Jersey, I'm not a doubles fan. Yeah, but no, we, like Yankee and then Yankees, Yankee has to go with everything. So we, like if you look at our hat collection, we literally have the Yankee hat in every color, every material, I have one with wool flaps for I guess winter games if those ever happen. We're ready. Yeah, Jack, we got Yankee hats that would make old school Yankee fans mad. Like the Yankee hat should not be fuchsia, covered in flowers, it should not exist. I'm like, it's limited edition, it's limited edition. Come on. It's for Key and God was birthday, come on. It's for my dental shrubbery Valentine's Day but throwback Jersey. No, Mero, you mentioned 96 and I gotta imagine that might be the answer to this question. Do you guys have signature moments in your life as a Yankee fan that when you're thinking back, this stands out? The entire 96 series, going against the Braves, you know, glaven, smoltzmatics, you know what I mean? Like that team was a juggernaut and losing the first two at home, thinking like, oh man, this is all over, they're going to Atlanta, if they drop one in Atlanta, this is all over and then they come back. And then Derek Jeter obviously has the infamous, or not infamous, famous spin throw, you know? And then for some reason, I vividly remember Wade Boggs almost getting impaled by a broken bat that like somehow altered the course of that game and I was just like, no! I was like, if that bat doesn't hit him in the thigh, this guy's out and we win this game. And like all these little, and that's what I say, like that stamped me as like a real, like I'm watching the game as opposed to just sitting on the couch with my dad being like, yay! Anytime the Yankee score. How about you, Deesus? What stands out for you when you're Yankee? There's so many, there's so many and they're not all good. Like I was actually there for when Jabba Chamberlain, his first starting pitching start, which didn't go well, but it was cool to be there, you know, just a real Yankee experience. But my favorite would be Derek Jeter in 2011, his 3000th hit, because my girlfriend at the time was like, I'm gonna get good tickets. And I was just like, all right, I guess we're going like Lodge or Mezzanine. She got like five rolls behind home plate. So if you watch the Yankee Yes Network rebroadcast, you can see us on certain camera shots. And then Jeter just did what he did. Like I was expecting, you know, like one, maybe two, come on, Jeter gave you a completely magical day. It was just one of the, it was one of those days where at the end of the game, you're just sitting there, they played New York, New York, you don't wanna leave the stadium and they have to come tell you, you gotta leave. And you got tears in your eyes, like I love this place. I love this place. Wow, I was at that game too, and I was there with my first son. It was like a Father's Day gift. And if you remember, like Derek Jeter was like on the hunt for 3000 and then the game before that game got rained out. So I had tickets to the game that got rained out and the makeup game is where he made the 3000. Hey, and it was a Homer. I was like, you can't write this stuff. You know what I mean? So I got my brand new baby. I'm like, yeah. I was dropping off it like, you know what I mean? Like, yeah. Derek Jeter. Come on, it's muscle memory now. I was in the studio that day for the S network. And I have to say I'm jealous of you guys and anyone else because as much as we can simulate the game from the studio to see what Jeter did. And I had covered him since his rookie year. I had written a book with him. So that was a game where I lament not having the ability to be there. And I remember Michael Kay's call, history with an exclamation point. I subsequently said to him, did you have that in your holster? Were you ready to go with that? And he said, no, it just came out. Wow. I always thought he had that prepared. It was so perfectly timed and it was wonderful. I was like, is this a Disney movie? Because it's like, you know what I mean? Like it's too perfect. You know what I mean? Like, oh man, and I got tinnitus from the arena leaving there. It was so loud. Like the building was shaking. It was nuts. So a couple of years ago, MLB network hired you guys or let you guys be their reporters for the day. You're at Yankee Stadium. I know you interviewed Aaron Judge. You interviewed Cameron Maven for two kids from the Bronx who have that passion that you guys have. What was that experience like? Oh, man. Getting on the field. Just getting on the field. Like walking into like the Vatican.  I did like a 20 minute selfie video. Like you kind of feel like you tear up a little. Cause when you just realized like you've always been seeing it from the stands and now you're on the actual field. And I remember we played in C.C. Sabatio's charity softball games. We met Mariano Rivera. We met Aaron Judge. Like even to this day, I look at those photos and I'm like, no way this happened. Being interviewed on the field, players know who you are. They're coming up to you like, they're like, we love the show. And even that, that takes you to a next level. And then when we're actually doing the interviews the fans in the stands see us and we're like, you're, and then like the people in the stadium answer back with a, you're these Yankee fans know us and rock with us. That, like I said, you have these moments where you're just like, okay, I'm on TV. I'm a celebrity, quote, unquote. But then you have moments as a New Yorker, as a Bronx resident, where she's like, yo, we are doing something special. Listen, so wild. Like these are saying it was bananas. Everybody who's anybody in the Yankee universe was there. Like I had Brett Gardner. Gardner came up to me. It was just like, hey, don't embarrass yourself out there. I was just like, yes, yes. I was like, yo, Gardner B, I love you. We're yelling at Brian Cashman. We're like, our guy, our cash man, you're, and he's just looking at us like, I don't know who they are. I have no, I have no idea who you are. Thank you for the enthusiasm. So there was one moment where Ken Rosenthal from MLB network was by the batting cage and you guys started calling him Bob Lorenz. Who, who, who, who? Bob Lorenz! So what's always behind that, that joke? It wasn't even a joke. We literally were confused. We literally, it happens all the time. It's usually my fault. I'm mixed up people's names. And it's too, it's too fast for Mero to correct me. Cause sometimes I just get, you get so excited.  Ken Rosenthal. And he's like, no, no, no, that's not this part. Oh, get it together. Get it together. And I was like, Ken Rosenthal. No, Ken Singleton. I was like, no. I apologize. It's funny cause in my brain, he's Kenny Bowtie. So I was going to be like, hey, Kenny Bowtie. And then when he called Bob Lorenz, I was like, oh no, no, no, Mero, you're wrong. It's Bob Lorenz, it's Bob Lorenz. But see, any time we do that, that's not like, that's not as insulting. So when that's just, that's actually a compliment cause that means we know of the person that we named. We just didn't use it correctly. So I'm explaining that to Bob when I see him tomorrow because we did have some fun with that. We played that clip in his office and we laughed. I wanted to get back to your show though. You mentioned your interview list. You've interviewed a former president in Barack Obama. You interviewed a man who became a president in Joe Biden. You've had Chris Rock, you've had Eddie Murphy. What has been some of your most rewarding interviews? Ooh, good question. That's a good question. I feel like the magnitude of the guest matters with Obama, obviously, with Joe Biden, obviously. But the best thing about it is that we get to kind of humanize them, right? They go around on these press tours and they have these kind of can dancers. And you as a sports journalist, you know. Like, cause athletes do it the most. They're just like, I'm just trying to help the team one day at a time, just trying to find, just trying to wait for the right pitch, et cetera, et cetera, et cetera. It's all these very canned cliche answers. When we interview them and we get off the cuff stuff, that's so satisfying.  And you take something special away from every interview, but I think one of the, probably one of the most important interviews we did was at the beginning of the pandemic, we had Dr. Fauci on. And it was different because he wasn't able to talk freely on the daily briefings, but he came on, it humanized him, it made him seem like more than just Dr. Fauci, you found out that he's a guy from Brooklyn, he watches baseball and it introduced him to an audience that probably would not even hear about him. Cause like some of our audiences not watched the news whatsoever. So he got on there, he's explaining, you know, just COVID at the time when we knew nothing. And I remember a neighbor of mine said thank you for having him on because he explained the difference between allergies and COVID, which at the time we didn't know. We thought anything could be COVID.  But also the David Letterman was just an amazing interview. The hair on your arms was up the whole time, like you are talking to a legend right now and he's giving you high praise. Well, his respect for you and that interview was at a high level too. And he congratulated you guys for what you were doing. And I could just see the mutual admiration be between both sides of you.  And you could see that Letterman would go right to the edge sometimes where he might not, he might want to give a guest a little more grief.  Yeah, and that's high praise because we all grew up with Letterman. I remember, you know, going to a library and taking out the best of the top 10 list or just seeing, watching him and waiting for him to do those jokes or his monologue. So then for him to say, not only is he enjoying what we're doing, but he wishes he had the freedom to do that. Imagine what his version of our show would be like.  It's funny because he had an impact on us and then we're retelling stories of stuff. Because I had cable growing up in the Bronx, you know what I mean? Like, David Letterman was at night, you know what I mean? But it just so happened to be great. And I was a graffiti kid in the 90s, you know what I mean? And he did graffiti on the front of his desk one time.  And he was just like, I don't remember doing that. I was like, I do. Hey, before I let you go, a couple of quick more questions. I wanted to play a quick game with you. And I played this with Paul O'Neill, but I'm going to pattern it to who you guys are. The warrior, yes. O'Neill and I both love music. So I asked O'Neill, if I gave him a baseball player, tell me who that person would be in the music world. So when I asked him, Derek Cheeter, he went Will Smith and Justin Timberlake. When I asked him, Mariano Rivera, he went Bob Marley. But I want to do this baseball to comedy with you guys. If I said who would C.C. Sabathea, a future Hall of Famer, a leader, a guy who's got diverse talents, who would he be in the comedy world? Who would you guys latch onto? Ooh, I would say, I would say, I would say Eddie Murphy. Because it's a guy who's had longevity, had success, had extreme success, but consistent success, you know what I mean?  Put the work in, yeah. That's high praise, but we have high praise. We personally know C.C., but even just watching him, what he did for the Yankees and what he was doing in Cleveland, and just how he used to throw teams on his back and just leave it all out there on the mound, that's what you want from a comedian. You want at the end of a show, your cheeks hurt from laughing so much. And he gave you that every time he got on the mound. Listen, that game against the A's, man.  Couple of pitches in there. You could tell, he's a warrior, man. Like he really wanted it all the time. And that's what you want in a guy that's playing for your team. Now, one more. Let's flip it and go in the other direction. Who would Dave Chappelle be in the Major League baseball world? Ooh, who would Dave Chappelle be? That is a good question. Dave Chappelle. OK, so he's talented, longevity. Active or? That's a great question because I'm going to cheat a little here. I already have one. I think Dave Chappelle, I think Roberto Clemente. A guy who is just up there on a mountain. A guy who spoke his mind. A guy who was different than anybody else that you just wanted to laser in on. Now, I know that that might be a little bit before your error, but I think Dave Chappelle, I think Clemente. Listen, my dad was a huge Clemente guy.  He was also a big Tony Pena guy. But I would say Suzuki because he rarely misses. He rarely misses, you know what I mean? He's just, Merrill's good at this game. He's good at this. He's good at his answers. I'm trying to like, I don't want to pigeonhole him because I really want to just get the right answer. I don't want to say Derek Jeter. That seems like too simple. You know what, I'm going to say Bernie Williams. Because Bernie Williams, he wasn't the flashiest player, but when he had to, he made it happen. And Dave Chappelle, that's his style. He doesn't come on like, rah, rah, rah, rah.  He just waits and you process a thought and you're like, wow, yeah, you're right. I never thought about that. It's just like that. Also, because I love Bernie Williams because he used to, you know, play the bass. Little jazz guitar? Thank God. Your show is on Showtime, Deezus and Mero. You've had wonderful success. You're still young men. What's left? What's on the list of things you're still want to accomplish? Oh, man. Maybe retire to the Dominican Republic and run the Yankees Academy out there. Your Academy? I would love it. I would love it. Shout out to Brian Cashman. That's your future. That's what you want to do. Brian Cashman, send me out there. Send me back home, baby. You know what I'm saying? I'll find you the next Jason Dominguez. Even better? Watch, watch. Keep your eye out on the Yankees field team. We might be there when they're doing YMCA. You won't know the difference. It's going to be us. I like that. I like that. You're going to sneak in there. Now, before I know I have to finish with the baseball question, I need a prediction from you guys. I want a team prediction for 2021, which is easy. But I also want you to tell me something that you think might happen with the Yankee player the rest of the way. OK. You know the team prediction already. Come on, come on. Yankees all day, 27 rings, bro. But something's going to happen. Ooh. What's I going to think? I believe that the Yankees will make it to the ALCS. They'll pick somebody up, get the pitching in order, and make it happen. Or somebody's going to break out. It's either going to be Domingo, it's going to be Davey. One of them is going to break out. And I predict, I predict this is going to get in the season. And I feel like it hasn't come to fruition yet. Post-All-Star break, Gary Sanchez is going to go on a tear. I love Higgy. Love what he's doing. Love him catching coal. Stay right there. You're doing your thing. But Gary is one of a kind. Don't sleep on him. He's in a bad slump. You know what I mean? A lot of people say he's in a bad couple of seasons. But I still believe in him. I think it's early, but I think this Yankee fan base is going to be introduced to a little thing called a pennant race. I think it's going to be hot and furious. And I think it's going to be one of those weird ones where the Yankees win. But they win it while the game is on. And the Yes network is like, hey, they won the pennant. And they don't really get to celebrate. And all the Yankees fans are all the Yankees afterwards. They're like, you know what? We're not celebrating yet. The job is not done. We're going to continue. And we celebrate when we get a trophy. Yes. That's how you play baseball. Oh, the Orioles beat the Red Sox. So the Yankees are your pennant. You're like, OK. Exactly. You're mathematically limited. You're like, OK. OK, top of the fourth. All right, cool. No doubt. Hey, guys, this has been so much fun. I knew I would laugh my way through this interview. And I love your passion for what you do. I also love your passion for baseball. And maybe down the line, we can all catch a baseball game together. And that would be a lot of fun. Absolutely. So much for Dex from Amazon. Thank you, Jack. And the Yes Network. Oh, it's so much fun. Yo, Jackie and the Yes Network. Yes, we love you guys. It's going to be weird if we actually go to a baseball game in person, though, because I feel like I'm trying to probably touch you. To see if you're real, right? Yeah, like, are you just on my TV? I will not be wearing a tie. So there will be a different outfit. It'll be something like this. All right. Nice. Look casual. Love it. Thanks again, guys. Thank you.


Hi Chris, aka Nork Survivor. My name is Nicole. My YouTube channel is Life Support. I'm subscribed to your channel. I was scrolling through my information earlier today for my alerts and I had when I came across an alert from you asking you open up a platform for your subscribers or maybe for anyone that is a survivor of narcissistic abuse and relationships to share their story. So I said, why not? Especially if I know it's going to help somebody, if it's going to help to encourage you, if it's going to help to encourage somebody, why not? So I grew up, I was born into a narcissistic family. Not everyone was narcissistic but at the end of the day when I did my research and did my homework, I was subject to a lot of SRA, Satanic Ritual Abuse as a child. And so I've never had a healthy relationship, never got a chance to experience a healthy intimate relationship. It was always made to believe that I had to be a certain way in order to receive love. That started with my dad. So how did it affect me? How did it affect me down through the years? It affected my health.  I had caught a fungal infection. My hair was really long. I have been growing logs for years and I caught a fungal infection in my scalp. So I just cut all of my hair off so I could deal with my scalp issues and heal my scalp. I developed high blood pressure. When I met this person, we were both in addiction and he had high blood pressure. I didn't think anything of it because I never had high blood pressure. I never like salt. I never engaged in eating too much junk food. I always took the healthy route, the more expensive food of purchase, choice of purchase. And so it never dawned on me that that would go from him to myself. So now I'm seeing a chiropractor. I actually have to go see her tomorrow because I have a big knot on the back of my shoulder blade. It's like a big piece of meat that doesn't belong there. When I used to sleep in the bed with this person at night, I would feel the best way to describe it is like negative energy. Like a sting, like a voltage shock, like how lightning would hit, but like a sting. And we weren't even touching in the bed. We would just be sleep on our own size of the bed and I would feel this and I would immediately get up and go into the living room and sleep on the couch. Which then led me to permanently sleep in a different room, sleep on the couch until I made my exit plan. And I gained weight. I developed skin problems. I don't know if you could see it right there. Never had bad skin. I have ointment on this. My doctor said that's from wearing the mask. But the skin problems are like it's really deep embedded in my skin and I'm like what? I never had skin problems. So those are just a couple of things that I have endured. Right now I'm on my healing journey and what I do most and foremost is I try not to think about the things that I've gone through. I try to keep telling myself that it's in the past, it's behind me. And how I remind myself of that is every day I make sure that I care for myself properly. I could spy the nurses now just by their conversation half the time by their body language because they always have to be the center of attention. And when I go out it just really greaves my heart to see couples and the female. You can tell that she's the victim of it. You can tell that she's suffering from self love and she's willing to be treated any way just to be in the presence of evil. So I hope that that was able to help. You better get to know me. I look forward to working with you in the future. Until next time, breathe easy, take care and have a blessed one.


So, back in December of 2021, the very first Starbucks store in the company's history voted to form a union in Buffalo, New York. And as of today, 366 stores have voted to form unions, which is a rate of progression that is genuinely astounding. And it's even more impressive considering the ways in which the company has gone above and beyond to break up these unions, including the CEO himself going out of his way to denounce unions and scold workers for daring to even consider forming a union. As Julia Connolly of Common Dreams explains, Howard Schultz has played a central role in attempting to quash unionization efforts at the company's stores across the country. After workers in Buffalo launched efforts to form a bargaining unit in 2021, the Starbucks co-founder flew into the city to hold an anti-union meeting with employees just before they were set to vote on the issue. The CEO, who was scheduled to leave the company in April, has been personally named in some of the 75 complaints against Starbucks, filed by the National Labor Relations Board General Counsel, accusing the company of illegal union-busting tactics such as intimidation and retaliation. And we've talked about the myriad ways in which that Starbucks has tried to bust up these unions. That includes cutting benefits, cutting hours, so employees no longer qualify for benefits on top of that, firing employees, intimidating employees, offering exclusive new benefits packages to non-union employees, closing stores down. I mean, they've gone above and beyond, and they've been so shameless that the National Labor Relations Board quite literally demanded Howard Schultz, the CEO, to issue an apology to workers and explain to them what their legal rights are as employees. But what does Howard Schultz say about this unionization effort in his company? Well, he is dismissing it and essentially claiming it's not because of the bad working conditions and low pay and bad benefits. Just because these employees, you know, they're just angry at the world. That's literally what he said, quote, sometimes Schultz struggled to understand why his unionizing workers were so angry, quote, they're angry at the world, they're angry at their situation, which I understand Schultz said in an interview.  You don't know why your employees are unionizing, but yet you understand that they're angry, angry at the world and angry at the situation. If you put two and two together, you'd see that this situation has been created for them because of late stage capitalism and greedy employers like you, who exploit them, you become extremely rich, purchase mansions and yachts while they can't even afford rent, while they struggle to get by. And you just can't understand why they're fed up and they're unionizing. Howard Schultz is genuinely a dipshit and we already knew this, right?    He just talks at them and scolds them, but he doesn't actually listen. Now, on top of that, he's refusing to be held accountable for his union busting tactics. HuffPost reports Bernie Sanders, who chairs the Senate committee on health, education, labor and pensions, had sent a letter to the coffee chain on February 7th, asking that Schultz appear on Capitol Hill next month. But in a response Tuesday night, Starbucks offered instead to send another executive, AJ Jones, the second vice president and top spokesperson.  You see, he likes to talk tough and puff out his chest when he's talking down to his employees who he loves to exploit, but when it comes to answering questions before a senator, sorry, I'm going to send in a surrogate instead, who has all of these corporate talking points memorized. Despicable, just genuinely despicable. Now, Bernie Sanders responded to his refusal to show up. And just to be clear before we get to Bernie's response here, he wasn't subpoenaed, so he's not breaking the law by not showing up. But when a Senate committee invites you to testify, you should probably testify before them. But Bernie Sanders is tacitly threatening to subpoena him, since he didn't show up. Here's what Bernie Sanders said via Twitter. It is disappointing, but not surprising that Howard Schultz, the CEO and director of Starbucks, has declined an invitation from a majority of members on the help committee to testify at a U.S. Senate hearing to answer why the National Labor Relations Board has lodged over 75 complaints against Starbucks for violating federal labor laws. Apparently, it is easier for Mr. Schultz to fire workers who are exercising their constitutional right to form unions and to intimidate others who may be interested in joining a union than to answer questions from elected officials. If Mr. Schultz believes that a multi-billion-dollar corporation like Starbucks can break federal labor law with impunity, he is mistaken. As the chairman of the Senate Help Committee, I intend to hold Mr. Schultz and Starbucks accountable for their unacceptable behavior and look forward to seeing him before our committee. And there it is right there. We will see you before our committee. We invited you as a courtesy to be polite, but since you rejected our invitation, well, maybe we subpoena you and force you to testify here. So you personally can explain why you're breaking federal labor laws. So I love this story. I love that Bernie Sanders is holding his feet to the fire. Every single large multi-billion-dollar company who does this, they should be held accountable. And Starbucks, it's not like they're an exception to the rule, right? This is common. But they've been so shameless in their union busting that I think that it would be who've senators like Bernie Sanders, who are pro-union to make an example out of him in particular, because you can't get away with this. If you can get away with this, then what's the point of these federal laws? So kudos to Bernie Sanders for calling him out and shaming him. But next, we need to see the subpoena because this can't stand. He needs to answer for his law-breaking. If you or I broke the law as shamelessly as the CEOs, we would go to jail. But because it's a multi-millionaire, potentially a billionaire, I don't know how much he's worth. It's fine. He'll just send in a surrogate, not acceptable. Subpoena him and bring down the hammer, Bernie.


The Australian Open Women's Draw, it's the first slam of the year, it's happening, it's happening in a couple of days time and we've got a lot of big names playing obviously, a lot of big names playing but some big names are also pulled out, so let's go through the withdrawal list to start. So, withdrawers from the tournament, Bianca Andrescu, she's pulled out, Jen Brady, the finalist from last year, she's also pulled out, Mukova has pulled out, also Carolina Pushkova, the biggest name on the women's side in terms of ranking, the number four in the world, she pulled out, Potoroska also pulled out and Serena Williams has also pulled out, but you can also add Venus to that list as well. Top of the draw here, we've got Bardi, she takes on a qualifier in the first round, winner of that match takes on either Gracheva or then qualifier in the second round. Then we've got Martin Kovac vs. Davis, winner of that match takes on either Potopova or the number 30 seed Georgie in the second round. Then we've got the 22nd seed Benchich vs. Mila Genović, that's a tough match, winner of that match takes either a qualifier or Nisimova in the second round, who's in really good form right now in Nisimova. So, got to watch out for her, then you've got Jastremskir vs. Bregel, winner of that match takes on either Osario or the number 13 seed Osaka. So, you can see straight away, we've got some massive, massive matchups in this section of the draw. You've got Benchich vs. Osaka, they've had some good rivalries in the past and some really good results with Benchich fans because Benchich seems to know how to beat Osaka, very tough for the defending champ. And of course Ash Bardi at the top of the draw there, could be Bardi vs. Benchich, could be Bardi vs. Osaka, two favourites. I mean that's going to change now, the favouritism will change because the draw is brutal. Second quarter of the draw, a second section of the draw, we've got Djabor, the number 9 seed taking on Diaz, winner of that match takes on either Zanevska or Djuvan in the second round. Then we've got Pera vs. Aleksandroba, winner of that match takes on either Kalinini or the 21 seed Pagula in the second round, who was a quarter finalist of last year. Then we've got Kudamatova, the 28 seed taking on Lu, winner of that match takes on either Rusei or Paulini in the second round. Sastavich vs. a qualifier, winner of that match takes on either Maria or the number 8 seed, Sarkari in the first round. So this is interesting because based on form, Kudamatova is in the best form out of all of these plays, maybe Sastavich as well being unseeded. Sarkari is in a little bit of weird form, Djabor is a little bit injured as well, so we don't know what to expect from the big names in this one. So maybe someone sneaky could get out of this. Third section of the draw now, this is the second quarter of the draw, we've got Krejkova, number 4 seed taking on Pekavich. Winner of that match takes on either a qualifier or Wong in the second round. Then we've got Vekage vs. Risk, interesting first round there. Winner of that match takes on either Schmidlova or the 26 seed Osterpenko. Then we've got the number 24 seed Azarenka taking on Udvadi. Winner of that match takes on either Marchich or Taikmin in the second round. Then we've got Puttenseva vs. Tan, winner of that match takes on either Ferro or the number 15 seed Svedolina, down the bottom there, number 15 seed. So in this part of the draw we have potentially Azarenka vs. Fedelina, that could be happening in the third round. Also Krejkova, people are sleeping on Krejkova. People are sleeping on Krejkova, I would be watching out for her, she could be a very dangerous player. So we've got the last part of the draw here, we've got Kennen taking on Madison Keys. Woo, that's a big first round. Keys vs. Kennen first round, winner of that match takes on either Minnan or Christian in the second round. Then we've got Van Udvank vs. a qualifier, winner of that match takes on either Wong or Goff in the second round. Then we've got Tormoi vs. Flipkins, winner of that match takes on either Parry or Kostruk in the second round. Then we've got Zeng vs. a qualifier, winner of that match takes on one of the toughest first round matches between two players, Tomjanovic, taking on Bodosa, the number 8 seed. So that's a very tough first round for Bodosa. Keys has been in good form, she might actually upset Kennen in that first round. Of course, Goff's in good form, Bodosa is someone to watch out for. So this is an interesting part of the draw. I think the bottom half of the draw, because of course this section of the draw take on the Kredgekova section of the draw. Again, it kind of really opens the door for Kredgekova. I think Kredgekova has, out of the top four seeds, at this stage has the best draw. The bottom half of the draw now, let's go through it. We've got Consomate, number six seed taking on Sinirkova, winner of that match takes on either Talzin or Sharma in the second round. We've got Konju versus Rogers, dangerous unseeded player that I mentioned at the start of the show. Winner of that match takes on either Qualifier or the number 27 seed, Collins, in the second round. Then we've got the number 19 seed, Merton, taking on Zvona Rava, who used to be, well, 10 years ago, she was one of the best players in the world. So, interesting first round there. Winner of that match takes on either Dodden or Bogu in the second round. Then we've got Golovic versus Zhang, winner of that match takes on either Diaz or the number 12 seed, Rabakana in the second round. Now, Rabakana is the informed player in this part of the draw. Maybe Consomate as well, they're probably the two big names to watch out for in this section. But obviously you can't count out players like Rogers, Collins we haven't seen, but who knows what she can do? Mertens as well, but I would say that Rabakana and Consomate are the two big ones, and not just because they're the seeds, the high seeds, but also because they're in good form. Rabakana had a great week last week, Consomate had a great week this week. Alright, so this part of the draw is probably one of the most exciting parts of the draw, except for the top half, or the top section, right? This section of the draw, we've got the number 14 seed, Halep. She takes on Fretch in the first round, winner of that match takes on either Hadid Mayer or Qualifier in the second round. Then we've got a Qualifier versus Covnich, winner of that match takes on either Sloan Stevens or Emma Raducanu. I do not know Stevens was playing, otherwise I would have said that she was a dangerous unceded player from the get. Two U.S. Open Champions are playing each other, that is a nightmare for Raducanu in the first round. Sloan Stevens is dangerous, especially because she just got married, she's probably loving life right now. She'll just come out here carefree and that's dangerous. Then you've got Zedinsek, the number 29 seed taking on Ruz, winner of that match takes on either Watson or Sharif in the second round. Then we've got a Qualifier versus Cornei, winner of that match takes on either Boral or the number 3 seed Mugaruta in the second round. WTA Finals winner last year, Halep won a tournament last week, of course Raducanu, everyone's going to keep an eye on her. Especially if she plays Halep, that would be a blockbuster, but I don't know if we're going to get it because Sloan Stevens is in the way. Maybe Stevens causes some upset there, but Halep versus Mugaruta could be very interesting as well. Of course that was a semi-final from a couple of years ago. Let's go down to the bottom section, the bottom corner of the draw. We've got Shrionsek taking on a Qualifier, number 7 seed, winner of that match takes on either Saval or Pedestan in the second round. Then we've got Lynette versus Sevastova, winner of that match takes on either a Qualifier or the number 25 seed Kazakina in the second round. Then we've got the number 20 seed Kovitiva taking on Kosteja, winner of that match takes on either Doi or Kachova in the second round. Then we've got Anderson versus Stoza, the last Australian Open Singles matches for Stoza. Winner of that match takes on either Bondair or the number 10 seed Pavlia Cenkova, who we haven't seen for a while Pavlia Cenkova. She got Kovit, pulled out of a bunch of events this week, so we'll see her for the first time this week, coming up this week. Players to watch out for, I think Shrionsek's got this very good draw. Kazakina's dangerous and maybe the Qualifiers that come through will find out if they're dangerous, but I like Shrionsek's draw. I think she's got a great draw, Shrionsek. Alright, and then the last part of the draw, we've got Kerber, the number 16 seed taking on Kinepi. Winner of that match takes on either Buzkova or a Qualifier in the second round. Then we've got another Qualifier taking on Garcia. Winner of that match takes on the Wildcard Inglis, well the number 23 seed Fernandez in the second round. Then we've got the number 31 seed Vondrusova taking on Han. Winner of that match takes on either a Qualifier or Sansa Nova in the second round. Then we've got Lee versus Wong. Winner of that match takes on either a Wildcard in Saunders or the number two seed Sabalenka in the second round. So straight away Fernandez versus Kerber. Third round matchup, great, great matchup there. Very interested to see how that plays out. Sabalenka versus Fernandez could be a fourth round as well. So again, it's not easy, but it's like this is two, it's top heavy and bottom heavy. These two, like the two, the first section and the eighth section are very, very stacked in terms of who could get through and who could win. And of course this section of the draw as well will take on the Shriontech section. So we could be getting Shriontech versus Sabalenka. We could be getting Shriontech versus Fernandez in the quarterfinals there, which is something that we saw last week with Shriontech versus Fernandez. There you go, there you go. That is the women's draw for 2021. Who do you think is going to win? Who do you think is going to win the draw, win the match? Who's got the easiest part of the draw? I keep saying Shriontech. But again, I don't think you should sleep on Kredgikova. Muga-Rutha as well. She's got a pretty good, pretty good draw as well. But I don't know. I mean, Barty and Osaka, the two favourites are going to clash early. Maybe, maybe they're not the favourites anymore. Maybe it is Muga-Rutha. Maybe it is Kredgikova, but it's going to be very tough for Ash Barty and Naomi Osaka to win this trophy. It's going to be the toughest draws by far. Sabal Egg has got a tough draw just because she hasn't played well. So we don't know what to expect from her, but... I mean, on the chat, who do you think is going to win this draw?