Sean called it complex thermostatistics, and I didn't really know what to do with that Except that there's complexity and like everyone's talking about complexity so far But I'm gonna try to give a definition which I roots things and then helps with the narrative because there's like weathering everything's complex And there's lots of stuff. So it's complex and there's big numbers. Okay, so then there's thermodynamics Statistics, statistics, statistics mechanics, condensed matter physics, soft matter physics is high energy physics, physics complex Okay, so I'm gonna go through all these things and like one side at least Okay, so first me and Sir Sean said who I am and then the way I like to say who I am is I learn quickly and seek complex problems So okay, there's complexity there and I like to do multi-scale physics modeling and prediction with various levels of complexity and This definition of complexity where I say back at the envelope versus computationally intensive simulation Actually the definition I'll give makes sense in that sort of single phrase. Okay And then I do lots of research. So right now I work in advanced computing Like massively parallel classical and also looking at quantum computing and in AI and ML And then I've also worked in material science and dynamical systems and physics and robotics and all this other stuff So real quick slide on like what's the connection between thermodynamics statistics mechanics dynamical systems and like complexity so these guys this this spans like two centuries right Boltzmann and Ken Wilson and so Way back then they started studying thermodynamics, which was like a set of axioms at the carrier level and they came up with Consistent theory which started at that level which agreed with the underlying or top level thermodynamic axioms But I think the important part is that they did all this work So we're talking about ideal gases and phase transitions But they extracted a whole bunch of useful tools from this study that goes on to be used in other complex fields I think that we've gotten a taste of that so far So I think that's this is like for me the one pager extraction or take away from Thermo and stat magic and all that is the tools that you got out of it and how much they're applicable in other domains not necessarily exactly but Like things like vanishing transitions. Okay, so for me It's like phase transitions and self-similar in universality and divergence when particularly in the alpha-fx modes and attractors and bifurcations limit cycles And all this junk in here which you can find in books like Hillborn and you can find You can find you can find a stroke ass and fraught and then these are all good ones for stat mech and canets matter physics as well Pothria and McCory and Ashkoff Merman and all that. Okay, so I would say that this is my Like definition of complexity and thermodynamics and all that is what's contained in these texts So, okay So now I want to like good definition of complexity so that like we can compare different systems because I want to look at lots of different systems like Simple systems that might have complexity the entire universe and reality so So the definition of complexity which I like because it lets you play around with those different scales It's common graph complexity, which is just the length of the short computer program in some language that produces an object There's an outfit This is the mental world set right and this thing can be like petabytes in size You can keep iterating on it forever and make it very complex object, but it was made from this thing All right, and this fits on a single piece of paper. This is the mental board set itself. It's definition This is the kernel, right? That's what it produces. This is a very important concept that like is pervasive across the different domains of complexity Is this notion that you can have this very very complex behavior, but it's coming from some very simple kernel, right? With appropriate so and then there's ingredients with the kernel like the kernel is nonlinear And if you have the right value of C, then you get that right and so this was typified in The beginning talk when he said look, it's not anizing models not a spin glass. It has these very particular Rules and that's what gives me the complex behavior that I that I observe So these are the these are the important parts like what's the necessary ingredients like one only at nonlinearity or made degrees of freedom And how can we look at simple kernels like this that make incredibly complex objects? and so for me my background also isn't Atomicistic modeling and so a nice way of bringing the comal growth complexity into Atomicistic modeling is to say so we have like the Dirac equation the many-body quantum attacks problem, which is an empty hard problem It's comal growth complexity is really really high And then you win Nobel prizes first you win a Nobel Prize for getting the Dirac equation Fine, then you get a Nobel Prize for making the Dirac equation really easy to solve This is the density functional theory and then you have like ethical's MA So the point is that comal growth complexity high up here and it's getting simpler is it coming down the computational complexity is coming down And I would say the complexity is coming down Okay, so that's this is like my background. So Jared protein folding What else you do, okay? All right, so I think what's more provocative is to think about so this is like not complex This is more complex and then reality is very very complex. So but what's but the same the same Theme is there so you have star model Lagrangian if we figure out how to put together with general activity Then you get the whole universe, right? This is the kernel. That's the object produced Comal growth complexity of universe incredibly more complex than mental growth set or the modeling I was showing you before So what's very interesting is Seth Lloyd back in 2001 or something like that He he computed the computational capacity of the universe and estimated something like 10 to 120 ops on That's incredibly. That's a lot of bits and ops Also interesting to think about in the in the context of Computation is the Beckenstein bound if anyone's ever heard that that's sort of so for a given volume of space and energy mass in it How much computation how many bits can that store and so we're really really far away from the Beckenstein bound with our current computational capabilities So like the Beckenstein bound leaves room for a million bits in a hydrogen atom. So that's crazy Okay, so I'm just trying to set the sort of a stage Okay, here's an example of one of the papers That's kind of like a seed paper in the track and this is quantifying the rise and fall of complexity and in this case Comal growth complexity in a closed system. They call this the coffee automaton So in this study what's very interesting about it is that so this is the simulation They did and we don't have to get into details, but this is the time step and this is entropy in the blue But in the green you see complexity has a local maximum in the case So I don't want to go into any more detail than that But this is the kind of thing that we could get into in the session And in fact, I got into something similar to this back in my master's work So this is a turbulence on the surface of the tank and over here We have the initial distribution of let's say some particles you bunk it on the surface and then as time goes on you see this thing The entry actually decrease of the complexity definitely go up I didn't measure what they did in the paper in this study, but you get you get the idea that these systems that are not in equilibrium You know the entry doesn't need to increase In this case it doesn't actually decreases and the complexity definitely goes up So this is one of the sort of ideas that we can play with in the session Another one which is related to the reality as a computation is along the lines of Jared's stuff with deep learning Which is why does deep and cheap learning work so well, right? So so so one idea is that it works so well because reality itself is composed of a list of a sort of finite list of functions which are important to reality like waves and exponential functions and so forth So we could also get into this although that starts to overlap with what you're doing But this is a very very provocative paper Another thing I want to point out which is I think pretty cool is thinking about what drives all this really interesting complexity in the Geosphere is actually a very simple thermodynamic principle at the highest scale. So you have the Sun And it's at 5,000 Kelvin and if we take black body radiation the entropy of the Sun Actually a black body those are going over T So the entropy of the Sun is much lower than the entropy of the re-emitted radiation of earth Reimits the difference being a change in entropy would stride all this and other stuff But the point is that sort of thermodynamics at the highest scale sets the stage for all this stuff that we're talking about I just wanted to put that slide because I it took time to make it. I don't think it's nice It's poignant, isn't it? Okay, so I think that's really cool. That's why I have to slide there Going further if you so that's it like one scale or at the highest scale above the geosphere inside the geosphere at the molecular level You've got Situation like a kinesin, right and these guys are walking in the cell membrane on the scaffolding in the micro tube bills And they're just able to do their job well enough to beat the thermal fluctuations in the environment So they can do work that's corresponding to like two or three times kv2 So they just sort of get the job done and then the whole cell works really well But thermodynamics is playing a major key role And not even non-equilibrium thermodynamics So that's another line of research we could go into another really interesting Connection is the what's the possible link between intelligence and entropy? So this is a paper by Wistner Gross talking about causal and traffic forces Systems that you could subject to these causal and traffic forces tend to reach a state which is a maximum potential Maximum possibilities. So one of their examples is a pendulum which they get to stand up on its end Due to these causal and traffic forces and and what's interesting about that is that that's the sort of point of maximum possibility Potential could go either way. It's unstable so forth And then Jeremy England at MIT has a kind of similar line of paper talking about the statistics of self-replication And all of this being driven by entropy. So it's almost as if to say In an entropic universe are you sort of bound to get intelligence if you the universe is big enough and Comments don't blow everything up and all that sort of thing in other words, you know, we have a universe from no entropy Do we not see intelligence? So this is very interesting work. Oh Interjecting real quick about me. So I also do form computing and just to show you like how many connections you can make with thermodynamics and complexity so quantum computing is about using qubits is It's any quantum computers and I'm using this stuff to try and figure out how to do you have the hard problems faster than classical computers like traveling salesman and There's this notion of computational complexity I'll bring the complexity problem complexity in terms of P and NP if you've heard of this stuff and then and how much of this region Bqp, which is from quantum computation Can be how many problems can be solved efficiently in this in this Bqp space? Well, what's interesting actually gives you Leonard Susskin who's at Stanford recently made this conjecture that nature is the fastest scrambler of quantum information and uses a Quantum circuit model to do this analysis. So again, it's like everything in complexity is everything thermodynamics So this is another line of research that we can get into much time. I don't want to go to I Was the end of it anyway So I just gave you like six things I guess that have connections thermodynamics systems in equilibrium and non-equilibrium I tried to give you my definition complexity because I think that that Like sets an even ground for all of these definitions or people saying complex and complexity I think we all know what everyone means when they say it but to me that makes things very very Concrete


Hello and welcome to a new lesson on linear regression. So throughout this lesson we're going to walk you through a series of tests and ways in which we can conduct linear regression. In particular, this video is going to focus on correlation and how we can actually conduct eventually a hypothesis test for testing the significance of correlation. So we're going to start with an introduction to the subject and then later we'll get into the actual hypothesis test. So we are here in Google CoLab and we have several libraries that we're going to use that we've all used before in different settings and in particular we're going to ask the question does we're going to test the significance of correlation. So we're going to ask the question does using more water for fracking yield more natural gas production and so if you're not familiar there's some context here provided that you can read through on your own time but essentially we are going to be using data from the Marcellus shale formation in Pennsylvania to test to answer this question. So there's two CSV files that we're going to use and I have them ready to go and read it in. The first one is lecture eight Marcellus wells and the second one is lecture 20 Pennsylvania wells frack and so both of these have data on fracking wells but they have a little bit of a different different columns and so we can see here for in the Marcellus data which I called mark we've got all of this information about drilling and what we're going to be interested in is the data down here total gas and max gas these are the values that tell us how much gas was produced from a well the water data on the other hand has less columns so we've got basically what we're interested in is total base water volume and there's a few other extra things so before we can actually get into working with this data we need to merge it together so we need to do a little bit of pre-processing and we also need to do some grouping so the first thing we're going to do is group the water data so I'm just going to call this water two so that I don't override my original data frame I'm going to say water dot group by and I want to group by API number so the API number is a way to identify the actual well that we are referring to and this water data set has multiple values for multiple wells and so we need to essentially group them all together and we want to get the total for that well over the entire study period so to give you a look about what this now looks like after I run that I'm using that dot head command to print the first five rows and essentially we've sort of condensed our data set down to API number and total base water volume as opposed to having multiple columns up here because I'm not grouping them I'm not storing them so they just sort of drop off which is fine because we really only need the API number and the total base water volume so now we've grouped the data the next step is to merge our water data and our wells data however before we can do that you look up here we've got this API number column but it has a different name than our API number column here now these are the same API numbers they're just called different things for the different data sets so in order to merge on them we actually need to rename the column and so we don't need to rename every column we just need to change API NO to API number so that it matches what the water data set has and then in that same block of code I'm going to go ahead and merge our data frame using pd dot merge and say mark water two we're going to do an inner join so that we only keep data points that are in both columns and we're going to join on our newly renamed API number and again I will print the first five rows and so here we can see we've got this big data set now if we scroll to the end now we've got our total base water volume at the very end to go with our total gas column and so this is how the data set that we're going to use throughout the correlation lectures but before we get started with correlation a good habit to be in is to visualize our data so we know what is going on so we're going to use ggplot with merge df and I'm going to do a little bit of a different modeling or visualization technique and I'm going to put our aes command within the larger ggplot command so it's still going to look the same I'm still going to have an x value and a y value which is going to be total gas but the benefit to doing it this way is that these aes statements carry throughout the whole plotting thing so when I go to do geom point I don't need to actually type anything I don't need to provide an aes statement because it carries it down from the main ggplot command and that makes this go a little easier because then we can add our stats smooth again we don't need to give it the aes we do still need to specify a linear model and we can change the color to red and so here we have what the total base water volume and the total gas look like and now we could make some qualitative statements about the correlation here we can say that it is positively correlated and that maybe if I had to estimate it might be about point four maybe just based off of the example thoughts that we have to go off of but again we haven't added any numerical quantity to that yet and in order to do that we need to find the sample correlation coefficient which is r so I'm actually going to do this inside a print statement so I'm going to say correlation coefficient and then I'm going to do a round statement so that it's not printing a bunch of different a bunch of extra numbers we really only need a few and then I'm going to give this the command for finding the correlation of sample data and so we can say merge df total base water volume and then the command after the square bracket is dot core open parentheses and then we just give the second variable total gas and then there's one more thing that we need to do and that's to finish off our round command and so it's going to be right here so you can see how the parentheses are highlighted so we're still inside that round command but we're outside of the correlation command and I'm going to say comma three which rounds to three decimal places so we can print it out and say the correlation coefficient is 49 or 0.494 which is actually it's okay it's not the best correlation coefficient that we have but it's not terrible and so based off of this plot and this correlation coefficient we can write a conclusion so generally when we're thinking about correlation our conclusion should focus on the direction of the association the relationship between the two variables and the evidence for this relationship and so I'm just going to paste in some text that I had preloaded and say that to make this conclusion we can say there is a positive association between total water volume and total gas which means as total water volume increases the total gas increases and the evidence for this is the correlation coefficient which is positive and the slope of the line which we can see is also positive and so this is sort of a basic way to make do some inference from correlation but it's still a bit qualitative it's not although we do have a quantitative number it's not necessarily the most statistically sound and so what we'll do in the next video is conduct a hypothesis test in order to get at more of that statistical inference instead of just looking solely at one sample


Security report says over 3,000 persons have been abducted and 654 million Naira ran some paid between 2021 and 2022. Terrorists have attacked southern Kaduna community again 24 hours after residents conducted a mass burial. Tonight, in continuation of our Town Hall series and countdown to the 2023 elections, we take a look at the worsening security situation, even as Nigerians call for speedy justice for the late lawyer Omar Balani Rahim who was shot dead on Christmas Day by a police officer in Lagos. This is Plus Politics, I am Mary Anacom. Between 2021 and 2022 alone, no fewer than 3,420 persons have been abducted across Nigeria, with 564 others killed in violence associated with abductions. Terrorists on Friday also launched a fresh attack in Malagom Kagoro in Kauraloko government area of Kaduna state 24 hours after a mass burial of victims killed in previous terrorist attacks. According to sources in the community, the terrorist arrived fully armed and began shooting, forcing people to flee for the allies. Now recently, we have had an incident of the killing of a Lagos lawyer, Mrs. Balani Rahim, by a police officer in the state. Rahim was hit by a bullet fired by a police officer attached to the Ajiwe police station in Ajah, Jambi Vandy, an assistant superintendent of police on Christmas Day. It is no hidden fact that incidences of kidnapping and banditry and police brutality have become more brazen under the Bahari administration from abducting a military officer from a military facility to attacking an airport, derailing a train, and kidnapping passengers. The safety of the average Nigerian cannot be assured. While joining us to discuss this is Reverend Joseph Hayab, he is the chairman, Christian Association of Nigeria Kaduna State. We are also being joined by Dennis Amakri, former assistant director of the DSS, and Senator Iruagbo, he is the editor-in-chief, global sentinel, and he is also a security analyst. Thank you so much gentlemen for joining us on this conversation, and Merry Christmas. Thank you. Great. I'm going to start with Reverend Hayab because of you know the recent attacks again in Kaduna State which seems to not be going away anytime soon. Reverend Hayab, Nigeria has been ranked as sixth terrorism in most impacted country you know this year, and as we can see Nigeria is leading countries like Syria and Somalia, and these are countries who have been actively at war. And here in your state which supposedly would not be necessarily seen as a very Islamic state, we're seeing more and more of these killings along the lines of religion and ethnicity. Why has the situation in Kaduna State continuously lingered? It interests you to know that the situation in Kaduna, the truth is that it's even under reported because you are just talking about the killings in Malagon, Kauraloka government of Kaduna State that happened some days ago. But I can tell you that on the 25th of December, just on Christmas night, another person was killed in a village by name Amfani Umoru. One Maradona Samuel was badly injured and over 18 people were kidnapped on that Christmas day in Kaduna, local government of Kaduna State. On the 26th of April, these treaded kidnappers came and took away 42 persons not nine of them were women in one community called Umbuan Park in Karsuama, the new world. So you can see that killings, attack, kidnappings, and all form of insecurity is still going on. The reason why we are just tired of coming every day to the media to sing this song, to continue to explain this, yesterday morning precisely I was in Zonkua and I was in Kaburo, I was in Kapantan because I have to go. I went to Southern Kaduna to commit suicide with many of the families that were actually affected and the stories are not good stories at all. Do you know that the very night we buried, we had that mass burial, on that night this killer made him again and to show you that they can take everybody, they will even go beyond what you think they will go. So when you are asking about the state of Nigeria, it is just to tell you that things have continued to deteriorate, there is no control, insecurity have reached the worst level it should not be in this country. Either because there is a failure in government to deal with this matter decisively, or we are playing politics with a very sensitive matter, the rating may not even be a concern of this government because before you know what is happening, a live movement will come, address the press and even accuse some people of asking this rate or to have rate in Nigeria as higher in kidneys than Syria and Somalia. So that is the problem we have in Nigeria, those even in church don't even feel any concern about what is happening. They give it a different name, they try to turn their face to the story and so the enemies of this country will continue to perpetuate evil because they know that no one is going to come after them. I am most curious about the fact that I mean of course a lot of people make the excuse that the governor of the state is just the chief security officer on paper and not necessarily by action or being able to command the service chiefs in the state. But if something of this nature happened on Christmas day and the same night, something of the same nature was able to happen, it makes me wonder what security agencies in Kaduna state are especially for a place that's gradually become a hotbed for some of these killings and you know abductions. I'm curious because I want to know where are security agencies in your state and what's the situation, what is the police commissioners saying and other security agencies that are supposed to be on ground to help fight this killers off? These questions should go to the commissioner of police, the state, not me. My rule simply is as a faith leader, my people call me every night and every hour when they are in crisis, when they are in individual situations like this and tell me and they will write a vivid report. I can because it's not here, it's not a place for me to begin to, I can tell you with the names of people kidnapped, the names of people injured, the names of people died and the timing. I have all those ones on record because I can't have a network that goes beyond just a state chapter. We have chapters in the local government, we have chapters in the I think we're having a connection issue there with you.  I feel like every time we have these conversations we're just talking about the same thing again and again and again and there seems to be no end in sight. It looks like we're going round and round in circles and maybe the answers are staring us right in the face and we're not necessarily doing what we need to do because I'm trying, this is my question, why do we have to keep doing this time and time again even when there seems to be some solution, there are ideas that people like you put out there. What do you think the challenge is with this issue of insecurity especially for a case like southern Kaduna? Okay thank you very much for having me and you see this problem keeps on persisting because we have not seriously decided to solve it. You have people dying every day, you have governors doing a double speak about when people are killed, the government political statements, when it favors them they are ready to give all kinds of military solutions, intelligence solutions, you know, when it doesn't favor them they tell you that they are not the CESOs, they are just CESOs of paper and stuff like that because when you look at it, these governors actually have the security apparatus under them. It's not the commander, it's just the chairman of the security council where he should be able to direct people to do certain things, you know, and when your old people keep on dying and you make political statements it shows that you are not really serious about what is going on. But I think we've experienced a lot of things this year, very, very nasty situations and as we move into the next year optimistically maybe we will think that, you know, new things will happen. Senator, you have continuously reported on issues of insecurity across the country, especially in the northern part of the country. I mean terrorism continues to be on the rise and when I talk about terrorism I'm not just talking about banditry or Boko Haram, I'm talking about terrorism in its entirety, crime and criminality seems to be on the rise despite the fact that the Nigerian government had budgeted 11.18 trillion Naira from 2015 to 2022 to fight this menace and terrorism, if I might add, is one of the major wings on which this government rode into power and we're here almost at the end of 2022 still deliberating on what needs to be done and I'm wondering from your experience in the field what exactly do you think the challenge is? From my perspective I think the challenges first starts from the top. They say we practice executive presidency and if you remove the titles all over the world, if you remove the titles, I think Nigerian presidency, the power inherent in Nigerian presidency makes it one of the most powerful in the world, in fact almost close to a dictator. Now to whom much is given, much is expected. That's how the country is built, is the commander-in-chief of, the president and commander-in-chief of the armed forces. So when a president is not leading from the front or taking direct charge, it becomes a problem. I think half of these issues stem from them. Most times we are always talking about body language. Most times what we get from there is that sometimes he is nonchalant about some of these issues and it's a shame actually because this presidency has one of the most, the most goodwill out of many presidents we have ever had. It had so much goodwill when the president took over. Then over time this frittered away and it continues up to now. Believe me, anytime this president is interested in an issue, you will see that it will be done.  Because why? The president is interested in such issue. And this kind of operation is something that is top like CIA, Mossad, but they put it off. So what I'm saying is that the president should take charge. It's in this country we are about almost 1,000 people were killed in Agathe. For almost two weeks, Nigerians were crying. President says something, speak, address these people, at least assuage their plight. No comment, no statement. After so much pressure, then a female stationer issued a press statement. At the same time this was after there was a bombing in Brussels, Belgium. We had few people, about 90 people were killed by terrorists. Immediately, in less than 24 hours, presence issued a statement commiserating with the people of Belgium. It's the same country where flood, flood, submerged almost one third of Bahia's estate. Submerged almost one fourth of a number. Submerged almost one fifth of Gogi. Across the country all over from Jigawa to Niger. No statement from. In fact, failure coming, we are in communication. Then there was this Halloween stampede or firebreak in Korea. We are about 100 people. Immediately. So what I'm saying is, if a station gets back from the head, then that's where they stop. And take note that most of these operations is a commander control structure. If they are not sure, if the military or security agencies don't have a defined directive, there's little or nothing they can do because it creates a situation of uncertainty. And that's what you're seeing in the North West and across the country, except not East. Where there is a defined operation going on in North East, where there is theater command, where we know that the sphere of operation is where defined. Their mandate are defined. And that's where you are gradually getting results. We are not yet there. But apart from that, across the country, be it in Kaduna, be it in Kasina, be it even in the South East, there's no defined operation. Most times it depends, if you are the presence, okay, of giving command to the military. If you give command, how do you follow it up? If something goes wrong, would you hold responsible?  Is in this country that President confess he's told IG to go to Benway State and he didn't know that IG didn't go? That was it. He didn't do anything. In fact, that IG stayed and tried to even defy the Constitution to stay beyond the constitutional date. He's supposed to retire. So, Senator, you're saying all of these things, you say that our President, I want to be sure, that you're saying that Mr. President does not seem to be in charge. I want to first lay a foundation from there, because if we're going to solve other things, like the issue of the non-kinetic areas, like having the political will start from there, having, because some of these issues we are talking about will not stop by guns and bullets.  But if we have to take action, we have to start from the top. President has initiated and approved National Assembly and State House of Assembly and Governors and we have to start from there. You have to mobilize because enormous power and influence is in that office. If it's not trusted in doing anything, I bet you other things, other sectors, other hands may try, but it is still for sure. So, the emphasis, why I'm laying emphasis there is because there's enormous power and influence from there. He's not going to do it alone, but he has to initiate it. He has to pull it up. That's what I'm saying. So, there are other areas of decentralizing our policing structure, having cognitive policing, effective early warning response system, having a national dialogue to know how we can live in peace, because some of these problems are actually politically inclined. If we solve it, then we solve almost 60 to 70 percent, but it has to come from the top. The initiatives, someone has to lead to get these things to be done and it has to start from the top. Let me come back to you, Reverend Hyatt, because the Christian Association is not just an association of Christians.  So, picking up from where Senator left up. Senator is saying that there seems to be a lack of leadership push on Mr. President's part. He's saying he's not doing his job, he's body language for the want of a better way to describe it. So, I'm not sure that he's interested in fighting insecurity, but it baffles me. For a president who fought so hard to be president in this country so many times, the fourth time finally he was able to get his way and then this is what we get. It beats me. Why has it taken so long for the president to deal with this issue of insecurity? And he talked about politicizing it. Do you see any form of politicization when it comes to dealing with insecurity across the different zones in the country? The truth is that the reason why we've not been able to tackle insecurity is the conservation of insecurity. Apart from, you see, I like using Kaduna State for instance. In Kaduna State, most time our governor will come out to the media and say things that are not just to divert attention. Do you remember that on the eve of one election in this country, this governor came out just to divert attention and claimed that certain ethnic groups have been killed and even have a number? A few weeks after, the commissioner of police denied that he did not even know about the number. So these are the kind of things. And I can't agree with what the senator said. They only react and respond to issues that interest them. But how can you show on how to defend and protect lives and properties of citizens of the United States and their matter, their issue do not consign you.  Nobody from Kaduna State government attended that Masberia. I think those people are nobody. And so if they don't care about that, how would they care about the number of people I've just mentioned that were kidnapped on the 25th of December that were kidnapped on 26th and who knows what has happened between yesterday 27th to today 28th. So these are the kind of situations we have. We have leaders who don't care about us. We have leaders who don't think about our welfare. We have leaders who come on the other face if they hear that there's a problem on our side. But they will come out to the media and say things. I was surprised the other day when I saw that one of the presidential aspirant candidate throw the issue of insecurity to my governor to answer when he went to check himself. And I could not just believe myself. He's the man who has not been able to address his insecurity problem in the state and is answering for us. But these are the kind of leadership we get in Nigeria. And we can't just blame them without blaming ourselves. It's only in this country that we think that the man we have elected as governor, the man we have elected as president, the man we have elected as senator, the man we have elected as house of rep or house of assembly is the one in charge of us. Incidentally, we are supposed to remind them that we gave them their appointment later. They are there because we have given them the mandate. They are not there to support us or to be the ones to decide what we do and what we don't do. They are there to do what we have sent them to go and do. But they don't care. That's why, whether we are kin, whether we are slaughtered, they don't even care. If they are going to make statements, they will make statements that will further aggravate this situation. Today, Kaduna is seriously divided along religious and along other lines. Why? Because even those in power that are supposed to govern our support or that are supposed to unite the people so that we work together to fish out criminals and even deliberately divide in us. I shared in one of the media yesterday that, look, Kaduna state has ever experienced a nine-year without conflict. Although sometimes, don't think that it has been complicated. Everybody knows from November 22, 2002, there was an effort to ensure that there was no more crisis in Kaduna.  What exactly did we do to achieve those successes? What exactly did we do to be sure that there were no other violence, no killing, and all the criminal things we are talking about today? This government is not willing to even reverse and take a look at what we did right or hear us talking about those successes. As far as she's concerned, she knows what to do, and sadly, she's doing nothing. Mr. Macri, he's talking about the fact that there seems to be no political will whatsoever. And then once in a while, the endurance point fingers our security agents and say, oh, well, security agents are not doing their jobs. They only are the whims and caprices of whoever is in power, whether it be the governor, whether it be the president. But let's talk about these men, these gallant fellows who are in the front lines, especially our soldiers, who have somewhat been stretched thin dealing with the issue of terrorism and insecurity across the country, whether it be in the southeast, whether it be in southern Kaduna, or even in the fringes of the northeast of Nigeria. Let's talk about their welfare. Let's talk about the idea of making sure that they're mentally prepared for what they're dealing with. And again, talking about political will, how well kit these men are for the fight that they're fighting because this is not a normal war. It's a guerrilla warfare. It's nothing close to them going to peace keep in Sierra Leone or in Liberia. Do we consider amongst all of the politic king the welfare of these men? Thank you very much for that question. Yeah, addressing the issue of political will, you know, many people will say, oh, the president does not have the political will. His body language is not telling us much about, you know, what we're doing and stuff like that. But we forget that that political will belongs to the people. I think that I will rephrase that to say that Nigerians don't have the political will, just like Rehan has said, you know, we are the ones who voted them there. And of course, as long as they are there, they are supposed to do what we ask them. Because we are not practicing a dictatorship, we are practicing a democracy. But how many Nigerians know that they have a role to play?  So how many people have that understanding? I am very happy you raised that issue. You know, in Nigeria today, I can conservatively say that about 70% of Nigerians are illiterates, illiterate in the sense of not having political education. Many people don't know. Go to the market, go to the road, and ask people about politics. What is democracy? Many people don't know. They will tell you that they don't know what is going on. All they know is that there is a P.C., there is PDP, and there is Labour Party coming, and you know, and that's why even the politicians go ahead and use this, you know, ignorance of the public in campaigning and telling them whatever they like, because if we are in an educated environment, people will start asking questions and say, hey, you told us this before, now this is happening, and you are coming back again to talk to us, aside it, and they should answer. You know, the American president put it succinctly. Thomas Jefferson, he said democracy itself cannot be effective if majority of the populace are not educated. So here, the market woman, even the way to vote, they don't know how to vote. So what are we? How do we now tell them about intricate policies about security or legislation and other kinds of things? It becomes a very big problem. And that's why I'm saying that Nigerian politicians should spend a lot of their time, a lot of their time in political education, because people don't know what is going on. Let's talk financing of our security forces. I recently talked about funding of the police, and it took me back to the essence of the NSAS protest. It was not just protest against police brutality, but it was also protest against the bad welfare or the short end of the stick that police officers were getting, the poor enumeration. But of course we saw what happened. Again, how can a person police well if the circumstances in which he finds himself is not even calmly? How can a person be fighting for a country that does not necessarily care for its family? And then there's their monies that have been voted to the army, to special forces, to the police. And these monies somewhat, someway, find their ways into the pockets of some persons who are at the top. And then leaves these other people in a state of comatose. Hence, they're unable to do their jobs as they should. Why are we yet to address these issues? We have members of the National Assembly who just talk about these issues once in a while, but there is, again, no follow-through, and I'm wondering, where do we as people come in to make sure that these things are addressed so we can have the kind of security and policing that we deserve? It boils down again to security education. It boils down to that. Because when you look at it, even the security agencies are doing that. They're not independent. Remember that. Because the security sector itself needs a very serious reform. It has to be reformed. Because in other countries, the security sector itself is governed in a way that they are effective. They know what they are supposed to do that relates to the national interest. And then, of course, they operate under the rule of law. Now we're talking about the policeman that goes around to, you know, maybe was drunk or smoked something, shooting an innocent citizen. Why? What is that going on? Because they believe the police system has not changed much. Right from colonial days, they were originally set up. The House of Constabulary here in Lagos was set up to take care of colonialists. And what the colonialists left after independence were politicians, Nigerian politicians. And then, of course, the politicians started using them as to protect themselves against the populace. So what are we really talking about? Are we running a system that is democratic, that takes care of everybody, or we are protecting the regime in power? You know, so you have to feel very sorry for the security agencies. They are not constitutionally. They are not independent. You know, they are not independent. And if that sector is reformed, reformed, you know, where we have good governance in the security sector, then, of course, they will be independent enough to carry out the job that they are trying to do, you know, no matter who is God. Remember in the United States, they have to go into Donald Trump's house and search him. Because when he left the office, he took official documents away. That cannot happen here because you cannot go, who is going to give you the order? So the institutions have to be independent, strong, before we can call it, you know, unactive democracy. Well, we're still talking about this place. Yes, quickly, before we go on a break. Yeah, because we don't even understand that many people who work in the different security outfit of Nigeria actually didn't go there because they have action for the security of Nigeria. They just went in there because they lack job and they need somewhere to get food. Have you seen so many young men who were recruited or who were employed or engaged into SSS? Their desire every day is to be with one politician and you see every day there's trouble to be with one politician to open his gate to block people from shaking hands with him. And then who are those ones that are supposed to go out there to gather intelligence and know that there's crime that is about to be committed. There's an evil that is about to be done. It's something with the police and even soldiers that you expect, since some sense of basically, I'm sorry, I am a son and a product of a military man. I grew up in the past, but I'm just ashamed when I go out and see how those who have been recruited or engaged by the Nigerians to start in the security outfit, they are designed to protect one individual, not about the citizens, not about the country. Look, they will even be lobbying people. Please, can you get me to be with one senator or get me to be with one big man there? Is that the reason why you joined the security force? That's why you cannot have proper understanding of their job. Well, they may not have proper understanding of their job because their desire is, let me just be somewhere close to someone who has money and get money and that's all. We'll take a quick break. When we come back, we'll talk about security reporting and my next question will go to Senator Irwin who obviously is in the field. Are we reporting properly or could we also be part of the problem? We're still talking security and plus politics. Stay with us.


Hi Red Hat Developers, this is Jason with the Red Hat Developers program here at Summit 2017 at the DevZone doing lightning talks. This morning we have John Osborn from Red Hat. He's going to be talking about offloading JEE sessions. Hi everyone, my name is John Osborn, I'm here with Red Hat. I'm a senior developer advocate and I'm going to cover offloading JEE sessions today. So a lot of customers are using technologies like JBoss DAP, Tomcat, they're running traditional JEE apps but one of the problems that they have when they move into a more modern platform like OpenShift is that they want to do things like rolling updates where they have a new application that gets deployed and their code goes through some sort of CICD pipeline and then automated into OpenShift for instance. But if you're running a traditional JEE app which stores stateful data this is actually really difficult to do because the data is inside the application so you can't just take it down right away. So one of the things that we do is for customers is we help them set up JBoss Data Grid. Now JBoss Data Grid is an in-memory distributed cache and can do a lot of things but one of the things that does out of the box really nicely is offload the JEE sessions into JBoss DAP. So this this session we quick crash course into how to do that. So I'll just give a real quick background. JBoss Data Grid is an in-memory distributed store. All the data it stores is in memory. It can actually persist to disk automatically if you want to but traditionally it keeps the data in memory and it makes redundant copies of that data so you can survive failover and server crashes and so forth. And it scales elastically so if I have too much information in memory I can easily scale on the back end and I don't have to worry about that necessarily at the application level. And the way it works is that it uses a distribution method where some of the data gets stored on each node and then redundant copies that data get stored on different nodes. And if a node were to go down well then that's fine it'll just spin up a new node and then it'll do what's how we call straight state transfer where existing copies of the data that are in memory and other nodes will actually transfer to the new node and it'll kind of do the seamless load balancing thing for you. Now you can write apps that that integrate with Jboss DataGrid it's very easy to do and it integrates with a lot of new technologies like Apache Spark, big data technologies. It's a really a robust technology that we have a red hat that's been around for quite some time but if you're using it as Taflo JEE sessions this comes right out of the box and there's actually no code changes required. And just one more thing about it we also do have what's called near caching which is you actually have a cache of your cache so you have something that doesn't need to go over the wire at all it keeps items of that of your data set locally within the same JBM as your application or the same machine as your application for even faster load times. So on OpenShift what this would look like is if you go into the OpenShift service catalog you can quickly spin up Jboss DataGrid instances they automatically find each other and cluster to each other and they'll be spread out across in different containers across multiple nodes. Now those nodes can be bare metal they can be open stack virtual machines or public cloud doesn't really matter to Jboss DataGrid they'll just evenly disperse throughout the cluster. Now I mentioned this is really seamless integration for EAP so and that's what this talk is all about is how to do this so I can configure Jboss DataGrid as a store for EAP and there's several benefits to doing it to doing it this way. The first is that I enable rolling updates of EAP so if I have EAP sessions and they'll have stateful data well if I'm storing the state somewhere else I essentially have a stateless JEE app and I can quickly take down that application without having to worry about losing data so that's really the the main benefit but by doing so it's going to accelerate your CI CD because I can now quickly create development pipelines and roll out new features within my code and I don't have to worry about you know where the state of my data is going. I also reduce the resource requirements of EAP so if you're storing JEE sessions you have to worry about that throughout your testing for for your EAP sizing things like your heap size your max your min max heap size you know all those things cpu requirements you'd have to worry about how many sessions and how large the sessions would be when you actually size out your EAP application if you offload into a data grid data grid is not only going to handle that for you but it can scale elastically so if you end up needing more sessions that are larger you don't have to necessarily worry about you know testing all that out because JbOS data grid is an elastic scalable store in the back end so when you go to when you go to size out your EAP apps you actually only need to worry about how much your application threads and cpus are actually going to use locally and not have to worry about all the sessions one thing that's really nice about this as well is you can actually seamlessly fail over across data centers so JbOS data grid has a built-in feature where if you have a cluster of sessions or have any data really it can automatically fail over that to another cluster that's running somewhere else in another public cloud or on another private data center and this is really important because the way a lot of customers do this now is they use technologies like database replication or sand replication and those are very expensive and this is something that comes out of the box and has been proven by a lot of customers and you do have that built in elasticity but the thing i like the most is the node code changes so i don't have to i don't have to code my application for this this is something that i just press a button and rolls out so how do i do this so the first thing there's really three main steps and it's very easy so the first thing is to configure EAP the infinite span module that comes with EAP as a remote cache so this will tell the EAP settings that you're basically storing the cache data somewhere else and this is just a quick example of what this configuration would look like it's not complete so it'll be it looks good on a slide but this is essentially what you're doing configuring the EAP module to look somewhere else second is you're telling EAP this the specific connections of where to look so if this wasn't in my standalone xml or in my domain xml and it's open up this this one setting and i tell it where the jboss data grid servers are so when i'm in running an open shift you know you would see the the data grid servers across the project name service cluster local you know normally normal service discovery host name and port information here finally you just point your application to your cache so all you have to do is open up your application jboss web xml and just tell it what the cache information it is and the set and the type of data you're storing there so that's your session app so very easy to do and that's pretty much it at the end of all that you'll have something that looks like this right so you'll have your your EAP application and if you want to spin up a new instance that's totally fine it just spins up open shift will now start um brown robinning or load balancing between your new EAP apps and all the data is stored in data grids you don't have to necessarily worry or care about the implementation details of where that all that session data is stored and it's all in memory so it's very fast so i hope that gave you a quick crash course today onto uh offloading of je sessions and jboss data grid on open shifts again my name is john osborn i'm a senior developer at red hat enjoy red hat summit thank you


Hello everyone, this is the CircuitPython Weekly for Monday, April 15th, 2024. This is time of the week where we get together to talk about all things CircuitPython. I'm Liz, and I'm sponsored by Adafruit to work on CircuitPython. CircuitPython is a version of Python designed to run on tiny computers called microcontrollers. CircuitPython development is primarily sponsored by Adafruit, so if you want to support Adafruit and CircuitPython, consider purchasing hardware from Adafruit.com. This meeting is hosted on the Adafruit Discord server. You can join any time by going to adafruit.it-slash-discord. We hold the meeting in the CircuitPython dev-text channel and the CircuitPython voice channel. This meeting typically happens on Mondays at 2 p.m. U.S. Eastern 11 a.m. Pacific, except when it coincides with the U.S. holiday. In the note stock, there's a link to a calendar you can view online or add to your favorite calendar app. We also send notifications about upcoming meetings via Discord. If you would like to receive these notifications, ask us to add you to the CircuitPython NISAs Discord role. There is a notes document that accompanies the meeting and recording. You can contribute to this document beforehand. File notes document includes timestamps to go along with the video, so you can use the doc to skip around and view the parts of the video that interest you most. The meeting tends to run 30 to 60 minutes. After each meeting, we post a link for the next meeting's notes document to the CircuitPython dev-channel on the Adafruit Discord. Check the pins' messages to find the latest note stock, so you can add your notes for the following meeting. If you wish to participate but cannot attend, you can leave huggerboards and status updates in the document for us to read during the meeting. The meeting is held in five parts. The first part is community news. This will look at all things CircuitPython and Python on hardware in the community. First a choice instead of items from our Python on microcontrollers newsletter. Second part is the state of CircuitPython libraries in Balinka. This is a quantitative overview of the entire project, is a chance to look at the project by the numbers separate from our status updates. And the third part is huggerports. Huggerports is an opportunity to highlight the good things folks are doing, taking the time to recognize the awesome folks in our community. Fourth part is status updates. Stas updates is an opportunity to report on what we've been up to, take a couple minutes and talk about what we've been doing in the last week since last meeting and what you'll be up to over the next week. And the fifth part is in the weeds. In the weeds is an opportunity for more long form discussions. These discussions can come out of status updates or be something you've identified ahead of time as too long for status updates. And that covers how the meeting will go. And with that, we will get started with community news. So new versions of Python have been released. New versions of Python have been released by developers, including versions for Python 3.11, 3.12, and an alpha release of Python 3.13. And then I saw Project of the Week, a robot arm with a camera. Kevin McAllier made a cute robot arm with a camera on the end. He uses inverse kinematics to keep the camera pointing forward. Adafruit Circuit Python for Linux is used on a Raspberry Pi 5, and that would be Blinka. And then there's a fun note in the Adafruit Playground, which is a place where you can document your own projects. IKEA for NuFig Air Purifier V2 with a custom fan speed controller and Blinky Lights. And this and more is available in our weekly Python for Microcontrollers newsletter, which goes up via email on Monday mornings. Visit AdafruitDaily.com to subscribe to the newsletter. Thanks to Ann for putting the newsletter together. If you have any Python hardware projects to share or find content you'd like to see included, please consider contributing to the newsletter. You can open a PR on GitHub, mention Ann Engineer on Twitter with hashtag CircuitPython, or use hashtag CircuitPython on Macedon, and email cpnews at Adafruit.com with a link. And that is community news. Next up is going to be State of Circuit Python, Libraries, and Blinka. This is a quantitative overview of the entire project, gives us a chance to talk about the health of the project separate from our status updates. We'll talk about the project overall and then separately discuss the core, Libraries, and Blinka. So first up, overall, there were 19 pull requests merged by eight authors, and those authors were Bill88T, Retired Wizard, Brent Rue, Joshua Beck, 0908, Dan Halpert, Tanute, Rushmate, DJ Devon 3. There were five reviewers, Dan Halpert, Brent Rue, Jepler, Fome Guy, and Tanute, and there were 16 closed issues by eight people, 21 opened by 19 people. And now we're going to hear from Jeff about the core. And as I return to that tab, it says you've been signed out of Google, which happens to me a lot. Anyway, yeah, so the core is the part of Circuit Python that is in C, and it comes from MicroPython, and it's what kind of makes everything go. And in the last week, we had 11 pull requests merged by eight, excuse me, by five authors and three reviewers. And I just want to call out the name of Joshua Beck 0908. That's a less frequent or newer contributor. So thank you for that. And thanks also to the three reviewers. That was Scott, me, and Dan. Our number of open pull requests stands at 21. So those range in age from zero up to 650 days. And over half of those are in draft status. And if you need anything on one of those PRs that you're working on, please give us a ping. We would love to help you move those through to completion. And if it's just not going to work out, it's okay to close it and reopen it again later when the time is right. Issues-wise, we saw our numbers go up a little bit with nine closed issues by three people and 14 opened by 12 people. That leaves us with 681 open issues. We track eight of fruit's priorities using the milestones. And so we have a milestone called 10.0.x, or 10.0.0, which is for incompatible changes that we want to do later on. We've got just two of those issues. For version 9.0.x, which are the issues that we want to solve in the current stable version, the most strongly we've got one open issue. And then for 9.x.x, which are issues in kind of medium term importance, we've got 26 of those. And then there are also some issues with libraries, long term support, third party, as well as eight issues not assigned to Milestone. Because somebody needs to go through and make some judgment calls on those and assign them to one of those other milestones. Beyond the numbers a little bit, I can tell you that Dan is planning to make another bug fix release of 9.0 in the coming days. That may also make an alpha release of 9.1. So just keep an eye out for those. And that's what I've got for the core. Thank you, Jeff. And now we'll hear from Fome Guy for the libraries. All right. Thanks, Liz. This section covers all the circupython libraries, which you can find all listed on GitHub under names like Adafruit underscore, circupython underscore. The name of whatever library will come after that. Across all of those libraries this week, we had eight pull requests merged by four authors. Of those authors, the names that stuck out to me as newer or less frequent was Brushmate. So thanks to them for perhaps one of their first couple or maybe just less frequent contributions. Thanks as well to retired wizard Brent and DJ Devon who made contributions this week as well. And then for those eight PRs, we had three reviewers. So thanks to Scott, Brent and myself for reviewing PRs this week. The PRs that were merged of those, the oldest ones were 23 days and the newest ones were brand new just one day. That leaves us after the week with 69 open pull requests of which the oldest draft one, I believe is 606 days and the newest is actually two days. We had no PRs yesterday, it sounds like. That, excuse me, in terms of issues over the past seven days, we had five closed issues by five people with five new issues opened up by five people. So net even there on issues for the week. That leaves us with 739 open issues across all these libraries. And there are five of those currently that are labeled as good first issue, which you can find listed over at circuitpython.org slash contributing, which is where you should head if you are interested in contributing to circuit Python on the Python side of things on that page. Again, at circuitpython.org slash contributing, you will find a list of open PRs as well as open issues. There is a dropdown near the top of the page for issues, which you can use to filter those issues by the different labels, including the good first issue, which are issues that have been identified as being good for folks who don't necessarily have as much experience or maybe don't have prior knowledge of circuit Python or that particular library or something like that. So those are the good ones to start with. If you want to start getting leveled up from there, the thing to do is just leave comments on those PRs. And on the review side, I should say, leave comments on the PRs, letting us know if you tested it out or took a look. If you tried it out, just write out what the results were. Once you get comfortable with that, we can get you tagged as an official reviewer so that you can leave reviews on GitHub. And if you would like, you can also, of course, take a look at the issues and take a crack at implementing a fix or a new feature or something like that and submit your own PR for consideration as well. We do have guides for contributing with Git and GitHub. So if you don't have experience, don't worry about that. Check out the guide. As always, join us here on the Discord as well. We've got folks around all the time who are always interested and willing to help you get involved in contributing no matter what your skill level is. In library PyPI download stats this week, we had 217,477 PyPI downloads across the 325 total libraries. The top 10 list is here in the note stock if you'd like to take a look at that. And in terms of the library updates in the last seven days, the ones listed here are, looks like a new one for the Community Bundle. MCP48XX probably works on multiple models there for the Xs at the end. And then there is AdafruitRequests got a new release and then it looks like UDesimal as well has a new release this week. So that's what we've got for libraries. Thank you. Thank you very much. And now we'll hear from Melissa to hear about Blinka. Hello, hello. Blinka is our circuit Python compatibility layer for MicroPython, Raspberry Pi and other single board computers. This week we had zero pull requests merged. There are currently four open pull requests amongst other repositories with two of those being drafts. There are, we're two closed issues by two people and two of them by two people leaving a net of 87 open issues. There were 15,261 Pi PI downloads in the last week, 10,850 Pi Reels downloads in the last month, and we are 133 ports. And that's it. Great, thank you. And that is the state of Circuit Python, the libraries in Blinka. Next up is HuggerPorts. HuggerPorts is a chance to highlight folks in the circuit Python community and beyond for doing awesome things. I will start, and then we'll go down the list alphabetically to give everyone a chance to participate. If you are text only or are missing the meeting, I'll read your notes when I get to them in the list. So I'm going to start by HuggerPort to Tan Newt for adding USB host featherwing support to Circuit Python. I know it at some point was a little bit of a struggle and I'm looking forward to trying it. Dan for enabling Bitmap Filter on the Matrix Portal S3. I have some generative audio reactive art things I want to try, so I'm excited about that. And a group hug, and then I'll read for Dan and we'll hear from DJ Devin after that. So Dan, HuggerPort to RA Quo for finding a flash write problem when heap is low and providing a test program that always exercised the bug. And now we'll hear from DJ Devin. Thank you. I have a hug for Dashipu and Dan H for their help in a project for getting ImageLoad working with multiple file types. Now that there are examples, I can turn them into snippets to copy and paste my way through future projects. Hug to Toddbot for updating his amazing DVD logo flash wind toasters screensaver to include external TFT displays. A hug to Anikdata, Toddbot, and Alpi Kenden for general Circuit Python syntax advice and help with Circuit Python channel. They're always great. A hug to Anikdata and Justin for advice on an Adafruit request PR, some very valuable advice. I appreciate you guys. And a hug to FOMI Guy for reviewing more PRs this week and another great Saturday morning stream adding more features to Circuit and for restructuring the bundle examples that are more useful now. FOMI Guy's been pretty busy, so big hug to FOMI Guy. All right, thank you. And now speaking of, we'll hear from FOMI Guy and then Jeff after that. All right, thank you. Hug reports for me this week. Thanks to Dan for going through, I think last week or the week before, went through a bunch of the libraries into the settings pages, which not very many folks have access to do and fixing the web hook configuration for docs, which was kind of a painstaking task, but very much appreciated. And thanks to DJ Devon 3 as well for many new requests in, excuse me, many new examples in the requests library as well as some improvements to some of the other ones in there. Thanks. Great. Now we'll hear from Jeff and then make her Melissa after that. All right, I wanted to start with a group hug and I also have one for Keith the EE who was thinking of me while visiting Lincoln and we got together to have some nice coffee and conversation. Keith is overdoing a lot of stuff on the Python Discord these days if you're interested in what he's up to. And thank you for the newsletter. It's a big thing that always creates excitement for me to see what folks are doing. And finally, to Lady Ada for keeping me well stocked both in projects and issues to work on. Thanks. Great, thank you. And now we'll hear from Melissa. I just had a group hug from everyone. And that's it. Thank you. And now I'll read for Michael Pakusa. FOMI guy for PR reviews emerges for Adafruit HTTP server and Adafruit template engine. And then finally, I will read for Tanu. DCD for time codes for deep dive. FOMI guy for filling in on deep dive this week and constantly improving SIRCUP. Sam Blunny for joining our community and one to me for hosting and reading your updates. No problem, Scott. And that was Hug reports. Next up is status updates. So, status updates is our time to tell folks what we've been up to individually. I will start and we'll go through the list alphabetically. When I call on you, take a couple of minutes to talk about what you've been doing since the last meeting and what you'll be doing until the next meeting. This is also an opportunity to provide tips and tricks relevant to what people are working on. If the discussion becomes too long for status updates, we can move it to in the weeds. And I'll kick things off. Recently, I've been working on a few Arduino projects. And while they were fun, I always enjoy then coming back SIRCUP Python after. The first is a Pico DBI Adafruit IO feed viewer, which is going to be published on this week on Learn. And the second is a USB host to Bluetooth project, which will be coming out in a week or two. And the code for both of these is already on GitHub if folks are curious in the Learn repository. And then at the end of last week, I wrote a quick SIRCUP Python driver for the ADG728 and ADG729 analog matrix switches. I'm currently documenting these in guides. And there are a few new products that dropped in the shop last week that I'll be working on documenting for the rest of this week. I'm going to be taking a short break Friday to Wednesday to recharge and enjoy the spring weather. And they'll get back to things after that. And now I will read for Dan. So he fixed a problem with rights to external flash when running out of heap. Use a finalizer for audio out to fix using up timers. Made a task list of other native classes that need finalizers. Fixed nrf analog in problems. One is a regression. And playing to do a 9.0.4 release Tuesday or so. And maybe a 9.1.0 beta one release. And he also updated about 44 guides that were still using secrets.py to use settings.toml. And playing to do a site search later to try to finish this off. That's a lot of work. So thank you, Dan, for doing that. And now we'll hear from DJ Devin. Thank you. Yes, I've actually checked out your S3 BLE guide and noticed that I was in Arduino and died a little inside. Hopefully circuit Python at some point. But yeah, we had to check our Arduino. Yes, I was hoping you would say that. This week I worked on a project that shows the latest circuit Python closed PRs on a TFT display. And I brought that onto show and tell this week. I will eventually split it out into a serial only example so that other people can have that in the out of request. Because I usually don't include display examples just for like serial API requests, the only kind of thing. So anything that has an API request that has to do with display is up to the user to do. But I do have an example on my repo that does include a TFT example. Started on a couple of basic request response examples that have been covered that haven't been covered yet, like status codes, different header types. This was an avenue that I was forced to explore during the course of the GitHub PR API display project and found out there weren't any examples for it. So I plan on making more examples that cover the basics of requests that are not currently covered. And there are a lot of gaps that need to be filled. I wrote a playground note on using a TFT touchscreen and SD card with a Raspberry Pi Pico. That was an interesting project because the Pico only has like 264 KB. So once you add all of that in you're already using 200 KB. You've only got like 50 KB left. And I tried to do an API, a simple API request and ran out of memory real quick. So it's not like an S3 where you can just throw anything you want at it. You have to be very selective about your APIs end points that you want to pull. And I finally submitted a typing PR for the IS-31FL3731. And after 28 failed attempts at making Pilot happy I finally did it on the 29th attempt. And that's all I've done. Excellent. Thank you. And good job sticking with that PR. And next we'll hear from FOMI guy. All right. I have been doing some testing over in the requests as well as HTTP server and template engine libraries. I have on my desk to work on this afternoon BME 680 temperature. That's a temperature sensor, right? I'm not actually sure what kind of sensor it is but I know it's an ITC sensor and I saw some an issue go by over the weekend where some folks are reporting issues with that and saying maybe that the current latest release has some problems with it. So I'll try to reproduce that and get it narrowed down to specific versions and figure out what's going on there. And then aside from that the kind of main things I've been working on past week or so are over in CERCOP land. I added or I should say I submitted a PR that adds a dash-upgrade command or argument that works kind of the same as it does in PIP. So this will basically overwrite an installed version of a library. If you use it with the install command. Ordinarily that install command will just warn you that that thing's already installed and it won't actually overwrite it. So this gives you the option to add that extra flag and actually get to overwrite. And then the other one which is a new command for CERCOP I have not submitted the PR for it yet. I've just been working on it locally at this point which is the CERCOP example command. This allows you to load examples from the libraries onto your device. The command and the tab completion are functional. I got those both working over the weekend but it definitely on the code side still needs some cleanup and as far as usability it should handle a few cases like what to do if there's already a file with that name. And another thing I think would be really convenient is if you could give it an argument to tell it to use code.py instead of whatever the original name is that way you could load it on your device and then it would run pretty much instantly. And all of this is kind of built on the stuff I did last week which was in CERCOP Python build tools. I made a change in there to make it so that when the bundles get generated they have separate folders for all the examples based on each library that used to just all go into one big one. So that was kind of the thing that underpins all of this to make it possible in CERCOP. And that's what I have got. Thanks. Great, thank you. And now we'll hear from Jepler. Hi. So last week mostly was spent working on ProtoMatter to update it so that it supports the upcoming ESP32 board support package version 3. That doesn't change anything that would affect CERCOP Python because this was code that was specific just to the Arduino environment. So this week I will be getting back into the CERCOP Python world. Up first is I've had either just a branch or maybe an open pull request for a while to add SSL support for Wisnet. I need to get back to that. I need to update it with whatever has changed in CERCOP Python in the meantime. Give it one last test. And then go ahead and set that PR ready for review. Another thing that I hope to get to this week is documenting a project that I did which was in Arduino for a USB keyboard to old computer adapter which is the opposite of what I do. I showed that off, I believe, last week on show and tell. So if you're interested in what that is. And then kind of the longer term project that I'm picking up starting this week is to look at what we need to do to add MP3 support on the ESP32S3 we use this library called Helix for the ARM processors and it seems to not be tuned well for the extensa processors. And so I will be looking at an alternative MP3 implementation that other folks have used on the expressive microcontrollers in the hope that it is going to work better. Of course, no date when it's going to be ready. Don't cash any checks yet about that. But that's what I will be working on. Thank you. Great. Thank you. And now we'll hear from maker Melissa. Hello. So I tested the voice bonnet on the latest bookworm on type 4 and 5 Lite and desktop. Worked fine on the 4 but not the 5. I'm going through guide feedback and making guide updates as necessary or taking note of things that aren't working. And then I've almost finished updating the chat GPT bearer guide to work with bookworm and I will also be testing out the mini Pi TFT on the Pi Zero W later today. And that's where I'm at. Great. Thank you. We all appreciate all the work you've been doing with the Raspberry Pi stuff lately. And now I'll read for Tan Newt. Merged in USB host featherwing support. Working on a build script for Pico Lib C and building circuit Python using Clang via make files. Goals to add a CI test to keep it working. Mostly offline this week at Sefer Dev Summit slash embedded open source summit and out Friday for a family weekend. And then missing the meeting next week for an appointment. And that was status updates. Next up is in the weeds. Right now I don't see any topics in the weeds. So while I'm reading the preamble for that, if anyone has a topics, please feel free to add them. In the weeds is an opportunity for long form discussions to come either out of status updates or the folks have identified ahead of time. If you have any in the weeds topics, please make sure they get added while we're discussing everything. So we're not weighing around to see if anyone has topics. However, it seems that no one has topics this week. So I think with that, we can wrap up the meeting. I can pause at one real quick. This week I tried to get PNG full true color PNG support working and failed miserably. Currently, the PNG support is only 8-bit indexed, which is basically like a BMP 8-bit indexed. So if anyone wants to take on true color PNG support, that would be appreciated because in my GitHub project, I had to swap in a default avatar whenever it pulled a PNG from GitHub. CircuitPython cannot display a native PNG from anywhere online, basically. So maybe that's a request, but I completely failed trying. If anyone has any hints on how to get PNG working, I am all ears. I'm assuming that would probably be something in the core. I know when JPEG and things have been added, that's been kind of a heavier lift in the core kind of side of things, but I may be wrong. Well, if no one else has any comments on that, thank you DJ Devon for bringing that up, and I think we can move to wrap up the meeting. So this has been the CircuitPython Weekly for Monday, April 15th, 2024. Thank you to everyone who participated. If you would like to support Adafruit and CircuitPython and those of us that work on CircuitPython, consider purchasing one something from the Adafruit shop at Adafruit.com. The video of this meeting will be released on YouTube at youtube.com slash Adafruit, and the podcast will be available on major podcast services. It'll also be featured in the Python for Microcontrollers newsletter. Visit adafruitdaily.com to subscribe. The next meeting will be held next Monday, as usual, at 2 p.m. Eastern, 11 a.m. Pacific. This meeting is held on the Adafruit Discord, which you can join by going to adafruit.it slash discord. To be notified about the meeting and any changes to the time or day, you can ask to be added to the CircuitPython needs to roll on Discord. And we hope to see you all next week. Thanks, everyone.