Welcome to today's episode of the Mindset Mentor podcast. I'm your host Rob Dial. If you have not yet done so, hit that subscribe button so that you never miss another podcast.  The more positive rating reviews that we get, the more that we actually are able to be seen by people who have never listened to us before. So if you want to help us grow and help us get this message out, please give us a rating and review. However, you listen to us today, we're going to be talking about how to step into your power. We're going to talk about decision-making and we're going to talk about a lot of different things as far as fear and power go. And when I say your personal power, I don't mean power when you think about like a negative connotation.  But are you bringing that out to the world or are you hiding? Are you hiding behind the world, behind society, behind what you're supposed to do, behind what your parents told you to do, behind not wanting to be seen? You have a whole lot of power inside of you. And what we want to talk about here today is how to step into that power and how to start making decisions that allow you to find that power and be more powerful. Because the most important decision that you can make, majority of them are little, teeny, tiny, small decisions throughout the day, can come from one of two places. It can either come from fear or it can come from power. And when I say power, I mean personal power, like stepping into the best version of yourself. And if we look at it, we know it's very obvious. I've been there many times and I still find myself doing this sometimes today is most of our decisions come from a place of fear. Most of our decisions are thought process of whether we're going to do something or not do something. The first thing that usually comes up is all of the things that could happen that we don't want to happen. All of the things that could possibly go wrong. And so we literally go straight to fear and we start thinking about all the things that we don't want and we come paralyzed and we don't do shit. We don't do anything. We do absolutely nothing. And this is a, you know, I was watching a video one time and there was a guy that was on stage and he had somebody come up and he was talking about, okay, we've got two chairs. There's one chair here on the left. There's one chair here on the right.  And this person's like, okay, I don't want this. I don't want this. I don't want this, this, this, this, this. A laundry list of all these things they don't want. He said, cool. All right, now go ahead and switch chairs, go to the other chair. And in this chair, you're going to tell me what you do want. So tell me everything that you do want.  I want this. I want this. I want this. And well, I don't want this and I don't want this.  When they go to what they do want, they've got a couple of things. And then slowly but surely, it almost always transitions to the person talking about what they don't want. We almost always in our brain will go straight to fear and focus on what we don't want. So you could say like, I want to grow a business. And you can start thinking about how amazing it could be. But then you start thinking about, well, what if I fail? What if I don't make money? What if I lose money? What if I go in debt? What if I lose my house? What if my children and I are homeless on the side of the road and we can't eat? Right? And it's like you literally go from like wanting to start a business to just kicking your dreams in the face. The problem is that most of us come from fear often, you know, and if you look back at your entire life, really think about this for a second.  Did you take the safe route? Did you go get a degree because that's what you thought was safe? Did you go for a certain degree that you didn't want to because you thought that job was safe? Did you apply for that to work for the government or to work for this company because you thought that it was safe long term?  Like the life that you truly want deep down inside and all of the potential that you have that you could bring out to the world. You can't make decisions in fear to bring that out to the world. Decisions made from fear were keeping me in my comfort zone. Oh, I want to be safe. I just bought a new house. I want to make sure I could pay my bills. I want to make sure I could be fed. You know, I want to make sure I could save some money. I want to make sure I could still travel. I don't know if I could do that. I don't know if I could start my business. I don't know if I could, you know what, I'll just go ahead and I'll get the safe route. I can make good money. I can make, I can be, I can be pretty good. You know, and maybe I'll get like 15 days of vacation per year. That'd be awesome. Yeah, let me go that route. But why do we go to fear? Why does our brain almost always go to fear automatically? Because the brain is literally designed to keep you alive.   And so we have to know that our brain will automatically, almost always default to negative. Then we start thinking about, oh my gosh, what are these people going to think of me? What if I fail? What if I get rejected? All of this. And that's why it's so important to develop self-awareness, like very, very clear self-awareness. I always say when people ask me, I've been on podcasts before and they ask me like, if you could give the world one superpower, one gift, what would you want? I'm like, extreme self-awareness. If everybody had extreme self-awareness, they would be better. They would treat people better. The world would be a million times better because they'd be aware of how their actions change the people around them as well. There'd be no war if people were self-aware of what that what their decisions did. And if you think about that, when you think about all of our decisions that are made from fear, how many great decisions have you heard of that somebody has achieved this great, massive, amazing, beautiful thing that changed the world or changed something that was just life-changing that came from a place of fear? When you think about Steve Jobs and they were sitting down and creating the iPhone, I think the iPhone came out in 2006, 2007, 2008, something like that. I remember what it was, but I remember when it came out. Do you think Steve Jobs and everybody in Apple was sitting around and they're like, okay, well what if this doesn't work? No, it was like we have to like forge through on the path that nobody knows. It's never been seen. You got to come from a place of personal power. We can do this. We're the company to do this. I'm the person to do this. How many do you think came from a place of fear? Probably none. I would say no great decisions that have changed people's lives, but also the world came from a place of fear. And I don't mean fear like the fear of death or the fear of like, hey, I don't want to drive fast because I don't want to get into an accident. I mean like where you have an opportunity to change your life, to make your, like it's literally like a fork in the road and left you can go and it could be the same that it's always been. And right is something vastly different.  You decided to take the safe route. You decided to stay in your comfort zone because the comfort zone is comfortable.   And you just give up on a big goal. It's easier not to do it. It's easier just to hang out. It's easier just to chill. You know, so many people listening right now at one point in time wanted to start a business, but they didn't. Where do you think that bit, you know, it's like six years ago you wanted to start that business. You had that great idea. You were super passionate about it. But then you thought to yourself like, I don't know if it's possible. What if I, what if I can't pay the bills? What if, what if it takes too much time? What if I lose my sleep and then it goes into my actual day job? And you have this idea to start a business six years ago. But instead of stepping into your personal power, you stepped into a place of fear. Where could that business be right now? Six years, almost 2000 days later. Where could that business be? How could it have changed your life? How vastly different could your life be if you decided to step off the ledge and just know that the parachute was going to open when you jumped off? Where could your life be now? It could be vastly different. Couldn't it? What about in like investing into your personal development where you're like, you know what? I'm going to invest in my personal development. But I'm being like, I don't know. I want to go to this event. But what if people look at me funny? What if I get called on stage? I don't know. What I'll do, I'll just save money instead. I won't develop. I won't step into my personal power. I won't go into personal development. There's so many decisions that you could be in a relationship with somebody, but you decided instead. Oh, I'm afraid of being rejected. I'm not going to do it. And you could have a completely different life if you had just came from a place of personal power versus a place of fear. How many decisions have you made from a place of just trying to play it safe? There's less risk. There's less risk going this route. Like we always think that there's less risk just going this route. And we justify that there's less risk going this route. And so we decided to go down that route. But in life, if you don't risk anything, you're risking everything.  You're risking everything that you could be. How many world changing moments came from a place of fear that changed the course of history? How many people do you look up to that have all of the life that you want, you look up to, you think that they're amazing, all of this? How many do you think got there because they decided to come from a place of fear? Probably none, like zero. How many great inventions came from a place of fear? How many great companies came from a place of fear? When you look at that, you start to realize that we make the majority of our decisions. Most of us usually do through the majority of our lives coming from a place of fear, taking a safe route. So what we should be focused on is making more decisions from a place of power, personal power, stepping into who you could be.  Are you just going to be like everybody else? You don't look like anybody else. You don't have the same fingerprint as everybody else. You were designed uniquely because you were supposed to be unique, not because you were supposed to go the same route as everybody else and just follow the rat race and do the same thing and not take risks and dive with a little bit extra money in the bank account, maybe a couple cool experiences and live in a pretty cool life. Is the risk for you to step into personal power for you to step into the unknown? Is there risk? Absolutely. There's risk. And you can focus on the risk and that risk can paralyze you and stop you from going and doing something. Or you could focus on what you could be, what you could do. Instead of focusing on your problems, you can also focus on possibility. Knowing that your brain will default to problems, you could also just decide, oh, there's my brain, it's going to problems, it's going to fear. Instead of being on problems, you know what I'm going to do? I'm going to focus on possibility. I'm going to focus on what could happen if I decide to go that route. Because if you don't risk anything, you're risking everything.  People always ask, how do I develop my intuition? How do I get my gut feeling? Number one, everybody's got it. It's always there, but we just tend to not listen to it and we don't listen to it for a really long time. You stop paying attention to it. There's the gut and there's the brain. The brain, once again, is designed to keep you alive. It's designed to keep you safe. And so you have this gut feeling of, you know what, I should start this business. I should ask that personnel.  I don't know what it is for you, but there's a gut feeling where you feel pulled towards something. Like you have, in the way to tell a gut feeling is usually think about the energy behind that feeling. Like if you have a feeling like you're feeling pulled towards something and thinking about doing this thing is giving you energy. Like you have so much energy thinking about it. That's usually something that you're supposed to follow. And I always say, your gut feeling, it's like your emotional compass. It knows what you're supposed to do. It knows you're supposed to go. You have to get good at listening, becoming quiet, shutting up, quieting the brain, and feeling into something and being like, what does my energy feel around this thing? Do I feel excited to go do this thing? Because you have that gut feeling, but then you've also got your brain. So you'll have a gut feeling arise and it'll pop up and you'll be excited to be like, this is amazing. I should definitely do this. But then what does the brain do? Oh yeah, but no, you can't do that. So your gut feeling is almost immediate. It's almost always there.  It doesn't know that there's no potential danger on the other side of that comfort zone. Everything that you want is going to first require you to make a decision from a place of power instead of a place of fear. So what do you need to do? You need to start becoming really self aware. You need to start paying attention to your feelings so you to to where you're getting energy from. If you pay attention to your energy, you'll almost always be guided in the right direction. Like when I think about what I do, people are like, you work so much. I'm like, I don't feel like I'm working.  It's exciting. I get so much energy by sitting down and figuring people out and working with people and learning about people, learning about neurology and psychology and early childhood development.  For some people listening, most people listening, it probably doesn't to do what I do. And that's fine. But all I did was follow the energy. And when I followed the energy, was there a lot of fear?  There's a ton of fear to leave my job to start a podcast back in 2015 when people didn't even know what podcasts were. That makes no sense. Like everybody knows a podcast star, right?  Everyone has started a podcast. Back in 2015, when I used to tell people I was a podcaster, the response I got more back than anything else was what is a podcast? So does it make any sense for me to go, I'm going to quit my job where I'm making 200 grand a year over 200 grand a year. I'm going to quit that job. But I'm going to do this podcasting thing that no one's ever heard of before. It made no logical sense. But for some reason, something deep down inside me was like, you have to do this. Like this is, this is something that you're supposed to do. And so what did I do? I just followed the energy. And I had to be aware of the energy. And then when the fear popped in, I need to say, you know, no, this, this feels right. I'm going to follow this thing that feels right. When you feel that feeling, you have to follow it.  You're going to wait, wish that you made less decisions from fear. So noticing fear is good. Listening to the fear is bad. Like fear can keep you alive. So what do you do is number one, you have to become very self aware of when you notice fear popping up, take a step back when you're in the jar, you can't read the label. So when you take a step back, you're like, okay, hold on. What am I feeling right now? Why am I feeling this? Is this actually something to fear? Am I focusing on problems or am I focusing on possibility? I'm focusing on problems. Okay, what is the possibility? What is, what is the potential outcome that could come if I do follow this? It could be amazing. How can this change my life? So the first thing is we have to take a step back. We have to become very self aware. The second thing is that that's really good about this is this is showing you the edge of your comfort zone.  Like right now, you fast forward five years from today and you step into your personal power and you make decisions not from fear, but out of your personal power, your life's going to be vastly different. If you continue to make your decisions out of fear though, and you fast forward in five years, you're not going to like where you are. You just will not like where you are if you continue to make decisions out of fear. But if you fast forward and you make decisions out of power, watch out because you're going to create some magic.   You're going to change the little pocket of the world that you live in. And that's what you're here to do, not to play small, but to do something amazing. And so you've got to, got to, got to realize there's two things that you could do at any point in time, make decisions out of fear or make decisions out of personal power. Make decisions out of personal power and your life will change. So that's what I got for you for today's episode. If you love this episode, please share it on Instagram stories and tag me at Rob dial junior, R O B D I A L J R. And if you love this podcast, you want to follow us on Instagram. You want some extra mindset mentor on your Instagram, go ahead and follow us on there as well. It's the mindset mentor podcast. Once again, the mindset mentor podcast on Instagram. And I'm going to leave it the same way. Leave you every single episode. Make it your mission to make someone else's day better. I appreciate you. And I hope that you have an amazing day.


Today we brought in my squad here, we integrated soldiers from French, foreign legion and from the US Army together and did the mount training, assault the village, newly built. It was really great to work in in general, I mean I understand that the French and the American engineers have built it together for infantry soldiers like myself to come and train.  This structure right here, when we got on ground and worked with the French, it took us about a good solid time of like a month and a half to make it structurally sound for our training sites so nobody would be hurt or injured, mainly a safe sound structure that people can train in. The future for this compound will be international training for us and the French and to gain the knowledge in the future to make both supporting forces better at operations and make it a well-rounded fighting force.


This talk is about your tpy, your py with Python, Streams, HTML for Streaming applications. So I think you can just start sharing your screen and we should be ready to go. So for everyone, please remember, so this talk is 30 minutes and after the talk, at the end of the talk, we are going to have a few minutes for Q&A. So you can click in the Q&A bottom and write your question and I'm going to ask it later. And after the talk, we have a Discord channel where you can continue the discussion or if you have any questions. Okay, so thank you very much. So this is an invitation. It's an invitation to help build a free open source Python package so that everybody can monitor, analyze, and respond to streams of data. My name is Mani Chandi and my co-author is Deepak Narayana. Each sensor in the Internet of Things generates a data stream. An airplane generates a stream of its locations. And the microphone generates an audio stream. Social media generates streams, Twitter generates streams of tweets. Now we have technology that can help us analyze streams. Inexpensive onboard computers such as the Raspberry Pi loaded with Python are connected directly to sensors. Powerful libraries such as SciPy can be used to analyze streams. The cloud is another resource for this variety of Python API services. So would you help to build a free open source Python package that everybody can use using free or inexpensive technology to solve this important problem? So I started working on this many years ago and you can see some of the work I get out. And I started IoT Py because I had worked on many applications with similar structures. We were rewriting rather than reusing code. One of the applications is the Caltech community seismic network. CSN is a team of Caltech scientists and engineers, some of whom are listed here. CSN has deployed about 700 inexpensive accelerometers all over the Los Angeles Unified School District area. So each red dot represents a school and a sensor in that school. I want to emphasize the community aspect of the community seismic network. You'll see that school administrators, students, parents, indeed the entire community, can benefit from harnessing streams. I'm going to show you a video, but you may not be very clear. So this video was created by Professor Rob Clayton at Caltech, which shows accelerations in schools. So each dot represents a school and the color represents intensity. Now, this kind of video, this kind of information about how the earth is shaking in schools, is immensely valuable for everybody. I've had the opportunity to work with many groups working on streams, analyzing tweets, a home hazard station, detecting radiation, structural health monitoring, and all the stream applications have aspects in common. They have threads that interface with data sources or actuators. Streams are processed right where they're generated on onboard computers in shared memory and in the cloud. All these applications acquire and process streams. So IoT Pi creates a common abstraction across this variety of stream applications. Moreover, we hope that this abstraction blends with the way you've programmed, blends with Pythonistic programming. Now we have two problems to solve to get a package that everybody can use. Firstly, Python's libraries weren't written for streams, and streams that process using different types of concurrency, threads, shared memory, message processing, these for everybody should offer a unifying approach. Let's look at the first problem. A typical Python function takes input data such as an array, a function like an invert matrix, takes the data, and generates an output. A inverse and then the function stops. By contrast, what we want is something persistent, something that lives forever. We want an agent that acquires data continuously and produces data continuously. So the abstraction for an agent is very simple. It's a black box, actually pink in this example, with inputs A, B, and outputs X, Y, Z. And everything here is persistent. It lasts forever. So for example, we might be able to instantiate this agent by calling a Python function F, with this example in streams A, B, and out streams X, Y, Z. Now here's the tricky part. So the agent is persistent, and it's inputs X, Y, and this example is persistent. And associated with the agent is an action. In this example, the action is to make Y equal to G of X. So if the agent's goal is established, in other words, if Y is equal to X plus one, in this case, suffixes one and Y is two, the agent's goal is established, so the agent is quiescent or idle. It's got nothing to do. If however, the input changes, so for example, the input is two, then the condition is violated, because Y is no longer X plus one. So the agent becomes active. And when the agent becomes active, at some point in the future, an active agent reestablishes its goal. So in this case, it changes Y to become three. The problem is that we don't know exactly when an agent will take a step. So for example, if the input is zero, one, two, three, four, and the initial output Y is zero, you would expect the output to go zero, one, two, three, four, five. However, if the agent only sees inputs two and four, the output will be zero, three, five. It'll skip some steps. What it means is that if you have two identical agents, Z and W, both of which are computing Y plus four, they might produce different outputs. So the tricky part, and we'll talk about this a little later, is to use streams to obtain desired outcomes, whatever the desired outcome is. Sometimes it's non-deterministic, sometimes it's deterministic. You can use theories developed by J. De Mestre and also ideas from Kishap and Gali. Now, I'm going to slow down and talk about a very specific kind of shared object. The shared object could be anything. It could be a graph. It could be a simple stream. But let's look at just a single stream. So you can think of a stream as a tape. An agent can read the entire tape, but it writes only at the tail of the tape. It keeps writing to the tail of the tape. And as I said, when this input changes, an agent becomes active because output doesn't match its input. And then sometime later, the agent takes a step. Here is an acoustics example developed by Deepak, and it produces a shimmer in an input. So the sensors and actuators are shown in ellipses. So for example, the top right, we have a thread of interfaces with a sensor, a microphone. It produces a stream called spoken, and this is a stream of data values from the microphone. The agent, the echo plus spoken gets two streams, spoken and echo, and produces a scene called heard sound, which then feeds an agent called pitch shift, which outputs a stream called pitch change, which also feeds an actuator, in this case, the speaker. When you go from a diagram to code, the diagram is the code. In other words, just write a function, which exactly represents an agent. In the top, we have a function f, which takes inputs y and z, produces an output x, and we create that agent just by calling f. Now, f is this agent is now going to live forever, and we expect the inputs and outputs to live forever. So as long as the microphone is running, the agents exist. When the microphone stops, and we declare that there's no further input, the agents will step themselves down. Now, a network of agents could be an agent as well. So for example, we can create a network, an agent GH, by combining agents G and H, and the combined agent GH has input x and outputs y and z. Next, let's look at how we use Python to create agents, because the key idea in all of this is to harness the power of Python's libraries to create these persistent non-terminating agents. So we start with a function f that operates on a bounded data structure like an array, standard Python function, and terminates. What we're going to do is to wrap that function with another function G from the IoT by library, and wrapping f in G creates this persistent agent. So let's look at a simple example. So here, we're declaring streams, S and T, happens to be, in this case, a NumPy array. So think of the stream as a NumPy array of arbitrary length that goes on forever. Each element of this NumPy array is itself a two by two array, in this case an array of floats. So we've now just declared two things that go on forever off type array. Now here is an example of how we wrap my Python function with an IoT by function to create this persistent agent. In this example, the function we are wrapping is matrix inverter that we get from NumPy, that's the NP linear algebra invert. So it's wrapped. And now we've created a persistent agent with input stream S, output stream T that expects to get a sequence of matrices that produces a sequence of inverse matrices. And this will go on as long as data comes in. Now IoT Py has a library of these agents and library of these functions to create agents. And what I hope we would do together if we collaborate is to add to this library, make it richer. Here is another way in which you can use IoT Py. So instead of having explicit core, you can use a decorator. Here's a decorator called map W also from the IoT Py library, it's map window. So the undecorated function subtract mean is subtracting a mean from a window which is an array or a list.  The decorated function by contrast is now going to operate on an endless stream. So if you look at sequences of windows that slide with a step size of one, and it's going to keep producing output for as long as the input remains alive. Once again, I hope you would help add to these decorators. This can have state. So in this example, here's an agent where function f on the top left takes an input element of the input stream, and the agent state. It returns the output element of the output stream, and the next state of the agent. So for example, the state of the agent is the last value read. So for example, if the input is 14916, and the state of the agent is going to be 14916 and so forth. So that the output in this example is going to be the difference between the current value of input. Because the state remembers what the previous value was. You can also have a function f that's wrapped and this function could be a method of a class. So you can have very rich functions with all kinds of state information and other information that gets wrapped by an IOT by function to create this persistent agent. You can also use streams in a functional form. In this example, w, x, y, z, D are all streams. You can create the by using this functional form. So exactly as written. These functions f, g, h of functions from streams to streams. And once you write this equation, we now have persistent agents and persistent inputs and persistent outputs that keep living as long as the inputs are alive. Now let's look at the second challenge. We've got so many different ways in which streams are processed, threads, shared memory, distributed memory. And what we would like is a uniform way of handling all of them. The way we do that is think of it in just one way. You always connect an output to an input. That's the only way we go to think about concurrency, whether it's a thread, shared memory, a message password, whatever. So for example, let's look at how we would deal with a shared memory process in a multi-core computer. Once again, a box, in this case the top box f, is just a black box with inputs and outputs, in this case inputs y, z, and output x. It happens to be running as a process as opposed to an agent in a process or a thread in a process. But as far as we're concerned, it's just another black box. And we define this agent in this example if we're using multi-core as a dictionary. Let's look at that dictionary. We'll rename the process, v0. It's got an agent function f, and remember f could itself be a network of agents. It has inputs y, z, and output x. We similarly create a process for f, for g, and h, and that's it. So we don't really have to think separately, oh, this is a multi-process computer in a multi-core system. What happens if we have a distributed system? We would use, for example, the advanced queuing message protocol, implementations, and pica. The point I want to bring back to you is, what you've got to think about is connecting an output to an input. In the background, we've got all these things going on. Here is snippet of code to publish a stream. So you publish a stream to a publisher. Here is a pica publisher, specified by routing key and exchange with a local host. But what do you have to do? What you've got to do is say, publisher.publishY, where Y is the stream, and the stream goes out. Similarly, for receiving data from a stream. It's important to realize that IoT Py adds to your programming style. It's not like you stop programming in procedural style or object-oriented or functional, or whatever style you like best. You mix and match agents with your style. So you use IoT libraries and agents only when you need to. IoT Py can be used for very different applications than looking at sensors. Here's an example where you're simulating temperatures in an object over time. So the temperature at a spot in the object depends on the temperature of its neighbors and is changing over time. This is a science simulation, not at all like getting sensors from a microphone. Yet, the key to using the same structure to solve this problem is to realize that the temperature at a given point is just a stream. The temperature changes over time, and that's a stream of values. IoT Py has a collection of Jupyter notebooks that I'd encourage you to look at. That's the best way to see what IoT can do and cannot do. We have extensive documentation in a website called assemblesoftware.com. It tells you what IoT-wise goals are and what its limitations are. Now, this very short presentation leaves out a lot. For example, it leaves out a lot about the previous work, and there's an immense amount of work that's been done. Moreover, there's been so much wonderful work done on streaming frameworks, most of which though has to do with streaming frameworks in the cloud. I haven't talked about timing issues, which are critical for many applications. But we'll have to discuss that at some later site, later time. Here are some books that I've worked on on streams and parallelism. I worked with Roy Schulte of Gartner, very lucky to be able to work with him, on event processing. And that book has lots of examples of streams and agents. There's also a website that I've worked with. There's Mr. on the Parallel Aspects of it. That's a parallel program design book. And the communications ACM picture on the right shows a paper by Michael Faulkner at Caltech using your phone as a quick detector. Finally, I'm going to wrap up with an invitation to you. My goal today is very specific. I want to help create a free open source Python package that everybody say a high school student, anybody anywhere in the world can use free technology or very inexpensive technology, a $2 sensor for this vitally important class of problems. Please look at these can put a simple software by a deep eye and look at read the docs for documentation, and you can download using. Bye bye. Thank you very much. And we can play. Glad to take questions. Thank you. Thank you. Okay, so we have time for a few questions. So if anyone has a question you just can raise your hand and I can enable the Microsoft and you can, your microphone sorry no Microsoft. So we have the first one. You see saying, a lot of what you presented reminds me to the reactive X party. For example, the library. Erics pie. And he's asking was it was it a source of inspiration. No, sorry, so there was a lot of work done on reactive programming and reactive programming is certainly the source of inspiration. Thank you for telling me but I like spy I didn't know about it. So this is valuable information to me and I'd be glad to look at it. The source of inspiration was more the theory, as well as all these applications, the seismic network, radiation detection on Twitter. So any other questions. It's also possible if I can open the microphone, the microphone for anyone that wants to ask questions live. Okay. We'll have one more. So Artemis asking. What are you pie can already do. And he's asking if, can it be applied to home sensors, like a door or a window, that kind of things. Yes, yes. You can download party pie and play around with it. You can play around with the tube to notebooks. And then it works with Python 2.7 and above. So it uses shared memory for multi core computers like we have Raspberry Pi with four processes for course. And 2.7 Python. You can use IOT pie for shared memory on your Raspberry Pi and hook your Raspberry Pi to sensors. So that's all ready and set up. And of course you've got to connect whatever sensor you want to use. Okay. So I think that that's all. Thank you very much for presenting speakers are the most important ingredient for a conference so thank you very much. If anyone wants to continue the discussion in discord is a channel the channel is talk IOT pie. So you can go there and ask more questions and have a chat. So thank you very much. Have a nice day. Thank you.


From Soldiers Radio and Television, this is the Army Now. The 107th Military Police Company hails from the Empire State. On 9-11-2001, a number of guardsmen from the company were called up in the aftermath of the attacks on the World Trade Center. Many citizen soldiers on this deployment were still in grade school back then. I don't think it set in until even later that night. I got home, my mother was crying, and I thought it was almost a regular day at that point. It hadn't hit me yet as to, you know, at what capacity this was going to affect the rest of my life. Many of those junior-listed who are still coming to grips with the idea that what they watched on TV in school has now become a permanent part of their lives, also accept the fact that while not conducting combat operations, they still have an important mission at Guantanamo where some have come face-to-face with KSM and his followers. That's the Army Now.


Hello and welcome to this presentation of the STM32 Serial Audio Interface. I will present the features of this interface, which is used to connect external audio devices. The Serial Audio Interface, or SAI, is integrated in STM32 products to provide an interface for communicating with external audio devices such as amplifiers, ADCs, DACs, audio codecs, and audio processors. This interface is fully configurable, supporting most digital audio standards, allowing easy connection to any existing audio devices. Due to the internal synchronization features of the SAI, the required IO pins are reduced to a minimum. The SAI can be programmed in three different modes. The free protocol mode allows the SAI to support standards such as I2S, PCM, and TDM Due to its flexibility, it is possible to customize the Serial Interface if needed. The SPDIF protocol mode allows the SAI to transmit audio samples using the IEC 6958 standard. The AC97 protocol is also supported by the SAI. The SAI supports all the standard audio sampling rates, depending on the crystal frequency used for the application. In addition, the SAI supports master and slave mode, half-duplex or full-duplex communication. It is also possible to synchronize several SAIs together. The SAI also provides a FIFO buffer of eight samples, and up to two interrupt and DMA interfaces. The SAI is composed of two independent sub-blocks, A and B. Each sub-block has its own APB interface, clock generator, FIFO buffer, DMA interface, and interrupt interface. Each sub-block can be configured in receive or transmit, master or slave with its own protocol. Internal and external synchronization allows two sub-blocks to be synchronized or two SAIs to be synchronized. Each sub-block can handle up to four IOs. FSX is the frame synchronization signal. SCKX is the bit clock. SDX is the serial data line. And MCLKX is the master clock. The STM32L4XX embeds two SAIs. Each SAI can receive a kernel clock, SAINCKX, from one of the three internal PLLs or from the pads, SAINXTCLK. The kernel clock is used by the SAI in order to generate the timing of the serial audio interface when programmed in master mode. The free protocol mode, the flexible programming interface, facilitates the configuration of most common audio standard interfaces. The following example shows some of the possibilities of the interface for I2S-like protocols. In I2S-like protocol, each edge of the frame synchronization or FS signal is used to align the slot's start position. The frame length, the duty cycle, and polarity can be adjusted. The clock strobing edge can be selected. The position of the slots with respect to the frame edges can be selected. The number of slots per frame needs to be an even number in I2S-like protocol. The following example shows some of the possibilities of the interface for the TDM-like protocols. In TDM-like protocol, only one edge of the frame synchronization, rising or falling, is used to align the slot's position. The frame length, the duty cycle, and polarity can be adjusted. The clock strobing edge can be selected. The position of the slots with respect to the frame active edge can be selected. The number of slots per frame, up to 16, can be selected. The slot size is always bigger than or equal to the data size. The SAI allows control of the position of the data inside each slot, and setting of the unused slots to HIZ if needed. This function can be useful when the data line is shared between several devices. In master mode, the SAI can generate the master clock, MCLK, or use an external master clock via SAI-X-EXT-CLK-PADS. The master clock can be used to provide a reference clock to the external audio codecs. In slave mode, the MCLK signal is not used. In master mode, it is up to the SAI to generate the timing in order to provide the correct sampling rate. In slave mode, the sampling rate is provided by the external audio device. The clock generator is needed for master mode communications. It is used to adjust the sampling rate of the serial audio interface. The clock generator provides the root frequency for the MCLK-X, SCK-X, and the FS-X. When the master clock or MCLK needs to be generated, the frame length must be a power of two. The ratio between the FS-X frequency and the MCLK-X frequency is fixed to 256. When the MCLK-X does not need to be generated, the frame length can take any value from 8 to 256. The internal synchronization can be used for communication requesting two data lanes, such as full-duplex I²S. The external synchronization can be used for communication requesting more than two data lanes, up to four, for example when interfacing HDMI ICS. All the sub-blocks synchronized together must use the same protocol characteristics. In order to reduce the data size, it is possible to insert in the data path an ALaw or Ulaw compender. Note that ALaw and Ulaw are not lossless compressors. Compending modes are generally used in telephony. The small data are amplified and the big data are attenuated. The SNR tends to be identical for a strong and for a weak signal. The SAI also provides a mute function. The anticipated or late frame error detection increases the interface reliability by detecting unexpected frame synchronization misalignment. The SAI guarantees the data alignment even if an underrun or overrun occurs. The SAI supports the audio IEC 6958 standard in transmit mode when configured in SPDIF mode. The software has to handle the CS, U and V bits. The SAI generates the parity bit according to the transmitted data. In the IEC 6958, the block structure is used to decode the channel status or CS and user information or U. Each block contains 192 frames. Each frame contains two subframes. Each subframe contains 32 bits. A synchronization preamble allows the detection of the block and subframe boundaries. The FSSAI CKX frequency must be adjusted in order to generate the proper audio sample rate. The data inside the transmit FIFO must be adjusted as shown in the slide. The MSB must always be at position 23. The SAI is able to work as an AC97 link controller. When this protocol is used, the frame length, the slot number and slot length are fixed by the hardware. Several events can be enabled in order to generate interrupts. The FIFO request event, the overrun underrun event, the anticipated or late frame synchronization event, the codec not ready event only in AC97 and the mute detection event. The WCKCFG event can be used in order to inform the user that the frame length of the SAI has been improperly programmed. This feature is only available in master mode. The SAI needs the bus interface clock or APB clock and the kernel clock or SAINCKX to work properly. For a full duplex master mode, two data lanes are needed so two subblocks need to be used. The master subblock A provides the synchronization to slave subblock B using the internal synchronization feature or IO line management. Using internal synchronization, the number of IOs required is reduced to its minimum. Another example of full duplex mode use case with the TDM protocol usage. The slot one is inactive or not used for subblock A, the slots two and three are inactive for subblock B. For both subblocks, the frame structure has four slots. The subblock A will generate three samples per frame. The subblock B will receive two samples per frame.


Hello, I'm Didier Stavens, a senior handler with the InternetStormCenter. Now in this video we are going to look for the analysis of a PDF document that has been created with OpenOffice or LibreOffice. So I run PDFID. This is a document, helloworld.pdf. And let's use option N to only see everything that is not zero. So and there is nothing special about this document. The only thing that stands out here is the open action. Open action is often used in malicious PDF documents, for example, to start the JavaScript upon opening or to visit the URL upon opening. Now LibreOffice and OpenOffice will also include an open action when you create a PDF using those tools, those word processors. But it's done for another purpose and we will look at this. So you can also run PDFParser, option A for the statistics. And if you suspect that it might contain stream objects, say OBGSTM, you use option O, uppercase O, to look inside those objects. And here helloworld, okay, and indeed here we see open action. And the open action is in object 12. So with PDFParser I select object 12. And here you see the open action. And then you see this reference. So this reference is an explicit destination. This is X, Y, Z, X and I position and the zoom. So we just accept the default positions and a normal zoom for this object. And this should be a page, object one, this should be a page. So let's check object one. And indeed this is the page. So that open action is an explicit destination added by LibreOffice and OpenOffice. So that's when the PDF is opened that the first place is actually displayed first with a zoom so that you can read that page. Now if you want to make sure you can look at the properties. So in the trailer we have an info entry that's object 13. And here we have object 13 where we see the creator and the producer. This is an hexadecimal string. And you see that it starts with F, E, F, F. So that is the byte order mark that you can find in Unicode. And here you have actually the Unicode string and the byte order mark indicates that the zero goes first and then you have the value for a normal ASCII in Unicode. We can decode this with base 64. So I'm going to grab for F, E, F, F. And now I only have those two hexadecimal strings. And I pipe this into base 64 dump. And the encoding is hexadecimal. And then you can see here for the two encodings, this one is writer and this one is LibreOff. If I select four and do an ASCII dump, you can see LibreOffice 6.2. I can also dump this as Unicode, UTF-16.  So if you get an open action in a PDF document and only that, look at it and check if it is actually an explicit destination. If it is an explicit destination, then that open action itself is not malicious. Its only purpose is to display the first page. And that is something that is done automatically by LibreOffice and OpenOffice when you create a PDF from that write application.


Hello everyone and welcome to our session at the tail of Meshik Kafka. My name is Ariel Schupper. By the time of the recording, I'm in Portshift, but by the time of the, when we hear this session, I'm going to be part of Cisco. Hello from me as well. I'm very happy to be part of this event today. Thank you, Nicholas. What are we going to talk to you about today? We'll tell you who we are and a little bit more details. We'll talk about Kafka usage in general, any Kubernetes specifically. We'll talk about the security architecture or how do we secure Kafka clusters. We'll talk about Kafka and Istio or any type of service mesh. And then Nicholas, we'll talk about model and architecture and how do they secure the deployment and we'll share with us a great demo. A little bit about myself, who am I? So my name is Ariel Schupper. I'm a principal product manager at Cisco. I used to be a VP product management in Portshift, Portshift at the cloud native security vendor. Before working in Portshift, I was the head of serverless solution at Aqua Security. And before that, I led the cloud security solutions in checkpoints of technologies. Part of open source, the QB project that we in Portshift created and also a member of the Istio security working group. A little bit about Portshift, we are founded by 2018, then acquired by Cisco beginning of November, beginning of this month, focusing on cloud native security platform and more specifically on integrating it with service mesh, any type of service mesh. And that's it about me. I'm Nicholas Mussolos. I worked in telecommunication, currency exchange, commercial companies. And now I'm glad to be part of two organizations as a DevOps engineer. The first one is Marlowe Navigation. And now I'm trying to start my own startup business, RTX Direct, which is providing cloud native services. Global and commercial ship management company with offices in over 10 countries, over 1,000 shore based employees and over 13,000 employees on board at any given time. So let's go ahead with Ariel. Thank you, Nicholas. And let's talk about getting to the details. And let's talk a little bit about microservices communication. So we are moving to microservices. Okay, microservices usually look like that. When we're working in distributed applications, we start breaking down monolithic into small components. We want each of them to communicate with each other.  But then eventually, when the cluster grows and there are more elements, we can quickly turn into this famous diagram that shows the lift microservices communication before they started the project with Envoy and before they moved to service mesh. And the idea that, you know, when we have lots of microservices, a lot of communication, I'm not going to talk about whether or not service mesh is the right way to choose it. But we can talk about lots of microservices communicating with each other. We can use it like the mesh and synchronous mechanism that everyone can communicate with everyone synchronously. But you can also use asynchronous communication or I think the message passing with there are multiple options Kafka Apache Kafka just a popular one. But there are many other options of how we can use event streaming between services, which are not synchronous. Now, we would like to talk about Apache Kafka, you know, as a popular event streaming mechanism. Apache Kafka was, you know, becoming a very popular tool was donated by LinkedIn to the open source community in 2011 as a message queue quickly turned into be like an event streaming. So we're not just making like some simple computation actions on messages, we can run multiple actions on multiple messages simultaneously. We can also maintain the persistency with keeping up the message. There are many benefits to Apache Kafka and to the way it is used today for asynchronous communication. Now, our focus today and Nicholas will write it a little bit more when you talk about architecture is on an open source distribution of Kubernetes called Strimsy. And Strimsy goal is to simplify the process of running Kafka in Kubernetes. It provides, you know, the relevant container images. Strimsy also created dedicated operators that can run the Kafka cluster and can add a lot of support or a lot of to simplify those these operations and to make it, you know, more cloud native way by automating a lot of those things. And the Kafka components run as a cluster. So it can be like, you know, for availability purposes. And as I said, again, Nicholas will explain more about the benefits of using it. Now, when we talk about Kafka and want to talk about, you know, the different security changes, how do we secure this environment? It's important to know that Kafka does require some level of security by nature. The default setting is that, you know, the different configuration allow any user to read or write or publish or subscribe, you know, any or all the data. So you can publish or subscribe to any topics or get a full exposure. The communication is in plain text. If you don't do anything specifically and, you know, and you go and configure the TLS between your users and their brokers, the communication is in plain text. So if someone can intercept it in the cluster, I can get exposed to all the communication. There's no need to, you know, decrypt it. Users can delete the data. And in some distributions, the secrets or credentials are stored in plain text or you want to restrict the access of people who can access those, you know, the zookeeper location. So by default, there are many, I would say, security challenges. But, you know, given the maturity of the product, a lot of them, you know, we're taking care of, we're handled. More specifically, talking about Strimzy Kafka, looking at the main security building blocks. So the authentication user's authentication can be managed. Kafka listeners use authentication, so they can ensure secure client connection. It does support different authentication options. There's a dedicated user operator that can simplify some of them. But as you can see that, you know, in practice, not all of them are always in use, but at least the foundation or the infrastructure to use them is available. Authorization, the native authorization in Kafka is using the simple ACL authorizers. It's based on authentication of users. And then you allow, if you have users authenticated and identified, you can define access control list. You can define what user can access, what resource. Encryption in Strimzy is with TLS. So the communication is always encrypted in the main control elements, like between the brokers, the zookeeper nodes, the operator, and the exporter.  So I was talking about security in Kubernetes. Kubernetes offer a rich set of security mechanisms. There's a lot of investment, a lot of work, and also coming from the maturity of Kubernetes in its deployment. There are multiple options for security, both for deployments, for services, for policies, but also for authentication authorization and powerful role-based access control. Now, when service mesh is used, it provides flexible option to offload out of it. A lot of the authentication, the authorization decisions, the encryption is a completely different experience when using service mesh. So all in all, the security posture of cluster is much higher. Now, this leads us to think that when we deploy Kafka in Kubernetes and with Istio, we'll be in a much better stage because the Kafka security, although they don't match, but if we're using it with Kubernetes, then we can get the benefit of all the existing tools, especially Istio can use, like it does today, can contribute seamlessly to the security level because it's doing it using offloading the traffic, not touching, modifying, or changing anything in the workload. So this would make us think that the security status can be much better. Now, what we discovered, and also together with MaraLoy, is that Istio and Kafka are not the best mesh, or I would say they are not a match made in heaven. And it stems from multiple reasons. But when you come to think about it, that Kafka and ZooKeeper were both designed to have all the required resources available at startup time. In current Kubernetes versions, sidecars like the Envoy Proxy availability can today still be after the pod is already running. And the result we consider, for example, in ZooKeeper, it can lead to instability operation that members got created for a quorum with the brokers. If a broker tried to communicate with ZooKeeper and Envoy is not ready or not available, the broker will crash. We also saw that in ZooKeeper installation, it binds it to the pod IP, but Envoy uses localhost for forwarding traffic, and the result can be connection, refuse errors, and some other challenges that we have been to find. And unfortunately, this leave us with situations that still, from one side, we do deploy the Kafka, we can benefit from all those great tools, but the reality is that those cannot be used. Now, the way to move forward and really secure and benefit from what Kubernetes and what ServiceMesh can offer Kafka is if you can really make some small changes or do something which some have already in the work, but some can be done. So what are the requirements? What do we need in order to make Kafka and Istio a perfect match? So in order to create what we call a Kafka-friendly Istio or a Kafka-friendly ServiceMesh, something that will let us benefit from all the security controls in an automated and smoothed for existing users, but also more importantly for future users which are deployed and you want to connect with the Kafka cluster. There are two critical elements that need to be fixed in order to get this Kafka-friendly level expectation. One of it, which is already in the work, was supposed to be part of 118, 119, but I believe it will be in the next version, definitely going to be included, is making a sidecar first-class citizen part of Kubernetes. Now, what do I mean first-class citizen? Making sure that when a sidecar container like Envoy is deployed with every pod, making sure that this sidecar is up before the regular containers are up and making sure it's shut down only after all the other containers are terminated. And this will make, will assure that all the challenges we discussed in the previous slide will not happen because Envoy will always be there so we can, both zookeepers and the brokers can establish their communication without worrying about it. But that's not it. There is some little bit more tweaking that is required and thanks to the flexibility of Envoy and Istio, this is something that was already available since 1.5. And this is adding a special detection to Kafka traffic, either by enhancing the current Kafka filter because today Envoy supports a filter for detecting Kafka traffic, but there's slightly more that needs to be done or creating a new filter or a new proxy for Envoy, which again also, post 1.5 is much simpler to do. Now, as I said before, so there are infrastructure issues which are being done or managing Kubernetes already part of the release plan and it's going to be included probably in the next version, but there are some, you know, modifications to Envoy which are required in order to make it, you know, Kafka-friendly. So if we will achieve that, we can run Envoy proxy in all Kafka elements, whether it's broker, zookeeper, subscribers, and producers. If we can use similar mechanism like today with HTTP, kind of a proxy that allows us to parse the Kafka stream and, you know, send it for authentication and authorization. So we can authorize any request. Now, this can be done either by enhancement to the current filter or by using the new WebAssembly toolkit, which are to customize and create customized filters for Envoy, like an on-demand. And then, you know, we can use Envoy to invoke authorization for every message based on the seven properties. We can, of course, authorize it. We can create policies. Those policies will authorize. We can, of course, cache the results. So it's not going to be like every request only for new connection or new service. But this is something that will allow us, you know, to benefit from a fully authorized mechanism that allows users to define the rules. Envoy can enforce it, can create it just like we do today with our HTTP communication. Now, Envoy can also pass authentication information to Kafka authorizers. And Envoy can seamlessly encrypt and manage all the certificates, you know, of the cluster, of the brokers, of the users. There's no need to work on the TLS certificates for the users. We can also take it a step forward and do all the ingress and the egress communication. We can manage them and using the service mesh policies. So with having the right filters and some limited help, we can really reach a level of very Kafka-friendly Istio that will allow us to benefit from all, you know, the inherent security which are included. So how's the structure is going to look like? So this is going to be like we're going to inject the Istio or the Envoy proxy to consumer pods, producer pods, zookeeper and the Kafka broker, the Istio control plane will make sure that everything is encrypted and, you know, the Envoy will encrypt the traffic, you know, get the certificates and, of course, rotate when it's rotated, but can encrypt the traffic as soon as it leaves the consumer or the producer containers. When it reaches the broker, the broker will forward the traffic for authorization. So it can verify the three-year results. Every new authorization request will be verified. It will be cached and this can be maintained and the traffic will not impact the performance. So what's going to look like? So instead of using the regular authentication, we can, of course, use the Istio-based authentication. The Envoy proxy will extract the application or the microservice identity and forward it for the authorizer just like, you know, it's using it today. Just decision will be made locally and will be maintained locally. Just a second. Okay. Authorization will be the same so we can, you know, authorize user-based and specific attributes and then use the Envoy proxy for that as well. We can get much flexible, more granular options, setting the rules and caching those results. Encryption can spread around the entire cluster. So instead of keeping it only specific to the control, we can run it, you know, all the cluster and trip, all the traffic between the microservices and the brokers or even the internal, everything can be managed, you know, rotating certificates. It's going to be a much easier and simpler task to do. So all in all, with having, with, you know, making those changes, you know, we can make Istio a much friendlier to Kafka. We can then, once we deploy together, we can use all those mechanisms which today are not very advanced in Kafka. We can use the Istio mechanism and then we can bring the Kafka to the same level of security like any other regular workload that's running in Kubernetes. We can really benefit from both worlds together. But that brings us to the question, what do we do until that? And until we have Istio friendly, what can be an intermediate solution? And here we won't talk about what we are using today. And today we're using the Open Policy Agent. So the Open Policy Agent to do all the microservices authorization, just on a nutshell, the Open Policy Agent, it's a popular tool, it decouples policy decision making from enforcement decision. Okay, so when we use Open Policy Agent with Kafka, we can, we need to use an OPPA plugin inside, you know, the Strimzy Kafka. And this plugin can redirect or make authorization requests to the OPPA server. So when OPPA is using with Kafka, the Kafka authorizer call to the plugin, the OPPA server, to evaluate the policy based on the input from the authorizers. Input is the same set of information, just nothing changed. And then in OPPA server, people can define their policies and the OPPA can evaluate any request based on the policy and respond to the authorizer with a decision whether the request is allowed or not, and decision are cashed by the authorizer to make sure performance is not affected. So this is Open Policy Agent. In Portshift, we use the same architecture and use the same plugin also to allow people to communicate and define their authorization rules. And then the OPPA plugin will forward it to Portshift. Portshift will based on based act like just the OPPA server and based on the predefined rules will verify what users can access, what, you know, what topic, what broker can be accessed. We are focusing on topics. All the communication going to be authorized, the microservice is going to be authenticated based on the runtime properties, you know, in the namespace they are deployed, their source of origin. We can use those customized entities and verify that our users are authenticated. And then the traffic encrypted is used to be done independently. So that's going to be how our classics look like. You know, the main issue is the OPPA plugin getting information from the authorizers calling Portshift and getting information. Istio is not really in place, not in the Kafka broker. It's not in the Kafka pods, but it does being used in the Kafka pods. But again, it's the current version, which is still need some modification to get it like, you know, in full fledged to get from all the benefits enjoyed. So this is all from my side. I'll hand over to Nikolas. Nikolas, please take eyes through what you do in Marlowe. I'm sorry, I was stuck on slide 21. So I will talk about the Marlowe story and what happened in the practical side of stuff. What Marlowe is currently using. We are using a legacy system that was built for 25 years. It kept growing and became complex. And if I can recall correctly, it reached its end of life support in 2003. Not only that, but the server side application does everything. It received requests, executes domain logic, retrieves and updates data from database and responds back to the client. Modularity within the application is typically based on features of the programming language. Even a small change of to the application requires that the entire monolithic system is rebuilt and redeployed. It gets difficult for a change not to affect the whole system. As much as it grows over the years, it gets difficult and complex to maintain. And in order to scale the application, we would simply create more instances of that process. And usually it is not possible to scale the components in the kernel. So moving to cloud native microservices and Kubernetes microservices. With the Kubernetes native deployments, we can get view on different metrics, such as CPU usage and RAM usage. The horizontal pod auto scalers give us the ability to scale the number of instances in the replication controller or replica set based on those metrics. We can also use the same metrics alongside with health checks to vertically scale our infrastructure when needed, even that we prefer scaling horizontally our infrastructure as well. And with the introduction of GitOps, deployment configs, health charts, we save a lot of time, we have better rationing and obviously much easier rolling updates. So a bit about architecture. This is a small representation of how our system works. We still need to get data from our legacy system, since we are still in development. So we have stateless apps in blue color that issue commands and events, but we still need to keep the state somewhere. So we decided to use Kafka and other storage services such as elastic search to do that. Given all that, we need and given that we needed to move forward to a hybrid environment at some point, which is a lengthy subject that I don't want to get into today, we decided to move from managed Kafka services to Streamsy. Streamsy gave us freedom in so many ways. For example, leveraging all the Kubernetes concepts that I already talked about, we are able to use GitOps to easily deploy a ton of Kafka's with a few clicks. We parameterize a lot of the configuration. It's pretty much secure in comparison with other services and it has a great community that is always willing to help. The problem with such environments and traditional firewalls is that they need skills to get configured well, especially on cloud native environments and complex networks. Imagine having to secure a whole Kafka cluster using regular expressions and having almost zero visibility on the request made. Furthermore, firewalls need a lot of people to get configured, which it uses the agility and the acceleration of all the development, which is bad for everyone. We also sometimes need to give or block access on different layers such as on the micro service level and more importantly on the topic level. Also, given that a lot of time is now with the coronavirus days, we need to work from home. We need to secure the environment for specific IPs came up and as much as we move forward to configuring and securing Streamsy, we realize that we need something more sophisticated than managed cloud services and that's where Portshift jumped into the game to save our lives. So the Portshift solution gave us visibility on what requests are made with tables and nice graphs. We were able to set up rules on a very user-friendly environment. We are able to add rules for specific microservices and specific topics and moving forward, I will show a small demo of how easily those stuff can be done. So on that demo, I will be using Darko CD, which is a great tool for GitOps. Another great tool is Lenses that is great for visualization of data in Kafka among other stuff, but that's what I will show today. Obviously, I will use OpenShift, we use our Kubernetes cluster, Streamsy and our security solution, which is Portshift. So let me share my screen. With Darko, I will create a new app. I will give an application name, Afkan demo. I will select the default project. I will select auto create name space. I will choose my NGIT Ripper. I will choose the root path. I will choose my cluster and the namespace name I want. And after creating and syncing that, after some time we will have a full workable Kafka cluster on OpenShift. So let's see what happened. We have a broker, a zookeeper, Lenses and the operator and the Kafka Connect. Let's head to Lenses to see what's happening here. We have some topics, three topics with mock data created. Let's see what's inside. So some sensitive info of our customers, some customer information and some IBAN numbers. All of those are mock data, don't worry. And let's head to Portshift to see what we can do. We can click on policies and then connection rules. Let's start adding rules. I will select by port and put the Lenses A port name. Then next, I will select by Kafka. Here I can see my brokers and the cluster. I will select the broker that we just created. Next, I will select Kafka. Now we can see all the topics that are used in this broker. I will just select the IBAN numbers and the sensitive information and I want to block access for reading and writing on those topics. Next, we just put a name and then block the access. When I press finish and apply the policy, I will head back to Lenses and after some time I will lose access to it. So I cannot have access to those topics but I still have access to the customer information that I want access to. So back to Portshift. I will add another rule. I want to block access to IPs for everyone in the world. So I will put 000. Easy as that. Sorry about that, zero. Next, I will choose a name. Lenses in that case. Next, any protocol and then block. I click finish and then apply the policy. I can get back to Lenses. We need to wait a bit for it to work. Let's see what happens. Doesn't work on the first refresh. Let's see the second one. Now it's blocked. Let's try again to be sure. Blocked. But now I want to be able to work from home. So I will add my IP to be allowed. So let's select my IP. I will play it out for now so you can see my IP. I'm adding my IP and 32 for just one IP. Again with the same name. Between next, any layer 7 protocol. But now allow. I will add a name. Finish. And now because I want this rule to have higher priority, I can easily move it up. So let's apply the policy. Go back to Lenses. Refresh. Now we have access to Lenses. But we still don't have access to the topics we blocked. So that's good. So let's head back to Portshift to see the rest of the goodies it gives us. Hasena is dashboard with some risky workloads, events, connection, how much ports are running, permissions. Hasena is navigator. That's a nice diagram of what's happening now. We can expand this. And we can see all the external connections and all the internal connections. So one, Kafka Connect, connecting to the brokers. And Lenses Connecting to Brokers. And some IPs from the outside connecting to Lenses. Let's go to CI. We can see all our images here. We can see some vulnerabilities and how many there are in every image. We can click on the critical. We have a lot of information here such as in the description. And we can click the exact CV to go to the CV page and see what's happening with that. So that's nice as well. And then we can go to the runtime. Where we can see all the workloads running on our cluster. And some more information. There is that if it's allowed. And then we can see all the connections happening right now. As you can see on the right side, we can even see which topics are accessed by which workload. And finally, the risk assessment of our system. We can select the scan time or schedule it. We can select the severity to report. And if we want, we can select the namespace we don't want to right now. After we click save, the scan is starting. And after some time that I cut out, it's finishing and showing the vulnerabilities. So that's it for my side. Getting back to Ariel to summarize the presentation. Cunicolas, thank you for this great demo. And thank you for showing everything. I know just to summarize everything, you know Kafka, even when deployed in Kubernetes does require dedicated security tools. It does not benefit or inherent security mechanism to try deployed. Is too going to be ideal candidate for meant to do it or to achieve this level. Some of the work in order to make it, it's not natively out of the box. Some require will be enhanced in the future when site containers will get the better treatment. And some require a little bit more tweaking by adding a dedicated filter in envoy that can detect and manipulate the traffic. But with small fixes, I'm sure in the near future, we'll be able to use Istio and to really get benefit from all the security mechanisms and to bring the Kafka cluster to the same level of security, which allow everyone to use it freely and securely in Kubernetes or in OpenShift. In the meantime, OpenSore, the OpenPolice agent can be used in order to customize a lot of the work, but nevertheless, I'm sure in the near future, we'll be able to benefit from the Meshi Kafka and make a service-friendly Kafka. So that's it. Thank you very much for joining. Thank you, Nikolas, for a great demo. And thank you for doing this for joining. And we'll be available in the next few minutes for a few questions from the audience. Thank you.


The task before us is greatly advanced by an assembly which reflects as accurately as this one has the problems of our swiftly changing world. The world profits by this annual reminder of those things which must be thought about and worked on during the months between our sessions. Here too we face day after day a tragic reality of our time the isolation of a small group of our members from the rest of us. I pray this will not always be throughout this session I've watched the signs of a change in attitude. I've been disappointed but I'm not discouraged. All of us must keep on hoping and working for a change constantly asking ourselves we are doing all we can to make clear our desire to live in peace and friendship with all our neighbors in the world community. As we separate it is right that we should be gravely concerned with the gaps that still separate us from each other with the problems we have left unsolved. Time will help us find answers which now eludes.


Knowing about something about leadership, for example, and actually doing leadership are two totally different things. Wow, I feel like I should be taking this program. I should have been taking this program a while ago. So that I think leadership is not a choice. It is something which is mandated upon us. Good morning, Sabri. How are you today? Good morning, Rodan. I'm good. Thank you. How are you doing? I'm excellent. Would you mind telling us a little bit about yourself and what do you do at ASV? Well, I'm a Malaysian. I was born in Malaysia. And I've been working in a few companies already by now, but the longest time spent was in oil and gas. And since ten years ago, I've been with Ekliff conducting programs for the company. So I understand you're teaching a very exciting executive program. It's called Emerging Leaders, and you are the lead faculty for this program. Can you tell us a little bit about it? Conducted over three and a half days, the Emerging Leaders is a program, an open enrolment program, meaning to say we have people from various organizations, various industries coming together to form the learning community. And the last time we ran the program was in Cambodia, and we had, I remember correctly, nothing less than five nationalities coming together to form the learning community of the program. Why is this program important to you? Why do you spend time trying to learn about emerging leadership? It's important to me because I've discovered a conclusion that knowing about something, about leadership, for example, and actually doing leadership are two totally different things. So what Emerging Leaders does, it converts that thing that you know into actionable behaviors that your organization and your people can benefit from. That's what it does very, very well. Wow, I feel like I should be taking this program. I should have been taking this program a while ago, right? So when you think about the specific business challenges that somebody is going through, be that an individual or organization, what challenges is this program addressing? It addresses the challenge of the lack of leadership skills amongst people. Sometimes the most damaging thing that a company could do is to take a person who is severely lacking in leadership skills and give him a position of high-level position in that company. The damage done is to be reversible sometimes in my experience. That's why I think Emerging Leaders really, as the name suggests, allows the leader in you to emerge and put into practice all the right skills in place. And the faculty must be really beautiful to see that happening in the classroom, right?  Yes, it is. So let's think a little bit about the impact, speaking of seeing what you see in the classroom. Let's think a little bit about the impact that this program can have both on individuals, on organizations. What do you think? The program can be renamed as you're not Emerging Leaders, but a program of discovering your leadership skills in you. Because we do not teach leadership in the program. What we do is we guide people to discover what is it that's important to them, what few things are really meaningful to them, and by answering those couple of questions you get to discover your leadership path, and that's what leadership is all about. Sounds very transformative. It is a very transformative program at the end of the day. Yes, it is. Which is what we do at ASV, right? We're all about being transformative and principled, extraordinary and unconventional, smart and sharp. Do you have any final words for people interested in becoming an Emerging Leader or discovering the Emerging Leader in herself, himself, by taking this ASV Eclipse program? As a Muslim, I hope you don't mind, the Prophet says, even on the journey of three people, make one of you the leader. And I think that because of that, I think leadership is not a choice. It is something which is mandated upon us. If you're a living, working, breathing person, working with other living, breathing human beings in the office, I think you have to learn something about leadership. And by all means, come to see me as Emerging Leaders and we'll transform you into what we think you can be more than capable of.


This is calm. Are you going to show me a hologram now a fresh water spring it should be safe for drinking Just checking then so the eternal fleet overwhelmed both the Republic and the Empire What was the result? Both sides are forced to pay a heavy tribute to the cool mainly raw materials and resources They're also held under an arms limitation statute The Both breaking it of course, but they're still incapable of challenging the throne directly Who rules the Empire now? Darthasena was the only dark council member left standing all others died or disappeared in the chaos Without opposition she declared herself Empress of the Sith and the Republic Suresh remains in power though She no longer holds the title of Chancellor the Republic has limits to their rulers terms But her replacement is a mere puppet both sides see this only as an opportunity to eliminate one another at a time of weakness Instead of combining what strength they have No surprise there Arkan does nothing to prevent violence between them so long as their tribute is paid and no one challenges the cool superiority Hmm That's true But I'm more curious as to what happens with the tribute does he build More armies. What does I can use the tribute for? The cool doesn't seem to need much a Question no one else seems to ask or answer not in any detail So cool's Empire spans a sizable portion of world space, but not enough to consume the resources they're acquiring I've been working to learn the answer myself Powerful Zakuul and battle stations have been placed in orbit around key worlds to watch for possible uprisings But there are no ongoing planetary occupations The ships of the eternal fleet simply patrol at random While the tribute paid is a cool gradually chokes all economic potential. What about my team my ship? I have allies looking for them as we speak with all of the chaos of the last few years though It will take time to find them all For now we make do with ourselves cough and HK Yeah, she sure is you're here. There's nothing we can't handle the feelings mutual It truly is a relief to see you again Is that why you went to so much trouble to rescue me before you were captured you accomplished things No one else dared to attempt you changed the galaxy more than once and if things have ever needed to change now as the time There is something else I Felt it since the moment I found you in carbonite. There's a power in you something new it's elusive, but I know it's there Let's be honest showing I mean this is Lana who we're talking with I think you're right Lana I Think the Emperor Valkorium is in my mind What after he died there was a storm of energy I barely even remember being thrown into the carbon freezing chamber and then while I was frozen I Saw things Dreamed about him about everything that happened while I was gone It can't be if you were controlling you. I'd know it. I Certainly saw enough of it on Zaiost Well, he's not controlling me. We have a link me in him He cannot die at least not until I figure out the way to kill him for forever but He is in the recesses of my mind doing God knows what I Don't think he's trying to control me not directly anyway He was trying to convince me to work with him Whatever he's doing. We can be sure that he's always trying to deceive us somehow. I believe in you And I appreciate your honesty I'll remain watchful for any influence. He might have over you for the time being though We have no choice but to proceed What about the others? They wouldn't understand and like you said, we really don't know anything for sure yet Let's keep the matter between us for now.  I have encountered minimal resistance in my patrol How minimal? reassurance only one skytrooper and three local predators with poor survival instincts Our position appears to be secure at this time, but I would still advise caution on your return trip masters About the good work HK Appreciation it will be my pleasure to do so master He's so warm and fuzzy like a kitten only, you know Getting some neither warm nor fuzzly fuzzy Fuzzly goes to actually State of the galaxy useful Let's get back to work then shall we? I'm glad to see that not all of the game is now completely linear. I was As you might have heard Or you might have not heard worried that possibly should feel better now Experience might be a good fight To be no more then a Corridor section Leading to another corridor section. You know what I'm saying. I mean if you're watching this video Also, you've probably played some games just like that Useful so I don't have to travel all the way up with my Slow speeder bike and I can instead use the quick physics defying Yeah, I honestly have no idea why mine doesn't work the same way, you know the it would have been fantastic but nay, I Did not expect it to so all is fine really her working gate The treasures of technology and now to find a bunch of missing And now to find a bunch of missing parts Hey there, did you find something tasty? We definitely found something great. I've got a pretty good idea the parts will need Let's go see what we can find as long as you're cooking dinner Sure Must I once ago go all the way inside? You know this entire walk? absolutely needless unnecessary Wasting of time to prolong the chapter. I see how it is now Charming really. Thank you by the way for filling the game with even more Unnecessary busy work and that by the way is why I really play MMORPGs anymore The simple reason that very few of them respect your time and Star Wars the Old Republic Right now Doesn't at one point last year There was this giant experience bonus Which was great for a few reasons first because you could play the entirety of the game without having to You know do useless side quests which really had a repetitive story and the quests really What you needed to do was bring Like ten bear asses to someone somewhere in an imperial or Republic base Which admittedly? not fantastic this Pretty much the same thing Because easily we could have taken both quests without having the need to To Dilly-dally with good old caught Vortina here And well, I do appreciate his company in the matter which actually no, I don't Really quite unnecessary Let's see then We must go further into the jungle. Pardon the swamps To finish this really busy work Not that I mind of course. No, no, no Waste all my time. It's not like I'm a busy guy There at least the FPS stopped dropping right? He said as the FPS dropped with like 10 frames Bioware Bioware Bioware What you are doing worries me sometimes it gives me up at night. No, what else keeps me up at night my other Bioware Bioware Bioware Your busy work and MMO strategy It gives me up at night. No, what else keeps me up at night That's a good question if you want to Learn the answer to that you can take a good kid at my other series darkest dungeon and You will find out Just what horrors more where that came from keep me from taking naps And when I say horrors, I mean Darkly animated awesome things that make People go insane. Anyway, you love took one out I can't help but remember saying that well There only were How many three predators a single skytrooper scout I have killed five skytrooper scouts time to take a stand in Less than two minutes doesn't seem like Singles contribute to me I did out or HK 55 really isn't too good at his job as a sentry Which admittedly would need some work, but hey We've got another big predator to defeat for Whatever reason remember what I said story cinematic section elite monster repeat and Sometimes change the corridors setting and that's the game Which I suppose if I was looking at it from a more philosophical standpoint would be a Way to describe all role-playing games But in most of them combat is And unless a lot less repetitive and dull and easy I'm going to give you a ring dude. Sorry It's destiny. I ditch all these parts before we crash We find the gravestone and then what do we need to get it flying? Honestly, it's plain as day Well for Lana though for her it's all just skill and luck and coincidence hmm Hey, I'm Honestly, I think it's the Emperor Doing something behind the lines behind I didn't come out here to philosophize I just want to get off this planet the sooner the better Can't disagree with that too much Lana's told me about all the things you've done more than once half the reason I agreed to this crazy rescue was to see if you were actually real So I figure I know all about your past. You deserve to know mine Lana might have told you captain of a warship in Arkin's campaign against the core worlds My crew and I deserted but I'm not going to pretend we didn't do our share of damage beforehand Just thought you should hear it from me Lana mentioned that you deserted instead of following orders What was the order?  That's not how so cool is supposed to operate Thank you for being honest with me You and your crew made the right choice Glad you think so One more thing as long as we're being honest I know things were hairy back there, but a lot of innocent people died a lot That's not what I signed up for I'm in this to save Zaku from Arkin not to tear it down with him. I need to know that you're on board with that, too No I'm not I'm in this to win No matter what the cost and sooner or later. We're going to have a problem Come on. Let's get this stuff back to the gravestone. I Honestly have no problem killing you right here right now Not republican No boy What's he up to now? So he wasn't a republican after all sorry about that my mistake still He is awful Don't like him why? Well, that's a very good question.  What did you do to them? Protestation I have done nothing to these pitiable meat banks master They were merely bystanders when I destroyed a group of sky troopers. They've requested our help in escaping the enemy's notice Peace we have no danger to you. We were exiled for protesting Emperor Arkin's wall We've already lost two of our friends, please. Is there anything you can do for us? I Can't Be bothered with civilians Plus chances are they will only Get in the crossfire So better to be on their own we have more important things to do Deal with your own problems. I have a bit of food on me Here I Wish we could do more. Is there something else master?  I'll be entirely pointless Just for the sake of chaos No, thank you.  She'll fly Just been waiting for somebody to come along and remind her how let's get to work then Right then Don't trust the pilot The pilots look a few moments ago said I Will kill you But at least I won't extend my hand If you need it, I like the funky music Kind of random though Hello, Al not working as well as you don't is it? HK 55 just cleaning his gun and Gunning down anything that moves. He disintegrated that awesome Oh He didn't get it again did he? You know, I'm kind of getting worried now if he can't shoot Finally oh God at least now he's not going to miss I hope The insane droids That scene came out of nowhere But it was amazing Memons like this they make it all worthwhile Eureka


Okay, I've been working like three jobs. Probably why I never see y'all. Probably why I never have time for the fake friends I won't be y'all. Oh god, I've been running now


Welcome to Toffy TV, it is the Everton News Daily. Everton drew 2-2 with Leicester City last night in what was a very, very important match in Everton's fight against relegation. Obviously both teams down there scrapping it out at the bottom. To me felt like a missed opportunity, despite leaving there unbeaten, it did feel like we let two points get away. And how many more of those opportunities have we gone off four games to go and obviously two very, very difficult games coming up. What I would say was the performance was much better than it has been of Leic. The goalkeeper definitely was a man of the matty version. And you know that might give a lot of people hope, but like I say the two points got away for me given how good the performance was. Sean Dyche was speaking after the game about how he felt Everton had performed in this one. Other than a couple of softer moments, I thought it was a very good performance. The will, the demand but also some of the quality to create things. Very high chance counter. I've always spoken about quality of chance, not just about long shots and very high quality chances. Very high entrance into the box, very high in the final third. You know all the markers that usually bring a win and they didn't. But we've got to keep doing that because there's a clear sign there's a shift from the last game when. I must say I thought it was a good performance until Lucas went in front and then we just literally lost our way. But that didn't happen tonight. You know we stayed solid to what we thought was right. Smoke to my halftime was really pleased. I said look this head scratchy you're not in front. I said it's about staying calm and keeping with what we were doing in the first half. Which we had a good spell in the middle without creating too much about a bit more of the ball. But the feel of the performance was really pleasing and we've got to keep doing that. There you go. It's right to Everton where better last night we did have an opportunity and again just to back up what I said before. But that's why it felt like two points off for me. There was obviously a very disappointing turn on the night when Seamus Coleman being set it off. Still had nothing confirmation wise on what his injury is. It looked a bad one. The manager did kind of allude to that in the TV interviews. This is what he said in his interview when asked about Seamus' injury last night. Waiting on news. It doesn't look great. We'll wait on more details. I don't want to say too much until I actually know. But the way it was a twist. I haven't seen it back but the lads have a look at it. The medics have a look at it and it doesn't look great. So we'll just have to wait and see and hope for the very best for him. Fantastic professional that he is before my time I'm sure but certainly in my time. And I must say not an easy game for Patrick Gaughan but I thought he was terrific when he came on. We wish Seamus a very speedy recovery. Hopefully it isn't too serious. One player who has come back from injury and scored last night from the penalty spot was Dominic Calderloon. I think Dom being back in the side just makes us look so much better. We love more of an attack and threat shows. For me anyway being fit most of the season I don't think I have a mother being in the situation. Define themselves in right now. This is what Sean Dyche had to say on Dominic Calderloon's performance last night. He missed one that just took a nick as he missed it but he's in the right areas. I spoke about it when I first got here and unfortunately he's had injuries obviously about constantly getting him in the right areas. But he's all round game he's looking fitter and stronger. I spoke it's not an easy situation as you can imagine because of his record in the past and his fitness levels. But I had this goal of getting him truly fit but the last bit and you know I've said this before and your manager said the last bit is Premier League fitness. It's hard to get that moment and you could clearly see tonight he's getting fitter and stronger and he's running with a more powerful edge to him because we all know he's quick and he's a strong player. Crystal Palace have joined Everton and Aston Villa in being interested in stat Rennes midfield player Dion Lopi. The 21 year old has been in excellent form this season. He's made 28 appearances in France. He's a Senegal international. Everton have been watching him for some time obviously highly rated as well. Tuch am adew Omran a last summer from France and lots of speculating on his future of course and Everton may be trying to do a little bit of succession plan in there with this one. But again like with any link depend on what division Everton are in. It would make a difference obviously if you're in a race with Crystal Palace and Aston Villa who will definitely both be playing Premier League football next season but he is highly rated and he wants to keep an eye on. Finally former Everton manager Sam Allardice is back in Premier League football. This time he is the new boss of Leeds United. He's got four games to keep them up. The 68 year old will reportedly receive 2.5 million if he manages to keep Leeds in the Premier League. For him it could be at the expense of Everton which would be obviously sweet. He's been ffuming that Everton sacked them in the summer of 2018. He's told enough people about how disappointed he is to receive the sack then and he's got an opportunity to stick the knife in. So Everton by keeping Leeds United up so it's going to be a difficult task there in poor form and I've got some bad games as well but Sam Allardice back in football with Leeds United. That is it for the news daily. Give the video a thumbs up, subscribe if you haven't and why not become a Toffy TV Premier member. The link is in the description and the QR code will be on the screen now. See you later.


Availability from what I've seen if you want to stand up to people apply as much pain as possible Do do enough damage to make them stop indeed and if they don't stop they end up hurting you really bad At least you you did something good for humanity because they'll think twice about hurting someone else It's not just about you, right? It's about Preventing those people from doing the same thing to others, right? That's how we become stronger That's how we prevent bullies from destroying our societies, right?