What is going on everybody? It's Stas here. Welcome back to another video. So in today's video, we're going to be doing an overall market update, taking a look at the Dow Jones, the S&P 500, and the Nasdaq. We're also going to be doing a trading update talking about what I personally did today on the 10th of June in 2019 in terms of my trades, as well as taking a look at some other stocks and ETFs that I'm personally watching and looking to trade here, as well as giving my insights on the market right now. We're going to be breaking down some technicals here. And before we do get into that guys, for everybody out there that finds value in these videos, if you enjoy the content, find the content helpful. Feel free to go down below and hit that like button. It really supports me and supports the channel in general. And I really do appreciate every single one of you guys out there watching this content, liking the content, subscribing to the channel, the community we're building here is absolutely awesome. So let's just get right into the topics of today's video. I'm excited to record today guys, the S&P 500 ended up going up 13 points today, up 0.47%. The Dow Jones industrial average up $78 here, up 0.3% at the close, not as good of a day compared to the S&P 500. And the Nasdaq right now, it's down about $2, but this is the future. Let's see exactly where it did end up closing in up. If I do recall correctly, yep, we did see a very significant pullback here towards pretty much the middle of the day ever since we started peaking at this point at $7,500. So let me see really quickly here, we closed that about let's say, actually right about where we are right now. So the Nasdaq closed at about $7,515 today. So overall today guys, across the US markets, the three major indexes that we follow, and I personally track on this channel, we had a day where we gapped up this morning, the futures were up, we peaked in the middle of the day, and then the market started to taper off from there. So we can see one thing here that I'm seeing on the intraday chart for the SPX is take a look at where we closed or actually not closed where we peaked on Friday. Take a look at the S&P 500 resistance from Friday. It was at about 2885. And take a look today, we got back up until the 2900 level on the S&P, and we leveled, we bottomed out at that resistance, but we're holding it at this point as a new support at 2885, and we ended up closing right above that level of support. So what this is telling me is the S&P could be looking to gap up here tomorrow since it did kind of level up from that resistance, right? You guys kind of see what I'm talking about here. And if we go out to the five day five minute very quickly, we can see that gap up again put us on top of that old resistance as a new support at 2885. And we're riding the 180 S&P very nicely closing above it on this five day five minute chart. So that's a pretty good sign that the uptrend is still intact here on a shorter term basis for the S&P 500. Let's go over here to the 184 hour chart very quickly. Let's break what I'm seeing down here. So we all know a couple of days ago at this point, we ended up holding the 2730 level of support. And from there, that's where we started this ridiculous rally that we've been on in the markets over the past five or six trading days at this point, we started to trade up, we broke the critical resistance at $2,800, we popped above 2860. And today we broke another critical resistance at about 2885 as we cracked into the $2,900 level very briefly. And now we just pulled back. And again, like we saw on the smaller timeframe charts, we're simply just holding this level as a new support. So at this point, the next resistance is honestly at the all time high, where I guess you can say there is one at about 2815 coming up. And from there, if we break 2815, if this rally continues, we could be testing yet again, guys, all time highs, which is crazy because I feel like literally last week, we were down 6% from where we are right now. But this market as it's been proven over the past couple of months is extremely volatile, guys. So be careful out there. Do your research before you're hopping into any trades this market. You can make a lot of money here, but it is very, very dangerous as well. So going over to the NASDAQ here, actually note the Dow, we have to do it in order, guys. We always go S&P Dow, the NASDAQ. But NASDAQ here ended up closing below $26,200, which is the resistance that we're looking at right now. So we were in the zone and we're still in the zone, the horizontal zone between $25,500 and $26,200. So let's say this rally continues, we break that 26200 level of resistance, hold it as a new support. We could be trading upwards to $26,400 from there, which is the next resistance at that point. And then if we break there, we're going to be testing the resistance that we got rejected at back towards the end of April at about $26,700. So that's what's going on right now for the NASDAQ on a larger, on the larger timeframe charts here, breaking it down a bit on the smaller timeframe charts on the 20-day one hour where you guys can clearly see the rejection at that level of 26,200. Very obvious here. And if we go on the one day, one minute, you guys will see it even better, right? Literally right at that point, we got rejected and slowly started to go down from that level. And judging on the five day, five minute, again, just like the S&P 500, typically these trends look similar day in, day out between the three major indexes, not always, but they do look similar. Hence why you do see this one, the Dow looks pretty similar to the S&P. It ended up holding above that 180 SMA here as a support. And it ended up closing above the level of resistance that we were at, the peak we were at on Fridays in Friday's trading session. As you guys can see by my cursor here, if I drag that out a bit, you guys can see how it closed above that level. So that's a pretty good sign, a pretty good bullish sign for the Dow and the S&P 500. Going to the 20-day, you guys can see the crazy reversal that we're seeing here. And that's pretty much it for the Dow Jones industrial average. The NASDAQ, which has been the hottest one out of the three major indexes, because for all you that don't know, the NASDAQ is a very tech-heavy index. And tech stocks have been on a rally. They've been going crazy over these past couple of days. Apple, Amazon, Facebook, Google, Microsoft, these big named tech stocks, Netflix, they've all recovered so strongly, some upwards of 10, 11% literally in the past week. And if you guys see this movement that we've seen, the NASDAQ's literally gone from $7,000 all the way up to nearly $7,600 in the matter of a couple of trading days. And you guys can see that's almost an 8% move. That is not normal, guys, which is why I'm quite nervous at these levels. I'm not buying up. Like I mentioned in my earlier video today, I'm not buying up some of these large cap stocks at this point, because I don't want to get caught in a trap. I'd rather be cautious and miss out on some gains here, because I'm viewing more risk at this point than reward for me entering at these high levels at this overheated point in time in the market, in my opinion. I'd much rather just wait to see if it cools off. And that's honestly what I'm going to be doing if I'm being completely honest with you all. So that's the NASDAQ here you guys can see. Again, the crazy reversal going over to the 184-hour chart. We're noticing in yesterday's video, which I actually didn't end up uploading because my microphone malfunctioned, but I did upload it earlier today, I talked about how the NASDAQ was at a level of resistance yesterday. And then we noticed how the futures gapped up. And now we're not under that level of resistance anymore pretty much. Now we're actually breaking out of the 180SMA, but like I mentioned, markets are very overheated. NASDAQ is very overextended in terms of the RSI. It's very overbought. In my opinion, tech needs to see a bit of a sell-off here. And that's what I'm personally waiting for. And guys, I don't know if I mentioned earlier in today's video, one of the main catalysts in my opinion that shot up the markets was the deal that Trump came with Mexico, the president of Mexico. For those of you guys that don't know, Trump slapped tariffs on Mexico starting at 5%. I believe they were supposed to start today on June 10th if they didn't come to an agreement, but they did come to agreement on agreement. And the tariffs were based on migration due to the illegal immigration of people from Mexico coming into the United States. And they quickly came to an agreement. And if they didn't come to an agreement, the tariffs, they would have scaled all the way up to 25% by October. So this is definitely a positive catalyst in the markets today, which did pop up the futures and which did shoot it up early in the day in my personal opinion. So I keep an eye on the $7,500 level for the NASDAQ here. That is a pretty strong resistance. And that's pretty much it for this market update portion of today's video. So let's break down what I personally did today. For those of you guys that were watching crude oil, it had a pretty funky move today. And I want to talk about that in today's video. So let's go down not to my long-term growth dividend plays. Let's go to my inverse ETFs watch list where I do have the crude oil future here. And you guys can see, and this is another thing that I called out in Sunday's video, but again, I messed up the microphone. I didn't record my audio, so I couldn't upload it to you guys. But I was noticing a resistance under this 50 simple moving average on crude oil. Notice how we got rejected there a couple of weeks ago. We saw that massive sell-off as the markets dumped. We recovered a bit and we were seeing that same resistance spot that we were at from a couple of weeks ago. So this opened up my eyes to the DWT ETF, which goes up whenever crude oil is selling off. So let's see some movement here from crude oil pretty much during today. So we can see today was June 10, which is what you're seeing up here. This was earlier in the day before the market even opened in the middle of the night pretty much. Crude oil futures were selling off very slightly, right? Lower lows, lower highs that were dumping. They had this little run-up at 11.15 a.m., so about an hour and a half into the market, and this is when we started to see the massive, massive drops, right? This drop right here was absolutely crazy. We consolidated a bit and then we started to dump very aggressively, which is where I actually caught DWT on the second dump. And if you guys see DWT today, you saw, you're going to see some crazy bull moves here in the matter of a snap of a finger. And I was really lucky at this point, guys, because up to this point, I didn't make any trades. I was watching the market. We saw how the market was selling off a bit, so it was kind of a weird position for me at that point. So I didn't want to hop in. I preferred sitting on cash all the way up to this point. And then I was watching crude oil again because I talked about it in my video earlier today. So I was keeping it on my watch list and in my eyes so I can see any potential moves. And that's when we saw that big dump. I took advantage of that. I didn't catch it at the complete bottom, but as we started to spike up aggressively and as we broke out of 860, which is the resistance from the previous little dump, that's when I took my long position on DWT very quick in and out, guys, literally from 862 up to about, I believe, this resistance level, once we broke out of that, or once it broke out of that, that's when I ended up taking my profits, which was about a 1.1, 1.2% profit. So it was a slow start to the morning, but then DWT busted this crazy move, which I think is actually setting up a nice play for tomorrow. So let's just hop right into the portion of the video where I talk about what I'm watching in terms of stocks and ETF for the next day. So DWT here, again, like we said, it's pulled back very nicely due to crude oil recovering a bit from the massive sell-off that it saw. It went from $10 all the way down to 820 and now it's holding this 50 SMA nicely, very nicely, clear bounce here. Now we just need to see a further push. In tomorrow's session, if we notice how its pre-market session is doing, if it's gapping up a bit, if crude oil is dropping, let's say, into the 52 level from this 53.31 level that it's currently at, that would be a very good sign that DWT might run again tomorrow, which is what I'm personally waiting on here. I just think it's setting up very, very nicely. And if we're looking here on the 20-day one-hour chart, you guys can see it even better. And if we break out of this 50 SMA here, I think that's going to be a confirming point to get into DWT, guys, to be quite honest. So that's what I'm looking at here in terms of DWT. And we can already see the reversals happening. We're noticing on the 5-day 5-minute, it's breaking out of the 180 SMA. It's breaking out of the 50 SMA as well. We're noticing a bullish cross, the 50 SMA crossing above the 180 SMA here. Very, very nice, guys. Very, very nice for a reversal here on DWT. So a couple of other ones that I'm personally watching. Like I said, markets are very overheated. So in times like this, when markets are overextended, they're overbought on the RSI, I never think it's a bad idea to just watch these market ETFs that I have here. This is a watch list, especially in volatile times that I'm always keeping on deck. I'm always watching these ones throughout the day because they move very quickly when the markets see these volatile times, right? And let me show you guys two of my favorite ones that I'm watching right now. And for everybody that watches me every day, you probably see that I talk about these every single day because on these videos, I'm 100% honest with you guys and what I watch. And I watch a lot of the same stuff, a lot of the same ticker symbols every single day. I'm not one of these guys scanning for stocks every single day trying to find these penny stocks, these small cap stocks. That's not what I talk about on this channel, really. That's not what I personally do in terms of trading. Not that it's bad to do that because that's a very good thing to do as well. But me, I stick to more similar ETFs all the time. That's what I've found to work for me. So SQQQ is a NASDAQ 100 ETF. It goes up whenever the NASDAQ is selling off. So if the overheated tech stocks, NASDAQ starts to fall, this one breaks out of the 180SMA. That's my confirming factor here to buy some SQQQ and trade it. As I do think, it's very, very oversold at this point, guys. Very oversold. Take a look at the RSI. That's absolutely crazy. Seems like we did dip a little bit below the 180SMA here, which is a bit alarming. That's not too good of a sign here. But tomorrow, if we do start to pop out of that level again and hold it as a new support, that's going to be pretty promising in my opinion. But until we break out of this level of resistance, guys, until I see a significant market dump, I'm not looking to trade SQQQ, but again, I'm just keeping it on my watch list and never hurts. So SPXS is another ETF. This one is very similar to the SQQQQ one, but it trades based on the S&P 500. So whenever the S&P is selling off, SPXS is going up at a 3X rate. So SPX, the S&P 500, it sells off maybe 2 points, or 2%, rather. This one's going to go up 6% in that scenario. So this one, although it did just like the SQQQQ ETF, it did break the 180SMA support. It's still worth watching in my personal opinion. So those are two ETFs that I'm watching. Let's just run down through these tech stocks very quickly, guys. You can see how overbought and overheated they are. So at this point, Apple here is under the 180SMA and under a resistance at about 195, where we actually got topped off that today. We're also very overbought. RSI is reading 76. Take a look at Amazon now. Amazon is very overbought as well. We're under that 180SMA resistance, and it seems like we're actually getting rejected there as well due to today's price action. Take a look at this one day, one minute, guys. Take a look at that. We sold off or rather got rejected at this point in time and then plateaued for the rest of the day. We saw a little dump here. I don't know what that's from. But these look like they want to dump, to be completely honest with you all, based off my just brief looking at them, this brief technical analysis. Right? So Facebook, very similar. It's under moving average resistance. It's approaching overbought status, right? Google, it's probably same. Exactly. Now it's reaching a level where it's under the 50SMA resistance, rather. We got all the way down to $1,000, guys. Oh my God. I didn't realize how low Google's been getting here. But if we break 1,000 and get into the 900 level, I might have to consider a long-term position on Google. That might be a cool spot or a good spot, rather, to start a position. Because this is one that I've always wanted to add. I've never honestly owned Google stock. That would be pretty cool. And maybe I'll make a video on that in the future. That would be kind of fun. So that's kind of the performance right now of these main tech stocks. Some other ones that I'm watching very quickly, guys. Tesla, of course. I'm watching Tesla. It went up 4% today. Another $8. If we break out of the 180SMA here, that's going to be a pretty good play. But I don't know if that's going to happen, guys. Tesla is very overheated at this point, much in need of a pullback.  You know, obviously, I'm going to be watching drip here. If it breaks out into the 15-16 level, that's going to be a huge breakout. There, if crude oil dumps that most likely will happen, the Gold ETFs, natural gas, just a bunch of the usual guys. So that's kind of today's video. I hope you all enjoyed it. If you did, feel free to go down below and hit that like button again. It really supports me. And I do appreciate every single one of you out there that's doing that, supporting the channel. It really does mean the world to me. If you like the content and you want to see further content from me, subscribe to the channel and hit that notification bell so you're notified every single time that I do make a video. Drop a comment. Let me know your thoughts on anything right now. Markets, stocks, what you're watching, what you're trading. I would love to know. So I'll catch you all in the next video. Good luck tomorrow. Peace out.


Okay, we are recording now. Hi all, welcome to the cloud native special interest group meeting. Today we have a presentation by Sumit. So Sumit will present external fingerprint storage. This is a project he's working on as part of Google summer of code project. We will have a demo and after that we will spend some time on the design review and discuss it. I guess that's the plan. Okay, so the floor is yours. Yeah, before we begin, how do you prefer to answer the questions during the presentation, send them right away or after that? I'm fine with the way I on my slides. I have a Q&A slide also at the end. Since we don't have so many people in the call, let's just answer them on the fight. Perfect. So can I share my screen? Yeah. So is my screen visible? Yes, it is. Okay, great. Hi everybody. So welcome to the cloud native meeting and today's demo for the external fingerprint storage project, which is one of the GSOC projects for this year. So at the beginning, so for the agenda for today, I'll start with my personal introduction and what exactly are fingerprints and what is the current architecture, what is our vision for the project and followed by demo and Q&A. So who am I? I'm basically the GSOC training student for this project. I'm currently pursuing a bachelor's in instrumentation and control engineering from NSIT Delhi. I started contributing to Jenkins in December 2019. And most of my contributions have been somewhat around fingerprints, which got me interested in pursuing this project for GSOC. And I'm really excited with it. I think we have worked about, we had a community bonding for one month, maybe less than that. And we have spent about I think three, four weeks, almost four weeks into coding. So yeah, so I'll be presenting that work for today. So just for anybody who is new to fingerprints, I'll start with just a small introduction to fingerprinting. So basically fingerprinting in Jenkins is a way to track files, artifacts or anything across the CICD flow. So what happens basically is that in different jobs, say you want to track, say which artifact was used in which particular build by say some other job. So you need to know that which version they use, right? So fingerprints help us identify these files and they help basically versioning of these files and they can be a huge benefit to different plugins. And they can also be a huge benefit in tracking down where the source of issue came. So maybe our developers have fixed something in a particular build and another team is on another build. So it helps fingerprinting help that way. In Jenkins layout basically, we have a, this is how fingerprints UI is built. So say you have a job called demo and so say you go to a particular build, you can click on see fingerprints beside it and it will show you all the fingerprints that particular build recorded. And you can click on any of those fingerprints and you'll get a view which shows that. So here it says number one to number three. So it's showing that it was used in builds one, two and three of the job demo. So that is how fingerprinting is presented is built in Jenkins. So what is the current fingerprint storage in. So the main crux around this project is that currently fingerprints are being stored in a look in a local manner in an XML files inside Jenkins one and that has issues all the issues with using a physical storage disk. So basically, as fingerprints grow, they are consuming the storage of Jenkins master and they're increasing reliance on the physical storage. So we cannot, you know, configure it with cloud storages, which are also very, which offer benefits like pay as you use cloud storage and even most of times are cheaper. We can even configure replica sets for say external databases. It helps in reliability availability. And lastly is that currently we cannot track fingerprints across Jenkins instances. So that is another aspect of this project, which maybe will come in a later phase down the line is that we can track fingerprints across the entire across different Jenkins instances. And that is also something we want to solve in this project. So, so what is the vision for our project is basically in this diagram is that we can configure. So basically we want a pluggable architecture for fingerprint storage that any storage, any storage plugin can come in implemented for that particular storage and then store those fingerprints in that storage. So say maybe we have a MongoDB storage plugin on my SQL or the Redis base, any plugin can come in and we can use that to store our fingerprints. And then maybe down the line we build another plugin which the fingerprint external storage API plugin so that we can, you know, track all these always flow and maybe represented in a, in a good manner. So that is something we'll do as we go. So, so this is our cut. So this is the current model and how we are going to change it. Right, so now I'll go into demo or enter the demo. So here's what I'll do. Just open up a session for. So, if anybody wants to like so we currently have a reference implementation for our plugin, which is backed by Redis. So it lives in this repository, which is Redis fingerprint storage plugin inside Jenkins CI. We have a guide also for running it locally, which I just walked through this basically. And yeah, and the API that is currently the pluggable API that we are building on Jenkins core side is actually it's an incremental build. It's like, it's still not merged, but it exists as a pull request. So yeah, it's, I think 4731 and Jenkins code. Right, so once we have this merge maybe so, so it's still a beta IPM. Um, so. I'll do is. I'll, you know, the new. I've known this repository and my local. Desktop. So we have yes. So, what I'll do is just to plug in and run this. Take a few seconds. Start up. Sometimes to start up. So it's ready. Take a moment or two. Yeah, maybe you could just refresh the page because sometimes in development mode. Right behaviors, which will bring this in production. So, so we have Jenkins, so what we'll go to is manage Jenkins and configure system. So we have a configuration page for our plugin. We're here. Here is that page. So we can configure host port as a cell database. So Redis has a integer indexed databases and we can change timeouts. We can add credential plugins. So, so say at the moment, like, and we can test at this. So it's failing because I don't have an instant setup. So I'll just start instance locally. And it's on this 6794. So now I can test it successful. So I'll hit apply. I'll hit save. Also, I'll start a command line interface into Redis. And select the zero database and see what is we have there. So as we can see, it's currently empty, right? So what we can do now is start a new job or create a new job. Let's call it demo. I will say freestyle present. What I'll do is I'll add a build step. I'll add a post-billed action to report these fingerprints. So demo.txt is the file which will get fingerprinted. And I'll apply it, hit save. So now I have this job, right? So I can start a build for this job. And I get a success rate. So if I look into this, I'll go to see fingerprints. And I can see that demo.txt is being recorded. And it was used in build one, this particular job, right? So now in my internal CLI, okay. So I know what happened. I think I forgot to enable this particular plugin just a second. So what happened is that in configuration I forgot to enable this. We probably will be changing the enabling portion. To Jenkins code, but so yeah, I had to pick this box. And hit apply. And I let save, right? So now like I don't want to. So yeah, so some clashes may happen. So what I'll do is I'll just create a new job. I'll just call it demo. Yeah, so right now you still have a memory representation of the fingerprints, right? Right. So yeah, I can show that. Yeah, so we have this here, right? So yeah, so now I can go here. So now as we can see that I have this fingerprint demo.txt, right? Which was built locally. So now this should not happen in this particular build. So just record the fingerprints for demo.txt. I'll hit apply and hit save. So now in this new job that I've configured, I'll hit a build. And the data success, yes. And you can see fingerprints for demo.txt in build one, right? So now let's see what happens in our CLI. Yes, so now I'm getting a fingerprint. You can check what story. So it has the XML blob for the fingerprint. And just out of curiosity, let's see whether did it record a fingerprint or not. So this time I'll go to fingerprints. So this is the same old fingerprint. I don't have any. This is for demo.txt. So no fingerprint was recorded for this new job that I created. And basically we can also configure like Docker fingerprint, say build and publish plugin. And so if it records, say fingerprint facets, so they are also handled. So we also get saved in the greatest instance. So I think that's about it for the demo. Yeah. So yeah, go ahead. Answer my question anyway. I want to talk about next steps. Okay, so next steps for us is. So as of now we have not implemented any, any saveable. So basically there's a component called a saveable listener inside Jenkins and it can file some events on some particular. It can file some particular events at some particular times. So basically that does not get fired right now because the API is such that we need to pass a XML file to it. So maybe we'll pass a virtual file or some, or maybe we might change the API altogether. So that is one of the next steps for us extending the API and looking at so we can basically what we want to do is look at plugins and see how we can help other plugins by what API we can introduce to help them down the line. Fingerprint cleanup basically it's happening in file storage right now. So what happens is old builds get discarded. The fingerprints get discarded routinely that that cleanup facility right now is not being implemented. Then you want to be tackling migrations. So, so say when a person configures an external storage. So the, the fingerprints that are present locally need to be migrated to the external storage or say if he goes back from external storage to an internal storage. So these type of migrations are he may configure a new plugin. So these migrations are something that we want to tackle. Tracing is something that I discussed earlier across instances for Jenkins and ORM also at the moment. So basically we leave it to fingerprint plugins to decide how they want to save these fingerprints but Redis like right now is saving it as XML blogs. So maybe you want to change that to something which is more portable in the database. These are some of the things we might be working on in the next few months. And so I have some links at the end of the slides. But yeah, before that, so basically if anybody has any questions and or any suggestions would be really nice for our project. Thanks for the presentation. Any questions or comments from others. So here, maybe you could just share the current job, because it's one of the important topics. So we would like to really lend Jenkins Enhancement to the proposal for this project, similarly to other bug-able storage jabs. And yeah, for that, I guess it still needs some feedback from potential stakeholders so that we can make sure that the job represents all concerns. So just to clarify for those who are not familiar with the job process, there will be a draft stage. So basically it's a formally consistent job for discussion. And this is the plan for the next phase. But if you see any major issues or topics to be addressed, it's a good time to discuss that so it's added to the draft and referenced for the future discussion. Jeff, in case anybody wants to read it. Our current plan is to ship an alpha version within the first coding phase. So basically it's, let's say by the end of the month. In addition to the job, there is a pull request to the Jenkins core. Basically this pull request becomes a major topic for the alpha release because we still need the API to be listed in public. So that we use all standard features like better annotations, etc. But yeah, from those who are on the call, it would be great to get feedback, whether you see anything major today, which needs to be discussed before we press it with the match. Because a functional bias, it works pretty well right now. It also passes all tests. We got some additional test coverage as a part of the project. So, personally, as a viewer, I am tempted to say that it's ready to be merged. I wonder what the others think, especially Jace Vincent, because they've been working on a pluggable storage implementations before. Do we have any open comments on that pull request at the moment? I think this is one for that I'll configure. I discussed yesterday that enable button that I just showed. You need it at core site. So I'll probably just add a UI for configuring that from a dropdown inside Jenkins core. That is the only thing that's left. So, yeah, this problem actually brings up one problem about extensibility. Because in Jenkins, you have two extensibility models. One is, let's say, factory as an extension point. So you have an object which can produce, let's say, fingerprint storage. But the extension point is this factory. Another approach is to actually have a fingerprint storage extension point on its own. So both approaches have their own advantages and disadvantages. And, for example, if you want to support multiple fingerprint storages, let's say, for migration pass, maybe it's better to think about the factory approach. But, yeah, I'm not 100% sure about that. But, in principle, it looks to be feasible for this particular case. I would say for, I mean, for a beta API, you can probably just keep it as simple as possible. And just activate the new storage unconditionally when this plugin is installed. Once, if there are multiple implementations and a lot of users, then you can start to think about, does it make sense to have multiple implementations simultaneously? Do you need to control which one is used in certain folders? Do you need to mark which engine was used for a given build, things like that? And it's probably premature to do things like that now. So, they had the same question with JEP 210, which was about plug-able logging, and JEP 202, which was about plug-able artifacts. So, for 202, we wound up creating a configuration UI for this. For 210, there's still nothing at the moment. Well, that was a prototype, which I didn't touch it. Yes, but both stories finally ended up using factories as an extension point. Because in that case, what was our solution, for example, for build histories, etc. Because both stories actually depend on the build histories. And there, we were able to just keep a storage reference right inside the build metadata. And hence, we didn't have to worry about the migration flow. Because our migration flow was that you introduce new storage, old builds can work with old storage, and eventually, when you delete all this history, you don't need it. Something like that. Yeah, there are different design choices in terms of how much information about the external storage you actually want to keep in Jenkins build metadata. For the artifact manager S3, we chose to... Well, the artifact manager records the fact that it is using S3 for a particular build, but it does not record the details such as the name of the S3 bucket. That's part of Jenkins global configuration. We did that intentionally so that, for example, you could rename a bucket and not tap and only change one spot in Jenkins global configuration, and you would still have access to historical build records that way. So depending on what the usage model is and how important access is for historical builds, you can make different choices about where to keep different pieces of information, and where they should be updated. So, Jesse, what would be your advice for fingerprint storage? Because it's not really using builds, it's rather a system-level storage. It's to builds by ranges, but yes, it is system-level storage, essentially. Yeah, I haven't thought about it enough to really have an opinion. Yeah, it might be a bit difficult. Yeah, our advantage here is that fingerprints have unique IDs. So potentially, we could somehow match it on the level of fingerprint IDs. So if ID exists in an existing storage, just keep using that. And when you choose the default storage, it becomes a lot more tricky if you want to somehow really operate with multiple storages based on folders, et cetera. But I think that these use cases are rather out of the scope for JSOC project. Yes. Because it's really for large-scale instances. And to do that, we need a lot of feedback so that we design it properly. Yes, I think people running large enough servers that they would benefit from external storage are probably willing to do some extra manual setup or migration or something like that. So it's more important to not worry so much about those kinds of things at this stage, I think. And I think this is a good choice because we don't have issues with internal prioritization when we use Redis. If we took other storage like Elasticsearch, there would be a lot of sexual issues on that side. In principle, it would have been easier to use Elasticsearch to search the data. But for storage like this, when we store blocks, Redis looks to be a perfect choice. One question about the keys. Currently, at least the file fingerprints in Jenkins use MD5 hashes. We would like to replace that with SHA-256 or similar in the future. I'm just wondering if that has any relationship to this or if the interface that you're choosing will automatically support different kinds of hash algorithms if we switch to them in the future? So I think Ulle had the same thing in mind when we switched our terminology to IDs. So at the moment we are in our API, we have left it flexible enough that we do make the switch to say maybe we can choose between different hashing algorithms. Then the same API can work even then. Yeah, maybe it makes sense to show the code here because I guess it's already integrated in this pool request. So this is the storage, right? Here we've used the ID terminology. So we've not used MD5 markers and for this particular API. We can change the implementation of that get hash string in the future if we need to. Right. So basically when we were discussing the API, first of all, this API is behind the beta notation. So it can be changed later if needed. But yeah, there was a discussion of what we want to use the passing byte array or whatever right inside API or strings. I believe that our decision was to postpone the decision until we see all the use cases for that. Because yeah, the specifics of API in Jenkins that there is already a lot of conversions between byte strings and strings. And if we could reduce number of these conversions, it would be also better for performance, etc. I think it's subject to change. Yeah, so you suggested this and for at least for Redis, we were as it is using strings so it made sense at least for Redis, but in future if we find that it does not, we can change it. The only important thing for this API is to make sure that you've identified all of the access patterns and so that you know what the correct keys are. I think for fingerprint storage, it's relatively simple. You know, you can put a fingerprint but the only query really is I'm giving you an ID, and I want to know a set of build records associated with that and I can get a single response with all of that data as one, an HTTP response or something like that. You know, for some other kinds of storage systems like J unit, for example, it's a lot more complicated to try to decide what kinds of queries we might want to support. But here I think there's no, for example, there's no need for an efficient way of finding all of the fingerprints produced by one job or something because there is no Jenkins feature that does that. The only thing we do is look up a particular fingerprint and get builds back from it. I don't know because there are plugins which lists all fingerprints. For example, you can open a UI in build and there is six fingerprints action, which basically lists all fingerprints for build. There are also inverse searches, for example, on fingerprints pages. So, for queries, I don't think that it's fully done deal, how it would look like. So you're saying given a build enumerate all associated fingerprints. Yes, that certainly needs to be supported by the API. Yeah, so that would need to be added to this extension point. So maybe look up APIs, so where you just check for resistance, etc, without really pulling the data and the servicing that and there might be a lot of iterations. But for fingerprint storage, we actually have an advantage because the number of his cases currently in Jenkins is not that high. So it's artifacts, it's credentials to some extent it's Docker images. There are very existing plugins, so we can just take a look at these use cases, maybe create some benchmarks using Jenkins test harness, etc, and yeah, start from there. Right, yeah, I think the number of plugins are potentially affected by the API is very small. Credentials, Docker Commons or Docker workflow. Yeah, Docker facility if it still works. Yeah, but yeah so as long as we have a pretty small set of places to look for all of the valid use cases, as far as I know, but you do need to do that search so you need to go through and do some sort of text search of open source Jenkins plugins that are interesting uses of fingerprints and decide if those those uses are doing something that would be covered by this API, or if they're not if they're doing something important enough to add. That's right. Anyway, it's a great start because basically you have something working by the end of the first phase. So if you get an alpha release, then you will probably get some feedback from users. Fingerprints is probably not the biggest offender in terms of disk space, etc, but it's still it's nice and related to the use case we could address. And it will give us some insights for what we do next for all the stoppages. Yeah, for some users it can be pretty big for example if you use the pipeline maven plugin and don't turn off the feature to keep fingerprints. You can quickly get multi gigabyte databases. Yeah, and actually it's a good subject to explore, because your pipeline maven is quite widely used plugin. So why not. I really didn't think about focusing testing on this plugin, but yeah, it might make sense. And right now, pipeline maven, sorry, yes pipeline maven plugin also has its own local database. So maybe they could build some opportunities to see whether it could be especially integrated with the fingerprint storage. I'm not sure. Yeah, I don't remember what that database is exactly. I think it's snapshot tracking. Yeah. Which is related to fingerprints certainly but not exactly the same. You could maybe reimplement that on top of fingerprints. I'm not sure. Yeah, it might be interesting because otherwise somebody would have to maintain this pipeline maven plugin databases, and it already has at least two or three. So it had H2, it had Postgres, and it had MySQL, or MariaDB. So it has fingerprints if I'm right. So any additional feedback or comments? Yeah, I just checked that question about the lookup of fingerprints per build. And that doesn't seem to be an issue as far as I can tell because that's stored as a run action. Yeah, because, yeah, I believe it's the storage limitation at the moment. Because we have file system storage and we do not really cache fingerprints or whatever, so we load them on demand. So it's actually in order to get any kind of feasible performance without really query operations or whatever. We're done fingerprint IDs and actions, so we were persisting these sections and basically this database still exists, but it exists as an action not in the database itself. Right, so yeah, so a nicer approach would be to allow this fingerprint storage extension point to turn off fingerprint action and have the equivalent functionality be re-implanted by a proper indexed search. I'm not sure if that's something you could do in Redis exactly because it's that's something you would more do in a relational database. Perhaps. I don't, I don't know Redis. This is a relational enough, I would say. Well, yeah, it might still pose some issues with indexing, but I think it's a topic which could be researched. Yeah, that would be nice because the implementation of fingerprint action is as some complicated optimizations in it to try to minimize the amount of keep memory being used in each case, because that's often been a performance problem for us. So I would just keep that out of the build record entirely and just look it up from external storage, if and when that information is needed, that would be much nicer. Definitely. Does anybody have any new use cases for fingerprints? Be untartified credentials and images? In any way, where you would like to see fingerprints? It might be interesting to see if there's any useful interaction with the artifact repository like Nexus or something like that. So if you, if your build is uploading artifacts to Nexus, for example, should we have the ability to query, which, which already does its own. Its own hashing, I'm not sure if it does any kind of index of those hashes. But is there some sort of interesting interaction we could have with that so that you would be able to see not only the Jenkins build that produced some given file, but also look it up in Nexus or vice versa. I don't know if there's anything to do here, but it's something, if you're thinking about the use cases for fingerprints and how that relates to external systems. It would be interesting, especially since artifacts on Nexus are quite popular, there will be discussions about creating native artifact manager for that. I believe it hasn't happened yet, but in principle it would be possible and maybe useful for some companies. Nice use case. I was also thinking about using fingerprints for script approval. So in Jenkins we have a script security engine where in some cases you can approve scripts or particular pipeline commands or methods for being used. So I wonder whether it would make sense to add more traceability there. So, if you participated in UI UX hackathon, Wadiq for when you presented a new UI, which adds some additional tracing for script security, but maybe with fingerprints we couldn't go even further. Yeah, I don't think you should use fingerprints for that. I mean, first of all, it should be a very small number of items. And ideally zero if you're running Jenkins properly. And second, it has more, much more serious security implications than fingerprint matching does. Anyway, I would keep that separate. Just making notes. Any additional feedback? I think that we should really target integrating this pull request at least as beta is all disclaimers. But yeah, I did some testing for file storage basically works as is. So pretty much like Smith presented during the demo. It contributes to the code refactoring, which is also a really great thing because fingerprint code is not exactly the most structured code on the Jenkins core. It's not that big, but yeah, we can do a lot of improvements there. Okay. So, if there is no more feedback, thanks a lot to submit for the presentation. Yeah, looking forward to see it in production. Thank you. Thanks all for participation. If you have any questions, we have a guitar chat where you can join and where you can ask any questions. So, I think we will share this presentation after the call. So, you can find all the references there. Thanks all. Thank you for joining us on the recording.


Good afternoon everybody thank you ma'am Havasah for having me here. Let me first apologize for shifting the date from 26 through today. Initially your freshers day was supposed to be on 26. I did not realize that it was the day when we were having a legislative assembly session so I had to request her at the last moment that we need to probably change she and all of you were kind enough to accommodate me and I am grateful for that. I think I can't motivate you more than what Havasah has already done. She's basically crystallized everything that you need to do. Yes you are 800 of you new students who have joined the mainstream college this year 800 is not a small number but it is not a big number after all we are just just back in the ocean we are nobody's. There are certain things in Nagaland which are undergoing the change which students need to or youngsters like you all need to be aware of she's mentioned a few. Let me begin by saying that nothing in this world is permanent the only permanent is change so whether you want it or not change will always keep happening around you. Nagaland as a society has been in the throes of change as other societies are but the pace at which change has been taking place in Nagaland has been phenomenal. I always say that Nagas are at a stage where Nagas have been hit by a future shock. What other cultures and societies have achieved by way of say 2000 years of civilization Nagas are trying to compress this into 150 years of time span so there is a mix of everything in the society there is a mix of modernity there is a mix of tribalism there is a mix of primitive life there is a mix of old and new which puts everyone at crossroads. I think a lot of things have to be seen in a particular context if we forget the context and start things and start seeing things just as they stand today in isolation we are all committing a mistake. I remember when Dr. Anirudh invited me for this online lecture last year on policing in Nagaland in the modern context now it was a very hard and difficult choice to make because the policing is not affected unaffected by what is going on there is the constitutional protection of 371A where customs and traditions have to be preserved and then there is this modern state how do you reconcile both of these would you want all your crimes or all your deviant behavior to be dealt with by traditional law or by the customary law or would you want to go to the modern new institutions that is a dilemma that all of you will face that is a dilemma that all of us face yes a theft will always remain a theft I think you a lot of I'm starting with that because I don't think too many of you may have listened to that interaction so certain basic things that you I need to tell you so that you understand how things are changing yes a theft will always remain a theft and a theft traditionally in all societies has been a theft it can be punished by customary and traditional laws also but the issue is which type of theft do you want to punish by customary or traditional law did you have mobile phones in the past did you have mobile phones or did any one of us have mobile phones in the past no did we have cars in the past no did we have in Nagaland context did we have RCC buildings like this glass buildings like this in the past say about 20 years ago 50 years ago no so the point is if there is a theft taking place of a mobile phone would you want to punish that criminal as per your customary law or would you want to go to the police so that is a choice you have to make there were no mobile phones in the past in the customary law so if you punish the theft of a mobile phone or a fortune or a bolero or a tata or a bus or a jcb under customary law it will cause miscarriage of justice this is where the context changes and when the context changes everything else needs to change to substantiate my point taking it off the whole logic a bit further if you were to if not you if all of us were to punish every criminal as per customary law then why do we need police then why do we need judicial so there is a big requirement there is a big need that we should try to adapt to change when we are trying to adapt to change adopt change we need to to be sure about what's changed we need to adopt which change we need to embrace i have seen and i know that in traditional societies not nagaland alone but traditional societies consumption of things like alcohol and opium and all were a given thing but do you think or do your parents think that it is the right thing to do it is not it is not morally the right thing to do it is not the right thing to do for your health that is why everybody will stop you from because you make say liquor or tobacco or opium or drugs so when you have to make a choice you have to be sure about what choices your way to make that is where your parents your elders your teachers and the the ideals in the society will help that is where they will guide you finally it is for up to you to make a choice but they will always put the choices on the table for you that is where there is a need there is a requirement for discussion for debates and even divergent and divergent views on various issues i think this is something that i feel is lacking in nagaland as such again i'm not commenting on individual brilliance or lack of brilliance but can i ask a few questions how many of you watch television daily i think everybody tv how many of you watch tv just raise your hands and how many of you very few very few but how many of you watch news channels daily or you watch news daily this will be even fewer now how do you keep yourselves abreast of what is happening in this society our society or any society has changed a lot it has changed a lot from my village to my country and my world and my world interacts with every other person around us so if we don't know what is happening in the world what is happening around us we will look like fools you know honestly it pains me that a lot of effort has been made by some young IPS officers and IAS officers in nagaland to push you pull you train you coach you youngsters to appear for the civil services and unfortunately in the past say four five years there has been just one success which was last year i think the biggest reason for that is lack of exposure you know if you don't watch news you don't watch tv you don't watch a few read a new few newspapers i'm not talking about local nagaland newspapers like nagaland goes more i mean without any ill will towards them they only cover the local news when you go and prepare for the civil services or for competitive exams they're not going to ask you questions about nagaland what is my tribe my village my father's name my chief minister no they're going to ask you about the entire world what is happening in the world and you are losing out on that experience by not exposing yourself to tv to newspapers internet online newspapers not local newspapers you have to have a broader view of things you know this is where the real change in nagaland will come in you know again not not a commentary on my fellow fellow bureaucrats in nagaland my fellow seniors and my colleagues on nagaland but my observation is a lot of us who have not gone beyond the nagaland and served in other places in nagaland don't know what is happening in nagaland what are the solutions to the problems that we face so what happens is that when there is a problem we think it is the end of the world nothing can be done but if we just look beyond us there are ready solutions available everywhere you know i'll give you an example now if if there are anyone from the media please don't quote me out of context i'm just giving you an example of how things are different in different parts of the country and we have not adopted or embraced that change now some years ago there was this discussion about inner line permits now whether the inner line permits will be allowed or they should be relaxed or opened or what should be the inner line permit regime so the question was what about illegal immigrants you know now firstly it is difficult to define who is an illegal immigrant in case of nagaland we generally think illegal immigrant is a bangladeshi now not only nagaland but in the entire country it is like essentially say a muslim guy with a dhoti or a small beard will be considered as in nagaland particularly miyar kogo now i'll give you an idea of an illegal bangladeshi immigrant but an illegal bangladeshi immigrant is the same like an illegal miyanmaris immigrant also so there is no difference between an illegal immigrant of a of any country but the point is how do you decide who is an illegal immigrant there are two two ways to decide one is know who is an illegal immigrant nam para jane itukhan itukhan itukhana says that is one thing the other is if we know who is not an illegal immigrant who is an indian national then everybody else will be an illegal immigrant okay now the issue was how do we decide whether an immigrant coming for a work permit or an illegal permit to nagaland is a genuine indian national you know and we were at our witsend our friends were there they witsend deciding how to decide that we have no means of verifying and this is about six seven years ago and it was like if you send a request to them the police station where this fellow says i am i belong to he will the police will not reply in the next one month by that time he will settle down in the society you know again this was a classical case where lack of exposure lack of knowledge about certain things happening elsewhere in the country or in the world was a handicap in a solution now i belong to himachal pradesh my father is originally from haryana from a small village in haryana and i gave this example to my friends the property which my father has will someday come to me right i will inherit that properly property now all those property records are computerized by the government in haryana and are available on the internet on the website which means if someone wants to check whether ropin sharma is an illegal immigrant or an indian national you just have to ask me ropin sharma what is your father's name what is your village name you go to that website and check that father's name and that village name if i am saying i am the son of my father obviously i am an indian you know so there are solutions which are available but if you don't want to look at solutions then there are no solutions available there are ready solutions available we have to look at solutions so some of you are here you probably finish your college studies from here some of you may go for postcards outside what do you learn from outside bring it back to nagaland i'm not saying everything yes you can learn everything good and bad both but whatever is good outside bring it back to nagaland and implement and what is bad outside bring it to nagaland and say please don't do this there is a learning in what is bad also so keep your eyes and ears open i would suggest i would request the college management i i said this in the principals college principals association meet also where i went i think nagaland nagaland there is a dire need for creating an environment for debate and declamations for open discussions among students out of those open discussions only new solutions will come out of those open solutions only your own personality will develop your thought process will develop you will start questioning things which are happening around you questioning things is very important to learn more in my my case personally my default reaction for anything is probably a no but it is not a full stop to the conversation a no from my side is the beginning of a conversation because i want to get more information about things if i if i say something and no then i want to get more information about that thing now at at your age as madam has said that your age is impressionable this is an age where the influence of parents and teachers is this the influence that you have among each other is more you learn more from each other whether whatever you learn is good or bad so make sure that you are in good company make sure that to protect a friend who is doing something wrong you don't shield him at least inform somebody someone you know it is not chugli it is not chugli if you are if you are a good friend of someone you will probably point out his mistake or to him or her or to someone who is interested in him his parents or someone you know so that that change in behavior that correct change in behavior can take place so that is essential now a few things that i would request you not to indulge in are alcoholism is one this is not an age where you can take to alcoholism drugs and smoking is another one please don't do it you are not enjoying your life you are just spoiling your lives and the spoiling the lives of your parents your hard earned money you are spoiling develop a habit of questioning if anyone of you is coming to the college in a Mercedes car please ask your parents go back and ask your parents where is this money for the Mercedes coming from because i'm sure that except a handful of say 10 odd families none of us can afford a Mercedes even i can't afford if i don't have an official Mercedes i will not be able to afford one and i don't have an official Mercedes also so but the point is you should start questioning you know the drugs liquor cigarettes avoid learn to be punctual discipline is not about just following the orders discipline is also about questioning something which is wrong if there is something which is wrong always question it always ask i've been my request to the faculty here would be i've i've faced this problem myself as a student i've faced this problem myself if a student questions a teacher the teacher should not take offense to it if the teacher was good enough if the student was good enough himself he will not ask you so i will give you a personal example a problem that i've faced i was in college this was my final year in college bsc and we had our practicals of importantly i was one of the better students in the class so our practical session was in the evening so there was a morning practical session there was an evening session so we went about an hour early and from the morning shift students we asked them what are the questions being asked for the vibe up and they told us two three questions and nobody was able to answer one particular question so naturally we tried to look at the answer this is like 87 87 so there was no internet where you can find out answers very quickly now so we tried to do our best to find the answer we could not find the answer so and between two of us my friend and me we decided that if the external examiner questions us we will politely tell him sir we don't know the answer so this is what happened so he the gentleman the external examiner asked us this question i remember one of the words was fermentation the other words was something but he wanted the difference between fermentation and one more word i'm forgetting that so i didn't know that so i said sir i don't know so he said no no you should know you are the best student in the class i said sir i'm sorry i don't know he kept insisting and there was a point where i broke down and i said sir sorry i don't know can you please explain to me now this was a very genuine question in good faith asked from a teacher it is not out of anger or putting him showing him in a bad place in my vibe out of 30 he gave me 10 he was to fail me just because i asked him this question he would have failed me but if i had known that answer i would have answered him straight away so my request to the teachers is that every time a student questions you doesn't mean that he's questioning your authority he is not questioning your authority nor your knowledge he just might not know the answer so in honest introspection and an honest answer will encourage the student to come back to you for solving his problem or solving for taking advice on various issues i think she's spoken about focus with one eye i don't know whether it should be one eye or two eye but if you have something in mind mind then i think your mind and both your eyes should be on that target and if you are not having any aims yeah then it's good to have one eye on that and my one eye somewhere else but if you know what you want to achieve then it is best to focus on anything that you want to achieve let me end here but i have sought ma'am's permission that if any student wants to ask me something i'm open to questions for the next two three minutes if any one of you wants to ask me you can stand up raise your hand ask me you don't have questions or you don't want to ask or you are shy hello everyone and this is sir police opportunity my name is both of you it is here from be efficient sure political science is my honor so my question to you sir is sir can you give a ayato ayato experience from your service okay so he's come take it is working now so he's saying for expiring candidates tips for expiring candidates for civil services firstly let me admit that i am too old to give any tips things have changed a lot of water has fallen uh flown down the river uh but yes uh i've given you one tip already focus is one thing but i think more important than focus is that you should know your capabilities and your limitations you should know whether you can do it or not if you cannot do it if you have a doubt in your mind please keep away from it because you will be wasting four years or five years of your life okay so in life in general not only for civil services but in life in general all of us need to know what we are capable of doing and what we are not capable of doing also that i think is the biggest strength of a personality of an individual if you if you know what you can do and if you know what you cannot do you will succeed because you will succeed where you can do something okay so beyond this i mean follow your mind if you are good in mathematics do mathematics if you are good in psychology do psychology but don't do mathematics if you can't follow mathematics i mean for me i am very afraid of figures nothing when there are figures i don't even look at that side so i know that is my limitation so i don't do that but whatever is your strength do it whether it is civil services or anything else if you want to aspire for civil services you want any help the best way is to talk to the younger officers of the past four five years batches because they would know what is the pattern of the examination and other things we would not know we are too old things have changed a lot from since then anyone else i hope i am able to satisfy you yeah yeah because i don't want to misguide anyone anyone else last but not the least if anyone of you what i can do for all of you or anyone of you is be a friend and they're on facebook and they're on twitter and they're on the social media and any one of you wants any personal help or advice or want to share anything with me something where you can you want you can share you want to share in anonymity where nobody else should know most welcome to approach me send me a messenger message this is what i can do i can't do anything else for you thank you very much


All right, sad news out of Russia today. There's always sad news out of Russia. I think that's the essential characteristic of Russia is sadness. But Alexei Navalny, a longtime opponent of Vladimir Putin, a longtime opposition leader, a longtime anti-corruption activist, has died. No cause of death was provided. And he was seen healthy yesterday on video at one of the hearings related to his trial.  She seemed completely healthy. Anyway, he's dead as of this morning. And Navalny, of course, has been fighting against the Russian machine, if you will, a political machine since at least 2011. He had his own YouTube channel, his Twitter account. And in a 2011 radio interview, he described Russia's ruling party as a party of cooks and thieves. I think pretty much captures it, pretty much captures it. And he published investigative journalism around this that accused high-ranking senior officials in the Russian government of corruption. Over the years, Navalny was arrested many times. And he ran for mayor of Moscow in 2013. He tried to run for president of Russia in 2018, but the Central Electoral Commission ruled him ineligible. In 2020, he made headlines in the West because he was poisoned. It was on a flight from Tomsk to Moscow. He became poisoned with a nerve agent. He was immediately shallowed off to Berlin, where he received medical treatment. And where the idea that he was poisoned was confirmed by German doctors. He made a recovery, recovered fully from the poisoning and decided, kind of crazily, to actually return to Russia and continue his fight against Putin. Even after knowing Putin wanted him dead. There was no doubt, by the way, on who poisoned him. It was Putin and the Russian officials. He was arrested when he landed in Moscow. Russian prosecutors opened a criminal, obviously, he's been accused of violating terms of suspended jail sentence, something like that, and working against the state. He's been within the Russian judicial system since 2020. He was sent to a, what do you call it, colony, a prisoner colony. I didn't even know they had such things. Above the Arctic Circle in Siberia, very reminiscent of Stalin, where he passed away. He's been on and off sick. And many people thought he was going to die a while back. But he died this morning at the prison. I don't know much about the politics of Navalny other than he opposed Putin. And other than that, obviously Putin, at least, thought he was unbelievably dangerous and needed to be silenced. Just from that, I conclude Navalny was a hero, a hero of more freedom in Russia. A hero of getting rid of the brutal, you know, homicidal regime of Vladimir Putin. And Navalny, of course, suffered the consequence of that homicidal regime. This is, of course, the same Putin that Taka gave a platform for. This is the same Putin that in many ways, or the same Russia that Taka praises. By the way, there's a video circulating. Not only did Taka go to the train station to the underground station, he went to grocery shopping. We talked about that yesterday. But he also went to a fast food place in Moscow and was raving about the non-GMO food. You can find that video online. This is the Taka who now loves all things Russian. Anyway, on the way home, I guess it was home, but on the way leaving Moscow, Taka stopped in another bastion of liberty and a bastion of freedom, another city that is super clean, very, very clean. And where there is no crime, almost zero crime, maybe safer even than Tokyo. And that is Dubai. In Dubai, he sat down at the World Government Summit. I don't know what that is, but it's a World Government Summit. And he was interviewed by a local, I don't even know who's interviewing. I have no idea. He has an Arabic accent, so he's local. But more than that, I do not know. And in that interview, Taka Carlson was asked about Navalny and why he didn't ask Putin about him. And I think this is a video worth watching. I think we should, you shouldn't believe what I say Taka said. You shouldn't listen to it himself. I'll play it with the question and the answer. And we can discuss it after that. But this is the link between Navalny and Taka beyond the fact that one was fighting to free Russia and one was fighting to bring Putin, I think is still fighting to bring Putin's ideology to the United States. Here is the video. This is the World Government Summit. This is about a few days after the interview with Putin and I will play it. I assume the sound should be fine. The devil's advocate. Advocate away. Yes, okay. I'll tell you.  It's not for me to give you a lecture about that. But you should challenge some ideas. For instance, you didn't talk about freedom of speech in Russia. You did not talk about Navalny, about assassinations, about restrictions on opposition in the coming elections. I didn't talk about the things that every other American media outlet talks about. Because those are covered and because I have spent my life talking to people who run countries. Now, notice he says those are covered. But everything he asked Putin has been covered. I mean, everything Putin said had been covered. And indeed, I thought the whole point of the interview with Putin was discover what Putin thought about this, not what is covered by American mainstream media that we all know. But the whole point of the question is, the whole point of questioning Putin is discover what does Putin think about free speech? Wouldn't that be interesting rather than bring that out? So, Takkehiu is being duplicitous.  He's lying. But why doesn't he just say? You know, to say I didn't cover it because the mainstream media covers it. The mainstream media is not interviewing Putin. He had this unique opportunity to interview Putin and find out what Putin actually thinks about a free speech. He didn't ask it. Now, we get to the actual reason why he didn't ask it. So, back to Tucker Carlson. I have spent my life talking to people who run countries in various countries and have concluded the following, that every leader kills people. Every leader kills people. Every leader kills people. They're all the same. Model equivalency. Some might kill more. We'll say that in a minute.  There's no difference. Putin, Biden, Trump for that matter. Thomas Jefferson and George Washington. Every leader kills people. This reminds me of an interview, almost verbatim, of an interview Donald Trump did in 2016, relatively early in the presidential campaign, where he was asked about Putin. He was asked about Putin assassinating his rivals. And Trump said, you know, we assassinate people too. What's the big deal? This is who you want to hand the country to. These are the people who should govern. These are the people who should set the course for the country. God help us. Including my leader. Every leader kills people. Some kill more than others. Leadership requires killing people. Sorry. Leadership requires killing people. It doesn't just, it isn't just, you know, leaders are corrupt, but leadership requires killing people. That's a pretty strong statement and tells you a lot about kind of the political, the political thinking that somebody like talking, we're not talking about here. I mean, he'll say, oh war and stuff like that. That's not what we're talking about. We're talking about, first of all, we're talking the context of killing your political opponents. We're talking about killing your political opponents. And he will say, well, everybody goes to war, leaders kill people. I don't know. I'll leave that for a minute. That's why I wouldn't want to be a leader. That press restriction is universal in the United States. I know because I've lived it. I've asked my former, you know, I've had a lot of jobs. So censorship in Russia? Censorship in the United States? Same thing. I know Biden is very critical of Biden. He's done a lot of shows criticizing Biden for years now. Is he being sent to Northern Alaska, to ice fish and to a labor camp? I don't know. If you guys are furious right now, if you guys are mad, if you guys are not ready to dump Tucker and anybody associated with him, then all I can say is it's hopeless. It's hopeless. If this doesn't make you steaming mad, because Tucker is not a trivial journalist. Tucker is the journalist of the right. Tucker is, his interview was what, 500 million times or something. And I've done this for 34 years and I know how it works. And there's more censorship in Russia than there is in the United States. A little bit. Yeah, a little bit more censorship in Russia than there's in the United States. There's a great deal in the United States. And so at a certain point, it's like people can decide. There's almost no censorship in the United States. It's complete BS. Whether they think, you know, what countries they think are better, what systems they think are better. I just want to know what he thinks. That was the whole point. Yeah. Yeah, then why didn't you ask him? But that's the point. He didn't ask him what he thought. He didn't ask him about free speech, what he thought of free speech. Whoops, what am I doing there? I shouldn't be there. I should be there. All right. I don't know. I, my frustration is not so much at Tucker. It's at his audience. It's at the, I mean, Tucker's doing what Tucker needs to do to maintain his audience. I think Tucker at the end of the day, this is Tucker. I think Tucker went from being a kind of pro-American, almost libertarian, pro-free market idealist to, I think, coming to the conclusion that that was hopeless and becoming, he's become a completely committed cynic, a complete and committed statist. I think he's gone through that evolution. So I don't think he believes in anything right now.  I think, I can't think of anything more despicable, anybody more despicable and disgusting that I've just, that I've encountered on, you know, on the media, in the media over the last, what is it now? Few years, and I've been telling you this over and over again, than Tucker Carlson. And I hope that his performance over the last week or so, you know, shows that and maybe other people start seeing what I saw years ago and what, anyway, I don't know. I am super frustrated, super frustrated. All right. A neat comparison here, some you might think between Tucker Carlson doing what he's doing in Moscow and Walter Durante. Walter Durante, for those of you who don't know, is the New York Times bureau chief in Moscow in the early 1930s. He won a Pulitzer Prize for 13 articles. He wrote in 1931 analyzing Joseph Stalin's regime. He is known for having basically lied about what was going on in Ukraine, the mass starvation in Ukraine. What was that movie? God, I forgot my another movie, but a wonderful movie. Well, wonderful, scary, but wonderful, really good movie about, God, somebody remind me, about the famine in Ukraine, Mr. Jones. Thank you, Emmett. Mr. Jones, Durante plays a role then. He's shown to be the creep that he was. Durante was a communist spy, and he worked for the New York Times, and he wrote articles basically subtly praising Stalin.  I think Tucker Carlson is the Durante of today. He's not a spy. I don't think Putin's paying him. The sad thing is, just like Durante found an incredibly receptive audience in the United States. In the 1930s, certainly the intellectual class in the United States were, the intellectual class in the United States were communists. I think the same today is with Tucker. Tucker finds a mass, large number of fascists in the United States. They don't call themselves fascists. They don't think of themselves as fascists, but they are fascists in the United States, who love him and adore him as freedom in the United States declines. And as the contest between the authoritarians of the left and the authoritarians of the right and who gets to dominate the scraps of what's left of America, Tucker is the Walter Durante of the right. He is their spokesman. He is their guy giving us a beautiful reports from Russia. And anybody who loves Tucker, and here I'm talking about Ken, and I'm talking about Richard and others on this chat, not only can you go to hell, but you guys are at the forefront of destroying this country. At the forefront of destroying this country. You are part of the destruction of this country. You are part of the end of this country. You should be ashamed of yourselves. And it saddens me to see you on my chat. One last thing, maybe a little humor with the God of Tucker at the end, because I am kind of angry. This is from your district judge, Mary Kay V. Scottsill. She was a judge in the Southern District of New York. And she was the judge responsible for the defamation lawsuit against Tucker Carlson. And this is basically what she ruled. She ruled that the genia tenure of the show should then inform a viewer that Carlson is not stating actual facts about the topics he discusses and is instead engaging in exaggeration and non-literal commentary. This is by the way the position the Fox lawyers argued for, and Tucker Carlson's lawyers argued for, that he is an entertainer. She wrote, quote, Fox persuasively argued that given Mr. Carlson's reputation, any reasonable viewer arrives with an appropriate amount of skepticism about the statement he makes. By the way, she was an appointee of Trump. She's a Trump appointee, not some leftist. Whether the court frames Mr. Carlson's statement and exaggeration, non-literal commentary, or simply bloviating for his audience, the conclusion remains the same. The statements are not actionable. Anyway, can't sue him because he's not really, nobody takes him seriously. Nobody should take him seriously, put it that way. The comments I'm making about Tucker, based on everything I've said about Tucker over the last few years, but certainly over the last three days, the analysis of his interview with Putin, which was a joke, and then all this commentary on Moscow where he fawns over Moscow, and of course the video I just showed you, where he basically morally equivocates between the Russian regime and the American regime and the Western regimes and advocates that leadership means killing people. It's a big deal if Putin is killing people.