Awesome. So we're just going to go in here since it's 12.05 and this is a guide to dapper open source APIs and SDKs for developers. And my name is Alice Gibbons. I'm a customer success engineer at Diagrid where our mission is to boost developer productivity by providing tools and APIs for building cloud native applications. And I'm Samantha Coyle. I am a software engineer here at Diagrid. So I get to work on some of our product side of things as well as help contribute to the dapper community. Awesome. And so today I'm just going to walk you through what we're going to go through. I'm going to start with a dapper introduction. For those of you who haven't heard of dapper before, I'm going to pass it over to Sam to do the demo application overview and talk a little bit about the scenario that we're trying to enable with dapper. And then she's going to dive into the service invocation API and some of the details around that.  Okay. So let's kick it off with a dapper introduction. So it's nothing new to say that there are a ton of developer challenges that devs have to face every day when writing distributed apps. There's a number on this slide here but things like encrypting your calls between services for distributed systems as well as ensuring you are sending messages from two multiple applications and locking down which apps can receive those messages. Securing access to the data layer. The list really goes on. And dapper provides APIs to help developers solve some of these issues. So actually just a quick show of hands. Who here has heard of dapper? We got one. Awesome. So dapper can be described as a portable event driven runtime that helps codify microservices best practices and building distributed apps on the cloud and on the edge. And it was started in 2019 by the co-founders of our company when they're at Microsoft and then it was donated to the cloud native computing foundation. It has been open source since the very beginning. Yeah. So what are the dapper APIs? There's a number. There's around 10 different building blocks that you can take advantage of today. You can write them in really any language that you want to. There's a list of languages on here but you name it.net, JavaScript, Java, C-charp. There are tons of SDKs as well as you can use the HTTP and GRPC APIs via native clients for each of these languages. Here's a list of the building blocks that we have. And they can be deployed. These applications can be deployed on any cloud or edge infrastructure. Typically in production dapper is deployed on Kubernetes. However, you can compile dapper without a container dependency to deploy it on virtual machines. So how does it work? Dapper runs as a sidecar pattern typically. Although there are projects out there to run it not as a sidecar. It typically runs as a sidecar. And again, it can be used over GRPC or HTTP. And as mentioned, you can use the native GRPC or HTTP clients within the language that you're writing in. Or you can take advantage of the dapper SDKs which provide a few niceties on top of the language. So here are some of the APIs that you could call out to once your application has the dapper sidecar available. And you can see they're all running over localhost due to the sidecar nature. And this is really great for when moving from, you know, development to production and through staging environments because essentially the URLs you're calling out to don't actually change, right? So you can, you know, promote your app all the way through from DAV to prod and essentially call out to the same URL across the board, which is great. So some of the URLs on here, there's a ton of different ones. We have like the invocation URL. So for invoking other services through service discovery, as well as like the publish and subscribe to the publish URL on here where you're publishing messages to a topic or even kicking off a long running workflow, like a staple workflow as well. So how do these enable or how does dapper work with infrastructure? This uses what's called dapper components. And these are essentially swappable declarative infrastructure files or infrastructure configuration files that have the infrastructure connection data embedded into them. And these are written in YAML and there are a number of them that were contributed by the community. So there's over a hundred components available. They're all open source online written in Golang. And you can check them out at the components contrib repo. And you can see a number of them on here, you know, they are typically like all the cloud providers are supported as well as components that you might use on premises. If there is components that are not available for the system that you're trying to write, you can easily contribute back a component either to your community or to the community for everyone to use. Or, you know, we have lots of people that actually write custom components for proprietary systems. And they are all pluggable. So dapper has a really nice feature about it, where these components are pluggable and you can swap them out really easily. So on here is like kind of a typical, let's say, distributed system. So you have maybe you have a service and it uses some sensitive information. Maybe it publishes a message on some sort of pub sub broker.  But, you know, you've enabled them all with dapper.  And you've decided to use some of these infrastructure pieces. You're using hashy gov vault for your secret store.  And you're storing your state within like a reddest cache, let's say. So what dapper actually enables you to do is swap out these infrastructure pieces without changing any lines of code. So, you know, maybe your business requirements change or, you know, maybe you are trying to enable AWS like cloud infrastructure for whatever reason. You can use AWS cloud native services such as KMS, SNS or like a DynamoDB with zero lines of code change from your application. And the same would be for like Microsoft Azure, right? So you could swap out for Key Vault. You could swap out for an Azure service bus. And you could use Cosmos DB again without having to change any of your application code because you are using that dapper abstraction. And this is huge, right? In like the era of multi-cloud and like microservices applications, there are a ton of people out there who have these requirements to either rerunning multi-cloud or to be running on multiple platforms that, you know, use dapper every day. And so there's no surprise that there's a ton of momentum around the project. There are over 22,000 GitHub stars on the project. And you can see this nice little contributor graph on the bottom right here of the contributions month over month. It is the 10th largest project within the cloud native computing foundation. And it is an incubating project. I think I mentioned that. And, you know, there's a ton of steering committee members from different organizations. As mentioned, it was developed at Microsoft. But since then, there's a ton of uptake from orgs like Alibaba or Intel. And yeah, there are over 300,000 docs views a month, which we're pretty happy about. So a ton of different dapper users from, you know, giant hyper-skill companies like IBM and Microsoft down to really security-conscious organizations like Zscaler and Bosch. And we always like to say that dapper is actually running on the International Space Station. So, you know, the true definition of edge computing, right? And with that, I'm actually going to hand it over to Sam to talk through our demo application and what we're going to show today. Thanks, Alice. So for the open source summit, we actually made a special demo application just for y'all. So, container excitement. And in the dapper community, they have a repo dedicated to all these quick starts, tutorials, and so forth that you can use. But again, we wanted to make a special demo application. And there will be a link at the end in case you want to go back and check it out. And we made it to where you can run it locally, as well as in a Kubernetes native environment. So with dapper, there are 10 major building blocks that you can see here. And for the demo, we will be talking about two of them in particular. One is service to service invocation. So that's the first part that I will touch on and provide a demo on. So within dapper, service to service invocation is really nice. And you get a lot with it in dapperizing your applications. So it gives you direct and secure communication between your different services. And you get a lot right out of the gates, such as observability, telemetry, tracing, and even resiliency. So those are all the things that you would have to think about if you weren't using something like dapper. And after talking about service to service invocation, Alice will cover the pub sub components that are going on in our demo application. And with that, it's the secure scalable messaging, right, using message brokers. So again, Alice will cover cover that part. And actually the workflows component, the workflows is the number 10 building block that dapper has. And some of our colleagues will be covering that here tomorrow. So definitely keep an eye out for that talk as well. Alright, so to share the secret, this is the motivation for our dapper application demo that we created special for y'all. So what you see here is actually the Seguin Volleyball Association. And it's based out of Texas, which I'm a Southern GAL. And this is a community that I like to participate in. And so you can see here, it's a really vibrant community and a lot of activity. And the image on the left is actually from Facebook. So that's how the community organizers will communicate with all of the players. And you have to turn your head to look at what court you're assigned, what your team standing is, and it's just a hot mess. And having a technical background, it kind of makes me sad to see, right? Because we know it can be that much better. So that's kind of the basis and some of the motivations. So we kind of took this idea and applied it to make a v one effort to take the dapper open source project to help this volleyball community. And just to provide some historical context, I'm not just making this up. This is this is me playing. This is my team. So yeah, it's a really fun community. I really like to take part in it. And it makes me really happy to see an open source project. Looking at, you know, how can we make this better? So that's kind of the motivation and storyline here with our demo today. So that brings us to what are the different pieces that are going on for our demo application. We'll start on the left with a volleyball game simulator. So I needed some way of showing to y'all how volleyball works, right? Does it has anyone ever played volleyball before? Well, okay, I'm actually impressed. Okay, so you all know, you play up to 25 points, one by two. In our simulation, there's no cap. So you could play forever. And so we have this volleyball game simulator. And actually, all of our go micros or all of our microservices are written and go using the dapper go SDK. And so yeah, our volleyball game simulator runs for 100 games. And we have, we have the games going pretty fast right now, publishing game score updates onto a Kafka message broker. And so then we have a scoreboard service there. And it's subscribing to our game topic. So it's receiving all these events. And again, it's using that go SDK from dapper. And as we're getting game score, if we have game pointer higher, so if it's 25 or higher, then we're saving that game state. And from there, we also have the scoreboard service retrieved state if we have the volleyball game service, invoke it. And so you can see top right, we have a web UI. And so I made it and I'm a back end engineer. So y'all know the drill, when a back end makes a front end, I added a little bit of color and a welcome message for y'all. That's about it. And so yeah, it'll take a game ID that you're interested in. And then it'll hit the volleyball game service. And what that service is doing is it's using the dapper go SDK to do service and vacation say, Hey, hit my scoreboard service and get me that game score information. That's pretty much it. That's the gist. That's the secret. So now we will go ahead and hone in on the dapper building block for service and vocation. So you can see here, these are the two main services that I will be talking about for the service and vacation, which I kind of touched on already. It's that volleyball game service where you specify a game ID, and it takes it and it makes a post request to our scoreboard service, saying give me game information for game ID one. That's the gist. And it's using the dapper go SDK. And you know, we've kind of kept a high level so far, but there's actually quite a bit that's going on here under the hood. That's totally abstracted away from you. Thanks to dapper. And one of the key components of dapper and service and vacation in particular are app identities or app IDs for short. And so for the volleyball game service, it's app ID is I think it's game service. And then for scoreboard service, it's just scoreboard. And so in a dapper world, that's just how it knows if you want to do service and vacation, which to route that to. So our volleyball game service, we have a game ID in mind. And we say, Hey, from our UI, let's go ahead and enter a game ID. And what that does is it's going to send the game ID to its dapper sidecar. And from there, you can see we're making a post request. And we're sending it to our invoke scoreboard service method scoreboard. So what that's doing is it sending the request to our scoreboard service here, right that app ID to method scoreboard. So the scoreboard handler. And I'm sending over that game ID that I'm interested in. And from there, dapper is looking at its service discovery component and it's saying, Hey, which app ID, which service am I sending this to? And it knows the scoreboard service. And so it sends that invoke method to the other dapper sidecar, which as I mentioned with dapper and service and vacation, you get a lot with it. You get observability, tracing logs, resiliency, all because you're using dapper. So it's, it's really seamless and easy for application developers. Then we finally hit the actual app we're trying to communicate with. So the scoreboard service, we're hitting the scoreboard endpoint with that ID. And now we have our game information, we send it back to the dapper sidecar. The dapper sidecar communicates to the other dapper sidecar through mtls encryption using a spiffy. And from there, we're able to get our game information. So that's kind of a bit more into the weeds on what's going on here. Something else I touched on right is resiliency. So with service and vacation, you do get resiliency right out of the gates. So if for some reason, my scoreboard service was down, right? It could be a transient issue. It could be a network issue. And my game service was unable to communicate with it. Well, dappers got my back. And there's embedded resiliency with service and vacation. So it will try three times with some backups. So I get that retry logic right out of the gates. And I don't have to think about implementing custom logic of how many times do I want to invoke my service and at what cadence, right? Dappers got my back. Alright, so I mentioned there's a demo and we're going to all hope and pray demo gods are with us here today. Alright, let's see here. So let me provide some context. You can see here I have, let me get to the right service. Okay, so I have that game service. So we're coming at it from the perspective of I'm going to be interacting with my web UI.  And so we can see here we have a scoreboard handler. It's taking that game ID. And it's a really basic go microservice. So I have my go my score handler. And it's doing a really, really basic invocation call here. So this is using the go SDK provided by dapper. And you can see how clean that looks. So I'm just saying, Hey, use invoke method with content. I'm going to be invoking app ID scoreboard at its scoreboard endpoint. It's a post call. And here's my game ID. Here's my content, right? So it's literally that easy to invoke that other service with that built in resiliency, telemetry, observability, and so forth all built in on the scoreboard side of things. What this looks like is I have a dapper service. And then I have a service dot add service invocation handler. So I have that handler for my scoreboard endpoint. And this is doing a really, really basic call to get my state, right? I've given it my game ID, and it's just going to get me my game state, get me that score information. Now that we're all on the same page, we're going to look at my glorious web UI that I've created here today. So you can see it. And now you can see it's colorful. We have a nice welcome message for you all. If you're interested in finding out more about dapper, I have a tab here for you. And if you're interested in the distributed tracing through zipkin, I have that here as well, which I'll show you all. So, okay, maybe, okay, one to 100. What game do we want information on? What number are you thinking of? 50. Wow. Okay, final game score for game 50. We had team 50 versus team 51. And it was actually quite a tight game. Team 50 lost by two because volables went by two. So that's, that's our volleyball UI. And in terms of what that looks like from a logs perspective, you can see here, this is my game service. And I got that response back. That's saying like, Hey, here's game 50, here's who won, here's who lost in the score information. And you can see here, from the scoreboard service perspective, it retrieved state for game ID 50. And one last thing, actually, let me go ahead and show you all because I forgot to show you all this. Okay, pods. Just so y'all know, it's all running. It's all right here. So we looked at the game service logs as well as the scoreboard service logs. And going back one last thing, and let me zoom this in as well. You can see here, this is what's going on. We have our game sim providing all of that load, we have our games going really, really, really fast for y'all. And the scoreboard service is taking that in passing it to the state store on the chance that it's game point or higher. And then we have my game service, which is taking that ID from my web UI and sending that to our scoreboard API. That is the gist. And that is service invocation using dapper. So now I will go ahead and pass it back to Alice for pubs up. I think this is back on. Okay, awesome. Thank you, Sam. And thanks for providing the amazing volleyball context, you know. Okay, so I'm going to talk a little bit about the dapper publish and subscribe API that also, you know, we use in this architecture. So as Sam mentioned, the volleyball game simulator is, you know, simulating people playing volleyball, maybe it's a tournament, let's say it's a tournament, and they have published a bunch of games, and they are publishing on to the game topic. In this case, it's a Kafka broker, but I'll talk about all the different brokers that dapper enables. And then we have the scoreboard service that is subscribed to the game topic and then saving this within a database. And these are both enabled with dapper and they both use a sidecar. Okay, so publish and subscribe. Let's get how this works from a bit more of a granular level. So similarly, just as so as I'm making my post, I have my volleyball game service or my volleyball game simulator. And this is making a post also to local host. You can see the endpoint that I'm using here is the publish endpoint within dapper. And then I'm providing two arguments. I'm providing the game pub sub, which is the name of my message broker. And then I'm providing the topic in this case, which is game. You can also see the data that I'm providing here, which is maybe the game whoever one or the updated score of one of my volleyball games. And what's actually happening here is dapper is making so you're making a network call from your application to this local host app or local host endpoint. And then dapper is making a call on to the encapsulated message broker, which again, in this case is Kafka, but could be many other things. We are using the cloud events 1.0 specification as well to adhere to like another open source standard. But this can also be disabled. If you are integrating with like legacy subscribers, one of the goals of the dapper project is to like meet developers where they are and ensure that we can support brownfield applications. So cloud events is kind of optional. So from a subscribing perspective, dapper subscribes on behalf of your application. So in this case, I have the scoreboard service and my it's dapper sidecar is going to subscribe on behalf of it to that Kafka broker again, all encapsulated via the dapper API. And you can see that it is going to route the request to the save game endpoint on to scoreboard service. And I get the same data comes through to that app and then I can run my business logic. I should also mention here that dapper does have at least once delivery semantics on top of the publish endpoint. So every single subscriber that is subscribed to this topic is guaranteed to receive this at least once. And this is across all of the dapper component implementations, even if that underlying component does not have that, right? And you know, this is adding sub milliseconds of latency just because we are making those calls over local host as well. So, you know, as I mentioned, there are a number of different publishing subscribe brokers or message brokers that can be used within dapper. There's over 18 of them. Actually, there's a number of them that I put here. But essentially, you know, you can you do not have to integrate the message broker into your code for the whatever you're, you know, publishing on. So in this case, there is no like Kafka SDK within my code, right? I'm just going to be publishing on to the dapper API, and then using what is called dapper component, which I talked about earlier. So here's the sample dapper component. And I'll show this again. But essentially, this is, you know, the name here is game pub sub, which is that value that I need to keep consistent across both publisher and subscriber. And then I have the connection details within the metadata section, which essentially is the underlying infrastructure details or connection details of the component that I want to connect to. But again, swapping these out is really easy. So what I'll show in a second here is just changing from a Kafka component to a Redis one. And you can see this is a Redis component looks very similar. It is of type pub sub dot Redis. The one before was pub sub dot Kafka. Those were like the main differences, as well as there's a few different metadata properties for that component implementation. So yeah, and this one also is running in Kubernetes. All this is running on the GKE cluster. But this could be running anywhere, right? You could have Redis running locally on your machine. You could have a managed Redis, etc. That that host that fully qualified domain name can be changed, of course. So let's get into a demo of what that looks like. So popping over back to the code. I have, so similarly, as Sam showed, some of the services, the game simulator service here is the one doing the publish. And you can see in my code, I really am only keeping track of these two properties. I'm keeping track of the pub sub component name, which is game pub sub, and I'm keeping track of the pub sub topic, which is game. From that perspective, then what I'm doing is I'm again using the go SDK, and I'm publishing via the go SDK here, just again, and I'm publishing to that local host endpoint, the one I showed in the previous slide to game pub sub on to that, that topic, and I'm providing whatever message you know, I want to send in this case, it's the game data. But again, no, like there is no Kafka SDK in here. There's no Redis SDK. It is like only using dapper from a subscribing perspective. This is also subscribing within the scoreboard service. Let's go to the top here. And you can see a very similar, similar variables that I have to keep track of, right? But it really is only that pub sub name, the topic, and then in this case, the route that I want to route, I want the messages for the business logic to be routed to. So in this case, all the messages are going to go to that save game endpoint, and then the business logic is actually going to, yeah, it's going to be routed to another method within my go code. And this is all using, I should mention, using two, it's using this case, this is the component broker, and you'll see, you know, this is also named game pub sub, as I mentioned before. But this topic will actually be auto created by dapper as well, if, if it hasn't already been created within, within Kafka. So it does it dynamically. So let's kick off the game sim service and see this running. So yeah, so as I mentioned, we are running all this in Kubernetes, we're running it in GKE. But it can be run, you know, fully locally, we have the instructions to run locally as well as in Kubernetes on our README. So I'm just going to restart the game sim deployment. And you'll see the bottom here, lots of games coming in, right? Okay. And then if I look at the game sim on the top here, and that was the mount, we're good. Okay. And you can see all of my games. So I had 100 games that were played via the volleyball in the volleyball tournament, and they've all been updated. So essentially, this is the publisher on the top here, and this is publishing this data. And you can see that this subscriber is also receiving this data. And it's on, you know, round 99. If I scroll up here, it's round 98, round 97. It's done all of the rounds. So that's great. But what about using a different component? So now what I'm going to do is pop this open. So in this case, right, I'm using Kafka. I have a Kafka broker deployed on my Kubernetes cluster. And you can see that it's pointing out to that one via the metadata properties. I'm going to apply, I also have a Redis one that is also deployed. So I'm going to deploy this Redis one. And I'm going to show you that without any code changes, the applications will still run. So I've deployed my new component. Essentially, if I get my component now, you'll see that I've swapped this out from a Redis or Kafka, sorry, to a Redis component.  I have to make sure those Dapper sidecars get the new component. And then if I pop over now to the logs again and do, okay, get pods. So things are just cycling over. And then if I go this, okay, so there you go. This is the the publisher is now back up and running. And then if I do the scoreboard service, which is the subscriber in this case, I should see that I also have saved the game score again, rerunning every single time. So again, this is round 99, but round 98, round 97, all of these have been like publishing and subscribing. Again, I made zero code changes, right? All I did was update the Dapper component. And essentially, I was able to swap out from a Kafka broker to Redis. Again, in this case, both running in my cluster, but this allows me to keep my code really clean and ensure that I can make modular, you know, portable applications. The other thing I'll just show really quickly is the fact that the So this is just Redis insight. So this is connected to that Redis database on my cluster. And essentially, Dapper uses Redis streams. And you can see in this here, I have this game stream, which in this case was my game topic that I was publishing on. So this was actually automatically created by Dapper. And I can see in here, I have all of this data that was being sent through the game simulator service to that scoreboard service. And this was, yeah, dynamically created at runtime. So didn't have to create that topic. And then with that, I'm going to hand it back over to Sam to close. Thanks, Alice. So I know we've definitely covered a lot of ground here today, and we had a really exciting demo and the demo gods were with us. So you can see here just to kind of recap and remind you all of what we kind of looked at. We looked at how we can take the Dapper open source project and apply it to help a volleyball community and create this demo application to help them see what you can do with Dapper, right? So we can make some improvements on how they communicate with everyone and let everyone know where to be, what time for our games. So in terms of our scoreboard system that we just looked at, we just had a volleyball game simulator simulating some load for us and putting it onto a message broker where Alice swapped out components for us and showed us some of the awesomeness of Dapper. We had our scoreboard service interacting with a state store in order to save game state as well as retrieve it. And we also had our volleyball game service which was doing service and vacation providing us a lot of really great things like resiliency, tracing metrics. And then we had a really pretty web UI that I made. So if you are interested in learning more, Dapper has a lot of really great resources. So you can see the docs, the Dapper.io, you can find out a lot more information there. There is the Dapper Quick Start repo that I mentioned with a lot of tutorials showing you how to work with Dapper on your local machine as well as in a Kubernetes native environment. And today's code can be found at that bit.ly link and this bit.ly QR code. And yeah, again, there's a readme, there's a make file, so it should be pretty nice and easy to work with our sample today. Just running locally on your system as well as in a Kubernetes native environment. Dapper also has a really, really vibrant community. There are over 3,000 Discord members. So if you have lots of questions, they are there for you and don't be shy. There's also a Fortnite community call on the Dapper YouTube channel and you can catch the latest and greatest. So the upcoming V11 release will be coming out soon and so you can catch lots of the updates on our YouTube channel or on Twitter because I know the tech community is all about Twitter. And also if you're interested in managing Dapper in production, then check out diagrid.io. So again, my partner in crime here today was Alice and I'm Sam and thank y'all. I hope you enjoy the rest of the conference. Questions, I guess? Yeah. It requires the control plane to be deployed on Kubernetes. So there's like four control plane services that you deploy within their own namespace. And once you deploy those, there's nothing else required. You can use like unless you're using like whatever state store that you wanted for like a state API or something. But no. Good question. Yeah. So as something like ECS since it is running on a cluster, yeah. So primarily people run it on Kubernetes with a control plane. Actually, one of the things we're working on in our company is ways to provide sidecars through really to something like ECS. Yeah. Good question. Any other questions? They also have Dapper stickers. Oh yeah, so many stickers. I know. Yeah. Is there only a sidecar pattern? Is that what the question is? Yeah. Yeah. So today Dapper is primarily deployed as a sidecar pattern. There is a few projects that we're working on in open source in the sandbox called one of them is called Dapper Ambient. And essentially that allows Dapper to be deployed as a deployment. And so it's not necessarily like one-to-one from a sidecar perspective, but would be across the deployment or damage it? Damage it? Yeah. Okay. And yes, so essentially like less of a one-to-one but more of a, yeah, one-for-node or, you know, allows you to keep track of the replicas there. So, yeah. Anything else? Yeah, that's a Dapper specific row. Yeah. Mm-hmm. Yeah. That's like the that property in that case, like you see the one on the bottom is like the C1 alpha. So like one of the new APIs that is developed in Dapper is a more closed API and that one is still an alpha. So it's sort of a way for us to keep track of the API version so much better use. Okay. And we have tons of stickers too. So I'll pull some out if y'all are interested.  Cool. Well, thank y'all.


You're welcome back. Right now we're going to discuss the 160 million NARA SUVs. Remember that the chairman of the Senate Committee on Services, Sonday Karimi said that assembly members deserve 160 million NARA WOT SUVs while insisting it has to be supplied by foreign car brands. Okay, that's what he said. They needed, for the duties that they are about to perform, they needed because the Nigerian roads are bad and they need a foreign car manufacturer to supply that because they have a big name. And that big name also translates to quality and durability. Those were his arguments for the 160 million NARA SUVs. We have two guests that will be talking about that, how they feel about it. I know a lot of people will be on different divides. Some will be saying they are happy with it. Some will say they are not happy with it. But let's get the opinion about two guests. We have Mr. Biodon Shoumi, a political affairs analyst. Good morning and welcome to the program Mr. Shoumi. We also have Mohamed Abdulahi, also a public affairs analyst. Mohamed, good morning and welcome to the program. Good morning Nigerians, it was my pleasure. Okay, so let me start with Mr. Shoumi. I was just before the show saying maybe you are going to have your own SUV too. But what do you feel about this argument of the chairman of the senate committee on services Sunday, Karimi, the reasons they are having the SUVs of 160 million NARA each? Okay, well let me hear what Mohamed would have to say about this before because all these things that you have mentioned, he had arguments for them. Mohamed, what do you feel in the first place about this 160 million NARA? Let me put that into perspective. If you are using 160 million NARA to pay people who are earning 30,000 NARA as minimum wage, you will pay 5,333.3 people their minimum wage for a month. So 5,000 people's salaries is what is going into one car and the argument is that they should use this to do their oversight function in their constituencies that have bad roads. What is your take? Thank you for the question. I think Mr. Beaudon has actually given a whole lot of background analogy on the issue. But what I will add is the fact that yes, perhaps legally the National Assembly members have right to acquire such very good, perhaps legally. I am using the word perhaps because I am not sure. But again, let's look at it from the moral point of view this time around. And what do I mean? The country is going through a whole lot at the moment. The cost of living is skyrocketing. In fact, majority of Nigerians are falling under the poverty rider. And then so I feel in this moment in time is actually not the right time for the National Assembly members who, whether they want to agree or not, are actually above the Nigerian middle class. They are part of Nigeria's upper class. If you are a senator or a House of Right member in Nigeria, majority of Nigerians will believe you are part of the upper class. So I think morally, even not even legally, it's not the right time to start talking about acquisition of vehicles that the total worth is about 56.7 billion. Read my lips, sir. 56.7 billion Naira at this moment. And the very shocking thing that's happening. The very shocking position that is even happening aside the fact that they are going ahead with the acquisition. The most shocking thing is that they are not trying to plow back this money into Nigeria's economy. They are taking this humongous sum and dumping it into the already developed Japanese economy because they are talking about Toyota cars. Where we have local manufacturers, at least not one, not three in Nigeria, that should be able to meet that demand. Even not immediately. If you give them time, I'm very sure, perhaps in four, five or one year plus, Nigerian local manufacturers should be able to meet that demand. But aside the fact that the timing is wrong, the most challenging thing for me is the fact that this money is being dumped in an other economy, creating jobs in another economy where we have so many Nigerians, perhaps here, who might be losing their jobs or not even have what to do at all. So in fact, this is the moral bankruptcy that we'll talk about. And it is shocking that people who are supposed to create laws, who are supposed to make laws, who are supposed to see these things clearly, are given very flimsy justifications about it. What stops the National Assembly, for instance, in promulgating, sorry, the word promulgation is not right, in creating laws to say everything that is meant to be from the government should be locally sourced. It's very possible where it is possible. It's very, very, very possible. And it's shocking that it's the same set of individuals that are trying to dump 56.7 billion at this critical time where everything, the cost of living is so skyrocketing, that they're trying to take out 56.7 billion out of the economy just to buy cars. Come on. It's really shocking. So like I said, Mr. Biodon has given a whole lot of analogies, so I wouldn't like to repeat that. But my question is, even if this is legally right, what about the moral point of view at this point in time where majority of Nigerians can't eat three times a day? Not to even talk of, we don't want to talk about paying school fees, paying housing and other necessities. We've been told to tighten our bills. So the National Assembly is going to go up the salaries of 18,900 people because once we mentioned 56.7 billion, I was just making a calculation how many people can be paid at 30,000 Naira. And what is the cost that they are even talking about palliatives that will be given to people? How many people are going to be given these palliatives and all that? And then they're spending this much money. Let me go to Mr. Biodon. Both of you have mentioned the fact that they said that they are going to fund an economy that is not ours. One of the arguments that this Senate committee chairman said hard was that, well, these people have a big name and so they want to patronize them because that big name also has quality. Whenever our own local manufacturers get that kind of a big name, they will now begin to patronize them. That was the argument that he had. Maybe I shouldn't say what I felt, but if you permit me, I felt insulted and really, really, really disappointed in the fact that you are seeing once they grow, you are going to patronize them who will make them grow. So these arguments he had, I want you to look at them and X-ray them one after the other if you may. He said these people have a big name so they are going there. They deserve this cost because they have to do oversight function, which you also said that they are supposed to be the ones to take care of the roads that they are complaining about and all that. So what do you think, even if, like Mohammed said, it is legally right, even if I don't know whether it is legally right, but even if it is legally right, what do you think at this point can be done because a lot of Nigerians are saying they should be stopped, but nothing is being done by to that effect. What do you think can be done? Should we let them go on? Should we stop them? How can we go about it? How can we do? Well, it's crazy because these same people who are saying they need to go to their constituencies to do their oversight functions according to the excuse it was given, also go to these same places during elections without these cars and they are able to enter these places without any problems. Then once the election is over, the roads become bad and the oversight functions take a toll on them and all that. And then Mohammed, one of the arguments also was that even the ministers, why are people not looking at ministers and just taking care of or just concerned about what the National Assembly members are doing. The ministers have four to five vehicles in their entourage. That was the argument also he brought up that if the ministers can have this, why can't the National Assembly members have it as well? And so some people are, just to follow up the question that I asked Mr. Souwami, some people are saying that it is not right that the National Assembly will have this kind of pass to allocate the kind of monies they allocate to themselves, the constitution should be looked into. Do you also buy the idea that it's time to look at this constitution and change a lot of things? Yes, it's very possible but you look at who, I mean the institution that will lead the charge in terms of the constitutional amendment is actually the National Assembly. So it's almost an exercising, because you are asking people who are benefiting from the loopholes of the constitution to amend it, to change it, to give them, to stop them from benefiting. So it is almost an exercising futility. If you want the same National Assembly to lead the charge, to change some of these things that the constitution allows them to do. But having said that, I think if I want to contribute to what Mr. Biudun said earlier, it's so shocking. And I keep saying it, it tells our moral bankruptcy as a country that you have 109 senators, over 360 House of Rep members, and not one, not just one out of this whole lot feels no. I don't want to take this vehicle. I'm speaking to the press, I'm speaking back to my, I'm telling my constituency that no, this vehicle that is being, you know, about to be purchased, no, I am not part of it. Come on, it's not shocking. More than 400 and something members, almost 500, not one person. I'm not even talking about political parties now, because for me, I see no difference in almost all of our political parties to be very candid. But just one person to just change that narrative, or one aid, even just one aid of one of the senators or one of the House of Rep members say, I've advised my, you know, my principal to say, no, we shouldn't do this. And he's going ahead to do this. And because of this, I'm resigning. We are not seeing any, we are not, it's shocking. So it tells of the moral bankruptcy of almost the entire country, you know, and it's, and it's so bad. It's so terrible that, you know, we, we, how do I put it? I'm even lost of words, lost for words. So it's, it's, I keep talking about the morality that they have legal backing that they are going ahead with this. And if you look at the minister, as the same, the ministers, they might have a point as well, but we should also understand that two wrongs can never make a right. In fact, it is also their function as the National Assembly to checkmate the executive. So while the executives are buying, perhaps, probably two, three vehicles for the ministers, where were they? Why were they not shouting? Why were they not saying they were against it? You know, telling Nigerians that this is not right or this is not the right moment. Nigerians don't have the funds to fund this kind of lifestyle for its politicians, where the politicians are less than 2% of the 200 million plus population. You know, if you have this kind of largesse for the, for the 2%, what then is meant for, for the modern 98% ordinary Nigerians that are on the street? What then is left? It's, it's, it's sucking. And I'm very angry at the moment that you have people who are already elites still trying to, you know, to, you know, to, to make life so difficult for the ordinary Nigerians. So what's left for, to carry out project hospitals, build schools and even the roads that they're talking about was left if, if, if, if, if all these monies are meant to service their own luxuries. By the way, the ministers were not elected by us. So if in our constituency we elected you, we sent you there for an assignment and your assignment is to represent us cry when we need to cry and laugh with us when we need to laugh. Take our problems to, to the national level as it were. But now this is what they're doing and they're saying that it's because of us that they are taking this money because they have to come back to our constituencies that we don't even see them anyway. Because a lot of them have constituency offices. They never come to their constituency offices. Best they can do is after a quarter they come to their house and then expect everybody to come greet them, take some drinks, eat some food and then their boys are empowered with motorcycles or one or two with cars and that is it. That is my experience. I don't know what happens in the north. Maybe it happens better than it does in the south. But that's my experience. But right now what we are facing according to how both of you have spoken is a moral bankruptcy. Where do we start to begin to cultivate this patriotism which is fast dying in our society? Because a patriotic Nigerian like you said Mohammed at least one of them should stand up to say no I don't think this is good for our people at this time. So I am opting out. None of them has said that. So it speaks to the morality of the Nigerian populace. People that we select or elect to go and represent us and all that. Where do we start from to cultivate this patriotism, this moral standing that people should have when they go into public offices? Because if we continue like this we don't know what is going to happen in two, three, four other circles of election that might come and what the laws could be and how it will affect the people. Let me begin with you Mohammed and then end with Mr. Ashoumi. Yeah, I think it's simple.  How do we teach selflessness? Yes, patriotism is all about being selfless. You know, not thinking about yourself. You know, thinking about the generality of the populace for God's sake.  So, you know, they don't feel it.  So, they don't feel anything that ordinary Nigerians are feeling. So, you know, but if we need to cultivate this morality that we talk about, it means we need to be selfless. We need to listen. We need to go down to the root causes of so many issues so that we put ourselves, you know, in that position and be able to feel it. But at the moment in time, these elites are not the shocking. All of their children don't school in Nigeria. So, how do you expect them to improve, to understand practically the level of the decay in terms of the educational sector and then try to improve it? How? It's just by lip service.  Even for headache, they go to a European hospital, American hospital just for checkup and so on. So, how? So, that's why I said it behoves on the National Assembly to make sure that some of these laws are localized, but they are not doing it to make sure that people, particularly if I have my money as a private citizen, I can do whatever I want with you. Same thing with you. But it's not right for elected and appointed government people to think they can just do whatever they like. In being patriotic is that they need to patronize Nigerian goods. They need to buy money in Nigeria. They need to promote money in Nigeria. Oh, well. I don't know. I don't know how we'll begin to teach that. Mr. Shou, do you have a solution? How do we begin to teach patriotism to our citizens? Let's even forget about the politicians, because the politicians come from the people to become what they are. I know also that people have to, the citizens are to blame in so many cases, because these same politicians are the ones that come home, and we give them chief-tensy titles instead of recalling them if they do wrong, or they don't do well in the National Assembly and all that. But I'm concerned about the future of the children that we are having now. What kind of future will they have if the people who should make relevant laws that should safeguard their future are behaving in this manner? Where do we start to teach this patriotism to Nigerian citizens? Mr. Shou and me. Yes, I called you. Okay. Yeah, what you see is it grows in the foreground than what we're talking about. If you look at the political system we are practicing today, which basically makes it possible for law makers to do exactly what they are doing today, which has created the situation that you cannot reasonably expect doing that in a city from a particular system to change it. You realize that the issue is that it's run by the psychological angle to it, because many of the representatives and senators campaign and I think for the people to vote for them or the intention to represent them, many people talking that there's nothing they can do for you. But in this situation cannot be found in America, for instance, that practices presidential system of government. So here, whether it is parliamentary or presidential system of government or whatever laws are made in Nigeria, it doesn't seem as if the laws are the problem. It seems as if the people who should implement them are the problem. I think that's my position as well. I don't think it's actually the system that's a problem. Even though we understand that yes, the presidential system is far more expensive than the parliamentary system as suggested by Mr. Biodu. But I don't think it's actually the issue of the system of government. It's actually the issue of people in charge. And I've been very careful with my words, because like I keep saying, it's very possible that, yes, even though a majority of the services that the National Assembly enjoys has been monetized in the past by former President Ulussia Gombas-Konjo, but it's still very possible that by their laws, they are still entitled to such a largesse. I mean, these cars that are willing to expend 56.7 billion, it's very possible. So it's not about the system that we're on. It's about, perhaps even our own constitution, what it gives rights to, and people that draft it. Remember, if you allow me to digress a bit. Remember, just two months or so ago, when this new administration came into power, the revenue mobilization and whatsoever that's in charge of public affairs, I mean, public office holders, salaries, thank you, you know, actually tried to want to raise the salaries of public appointees, if not for the cries of Nigerians and perhaps the presidency that said, no, this is actually not the right time, which is actually true. So this is, but the laws allow them to do such. So I think the thing is, is shocking that we have such laws, we must find a way as a people to change these laws. But these laws for it to be changed, needed, the buy-in of the people that are enjoying this thing. So it's actually very difficult. It's very, it's like someone who is enjoying so much and you want to take that thing out of their own hands. So it's, we need the civil society within Nigerians to rise up, you know, to call for some of the changes to some of our laws. And I don't think necessarily is the system of government that we're going, that that's a problem here. Okay. You said you were digressing.  And I'd like just like your final words, both of you, to be on what is happening today. Today the Supreme Court will give verdict or will pass judgment, whatever that may be. It can be in three ways, as we've been discussing before this segment of the program. It can be in favor of the president. It can be in favor of any of the opposition. And it can be that there will be ordered to do a rerun and it will be ordered to do a rerun, whatever it is, it can go anywhere. But I'd like you to talk to Nigerians, because tensions are high. I'll start with you, Mohammed, to wrap it up. And then Abiyuddin show me also will wrap it up with his own statement. I think in my opinion, I will plead for, you know, judgment of civil Nigerians. It's a high time that we have judgment that will favor Nigerians. And I don't want to interpret what that means. But a judgment that will favor Nigerians, that will take Nigerians out of this dodger. You know, so it is very simple. But at the same time, again, I want to plead with Nigerians that whatsoever the, I mean, the decision of the Supreme Court is we have a country to build is very germane and important because there are so many things going here and going wrong in this country. So whatsoever the decision of the Supreme Court, we should take it in good faith. We should allow peace to reign and then join hands together. What are the opposition? I'm not saying perhaps a government of national unity, no, but at least we need constructive criticism by the opposition, not propaganda. Okay, lost the audio of Mohammed there. Mr. Show me, if you can hear me, I'd like also what you would advise Nigerians on this day. At least we're all in agreement that we have a country to protect and preserve. Whatever the situation might be, let there be peace and let Nigeria move forward. We believe in Nigeria. It's going to get better and better, no matter what the situation here right now is. I'd like to thank you gentlemen, Mr. Billoon Show me, political analyst for coming on the show. Thank you for having me. And Mr. Mohammed Abdulahi, also a public affairs analyst. Thank you for being a part of our show this morning. Thank you very much. My pleasure. Okay, this is where we wrap it up on the breakfast today on Kosti B Africa on behalf of the entire team. I say thank you for being there. My name is Nyamun Gould, I'll catch you. Let's do it again tomorrow.


Want to go to college but worried about the cost? Your path to success doesn't have to be burdened with student loan debt. As an NC Promise campus, all undergraduate students enrolling at Elizabeth City State University will pay just $500 per semester for in-state tuition and $2,500 for out-of-state tuition. Apply today. Accessible. Affordable. Excellence. That's us. That's ECSU.


Hi, I am Dr. Gurudath, pediatric nurse at Manipal Hospital, Vartur Road. And I am Dr. Suruchi, one of the pediatric endocrinologists here at Manipal Hospital, Vartur. Thank you, Dr. Suruchi. So, as we know, 4th of March is recognized as the World Obesity Day. So, we are actually using this opportunity to raise awareness and sensitize our parents and families regarding this problem of childhood obesity. So, over the next 15 minutes or so, we are going to talk about the problem of obesity, how much of a burden of the problem. We will talk about what is obesity and how do you define it, how do we identify it. And what are all the consequences for our children, those that are overweight are obese. And then talk about how do we seek help and what are the preventative strategies. So, Dr. Biru, we have been seeing more and more children who are obese. Why do you think that obesity is actually such a huge issue in the world we live today? Yeah, so we know from decades and decades malnutrition has been a rampant issue in our country. And thankfully, over the years, government has taken a lot of measures to tackle and combat this problem. And we seem to be getting better at it. But unfortunately, we seem to have gone the other way now. And we are seeing a lot of children and adults facing this problem of obesity. And it is really increasing at an alarming rate right now. And what we do know is that if it is not tackled urgently now, it can take a form of an epidemic, especially in the urban areas. And the other important thing, especially the childhood obesity is important because those habits and the behaviors that children develop in the childhood is something that they will carry on to becoming an adult. So those habits that cause obesity, if it is not tackled then the obese children will grow up to be obese adults. Given that you are generally seeing a lot and lot of children in the outpatient department, how do you actually define and identify these children that are coming to your consultation because it is a short consultation and you have to quickly pick them up? So how do we define it so that we can educate parents about it? So obesity has been very oversimplified. We think of it as just excessive body fat, both in the subcutaneous tissue as well as surrounding the organs. But for me, every clinic visit of a child is an opportunity to pick up a child who is either overweight or who is moving towards obesity or is actually obese. And then once we identify them, then a strategy is put into place as to how we manage this. Now how do we identify them? We have standardized charts called BMI charts and we also have growth percentile charts both by the Indian Academy of Pediatrics as well as the WHO. Now each and every child is plotted on these charts either during their when visits or sick visits. And it is these charts that help us identify if a child is moving on from an average weight, going into the overweight category and then into the obesity category. Now BMI in simple terms is body mass index which is the height to the weight ratio of a child. Now if your height-weight ratio is cute, then you can fall into the overweight and obese category. Now it's not a one-off measurement ever. One-off measurements never give an overall picture of how the child should be. So it's over a period of time you may have some previous measurements or we can follow up the child over a period of time to see what is the trajectory of their growth and then make a plan. If a child is overtly falling into the obese category then definitely a plan has to be put into place sooner. So identification is through charts and through objective measurements of the child. Yes absolutely. So as you correctly said it is something that we have to see the trends over time. Absolutely. As a pediatrician in the OPD when you are seeing so many well children what do you find are the consequences of obesity in a well child and do you think it is something that we really have to worry about? Absolutely. Obesity is worrying. Consequences of obesity are varied and they can be widespread as well. Now obesity consequences are not just physical. They can also affect the mental health of a child. Now in the short term obesity in a child can lead to physical ability issues. For example a child may find it difficult to participate in general physical activities that happen. They also may suffer for something called an obstructive sleep apnea. Children with obesity in the long term may develop certain metabolic disorders which is called the metabolic syndrome where their HBA1C may go up. Their triglyceride levels may go up. They may develop a higher blood pressure and yes I know it is surprising that I bring up HBA1C cholesterol and triglyceride in the context of children but more and more children over the age of 10 years who have been obese do develop these skewing of their blood reports and it is very important to identify them sooner so that we can manage them just like any other illness and we can bring these levels down so that this does not lead to long term cardiovascular consequences and type 2 diabetes. So overall obesity while it is leading to all these physical consequences I have to think about their psychological effects too. Children who are obese or overweight we know that do get picked at school can be bullied, they may have issues with their self-confidence they may have issues with their self-esteem and whilst we are looking at everything else the first thing we must do is stop blaming them and start treating them like a child with any other illness it is not their fault honestly we just have to manage it and we have to take them out of this situation and not add to the psychological effects of this condition. Absolutely I mean I think it can cause to social isolation as you said and as you rightly pointed out it can affect their self-esteem also so that is something that you know very eloquently elaborated about the well child but I find as an intensive it is an issue in the ICU setting also and also there is something in pediatrics as we all know all the medications are calculated based on the weight of the child so then there is an issue about should we take the actual weight or should we take the dry body weight so that is another confusion that continues to exist that is another issue that we face in the ICU even getting a breathing tube in case the child requires mechanical ventilation can be sometimes a difficult task for these children and finally there is certain conditions and those children with these conditions like a common condition like dengue we know the teenagers with dengue if they are obese their outcomes are far worse as compared to another child so it definitely has consequences in a well child as well as in a child who is ill in the critical care it's true I think obesity has where it started off is just what we thought with children just being overweight it is now panned out into an illness in a way that has affected every part and every aspect of their life starting from being well to being sick Absolutely so I think like any chronic condition we would talk about it and we would resolve it and try and find preventative strategies and in the same way instead of pushing it away it's important that we are open about it with our children and try and address it how do we actually know which child is going to become obese and why is it that only certain children become obese could you please elaborate on that point So when I see patients and outpatients it's important for me to recognize why a child is here am I the one identifying the obesity or are they coming because the parents have identified that their child is overweight and obese and most of the times the parents are looking for an answer do they have a thyroid problem does my daughter have polycystic ovarian syndrome is there a genetic condition because we are all overweight and is this something that runs in the family that eventually we do realize that whatever the causative factor is the coordination of life that has led to children now becoming obese and we are seeing that we have a higher population of obese children than we had earlier especially in the urban setup so why the question is why lifestyle issues do play an important part so our children are much more sedentary compared to what we were I mean I remember coming back from school and dumping the bag on the ground and running out to play and it would be difficult for my parents to pull me back home but now it isn't like that their lives are more sitting on a chair in front of a laptop screen time yes this is the change in times but at the same time we know getting out staying out playing is very important for their physical health but our children are sedentary and there is no other way I can put it that it is the modernization of life that has taken away the requisite for them to get out of the house to do something or even to socialize with their friends with social media so it is the sedentary lifestyle second I'm sure we have all noticed that our food has changed it's been a very slow change but it has definitely happened there are certain things that were treats for us which have now become very normal in our house we all have a biscuit box in our house we all have cakes we have some kind of snacks always ready and those are the quick foods we reach out to when we are hungry and it's not only the children it's us as adults we do it too so processed food has crept into our life on a daily basis whether it is cheese whether it is fizzy drinks whether it is sugary drinks anything processed food has crept in and processed foods are high calorie dense foods that give us empty calories and then contribute to the obesity and overweight of the child so processed food has done that the third thing which I think gets overlooked a lot is there is a lot of peer pressure and social pressure on the children to perform not only in academics but also overall in life you have to be cool and this leads to a lot of stress and pressure in these children and sometimes they go into a shell and prefer to be indoors now these children are also prone to obesity because food then becomes their best friend and we can't overlook that fact because we have more and more mental health issues now in children especially after the pandemic and the social isolation that it led to of the children so yes it is a problem all over the world it's not only India specific it's not only Bangalore specific but we are seeing it all over the world especially with modernization and modern behaviors I completely agree with you because as you pointed out there is the social factors urbanization there is the environmental factors of modernization of a diet which is the processed foods that has come into this one and also there is certain genetic and family so it's a complex interplay of all these different factors as you rightly said there is a lot of oversimplification saying if somebody is obese it's their problem it isn't because it's the environment and the social environment this one we have created for the child is what is contributing to it so if we can move on towards how do we actually prevent it what are all the strategies that parents can think about to prevent this is something that is very very important it is one of those medical conditions that truly defines what holistic healthcare is so it's not just the doctor who is going to help you out but as parents as anybody who is caring for the child you have to be a part of the process including the child, the dietitian, the psychologist any medical professional who comes into contact with the child needs to contribute to that well-being of the child at home what can you do as parents the first thing would be your lifestyle your entire lifestyle as a family unit sometimes needs to change for example when I say physical activity there are times when I have gone home I am too tired and I don't do anything I just sit on the sofa and I have my meal and go to sleep that's zero physical activity sometimes days in a row it takes a lot of effort for us to find that 60-90 minutes in a day for ourselves for our well-being for the physical form that we are in and to better it it's very important that we have physical activity now it doesn't mean a gym membership or enrolling into some kind of fancy club it's as simple as swimming, badminton basketball, running around so physical activity at least 5 days a week yes we have to do it and there is no excuse for it and if we do it our children will copy and they will do it as well second is food what we intake is very important I am not saying processed food has to become zero any other treat or any other indulgence it has to be exactly what it is it's an indulgence once a month once in 2 months maybe that should be more than enough but every day look at the plate and decide that this is a balanced diet I am eating and I am providing for my children it's very important to have this kind of family setting where everybody eats healthy everybody eats the same kind of food there is no special food for a child who is fussy because then they have to become a part of that healthy eating eat at the dining table eat as many meals as possible together talk during a family meal because that extends the meal time and satiety sets in and you don't gobble up your food faster if there are any issues in the background that are contributing to the obesity for example a thyroid disorder polycystic ovarian a genetic condition a psychological factor they all need to be addressed so here at Manipal Vartur we have a psychologist we have our dietitians who are very experienced in managing all of these conditions and together we do look after children in a holistic way so that each and every part of this illness is sorted out and the child can then feel supported in their journey through the obesity yes, absolutely so I think what we have discussed over the last 15 minutes are some very important points that we have spoken about wide spectrum of things but in summary I think it's important to know that it is not just on the 4th of March it is something that we have to inculcate through the rest of our lives and make sure our children get that important that most of the things we have discussed is actually common sense and it is very simple to follow and that is something that should become a second nature I think as somebody was saying that the best gift we can do to a gift to our children is to ensure that they don't get into any kind of obesity or overweight and we ensure that they follow the healthy eating habits and follow good behavior absolutely, absolutely thank you