Welcome to the Dare to Dream show. The Dare to Dream podcast was nominated for two People's Choice Podcast Awards and a Webby Award. Dare to Dream is ranked in the top best podcasts in USA and self-improvement on Apple Podcast and multiple other countries. Debbie Dashinger is a certified coach who coaches people to write a page turner book, takes their book to a guaranteed international bestseller and teaches the system to be interviewed on media and podcasts and get massive results. Debbie shows you how to use media exposure to locate your tribe, fill workshops, sell books, and gain followers. Get your free tools and templates at debbydashinger.com slash message. That's D-E-B-B-I-D-A-C-H-I-N-G-E-R.com slash message. This show is sponsored by Dr. Dane Heer and Access Consciousness. They do beautiful energy work out into the world. You can become a facilitator, take one of their online programs, or read their books, get their products. It's a life game changer. Question, is your life needing a spark? My guest today is Stephanie James, who is a psychotherapist and licensed clinical social worker for over 30 years in the mental health field. She is a thriving private practice and is also an advanced level EMDR2 trauma specialist. Stephanie's work involves being a transformation coach, filmmaker, speaker, and host of The Spark with Stephanie James Show. Stephanie is the author of The Spark igniting your best life. If you'd like to learn more, go to StephanieJames.world. Welcome to Dare to Dream, Stephanie. So great to have you. Thank you, Debbie. So excited to be here with you. I love the spark. I love just the idea of that. It seems like it's the beginning, the inception of something, and something sort of magical. What does the spark mean to you? How did the spark get sparked into your life? Well, it's exactly like you're saying, to me, it's that essence of us.  It is really the essence of who we are. I think oftentimes when we face challenges or life gets tough, it can feel like that's covered up. So part of our work is how can we excavate that to just let that spark shine through us? And I think where that comes from for me is I, as a little girl, was already so in tune with that spark and was one of those kiddos. I just loved everybody. I have these memories of showing up at preschool academy in the morning and walking into the front porch of the school. And it was in this little old-fashioned cool house. And all these kids would be waiting for me to show up and I'd walk in and we'd all just jump up and down and everybody was so excited. And so that's been kind of my experience of sort of the journey of my life coming back to that. Having gotten lost and gone through my own hardships and then really returning and excavating that spark in myself. And that kind of becoming then my passion of how to help other people ignite that as well. And how do they, is there current research that you're privy to that can help people to gain clarity in that area? Well, I think for me what I'm sure there is specific research and I do have some of that research in my book. I think though that it's a combination of things. I'm definitely an eclectic psychotherapist. I'd like to use all different kinds of modalities that are gonna fit. And as a transformational life coach, what's gonna fit the person that I'm working with? What can help them do that inner work in whatever capacity it needs to be? So, how we heal in so many ways, Debbie. And so it's like, I couldn't just give you one snap answer but I think that when we look at like some certain areas and we can talk more about these, when we look at first of all, learning what are limiting beliefs and how can we break through those? And then learning how truly to befriend ourselves. And not just that old saying of like, oh, just love yourself, be your own best friend. But truly there is an art to befriending ourselves and showing up for ourselves and really being like we have our own back. And then there's ways that we can learn how to grow through grief, embracing even the shadow sides or just the different emotions that we have and excavating that spark even more through cultivating joy, growing grit and resiliency. I think there's just so many avenues we can use. And honestly, from 30 years in the mental health and personal growth field, this is actually my 32nd year, I found so many things that are tried and true and continue to do my research to just bring those tools that really work, that really make that transformational change possible. So talk about that. You said in the beginning about our brains and limiting beliefs, how they really keep us stuck in old habits. I wanna know more about that, how it's possible to unearth those. And then once we find this kernel, this thing that's actually turning parts of our life on its ears and not what we prefer, how instead can we successfully transform those beliefs? And I'll give you an example. I was part of a medicine ceremony this past weekend and I had a very extraordinary, very powerful and unexpected experience on Friday night. And basically the divine or grandmother or ayahuasca, whatever you wanna call it, I showed me an experience, a memory that I had. And I was a kid and I had a particular idea about that memory, something that happened with my father. And the divine said, let us show you exactly what happened. That's not what happened. So clearly my mind had done the best it could with a certain kind of trauma. And so it's instead, it showed me the truth. My dad had taken me away ostensibly for a vacation. I went to a state Vermont I'd never been to before, a house he had just built, a second house I'd never been to before. And then he turned around and said, I'm gonna fly. He used to work for the airlines, I'm gonna fly. And he left me as a kid for days. And it showed me the trauma and sort of the horror that a parent would do that. You know, no phone number, I had no way to get in touch with anybody. I don't know, I don't even know how I made it but I did what I could do. So I felt it, I got through it. But the next night in ceremony, the idea of being alone came up and I went, oh, this is why I've avoided things. This reference point, this limiting belief about what being alone means. So I wanted to unearth that and create a new reference point. So even using that as an example, Stephanie, what could somebody do to literally recreate that? So something wholly different and positive and wonderful could happen around being alone or any other limiting belief? Yeah, such a great question. And you know, I think it starts with number one, realizing that so many of our guiding beliefs are subconscious and habitual. So we don't even realize that they're going on but they're guiding our lives. And I think another thing I think to take into account that's really important is that our brain has this natural negativity bias. And so it's always scamming the environment for a threat. And so when we think about that, it's like negative experiences in the brain are like Velcro. They're just held onto. And that's why if we touch a hot stove, we don't have to touch it again to know that it's hot and that it's gonna burn us. It's like, that's filed away. Same thing with traumatic events. And with traumatic events, there's a thought that oftentimes a belief that gets hardwired. So like you're saying like, for so many people it's like, I'm not safe or I can't trust people. And so then the sad and wonderful thing is that positive things are like, frying eggs on a Teflon pan, they slide right out. The wonderful thing is we can train our brain how to hold onto those. And so I can give you an example too from my own life when I first learned how to do this. And I think oftentimes these behaviors that we have and they can feel really positive, we don't realize maybe there's something underneath them that might actually come from one of our limiting beliefs. And it's been about a decade ago, but I was in a class that was about the reticular activating system, this online course, and that's that part of our brain that notices things. It's like when my daughter was pregnant, she was saying to me, mom, everybody's pregnant. Well, of course everyone's not pregnant. It's just the fact that that's what she was focused on. That's what she was experiencing within her. And so that's what she noticed. So in this course, they were really asking us to dig deep and say, what is it? Look at all these different characteristics and these things that are going on in your life and let's see what might be underneath it. Well, for me, I've always been super driven and I was the oldest kid in my family. I put myself through graduate school as a single mom. And in a lot of ways, I think, unfortunately, my mantra had been like, I don't need anybody. I've had boyfriends joke me and say, like your mantra is like, I don't need no man. And the truth is, of course, that wasn't the truth. But as I dug deeper underneath, what the truth was for me, where that belief came from or what the belief was, was when my parents went through a horrific divorce when I was 13. And I went from having truly this at all areas of my heart, amazing childhood for 13 years. I mean, we were very close. My parents never fought. And in one night, that all literally exploded as my brother and I heard the screeching of tires going down the driveway. And we're looking out of my second story bedroom window to see my father jumping on the hood of my mother's car as she's trying to back down and pounding on the windshield. And these are parents that my mother was a successful business owner. My father was a professor at Colorado State University. And we didn't know what was happening. What was happening is my father had just told my mother that he was having an affair with my best friend's mom. And from that, this amazing childhood was irreversibly broken and completely shattered. And my mother, who had been absolutely in love with my father for 18 years, she had a complete breakdown. And she's one of my dearest best friends now, but at the time she wasn't emotionally stable. And so I went and moved in with my dad. And I'd always been a daddy's girl. I was that little girl who was my dad's constant shadow. If he was out raking the leaves, I was out raking the leaves. When he took a nap, I pretended to take a nap just so I could lay next to him. And so it was real natural for me to go with him. And unfortunately, my stepmother and he, as they bonded, decided the relationship he had with me that was very special, she didn't want that. And so he really started moving away. And so the message to me was, you're not allowed to speak to your father alone. You're no longer allowed to be with your father alone. And Debbie, honestly, to this day, I'm not allowed to speak to my father alone on the phone. So my whole dynamic with my father shifted. And when I moved back in with my mom at 16, my father stopped speaking to me for a year. And so this message that I started getting is like, I can't trust anyone. I have to do it all myself. I can't rely on anyone else. And definitely struggled with this thing of like, I must not be lovable, why would a father reject his daughter? So out of that, I share all this story because I think it's important to realize all these challenges that we all face and go through, they really can become the match point then that are the gift that we give to the world, to humanity. And out of this class that I was in, what I realized is I had carried that belief my whole life. I can't trust other people. I have to do it all myself. And what that had set up is just this, I'm driven, I'm gonna do it, I'm gonna do it. And yet I wasn't letting other people show up for me. And the power in the exercise that this woman had us do for this class, what she had us do is for the next 30 days, we journaled every night the exact same affirmation. And she said, I want you to blow it up really big. I want you to say not just what you want, but make it so that there's no way you can deny that this is gonna show up in your life as literally what we were doing is training our reticular activating systems to notice what it was that we were focusing on. Cause like, you know, it's that principle in physics of what we focus on expands. So every night I would journal to I'm completely loved and supported by the universe. And every day I would start noticing more and more and more evidence showing up. You know, at first it was just, I had wonderful and I still do have this amazing soul tribe that would write to me and say, you know, you're such a sweetheart, I love you, sweet friend. And you're the lovely, lovely notes that we get from our girlfriends.  And then in one week, I had two different baristas give me a free cup of coffee. And those are just little bitty signs but it all was making me start to think, wow, there really is this underlying current of support. And then about two weeks in, the lid got blown off this experience when my daughter and I had come home from a day up in Estes Park here in Colorado. And I had literally sunk all of my savings into this little old house that we had redecorated and totally gutted and it had flooded. The old water heater had rusted out. So there was like standing water downstairs. I went upstairs, I just moved in here but the neighbors were awesome. I had two sets of neighbors come over with shop backs and fans and everybody's helping. And pretty soon there was a knock on the door from a girlfriend of mine and her husband who lived four houses down and had seen all this commotion. And she said, what is going on? And when I told her, she left and came back 15 minutes later and handed me a $1,000 check. And she said, you and your daughter need hot water tomorrow. I know you don't have the money right now. My husband has a truck. Let's go get this taken care of. And so it was like, I couldn't deny anymore that the universe did completely love and support me. And it was a life changing moment for me where I started opening up, I started relying. My mother and I, that's when our friendship became so amazing. I allowed her to show up for me in ways that she had wanted to. And I would get feedback from my friends like, thank God you are finally coming to us and saying, hey, I'm struggling or I feel vulnerable or I need your support right now. So it opened my heart and opened my life. So I think when we do things like that, those are some of the tools we can use when you're aware of what your limiting beliefs are. And we can talk more, if you wish, about some of the ways to identify the negative beliefs or the limiting beliefs you might be carrying. Yeah, because that's a very, very powerful story. And I'm intimate with the idea of creating something and then going out in the world and finding proof of it. And I love that you said it that way. So how does somebody know? Because I'm even thinking, I know I was able to imbue in that moment during a medicine ceremony when it came to my attention. Ah, the reference point. No wonder, look, ha ha ha, that my father worked for the airlines. He was internationally spoke five languages that the place it showed up is travel. Now, have I traveled? Yes, but the older I was getting, the more terror sabotage around traveling. And now I finally understood why the strange phenomenon because it meant being alone, meant being alone, meant being neglected, being unsafe, all of that terror. And so, okay, great. What if being alone was fun? What if it was adventurous? What if it was positive risk? What if the universe had my back and I was always taken care of? But it feels like, Stephanie, what you're talking about, something very succinct happened, this very powerful new statement. So how are you able to understand what that would be for you going forward? So as I had gotten that evidence that said the universe does completely love and support you, is that what you're asking? How did you even, yes, know that that was the statement that would fulfill a new prophecy for you? Yes, you know, honestly, it was a download at that time. I feel like that's been something that's been amazing in my life is I'll get these just divine downloads. And as I was open to saying, what is it that would help me really open this up? What do I really want evidence of? It's not just that people love and support me. It's like that the whole universe, it's like that the universe is conspiring for our highest good. And I knew that in my heart and yet it was something that gathering evidence of changed that belief system for me and changed those limiting beliefs. And so I wanna just encourage people, you can start right now today, start unearthing what some of these limiting beliefs are for you. Now, what I work with my coaching clients and my clients on is first just being clear, what are they? And the way that we can start unearthing some of that is just going into the different areas in your life, whether it's money, financial, relationship, career, health and fitness, spirituality. And sometimes it's looking back and saying, what are the messages that I got as a little kid? Sometimes I've worked with people who have messages around single events that happened or maybe it was something that grandpa or dad said where they were saying money is a root of all evil and rich people aren't happy. And I had one client that I worked with and those were kind of the conditioned messages he had gotten. So even though he was a multimillionaire, he wasn't happy.  So once he started realizing that and could clearly see, oh, that's my limiting belief, he could change that. And so the first step is really start to just do some even meditating on one area, set aside an hour, start looking at, okay, what is my belief around this? Really diving in, really looking at, is it something from childhood? Is it something where I had a negative experience? Again, those traumatic experiences lock in a belief. And so in a lot of the trauma work I do as a trauma specialist, that's what we help people to do, find out what is the hidden belief that's causing, like you're saying, the anxiety or the physiological response to a trigger. And then from there, the beautiful thing is that people can start then the second column after you write this first column and start identifying what the limiting beliefs are, you can start saying, what if I wanna believe about myself instead? What if I wanna believe? And then I tell people, it's not just enough to have the positive affirmation, because we can say all day long, I'm healthy and fit, I'm healthy and fit, I'm healthy and fit and it might not change things for us, most likely it won't. So underneath that, I have people come up with a couple action steps so that they have what they're affirming. And I do have them say their affirmations out loud to the universe every morning. And so they're really putting that out there and manifesting that wish, we speak things into reality. So for example, the health and fitness would be, if I'm saying to the universe, I am completely healthy and fit, then my action plan is I choose healthy and nutritious foods every meal and I work out 30 minutes to an hour, five days a week. The cool thing is too, as we say these things out loud, if after 21 to 30 days, which we know from research is about how long we need for something to become a habit and that's also true for thoughts, they become habitual thoughts for us, they become automated, which means it's more automatic that we start believing them, we start acting on them. There's this beautiful thing called cognitive dissonance. And that's when if we've been proclaiming and visualizing, and I always tell people as well, like marinate for a few moments after you do all your affirmations, marinate for a few moments on them, feel into that reality of you. And all of the affirmations, of course, present, positive, present tense. And then after you do that, where cognitive dissonance comes in, is that if you've been saying this thing to yourself for 21 to 30 days that I'm healthy and fit, I only eat nutritious foods at meals, and I exercise 30 minutes to an hour, five days a week, and you start reaching for junk food, something in you goes, wait a minute, that doesn't fit with my image of me. I've been projecting this certain image and I've been feeling into that image of me, and that's the behavior change. That's what gets us to pause. And a behavior and thoughts that were automatic were no longer doing that anymore. We get the pause that allows us to go, you know what, I have a choice and that doesn't fit for me anymore because I'm someone who's healthy and fit. Yeah, yeah. And you are also a leader in a random, is it like a random act of kindness group? I, yeah, I wanna learn more about that. What is that group about? Why did you form that? What are you doing? What kind of kindnesses are you doing? So that group actually has evolved. It started as the random acts of kindness group four years ago, I believe. And what we started with was a group of 12 women and we'd get together once a month and there'd be a beautiful spiritual component to it, meditation and also a personal challenge of maybe like for the new year, we'd say, what is your word for the year? Is this a paid group or is this some friends and colleagues who decided to create something together? I was inspired to put this together and I'd had a client who used that term, this random acts of kindness group and I thought that is perfect. One of the ways that we did random acts of kindness is every person would bring $20 to each meeting and whoever was facilitating the meeting and it rotated would then donate that money to a charity of their choice. Sometimes it was, I had a family on my radio show who the daughter was killed in a single car accident because she wasn't wearing a seatbelt and they had come up with this beautiful nonprofit called Alexis Huggs. And so we gave the money that month to them. One month it was to a gentleman who had lost his wife and had two little children. So it became this wonderful group of we were growing together, we were challenging each other emotionally, spiritually to dive in and then we were contributing. So that was such a wonderful group and it has evolved into now that group is no longer running, it's kind of has these offshoots but about four months ago, my very dear friend, Christian Strang had gotten ahold of me and she said, hey, I had this huge download that you're supposed to get together this new group of women for us to meet. And we call it the powerhouse goddess group and this group of women truly is, it feels like everyone in there is bringing tremendous light that we really have been called together. I mean, I knew instantly, Debbie, who those people were and they were all women who had become friends of mine. They were guests on my show, Alison Carmen, Hollywood, Gabriella Masala, Catrice Goodard, people that literally have just made tremendous change in the world and are putting just good, good content into the world. All amazing women. I mean, I feel so humble and just like honored to be there with them. And so we're meeting now once a month to really get together and inspire one another, lift each other up, see what we can contribute to the world. And then a second time during the month, just to meditate and really hold the light and hold healing for this world that's hurting so much right now. Absolutely. I love powerhouse goddesses, yay, power to you all. And it is such a ripe time, it seems to me, to do that. I myself heard, hmm, I don't know, just in passing, I heard something about kindness or doing a kindness every day. Don't even know where I saw it or read it, but something got caught in my brain. And I said, I want to commit to that. I'm not gonna tell anybody, although now the cat's out of the bag, but I decided not to tell anybody and just put that on my to-do list every day. So when I wake up for my morning walk with my dog, I'm always thinking about who haven't I been in touch with? Who do I wanna spread some love and joy to? And it's been voice texts, it's been reaching out. I gave a kindness to an author who son died tragically and has a book and is wanting help like with some media visibility. And so I gifted her with a almost $4,000 package and just things that are popping for me. It is the one thing out of my to-do list every day I look forward to. Because it's like, I know people say when I give, I receive, but it really is, because I'm the one who's getting the grace of the reconnection with people or people saying, oh my God, I appreciate you so much reaching out and saying that. One time I cleaned something up, there was someone who made an offer to me and I had been so overwhelmed at the time, I couldn't get back to her. I literally couldn't.  And I reached out and I said, it was not personal and I'm so sorry, it took me so long and how much it meant. And I think about you and we have this gorgeous exchange, you know, and just all this peace. So I think, I hope people are inspired listening to you to consider in their own space what is possible at a time when it can make big dramatic changes for other people. Yeah, absolutely. I love that. I love that that's what you start your day with. It's something that I talk about in the book as well is that it can be the smallest of acts, the random acts of kindness. And right now, what people need is someone just to wave to them and greet them.  And what a difference it makes to just greet someone to acknowledge their humanists to just say, hello, good morning.  So it doesn't have to be huge grand gestures. I know this morning with everything going on with the inauguration, I was so lit up from the song by Nako Bear, which the title is not, I believe in the good things coming, but that's this repeated line throughout this video and this song. And the video is so gorgeous because it shows people from all walks of life, every color, every age, every shape, holding up signs that say, I believe in the good things coming over and over and over. And it was so moving. And I sent it to 52 of my closest friends, people that I love with individual notes because I was so resonant with that this morning. And all of a sudden I was in this beautiful community and connection with some people I hadn't talked to for six months, seven months, but I've felt so just empowered and just truly feeling that just love of connection and just wanting to gift people with that and to help lift them up, help bring that spark to their day. And so I think it can be small things that we offer. And yeah, it does, it really does. I mean, I was just high as a kite. I was so filled knowing that I was helping to bring that light to other people. Yeah, I like, it can be so simple. It can be something like that, just sending out a song that can make somebody's day with a great message and I love him too. I know this artist very well. And what about the secret sauce for spicing up our love life and cultivating deeper, more meaningful relationships? I have to tell you the very first thing that popped to my mind when you said that is I think one of the essential pieces that people can often neglect. And it might feel hard during pandemic times, although it might be easier than you think is a sense of novelty. What do you mean? So a sense of novelty, oftentimes in relationships, we can get into this habit of like, okay, this is not my life, but many of my clients that I've worked with have talked about, we have date night, once a week, we go to Applebee's, same thing every time and we go watch a movie, you know what I mean? And it's just like, this does not feel fulfilling. And it can be really simple. So our brain thrives on familiarity, habit, and it also thrives on novelty. It helps it start rewiring these new neurons and we want it to connect to something positive and exciting with our partners. If every new experience you're having that's exciting and novel is with a friend, it's a disservice to your relationship. So it can really juice it up. And again, these don't have to be huge things of novelty. We can really have a novel experience. I think this is interesting. Stan Tatkin, who's a relationship guru guy that I love, he talks about, we could actually get novelty just from staring into each other's eyes. If we just took a couple of minutes, because we're not showing up exactly the same in the way that we did yesterday. We've grown, we've evolved, we've had new thoughts. We're in whatever state we're in in the present moment. So really there's this beautiful sense of novelty and presence we can really use when we connect with someone eye to eye. It's eye to eye, soul to soul. So that can be a beautiful sense of novelty. We can also get it by doing different new activities, being willing to try new things. It can be that, let's listen to this audio book together. And so let's commit to an hour a week and then we can talk about it. We'll both listen to it, even if say you're a couple that doesn't live together. It's something you can both listen to and then you get on Zoom or you get together for a cup of coffee. And it's something that it's like, wow, new ideas. Again, like this new neural network just going like, wow, this is fun, this is new, this is enlivening. And you can of course do the big boom, booms. You can blow it up, you can go scuba diving together or go parasailing, whatever that is, go on vacations. And I think it's so important that novelty is truly accessible to us. One of the things I love to do, I have such a put on music and dance in the living room, dance in the kitchen kind of person. And that's one of the things that, when it's spontaneous and it's joy, it really helps infuse our relationships with just that. Joy, it's expansive, it's contagious. So I think that's one of the great things that can rev up your relationship. And of course you can totally bring that into the bedroom with different positions or with something very new. Like let's just go into the bedroom. I have a couple that right now I'm working with and I say, just go hold each other. That's novel. Just go hold each other under the covers. And again, for them it's gazing in each other's eyes. Like that should not be overlooked. I will tell you that my partner today whom I do live with, this is the first time I've ever had this with somebody but we had heard early on in our relationship about sacred couple breathing. And it has been so tremendous for us. We still, we use it at least once a week, at least because it's a total game changer. And that all we'll do for anyone who's interested in the sacred breathing is when I breathe out, he breathes in and when he breathes out, I breathe in. And what happens is you just automatically sync with each other, but at the same time you're just literally gazing in each other's eyes. What I will tell you always happens is my heart opens. I feel like this is the most amazing person. He's more beautiful in that moment than ever before. And just this well of love and connection and intimacy opens. We're both over the moon. Just for a few minutes of doing that. And you know, and you can do that with your best friend or your kid. I mean, that too, it literally, right? It heightens the relationship. Yes, I love that because I think in that chapter of rubbing up your relationships, we talk about that. It's yes, it's your romantic relationships and you can rev up any relationship really bringing it to that deeper heart resonance. So I have to ask you, put you on the spot since I know your boyfriend. We don't have to mention him by name, but I happened to know him before I even met you, which is so awesome. What have you guys done recently to bring it up a notch to spice things up to become deeper and more significant with one another? Yeah, such a great question. One of the things that we do, we're both very spontaneous and we both love nature. So we do a lot of plugging into nature whatever we're together. We meditate together. We dance in the kitchen together. We definitely dance in the living room together. And we're constantly sharing ideas. We're both, as you know, he's just getting ready to move here, which will be wonderful instead of a couple of times a month. But when we were together, when we are together, it's four or five days. And over the holidays, it was a couple of weeks. It was awesome. And so we take time to have those connected heart to heart talks, like we call it couch time. So nothing interrupts us. And we're both just phones off, distractions off where we're looking at one another and just holding hands or touching and just really being in sync. And the most beautiful conversations are the most huge belly laughs come from that. And so, again, it's not like it's huge things. We both do, though, we're always introducing like, oh my gosh, I just read this article or I just bought this book or I just heard this song, babe, you've got to hear this song. And those are the things that continually just keep our relationship so lit up. And it's on such a different level. I think it's just been so cool too because one of the things I have to say too that I think keeps it amazing is that when one of us feels like I feel off today or I feel, God, I'm feeling insecure about this thing. We just speak it, we just speak it. And so it's no longer something that has to be held or that something between us or an energy that shows up and someone's trying to read it and it feels funky, it's just like, no, it's there. And we really have given each other permission to show up in this relationship as our authentic selves. And actually, I was just talking to him before this interview and he said, you know, I was just, he was just talking to one of his friends and said, I told them one of the coolest things about our relationship is that you just love me. He wasn't feeling good this morning. And he said, you know, I just think it's so great because when I tell you, I don't feel good and I had to sleep in, you're like, yay, just the same that you would be as if I told you, hey, I just got a new coaching client and I'd be like, yay. And he does the same for me, you know, just phenomenally supportive and those, because we know this, right? Relationships love brings up anything unlike itself for the purpose of being healed. So there's times that our best self isn't gonna show up in relationship and our wounded self gets activated. So when we can provide that loving container for one another that says, hey, you know what? You don't have to show up full makeup, always on. You get to show up as you and I'm still gonna hold that and love you and hold you. And that I think, you know, Debbie, what really helps give us permission to heal. I agree, wow, that's so nice to hear. Yeah, to have that much, I think it's sacred. That's what comes up when I hear you say that it's so sacred to feel fully seen and heard that all the imperfections are perfect and that wherever we be is just enough. I think it's such grace to give to another human being and I'm really inspired you guys have that together. That's beautiful. Thank you. Thank you. Let the journey unfold. So tell me, Stephanie, we talked in the beginning about the spark which feels like life cheer something and you have this book, but you also have this film you created of the same name. Why did you even wanna write them? Why did you wanna film them? What caused you to wanna bring these people and all these elements together? What kind of service is it or what kind of message compelled you to wanna put this out? I think in my own life experience and then witnessing so much healing of my clients over the last, gosh, 32 years, I hate to say that, but I've been in this field so long and what I became so aware of, the more that I have healed throughout my life and have witnessed healing is the more that we heal the clearer conduits we become to bring that healing through us into the world. And so as I have ignited my own sparks as I have continued to unearth that part of me, it's like I see that and I witness that as I can help other people ignite that within them. And I do have this deep health belief that we can become like the pebble in the pond and those concentric rings of healing just radiate out from us. And that that is really what can help transform the world. And so my film is actually when sparks ignite and it's about that, I feel so blessed. The download for that was actually during a meditation. I just got the download that I know some of the most serving hearts and brilliant minds on the planet that I have been graced to meet through my radio show and podcast and some of them had become very, very dear friends and mentors and I thought, oh my gosh, what if I got all of them together, had them first talk about, they weren't born enlightened. These are New York Times bestselling authors, international presenters and huge healers and light workers in the world. And I thought, what if instead of having them just come and do a summit where they present, get off the stage, nobody interacts, that I would have them come and have their own experience first so that they would come two days ahead of time. I would interview them individually and talk to them about what were the challenges? What was the heartache? What did you have to go through for you to then unearth your own sparks for your own sparks to ignite? Then we had this, we had two days of amazing meditating together, making music together, dancing together, eating our meals together and just had this beautiful alchemy that was all filmed. I had this beautiful award-winning film crew that came in and did all the documentary and we met for one day around a round table, which was Jacob Lieberman's idea and we called it Lights of the Round Table. And so we were discussing, the 12 of us discussing these deeper issues of life. And ironically, it was a year ago in October that we filmed it and yet it is absolutely what's happening on the planet today and like the message that needs to come through. And then through all that beautiful alchemy and connection that was created, we then went on the third day and did a live summit and watched those sparks that everyone was feeling and that connection spread to this live audience. And the coolest thing is the presenters, number one, I need to say this because people came and didn't charge. These are people that get paid tens of thousands of dollars to present and they just felt that that heart resonance like this is what we wanna do. They would always say, we're sparked as well. We still call ourselves the sparks and we all communicate, we're all emailing and very much in connection. And so what was beautiful is everyone stayed in the audience, all the presenters, there were no egos. There was a sense of, we're all the same hype. So they held space in the audience and for each other. So it was such a beautiful event. And so to capture that on film and see how you see there's actually a client of mine, an ex-client of mine, and you kind of go through this journey, she's this underlying tapestry thread throughout the film who went from a 40 year abusive relationship where she could hardly hold her head up when she first met with me and would cry through the entire session to where you see her at the end of the film empowered, happy and contributing back. She has her own now blog where she's helping other women find their voice and leave abusive relationships. So you start seeing how we can really do this and how much, how essential it is that our own healing matters. Where can people see the film? Well, right now we're getting ready to go into negotiations. We just finished edits. We were in post-production for a little over a year. And so actually this weekend we're finishing the trailer and going into negotiations with Netflix, Amazon and Gaia. Those are hopefully our three big... Perfect, right. That all makes sense. So that's that would resonate. Yes. So excited for you. So yeah, this is... So I'm curious then to me, Stephanie every year of my life seems to have a theme, right? There's something that gets woven in and out, good, bad and different, but that's something I need to learn or focus on or give up or step into. What is your theme for this year or what is the most important thing that you've learned thus far this year? So the biggest thing in my life has continued to be. I have to tell you, this was a huge lesson about three and a half years ago. And I thought, well, I'm very connected. I'm living really connected to the divine. And yet there were little things in my life that I never wanted to surrender. I remember like a decade ago, this relationship not healthy for me, not good. And saying like, I could get these very direct messages like, no, no, no, no, no, no. I would hear this audible no. And I'd be like, oh, come on, university. Just a little bit longer. He's really cute, and knowing, and of course it was, it was not a good relationship. And so negative things happened. What I have learned is what full and complete surrender, and some people call it higher power or the universe, whatever, but to me, it's to the divine. And I had struggled with my daughter's addiction for 10 years. And three and a half years ago, I put her in treatment for three months. I took care of her three and four year olds, working a full day, all of a sudden having two little boys who were coming out of chaos and needed lots of love and nurturing and full attention. And there was a night where I literally felt like I just hit my knees. I literally, emotionally, physically, I was so worn out and trying to soothe them and deal with everything that was going on, my own anger and angst and such overwhelm from what all was happening. And all of a sudden it just came through like, I haven't been surrendering. I've been trying to still push my will, what I think should be done, what, you know, trying to have some kind of control.  And what started happening, my life started really exploding and taking off from there. That's when next thing I knew, I'm sitting in my office one day with my door cracked open, I hear this knock on the door and it's my now producer of my show who, and you have to hear the first part. Actually, before I hear the knock, I'm sitting there and I was thinking to myself, God, how do I get back into radio? I had been a guest on some radio shows and it had been, you know, almost a year. And I was like, boy, I just loved doing that. How do I do that? Literally three minutes later, I get this knock on the door and my producer comes in, my now producer, I didn't know then he was just a friend and he says, have you ever thought of doing your own radio show? And I was like, oh my gosh. And then he said I about came out of my chair. I was just like, oh my God, you know, I just was thinking this. And so that happened. And then I wrote my book, again, just absolutely inspired. And I knew the name of the show in the middle of the night, I woke up because we were trying to figure out the name for the show. And again, it was just like, of course it's a spark igniting your best life. So that's what you want to do. We all want to just unearth those sparks within us. We want to shine, we want to glow, we want to radiate and we want to resonate with these other beautiful lights that are here on this planet. And so it's been such an amazing journey and the connections and the amazing people. I could not imagine being as blessed as I am. And so I always know, Debbie, when I get to that point where I need to surrender again because I'll feel ego or I'll feel that sense of like, oh, I really want this to happen or I'm not the most patient person in the world. I've really been learning that through the pandemic. And so it's like, okay, I just again, go back to like with the film. I wanted the film to be done two months ago. And I have to believe in divine timing. I don't get to decide when it's finally there. You know, it's got its own timing. It's got its own rhythm. It's almost like it has its own heartbeat.  So every time I give it up, some, I feel like I literally, this last year, kept a miracle journal because so many amazing things were happening in my life. That's very apropos. You know, as a book writing coach, I teach my students to get out of the way because a book isn't, yes, we are writing it. We're the conduit. The truth is the book, once we receive the inspiration to write it, it already is an entity being born through us. Like it literally has its own consciousness. And it makes it so much more simple to write. People get very into their heads with the process. And I'll often tell them, especially when they get quite stuck, go into meditation, have a conversation with your book. What is your book want? Your book is its own being. And they're like, what? And to a person, a man and a woman, they'll come back and go, oh my God, that was so powerful. I know the title, I know the chapters, I know what it wants to look like, sound like, how it's to be written. So there's a lot to be said about what you're talking about. And even the idea of surrender, because essentially, you know, surrender is a loving of one's life exactly as it is right now. And I get that it's not always easy. I'm also very impatient. And so I understand that, especially when you're a big creator, to slow down and like this is just as it is for today and it is beautiful and perfect and moving at the pace it needs to, right? Yeah, yes, that's just it. And then the miracles that follow when we actually do that. Yes. Yeah, yeah.  That is so beautiful. When you said here, you know, take it, I can't, you can. I'm getting out of the way. And then also that there's all this capacity and space for creation to come and play with you. Yeah, yeah. And I love what you said about the way that you coach people in writing their books. And I really felt like that was also what has happened with me in writing the book. Again, like I'd never written a book. I got out of my own way and just let it come through. And the same thing for the film, and I have to give credit to my co-producer, Doug Beachwood, who is this award-winning film producer and film director. He's also the director of the film. He totally allowed me to just be in process and just keep downloading the film. I literally got this black box that had 48 hours of film. I had no idea what I was doing, never having created a film, and just would get these downloads as I was watching the film and just extracting, okay, I had our transcript and I would just go, this dialogue works, this scene works, this scene works. And when we put it all together, it was phenomenal. It's been a blessing and a miracle. And I cannot even, and again, my boyfriend will say to me like, oh my God, that's just amazing. Or someone will say something about, I think it's so cool that you did that. And yet it's so interesting for me because I don't feel like I, Stephanie James did that. I feel so blessed that I got to be the conduit for that coming through. And that is just my hope that it will truly give people inspiration. It'll give people hope. It'll inspire people to do their own healing and allow the healing that's already been done to allow the radiant spark that is them to keep shining through in this world. And that's what I just believe with all my heart. We can be the healing that we wanna see in the world. What is your daily practice?  Well, how do you steer your ship every day? So I experienced very interesting. I don't have to sit up in the morning to meditate. Most of the times I'm just woken up. It might be four in the morning, it might be six in the morning. And I'll literally lie in bed with one hand on my heart and usually one hand on my gut and I can just feel into that connection with divine. And I usually go into just a deep state of gratitude. Sometimes I really just am sending people love. But every day begins with meditation. I try to do exercise every day. I'd love to say it's every day. It's not every day depending on how busy I am. It's always with gratitude though. So it's a gratitude journal. It's literally feeling into that resonant place in my heart so that I'm just with that vibration and sending out that vibration and yeah. This is Dare to Dream. So what are you next, Dare to Dream, Stephanie? What are your future dreams and goals? Thank you, Dosh. Yeah, I have to tell you something so interesting because I remember this is about four months ago. I had the realization of like, wow, I haven't thought of what's after the film. Like the film was so huge and encompassing my life. You know, I have a full private practice, coaching clients, all this stuff. And yet I was like editing the film six to seven hours a week on my little bitty bit of time I had off. So it was so much that that was my whole world. And when the realization finally came to me like, wow, I need to start opening up and expanding and feeling into what's next. I got really lit up about doing some groups. I just started on Ignite in Your Best Life group that meets the second and fourth Wednesdays of each month. And it's, people can come in and out at any time and it follows the book. So people are gonna get the techniques and the tools and the ways that they can really do the things we talked about in the beginning. You know, how do you cultivate joy? Cause it's really actually something we can grow. And how do you learn how to befriend yourself? And it really does have to do with how do we show up for ourselves? How do we make ourselves a priority in our own lives? How do we do that healing work first so then we can actually help others do theirs? So opening that up, the other piece that's just been really exciting is having a partner that we are really talking about doing lots of projects together. So doing speaking projects, pairing up with a lot of my people in my soul tribe who are gonna be doing retreats together. Hopefully when things open up again, please. Yeah, this next summer, we're looking at doing retreats. And I have been co-authoring a book with Mesa Hopkins and I'm looking at beginning. I'm already getting the little downloads and writing little notes around my next book which is gonna be the Sparks of Serendipity and how that plays in our life. So all of that is kind of what's being dreamt forward right now. Wow, Small World again. You know, gosh, a long time ago when I wrote Dare to Dream, I don't know, was that eight, nine years ago? My first book, Dare to Dream, Mesa Hopkins was one of the first people who interviewed me for my big bestseller book launch. I love it. And in fact, I became a bestseller while we were on the radio together. So I've really delicious memories of her and I love this full circle between us. Yes, I love it as well. Yes, yes. And so people who would like to connect deeper with you find out about your book, your film, your new groups, all this wonderful things that you're offering. It's StephanieJames.world. Is that the best place? That's the best place. If they want to go just directly to, I also started a meditation group for people that want to come once a week, Thursday mornings. It's eight AM Mountain Standard Time. And so it's seven o'clock West Coast time. And I would love anyone that wants to come for those groups, the Spark of the Nightingale, your best life group and the Spark Meditation Group, it's StephanieTheSpark.as.me. Thank you so much for coming on the show and being with us today and for lighting our spark and really getting us going at a really important time. Thank you, Debbie. Such a joy to be on the show with you. Thank you so much. For me as well. And I end today's show with this quote from Princess Diana, carry out a random act of kindness with no expectation of reward, safe in the knowledge that one day, someone might do the same for you. Subscribe to this number one transformation conversation Dare to Dream and leave us a review. And thank you for all the wonderful things you write. I read everything. And I do try to get back to all of you. My guest next week is Scarlett Raven. She's coming back on Dare to Dream for a second time. Our first interview revealed that Scarlett is brilliant, powerful, very, very unique and not afraid to say anything. So she's coming back to offer even more wisdom and healing tips. Scarlett is an illuminator who creates award-winning medicinal products from herbs, CBD cannabis and psilocybin and runs the very successful White Fox Medicinals. You can find us on YouTube at youtube.com slash Debbie Daschinger. And remember, don't just Dare to Dream, Dare to turn all your dreams into your reality.


Hello, this is Hans van de Kwas, Senior Lecturer at IHG Delft Institute for Water Education. In this video I'm going to show how to delineate a catchment using PCRuster and GDAL commands, so completely command line-based. We are using the same dataset as used in the book QGIS for hydrological applications, which can be ordered at LocatePress. In a previous video I've shown how to set up the environment for using PCRuster and Python and GDAL. We are going to use that environment in this demonstration. The first step is to activate the PCRuster environment. In a previous video I've showed how to create that environment. We use COMDA, activate PCRuster. Now we'll go to the folder where we have the files, and the first thing that we need to do is make a mosaic of the TIFF files that we see here. In the folder we see a shapefile with a bounding box that helps us to delineate a little bit the area where the catchment is. We see four TIFF files that have been previously downloaded from the Earth Explorer website. We are going to use a GDAL function for that. Go to GDAL.org, you can find your programs, and there is GDAL build VRT. With GDAL build VRT we can make a virtual dataset, in this case that is good enough, because we're going to later crop it and we project it so we don't need now a big file with all the tiles. I'm going to use GDAL build VRT, and it can work with a list of files that we can create, and then it will mosaic all the files in the list. To create a list we can use dir slash b, so it only lists the file names, and I only want the TIFF files, and I can write it to list dot text. So it created this list of the four TIFF files. Now I can use GDAL build VRT, and then we use this input file list, minus input file list, and then it is list dot text, and the output is dm mosaic dot VRT, and there it is. Here we see that it's added. The next step is to reproject the file, and we can use GDAL warp for that. With GDAL warp we can not only reproject, we can also cut it to a cut line, which in our case is the bounding box shape file, and we can crop it to that cut line, which means that we don't get no data values outside of the shape file, the boundary polygon, and we can of course define the projection of the output, in our case UTM zone 32 North, and the resampling method, which is default nearest neighbor, and we can control the output resolution. So the function will be GDAL warp to the projection 32632, with the resolution of 30 by 30 meters, which is the node data of the destination minus 9999 cut line, which is our shape file, and we crop it to the cut line, and there it is. So we now see that we have dm dot tiff, which is a cropped tiff file. And now we want it in PC raster format, so we use GDAL translate. GDAL translate is to translate from one raster format to another, and it has also different options here that you can read. And we are going to use PC raster. So if we go to the raster drivers and to PC raster, then we see here that we have to use this value scale, because PC raster is strict on the value scale. In our case it's dm, so it will be value scale scalar, and the scalar can be float 32 or float 64. Now if you interpret all this, then you will come to this command, output format, PC raster, output type float 32 would be sufficient for us. You can also use float 64. And then we have this extra creation options, mo, where we can type this vs scalar. So the output will be a scalar, and the input is dm dot tiff, and the output is dm dot map. Now it's done, and we can visualize it with the PC raster agilas software, and that is our dm in PC raster format. So with that we can proceed with PC raster python in spider. So in spider I'm going to use the console, because I'm not really making a model, I just want to delineate the catchment. So I'm going to import PC raster from PC raster import. And then the functions, another library is imported, so we can use the map algebra functions. And the first thing I need to do is read the dm. Call it dm equals readmap. And I have to set here the correct folder. That's where we work. So that's our working folder, readmap, and then I put there in quotes dm dot map. And that should work. So now dm variable is equivalent to the file. And the next thing that we are going to do with the dm is to fill it, because there are these artificial depressions. And to fill it we can use the lddcreate function. If you go to PC raster documentation under support, then you can find here all the operations. And to create a flow direction map we use lddcreate. And that will create a flow direction map based on all these different arguments. So here's a description how it works and these different arguments control all these different overflow levels. So we will just put this to a very high value, to make sure that it mostly fills all the depressions. So we are going to make a flow direction map that equals lddcreate. That's the function. And the first argument is the dm. And then we have 1, 2, 3, 4 other arguments, which we just make very large, to make sure that it fills up completely. That will take a bit in the calculation. And we can write it to the disk and then visualize it. So we can use report, flow direction, flow direction. Then I go back to the prompt and do agila, flow direction map. There it is. We need to zoom in to see the different lines. There it is. So PC raster visualizes the flow direction with these lines. And we can see here the direction for each pixel in compass direction. The next step is to define the rivers. So we can calculate the straller orders. We use the stream order function. The function uses the flow direction map as an input. So we can type straller equals stream order and then flow direction as an argument. And then we can write it to the disk using report, report straller. And we call it straller.map. So using the prompt we can now visualize the straller orders using agila. And here we see an ordinal map for the different numbers, the different straller orders. And what we can do is now choose a straller order. So I can say straller 8 for example equals if then straller larger than 8 then boolean 1 and I report it. So these are the streams with straller 8 or larger. To delineate the stream we need to identify the coordinate on the stream. So I'm just going to take it somewhere here and this will give us the coordinates written here. So I'm going to make a file. So this file will contain the two coordinates separate with a space and a unique identifier. So this is the x-coordinate. Then we do a space and the y-coordinate and the unique number. And then we close the file with Ctrl Z and then our location.text file is saved. PCRuster comes with a tool called toMap where we can convert these files into a PCRuster map.  And it's also nominal data. So we can also give minus n to confirm that the output should be nominal. And there it is. So we can use the outlet. We read it from the file that we just created. Outlet.map. And then we can use that to delineate our catchment. There's the catchment function in PCRuster and it used the flow direction as an argument and then points, in this case one point of our outlet. So we can create it. WorkCatchment equals a catchment function and the arguments are then the flow direction and outlet and we report it to the disk so we can visualize it. Let's call it workCatchment.map and let's go to the prompt to visualize it. And there it is. So in this way we can use command line combining GDAL, PCRuster, Python to delineate catchment. And the hole in the middle by the way is caused by a very deep mine and the water in this case will flow around the mine and will not get stuck in the mine. Of course you can do this also with desktop software. You can use QGIS for example to delineate but with command line we will have more control that is happening and this output can then be further used in special dynamic modeling.


Hello and welcome to the session. Let us discuss the following problem today. Find the zeros of the following quadratic polynomial and verify the relationship between the zeros and the coefficients. We have the polynomial f of s is equal to 4s square minus 4s plus 1. Now let us understand the key idea for the question. A real number alpha is a zero of a polynomial f of x if f of alpha is equal to 0 and if alpha and beta are the coefficients of a quadratic polynomial f of x is equal to a square plus bx plus c then alpha plus beta is equal to minus b by a which is equal to minus coefficient of x by coefficient of x square and alpha beta is equal to c by a which is equal to constant term by coefficient of x square. Now let us write the solution for the question. We have f of s is equal to 4s square minus 4s plus 1. Now we split the middle term we get 4s square minus 2s minus 2s plus 1. Now we take the common factors from this two we take 2s common so we get 2s minus 1 and from this two we take minus 1 common so we get 2s minus 1.  Now zeros of f of s are given if f of s is equal to 0. So therefore 2s minus 1 into 2s minus 1 is equal to 0 which implies 2s minus 1 is equal to 0 or 2s minus 1 is equal to 0 which implies s is equal to half or s is equal to half thus zeros of f of s are alpha is equal to half and beta is equal to half. Now the second part of our question that is to verify the relationship between coefficients and the zeros. Sum of zeros is equal to alpha plus beta which is equal to half plus half which is equal to 1 that is minus coefficient of x divided by coefficient of x square which is equal to minus of minus 4 by 4 which is equal to 1 by 1. Similarly product of zeros which is equal to alpha beta which is equal to half into half which is equal to 1 by 4 that is constant term divided by coefficient of x square which is equal to 1 by 4 hence verified. Hope you understood the problem. Bye and have a nice day.


Hi everyone, thank you for coming Yeah, so I'm happy to introduce Suraj is going to talk about dissecting the inline keyword in Kotlin. So please welcome you. Thank you. Hi So I'm Suraj I'm gonna be talking about dissecting the inline keyword in Kotlin Before I begin a bit about myself. So I I'm an Android developer I write I've contributed to Firefox the Mongo stitch SDK and the real machine on client as well I Was writing job before then I switched to Kotlin and now I'm actually exploring Golang a bit. I Did Android and now I've moved to back in mostly I am pretty active on Twitter and you can email me questions about slides Etc. Etc. If you have I Work at a company called Qtalk. It's mostly it's a company about synchronous Communication making it fun like you can do play games and browse the web together all over a call It is 100% Kotlin client and back in code and we also the default dialogue on Android So it's pretty heavy engineering that goes on to and all of it is in Kotlin There are some links to it Cool so inline keyword When we are actually writing a lambda or something in Kotlin the IDE mostly prompts us that Try using an inline keyword for it. But why do we actually use it? Like why do we need it? Why can't the compiler actually do it like automatically for us? So basically the meaning of inline actually goes for like placing things or arranging them in a line or doing things just like Like in a line But if it's that simple then why why does Kotlin need an actual a keyword for it? Like why can't the compiler automatically do it for you? There are multiple Aspects over here if you can drill down mostly into the version of Java that actually plays underlining Then we can actually dig deeper into it. So Java version compatibility Let's start with lambdas Lambdas as we all know higher order functions or anonymous functions. They were introduced in Java from Java 8 They are mostly implemented in Java using functional interfaces and they leverage on a specific bytecode instruction That was that was introduced in Java 7 called as invoke dynamic. It's a it's a pretty special bytecode instruction, which does a lot of things around it but after like since it was introduced in Java 7 like it and lambdas are pretty important in Constructing programming We lose a lot of stuff if we just Like try targeting it to Java 8 so we it's better like in order to have it working for like Java version 6 Etc. We need to have tools like retro lambda etc. Etc. Now the question is if we have tools like retro lambda and all of these components around it Why actually take up the effort like why does it how does it even affect Kotlin? So the ideology of around Kotlin is that it tries to do more things natively rather than using more number of libraries or tools around it and Why should we care since it's Java 6 and we have Java 14 coming and a lot of things that have changed our world Like why why even care about Java 6? The problem over here is that it's Android So Android and Java 6 are like Android is pretty much holding back the entire Java ecosystem all together because Java 8 and Android 7.1 which is Our Android 7 actually was the first version of Android which started into which introduced Java 8 So yeah, we should care because of Java 6 and Android mostly So that is the whole need of the and of the inline keyword is because you can't actually have it working Below Java 7 below Java 8 7 and 8 actually Yeah So let's start with the why how so how does actually Kotlin achieve it since we if we know that Kotlin compiles to Java bytecode and if the bytecode instruction itself is not present then how would how would Kotlin actually achieve it? So before we move there like Let's once again dive into lambdas and closures and a few concepts around them So Kotlin lambdas are actually different than the lambdas which you have in Java Kotlin lambdas are Mostly implemented using function types So you actually have a class called functions dot kt which has function like which has interfaces from function 0 to function 32 Based on the number of parameters arguments you have in a function like function 0 having 0 arguments and function 32 having 32 arguments There's actually an interesting keep for Expanding it to function 255 which is a maximum number of arguments you can have in Java And the reason why Java Java does it Kotlin does it this way is because In Kotlin functions are first-class citizens like Like null pointer exception is a first-class null null null ability is a first-class citizen in Kotlin similarly functions are also first-class citizen in Kotlin meaning that You you can actually assign a video again assign a function to a variable invoke a functions object later on Pass a function to a function etc. Etc. And that's the reason why you do it this way Closures closures on the other hand, it's more of a programming concept. It's like It's more related to a lambda anything which is outside the scope of a lambda and if it's consumed inside captured inside a lambda Then you call it a closure That's just basic concepts which you're going to use further down the slide So it's just good to have it clear all of this if you just see it programmatically once I have the code is legible So if you if you consider this example, we're going to use this example throughout So we have a function called as test lambdas which has a lambda my lambda and we have this This clue. Sorry. I'm so sorry and We have this my big loop, which is actually the Implementation of that lambda which consumes a lambda and you have this value value enclosure Which actually does nothing but just prints the value inside the lambda which is test lambda and the lambda value So this is lambdas and closures We'll move on to the next concept which is call sites So call sites again are mostly a concept which is related to lambdas and it's basically where you actually call a call site So mostly when we actually debugging on the Java application on to Java application on to Kotlin applications using ID like Andro studio or IntelliJ. We actually find an option for lambda function, which is if you press like jump to jump to source We actually find two options, which is Let's check the source or check the call site So call site is basically where you actually call the function There's a bug in this. There's a there's a mistake in this code is that there's no lambdas actually but still yeah So if if print me was a lambda and it was being consumed then I am group would be the calling site for that lambda Non-inland lambdas before we actually See how lambdas are and what do they do it would be a good point of reference to actually know What how non-inland lambdas would look like because there is a lot of unoptimization Like we'll actually get to see the difference between on inland lambdas and inline lambdas so We'll consider the same example as before we have a test lambda which is our lambda function We have our my big loop which is consuming the lambda and it's gonna iterate Like we have an int range which is 0 to 50 both inclusive and it's gonna run a loop and it's gonna call the lambda for the Number of times the loop is gonna run So this is the and the logical logic part of it, which is the test lambda's function Which is a lambda being called and printing a particular variable This is essentially the logical part of it now Let's let's take a step ahead and I try to try decompiling this code source code and Assembling it into Java again So if we do that we see something like this There's a huge block of code which is a lot of compiler injected code which we actually don't care about But the but the interesting concept over here is that the test lambdas are function was actually compiled into a class Which actually implements a function one type interface and we know function one because it has one argument So if hence is function one if it adds zero arguments, it would be function zero and it extends a lambda So your method having a lambda actually is compiled into a class now class extending lambda and implementing the function one interface and The logic for that particular lambda inside the invoke which is just printing a particular variable And if you see the call site, this is where the actual problem begins The call site looks something like this again, it's a lot of compiler injected code, which we do not care for much If you look at the lambda Like the lambda method being invoked specifically you see the test lambda function called along with the lambda which is actually and a new instance of a particular class we just saw The problem is here with the new instance is that it will create a new instance for every time the iteration or for every time the the iteration will run like and It has been converted into an interval because of in-range interest compiles to and iterable in Java So that is a problem. So you'll actually have 50 instances or 51 inches technically of The inline function that is going to happen. It's pretty bad And so this is the worst case scenario, but Kotlin compiler is a bit smart It also has a semi optimized scenario wherein if you don't have a closure It optimizes some things because if you don't have a closure It does not have to create a stack for you for every method in order to capture the variable that you have for that So for non inline for non inline lambdas without closure You don't actually have to care about much because there'll just be a single ten instance of that particular lambda If we take the similar example as we've seen before except for the closure you can see that there's no closure They just print lm. You're just consuming the value of the lambda within the lambda And if you try decompiling the source code you see that and you just print the call side because the lambda won't actually change It's only the culture call side that actually changes and You can see there is you don't have a new instance of it running every time You just have a single ten instance being created. It's still a bad thing because functions are technically Native or technically more of like a very strong construct inside Java. So like it would not be good if we have An instance of it every time even though even though it's a single ten instance because if you have n number of lambdas You'll actually have n number of instances, which you wouldn't have otherwise Also, it's not the way how Java does Java uses the invoke dynamic keyboard which bytecode which Kotlin does not No maintain compatibility. So this is how this is the worst case second This is semi-optimized scenario where you don't have the new instance created every time now. How about inline lambdas? How how do they look when you decompile them? Let's take a similar example from before where you have a test lambda and you lambda and the And the loop which is consuming it the same number of iterations all all we do now is just modified by adding one particular keyboard which is inline and Just again just put it inside the decompiler and just throw out Let's try printing the Java code out of it and if we see the code this time is different You don't have this is this is all that you get from it. You have no classes. You have no Instances you have no implementation of functional interfaces. No class which extends a lambda nothing This is the only thing which you get you have two static functions the test lambda and the my big loop Which you actually had in sour as well now here is the fun part which begins is that if you You see inside the my big loop function, you see the value in closures actually accepting the so this was a worst case scenario It is actually having the closure as well inside the lambda It has a loop as well, but it has no instances nothing. It's just like compiler copy paste is just everything is inline it has taken the logical block from your lambda taken it out and Printed into your call site This is the actual power of inline and it's magical in many ways because It not this infrastructure forms the basis of many things in Kotlin. It forms the basis for sequences Street, which is which are equivalent to streams in Java. It forms the basis for You have for each and all of these functions and you have in fact anything which leverages on the lambda architecture actually uses in line Internally you have code routines also because of their entire syntax you have keywords like apply etc. Etc. So It is it Just doesn't stop there. You have other aspects as well. For example one of the Like the real power over here is type reification So if we if we were to define how the reified keyboard or the entire reification mechanism It's actually it means making something concrete or having something survive Through a lot of stages. So and the context for it definitely is generics So if you if you take Java for example, how many of you over here know Java type erasure type erasure concepts in Java Okay, so theoretically what it happened. What happens is that? Anything inside angle bracket once it's passed into the compiler the you don't have the instance of it at runtime It's just Java like the runtime does not know what type of instance it is So consider this example over here You have a list of string which is actually an arrow list which is an arrow which is an instance of an arrow list And if you try printing the instance of that arrow list You like if you try running this code you actually get an error Saying it's an illegal generic type for instance off because the compiler because the runtime does not actually know and the compiler throws you a warning for that because a runtime does not know what what type of list what type of instance it is because Even though list of even the string is a type of is an instance of object list of string is not an instance of list of object But if you try changing list of object to list of string or to just list it works Because you it's still a list. You don't know what list it is, but it's still a list So this is essentially the type erasure concept in Java. Now. How does it apply at? For Kotlin and can inline help over you So let's let's take a more Kotlin example over here and see how things work So consider this example you have you have a generic function with Corrifi test and you are printing the type of the class and you're matching if it's a string or not in Very crude way How many of you think this code would work actually? like any ideas Like this would work it doesn't because it again throws this to same error because Java and Kotlin both have the same problem It says that you can't actually it's not a concrete type. It's not a very fight type Use a class instance. So we've seen many APIs and we've seen many Libraries use class with a capital C just so that they can actually do these type of operations on them now What if we do something like this we add two parameters to it, which is inline and very fight And that's it. It just works and If you see the internals for them, how do they work? Like this is our actual function in line very fight along with all the parameters in them And if you decompile them it decompile that particular source code and we see this particular Function the test function at with at the where the reified test function is actually called Sorry You see that it's actually comparing string and string. It's not doing anything It has actually taken everything from the logical piece of code and I just it's just checking string actually string to string So it's going to return true for you over there Which you which is actual desired result and you still have the lambda function available Which just checks for an object and a string and it's going to return you false because it's just f to maintain Compatibility and to maintain the presence of the function so you don't get method not found exceptions so This is how reified works and The original logic block always remains the same, which is what you are checking over you It just doesn't stop there you are the concept of in line over your which is applied to functions actually is extended to classes as well Which again essentially means that you can in line Like you can make things work during the compile time make make the compiler do some heavy lifting for you so let's consider like The in-depth annotation any Android developers around So you have you like Android developers might have seen the in-depth annotation in the Android source code So actually what it does is that? It's a type of a it's a way to Restrict your type which is only present in the compile stage because there's an there's an annotation processor Which just removes it post compile and you just have it During the working stage just to restrict your types So the idea over here is very is An amazing idea because you just want something at the compile stage to restrict types But and then they're essentially primitives half of the things that we do around these things are primitives so That's how in line classes were born actually so you have compiled them restrictions and objects for example This is a very bad example, but Yeah So you can actually take this as an example and we can have let's say an in-line class, which is actually a boolean boolean parameter which says that can a candidate have a seat or not and That's it It's essentially used to restrict types It has a couple of advantages and disadvantages. Let's discuss both of them as we go So the advantage is that it opens up an area of possibilities again to have things which Java could never have Like for example, you have unsigned integers unsigned long unsigned bite unsigned All the numerical parameters over here in Kotlin which I could not could never have what it does over here Is that it essentially just takes it? Does some compiler tricks over you on it and essentially just prints out an integer variable itself because it's still an end Or it's still a long for an unsigned log It makes it opens up a possibility and also It's true that Inline classes make great database IDs because you have let's say cat and You have a you haven't you have a database of zoos or animals or something like that Every database ID itself is a long but you have different IDs for different things So you in order to Since a long itself, but you want to restrict the type of long you can actually use inline classes to register the type of long There's actually a very good block push on them on this saying that inline classes make great database IDs It reduces the the need to create wrappers around primitives You can always create custom objects like I can create a customer instead of using the in def annotation I can actually create a custom custom object itself and have an integer inside it but having wrapper classes around primitives are not the best way because you are actually Creating more instances. It's not it's not a good memory practice to do the same thing So it reduces the need to have wrappers around primitives These are one of these are some of the great advantages of inline classes, but there are some disadvantages as well The biggest disadvantage is that it has mangling. Why does it have mangling is because Consider this inline class, which is the unsend integer class. It's actually taken from the Kotlin documentation online You take this function which has which is a compute function which takes an integer and you take this function Which is a compute function which takes an unsend integer both of them when when they'll be compiled they'll be they'll be the same function which is void compute and Integer so now since you have conflict over here for the naming the compiler appends Kind of a hash code we have behind the functions which use Inline classes you can actually see them once you see the compile code for them I actually forgot to print it over here. This is my mistake The second disadvantage within line classes is that it still has an experimental status It is not mature yet for no reason why and it sounds very similar to type alias It's not actually type alias because type alias does not introduce a new type It just they both are used for type restrictions But type alias does not introduce a new type whereas inline classes introduce a new type So suppose you create new inline class for something. Let's say a database ID for cats Then that would actually be a type during compile stage post-compiler. It won't But during compilers it is so the actual advantage of inline classes kick in when you actually use primitives It's otherwise. It's just the same You have the same there are certain advanced concepts in inline as well One would be cross inline. They just control the degree of inline You like the inlining of the lambda that the compiler that you want the compiler to do Cross inline is actually pretty interesting because It restricts non-local returns by non-local returns. We mean you actually block Lambda from returning the parent function and the one which is not cross inline does not block the same Let's let's look at this example. So over here the cross inline Keyword is present on the non-local return lambda, which is actually lambda function and you have a normal lambda as well And if we and this is how the call site might look like So if you look at it carefully The non-local lambda return has two returns One is that it returns the lambda itself this operation is permitted because you're still returning locally Which is you're still returning inside the scope of the lambda You're not actually trying to return outside the like outside the scope of the lambda Which is the function which is calling that particular lambda, but this would be illegal This is what cross inline actually restricts. It restricts non-local returns. That is it restricts returns from the same Returns from the lambda which are not like which is not like returns to the lambda which are its calling function in a way and Theoretically both of them would be possible inside the normal lambda function There's another point to it, which is no no inline no inline as the name suggests is Does not inline the code base for you does not inline the lambda for you If you ask what might be the reason to do this The reason is simple you since Kotlin in since in Kotlin functions are first-class citizens You might actually pass a lambda to a function to a system API or to some function Which is not under your control and if that function might not have been inline then there is no way for the compiler to actually inline it in simple words Like if you are passing a lambda to a function, which is not inline Then there's no way for the compiler to actually inline it. So that's what that's when you specify no inline That's when the compiler will not do the optimizations for you in terms of memory and CPU It will create more number of instances if you have a closure or it will create a static instance if you do not have a closure And if you if we consider an example over here This is our no inline lambda to This is a function which is not inline which actually takes a parameter as a lambda This would be illegal this function would be illegal if lambda to was not no inline Because again as we say as we discussed the compiler has no way for you to actually inline it. That's it There's there are a couple of links that are useful to this particular talk There's a blog written on this. It's still it's incomplete So there's a link to it. There's a good read on inline functions in general invoke dynamic It's a beautiful keyboard that was introduced in Java 7 it does a lot of heavy lifting and for Java as an ecosystem from Java 8 and Inline glasses which make great database IDs. It's a blog post by Jake Wharton who is people non-android people might not be knowing Jake Wharton and The app to my the link to the QTalk app the place where I work I have a couple of stickers as well in case you guys want to collect and the link to this presentation This presentation was actually called power of inline and the title just changed overnight. I Might be a bit fast. I'm sorry for this but yeah Are there any questions about? Lambdas Java inlining that I can I have ten minutes Any questions anything any questions guys? I'm done


So the term metaverse has been discussed in crypto circles for a while now and after Zuckerberg's announcement It has been brought to the public's attention Some are skeptical and others are confused about this concept So in this video, we're going to explore the term and try to define it and we'll start by distinguishing between a metaverse with a lowercase m and The metaverse with a capital M So a metaverse lowercase is an online virtual world that allows for multiple purposes Now these metaverses can be used to exhibit art post virtual events make new friends and so much more Now a metaverse is different from a video game in the sense that there is no set Objective or main conflict that needs to be resolved One doesn't complete a metaverse like one completes a game instead one continuously builds a virtual identity interact with others in an online environment a Metaverse can also become a spaceful business as virtual stores can be created and significant deals can't be broken These metaverses need security and transparency and have been made possible Thanks to blockchain technology Blockchains public ledger allows identities to be verified and the immutability of transactions lowers the risk of fraud A leading blockchain technology in the metaverse space is polygon Decentraland the sandbox mega crypto populace Avogaci block topia and many more of the biggest metaverses use polygon because it enjoys the benefits of ethereum Without the high transaction costs Now all these metaverses mentioned and more are part of something bigger which we can define as the metaverse with a capital M Let us now explore what the metaverse is So in a nutshell the metaverse is everything it is a set of all things Now we need the term metaverse because it is different from the more familiar term universe We are currently in a postmodern era where science has defined the universe as only that which is matter If we cannot sense or detect something then it doesn't exist in the universe Now this way of thinking secularized Western society and disenchanted our world view No longer do we consider the spiritual to be of much significance because it isn't made of matter Now this way of thinking is becoming a stumbling block for many when it comes to cryptocurrencies and the value of the virtual world It is given rise to the familiar argument against Bitcoin, but I can't touch it or there isn't anything tangible backing it To them cryptocurrencies cannot be sensed or detected and therefore don't exist in the universe NFTs are an even bigger conundrum to these people Because to them things have to have a physical form to have value To them it is outrageous to suggest that art has transcended the canvas and no longer depends on the materials to exist And if they cannot accept virtual tokens and virtual art then there is little hope for them to accept virtual land as a new asset class Now it would be easy to dismiss Bitcoin, NFTs and virtual land if they didn't have billions of dollars of monthly transactional volume But because of these large sums of money people cannot ignore it Capitalism makes them curious to learn more and it is the reason why the metaverse is such a hot topic of discussion Now the metaverse gives people a structure to understand and accept things that are not only physical It allows them to break free from a purely materialistic way of thinking The metaverse includes the physical world, the spiritual world, the psychological world, the virtual world and all other worlds The metaverse idea will bring many old naysayers of crypto into the ecosystem They'll start by looking at virtual art and exploring online environments Once immense in the virtual world they will start to see its value and by accepting the idea of the metaverse They'll be able to embrace things that are beyond physical matter So the metaverse is the philosophy that will bring the rest of the world to crypto