Okay, all right. Okay. Great. So good morning once again for all of you who joined in for class today. We will be having three lectures as of today for those who who also joined us for the e-learning. Welcome and glad to know that you are learning at your pace. I'm quite encouraged to see some of you following through weekly through these classes and attempting the questions and the checks that are there. So do keep learning and enjoy the course. And for us who are online right here with us, welcome. We have three classes today, going one to another. And we are going to be looking at a fresh new section in the course on marriage and family. And I am just for you to follow through. I am on page 125, 125. And we're going to be looking at challenges in marriage in this fresh section that we are starting on with. We're going to be looking at challenges in marriage today. We will focus partly on what are some of the common challenges that marriages face. The second thing we're going to be looking at is biblical instructions that we can look into to face these challenges. And third, biblical instructions for specific common challenges that happens in marriage. Okay. So that's how we're going to be focused. What are we going to be focusing on? And next week, we're going to be looking at briefly on how we can press forward by releasing the past or keeping away what has been of the past. So today, we're just looking at overcoming the challenges that one would have in marriage. So just to begin with, I think I'd like to open the class today to hear from you from maybe your own experience or from the experience of other members, maybe in your family, or in a church that you are, or among friends that you have, what are some of the common challenges that people face within marriages? What have you noticed as things that could come over people and their families may be quite unexpected, unplanned, but yet have been hardships that would have come in. So would you like to, this is just a quick time of sharing so that we could all connect and be involved as well. Yes, Samuel, please go ahead. Thank you, Pastor. Most of it, I think it's from my own personal journey. So my wife and I, we were in Bangalore just the two of us, even though my wife is from here, from Sikkim itself. We were in Bangalore for a long time, almost seven, eight years. Just the two of us, we didn't plan to have kids and it was almost like a bachelor kind of life. Even though we were married, we could skip making dinner at home, order pizzas, we would go out whenever, so all of that. And then we came back home and we had to live in, we had to start living with our parents and that was a huge change. That was a huge change and then now that we were parents and then the parents started making law decisions, not just parents and there were elders in the family like elder sister, elder brothers. So we would have to kind of go according to what the family decides and then we decided to have our first child. So there were like a lot of big, like we had career changes, family setup changes and then a new member in the family. It was a huge toll for me personally. All of those changes almost caused a rift in my marriage. So we had to be very rough for two years, at least the first two years my first child was born and all of that. And thankfully with God's grace, somehow we were, things slowly ironed down. I mean, we learned a lot of lessons through hard times, the wrong way, a lot of lessons through wrong way. But God's faithful and he did not let our family break and God gave me wisdom to kind of take back. I as the head of my family, I kind of had lost complete control as the head of the family over my wife and over my first born. But eventually I somehow came to my senses and I could take back control. I could repent and God forgave me and established me as a head of the family and then slowly gradually we could make changes. And we are in a very good place now. So it's been about seven years I've been back home once again. And the first two years we are rough but the last five years have to be more or less. We're still settling, some of the wounds are still healing, but every day is better than we think. It is not a freshman to a new child. So in summary, I think big changes, external family members, having a new kid, career changes, geographical location, all of those. And we're still, if all of them happen at the same time, that's a big term. Thank you, Samil. Thank you so much for sharing that. Yeah, I'm sure a lot of us may resound to what he said. You know, we do, there are a lot of things that common things which Samuel said has probably we've all gone through as well. Yes, Charles, you raised your hand as well. Charles, Charles. Okay, Kennedy, I think you've also raised your hand. All right, thank you so much, Pastor. This is not from a personal room. Can you hear me?  It's not constant. So you can hear a few words. No, I can't hear you at all. Okay, Charles, we're not able to hear you. Kennedy, would you like to take over? Maybe wait for Charles. Yes, Kennedy, go ahead. Like mine, I think I've posted something like the Divine Challenges. Okay. What kind of Divine Challenges, Kennedy, if you could elaborate, that would be great. It takes long, it seems it takes long for me to be at that side even yesterday. Sorry, Charles, we're not able to hear you. It would be great if you could put down the message on the chat, because we can hear just parts and pieces of what you're saying. Would you kindly put it on a chat, please? Can I proceed?  I would say like in the event of things like death. Death? Is that what you said, death? Death, yes. When a family member dies, the bad winner tends to weaken the family. That is inevitable, but it's something that can be defined as challenging. Absolutely. Thank you, thanks, Kennedy, I agree.  She passed away after her delivery. She delivered her baby and within 24 hours, she passed away. That was a root shock, very devastating for everyone. A young lady, 33-year-old, just walked into the hospital to deliver, but was passed away within that. Those can be very significant challenges. Does anybody else, I think someone else also raised their hand? Or anyone else who'd like to add in any other kind of challenges that may not have been discussed here as of yet? I'm sure we've all gone through something or the other and each of us can encourage each other or we can connect to each other financially. Yes, issues with finance can be significant challenges. Absolutely. Yes, thank you, Sam. Anybody else? When the family starts expanding, when it starts having babies, it starts having children and if it's not well managed, it can be oriented to the family. Start from planning, start from planning. Then it can be done studying the other, but spent. Kennedy mentioned when the family grows, when the family expands and it isn't managed very well. Wonderful. I think what we understand is that challenges don't escape anyone. As a believer, as an unbeliever, all of us being here on the face of the earth do expedience challenges. In fact, scripture tells us, Jesus tells us in John 16 23 that in this world you will have trials and you will have tribulations. It's not something that we can escape. It's something that is there that will be a common part of us. So he's the Lord himself told us and warned us that we will face challenges. But if you look in that first verse, the very first verse that's written on in that page in 125, I'm on page 125, it says, but be of good cheer. I have overcome the world. And, you know, it says I have deprived it of power to harm you and have conquered it for you. So in despite the challenges we are going through, the hope that each of us have, especially those of us who are in the Lord is that he has overcome it for us. He has stripped off it of its power challenges of its power. It's not that it's not there. But it's stripped off its power and we become conquerors in the way that we respond to those challenges. I think there have been additional responses of children. Children coming in can be a challenge, a family member having a chronic illness, absolutely, that itself can cause a challenge. So what scripture again shows us that there is nothing that comes our way that is not something that is uncommon to man. So in 1 Corinthians 10.13, the message version says, no test or temptation that comes your way is beyond the course of what others have had to face. So the word temptation here is more to mean putting to test something, putting to test maybe an experience or going through something that can be testing. Okay, rather than the common usage of the term temptation where we keep away from doing the will of God or evil. This is a proof of a test that is what the connotation here is. And it says that what we need to focus and remember is that God is with us and he will never let anything happen to us that we will not be able to handle. But he gives us the grace, fills us with the grace to help us come through it. So when we look at challenges, the important, I think the position that we have to place ourselves in is how are we going to respond? How are we going to react to challenges? So, you know, each of us have had different challenges and each may be unique in its presentation in the way that it comes to us. Some may be more stronger than the other, maybe more intense, some may be milder, some may be long lasting, some may be shorter. But nevertheless, where whatever the challenges it really what we focus on and what we want to focus on is how do we respond to it? So our challenges that come our way could either build us or make us or mold us into moving into God's purposes, or it can crush, it can be a heavy load, it can break us, it can really be something that pulls us to a place of despair. So it can either, you know, just put us flat on our faces or it can be used to wait upon God to ensure or to see what he makes out of this. So if we look at, you know, when we look back at our lives, we know that we've grown as people because of some of these challenges.   These challenges begin to help you see more of yourself about what capacities God has put inside of you to be able to work through something. So I remember when, you know, my kids were young. I never, before I had my kids, I never ever thought that I would be able to manage multiple things at the home, you know, looking after the children. I didn't have any house help. I haven't had house help for long, for long periods of time. So I've managed the home on my own, looked after the children, have done a part time job, helped elderly parents, and all of this, you know, sometimes has been quite overwhelming. But when I look back, I begin to see that God did give me the grace to go through some of that and also probably showed me certain things that I was able to do. You know, maybe it's just planning or just learning how to organize a certain day, you know, knowing how to delegate certain things. So it taught me how to work through things. It helps, challenges do help each one of us to grow. And we do also find that when we learn to accept challenges, it becomes far easier than resisting a challenge. When we come to a place of fighting, or you know, maybe throwing our fist up or getting upset and getting angry, working through a challenge becomes a lot more difficult. So as believers, we come to a place of acceptance. Yes, that there are challenges, that there are instructions for us to follow even as we face those challenges, which is what we will look at the next hour. And that we, we also determine to stand up and face these challenges and use each of them to move ahead in what God wants to show us or God wants to make out of our families. Okay, so just as you, we all face challenges in different areas, we also face challenges specifically in marriage. And those are some of the things that we are going to be looking at today about what are common challenges that we face in marriage. I think there's someone else who's also added Maxon said, my main challenge I experienced in my family was being jobless when my job contract finished being unable to support my own family. I can imagine how difficult this is, especially for a man, because one of the major responsibilities for a man is to be able to provide and to be able to give to the family. And when there is a loss of job, the kind of stress and the kind of frustration can be very, very significant. Thank you. Thank you Maxon for sharing. Okay, so when we look at challenges in marriage, we, we remember something that we have made as a vow when we made a commitment to marry is that no matter what. And I don't know what kind of vows maybe each of us who have been married have, have said depending on the church that we've been to. But in general, the vows mean to say that whatever is to come, you know, whatever life has to hold, whatever life brings, I will be there with you. I am I have made the commitment to walk alongside with you. So that's the commitment that one makes during marriage. Okay. So some of the, maybe even as we go through this list, I know it may not be a, you know, an entire checklist, but nevertheless, I think it I believe it covers most, most things. Okay, so like someone was saying, often there are, you know, we get into marriage coming with multiple expectations, you know, dreaming that the world that the that our life ahead is going to bring a lot of goodness and excitement and, you know, all the dreams that we bring the castles that we built in the air, all of that at points of time could come crashing down. Okay, for many reasons. Probably there are expectations that have been unmet. There have been significant changes within the situation in marriage. Maybe there are lifestyle changes that are financial situations that change. There are personality changes. You know, there are there are differences in the way that that that a husband and a wife have understood each other. So it could be so many. But yet, the, the commitment that one makes is to walk forward in it for better or for worse, whatever the issues could be. So some of the issues that we can look at is, again, we said, you know, finances. So, especially, you know, and I see a lot of this, even as I work with people is that that when when two people get married, you know, when there isn't a financial maybe a compatibility in the families, what happens could be that, you know, someone expects to have a life that they lived before marriage, but when they come into reality with, but probably the kind of money that they're getting the financial situation that they may be facing, there can be definite issues in their in the way that they live. Okay, the finances get tight and they find it hard to come together to, you know, to to work out their lives using the finances that they have. But what what we need to understand is this time it is important couples stick together and extending their faith to God for the provision and blessing that God can give. Okay, like someone mentioned, sickness, sickness can be very unpredictable and sickness can come in very many ways. It can be either a physical sickness. It can be a mental illness. It can be maybe a child or a child born having a developmental issue or having any kind any any sense of a mental challenge that comes about. So, and a lot of this becomes unexpected. Okay, or there could be as a result of an accident that can be severe debilitating a debilitating a debilitating a debilitating a debilitating a debilitating a debilitating position that the person may be in. So, there could be so many things that come into this.  Okay, so we are called to continue to hope in the healing provision of God and continue to have the hope in Christ. Okay, so that's, that's another challenge that comes about the other few things is when, when there are issues between couple and there doesn't seem to be, you know, you do all the best that you can to work things out together to discuss it. The differences that there are, despite the talking about it, you know, things don't work out. And often they're quite convinced that that the that the relationship is not working out and they feel quite dejected. This is a difficult place to be in. But, you know, to understand that a lot of us are there, you know, probably are there still where there is a lot of mismatch in the way that we understand one another. Yet, it is the time where you reach out to God and seek help for whatever you may need, you know, whatever differences that could be to come to some place of agreement, some place of peace.  The other severe things could be where there is violence, where there is abuse, either physical violence or domestic violence, where there is aggression, where there is abuse that happens. You know, arguments can turn to be physically violent, physically abusive, tending to create such a strong rift in within the relationship, but trust is broken. There isn't any sense of peace there. This, of course, is our unhealthy situations, and definitely is not something it is a play. It is a situation that requires help and requires support and intervention in some way. There also could be a responsibility and neglect that comes about, you know, just having two people live in the house and one spouse, one of the partners are not taking on any form of a responsibility of the family. Or of anything that is expected of them, the roles that they have to play or, you know, helping out in decisions in general planning ahead of the life of the family, the life of the children and the entire stress and strain. The weight of these responsibilities is pushed on to that one member, and that gets very taxing. You know, it could lead to, you know, the responses could be either ways, where one just bears the weight, continues to bear the weight, but making them extremely weary and tired and not having an impetus to move forward. Or it can cause, you know, significant issues and riffs as a result of one speaking out and getting the other to back up. The other part, of course, the most painful of it all is where there is unfaithfulness or where there's abandonment as a result of infidelity when the spouse is unfaithful or gets, you know, by getting into an affair or even falling into adultery can be extremely devastating for the other person and for the rest of the family member. Issues, there are other kinds of challenges like we spoke about death, death of either a significant family member or within the equation there is definite as a result of either an illness or any other way where death comes in that becomes extremely painful and can be quite challenging in the way that the family moves ahead. So having seen all of this and like I said, maybe we haven't covered as many but but you know, we continue to see that these challenges could, could arise. There could be challenges happening even in the lives of children, maybe, you know, whether there is drug use addictions in any member of the family drug use addictions, forms of gambling. All of that causing severe strain and stress within the relationship in the family. So when we look at this, our questions are, yes, these are there, these are to come, these are inevitable, what should our responses be? How can we move forward? How can we respond in a way that will help us take these challenges in a way that of the way that is discussed in John 16, 33. How can we overcome? How can we triumph? How can we move past this? And what we see is, is the way that there are certain truths in God's Word that helps us to face this. So going back to that same scripture that we started off with in John 16, 33. Jesus says, He has overcome the world. And if we look at 1 John 5 verse 1, I'm on page 128, page 128. Yeah, 128. Yeah, so it says, every person who believes that Jesus is, in fact, the Messiah is God begotten. If we love the one who conceives the child, we'll surely love the child who was conceived. Every God begotten son conquers the world's ways. If you look it in the NKJV version, it says, whatever is born of God, overcomes the world. So if you look at John 16, 33, it says, Jesus has overcome the world. And 1 John 5, 4, sorry, John 5, 4 says, it's 1 John. Sorry, I think there's a misprint there. It's 1 John 5, 4, that whoever or whatever is born of God, overcomes the world. So as believers, we are born of God. In Jesus, we have been born of God. We are the child of God. And it says, all children who are of God, every child of God, conquers, overcomes the world. So no matter whatever comes our way, we have an overcoming. We have been called to overcome and because God has overcome this for us. So that helps us see and stand in the truth that we are overcomers, we are conquerors. 2 Corinthians 2, 14 says this, it says, God always leads us in triumph in Christ. He takes on that work for us to lead us in triumph in Christ. Now, does this mean that all the challenges will go away? Maybe not, but what it does is if you look at 2 Corinthians 2, 14, it diffuses the fragrance of his knowledge. When we believe we stand in the triumph that God has for us, the fragrance of his knowledge, we know more about him. It disperses who he is, what his plans are, what he has for us through the challenges that we are going through. Now, even as we've said this, we know that God leads us in triumph. We also go to believe God in his word, that in every situation he will bring us through triumph. So it could be, let's say if it is healing, if it is a sickness, we believe that God heals. So we stand in triumph in believing, we take on the spiritual truth of that and call that out into our natural. Or it could be maybe there isn't a job. We call forth that victory because we triumph in Christ, or it could be a difficult situation. We call forth the peace of God to overcome the situation that may be irreversible. So we do see that yes, there could be life's challenges, some may be reversible, some may not be reversible. But we believe what God's word has declared about us in that situation and become an overcomer. Because he is the one who leads us to triumph. So however difficult or bleak the situation may look like, we know that our hope is in the truth that we are overcomers. And we can keep our eyes focused on the word of God. So what we've covered till now is we looked, know that challenges are inevitable. There are different kinds of challenges we may all go through. Some are reversible, some are irreversible. Yet there is a truth that remains that God has called us to be overcomers. We are an overcomer because Jesus has promised to overcome so that we can overcome. And we being born of God, the children of God can overcome situations, can triumph in situations in Christ, thereby diffusing his fragrance in the knowledge, diffusing the fragrance of his knowledge in whatever situation we are in. Yet we keep hoping and praying and declaring God's word in situations which are reversible and wait for his hope and for his light to shine through that. Is there any question that any of you have? Oh, I'm sorry Charles, I'll just read out what Charles has said. He's written, I wanted to say that when children start coming in, a challenge of struggling for love, time and care sets in, absolutely. Yes, Kennedy's written old acquaintances too. Yeah, I think you did mean maybe old relationships that cause challenges. Yes Charles, let's just praying that your network's well. Okay, any questions? If not, we can take a 15 minute break and we will come back at 10. It's 9.46 on my clock. We can return at 10 o'clock.


So before we close the series, I just wanted to share my predictions about what we can expect to see in the future based on all the new technology that I've seen and tested in the last six months, because after using chatgbt and blender assistant, I think I have a pretty good idea of what we can expect to see change for both 2D and 3D software. So here are the three biggest changes I believe everyone can expect to see in the future for all the software that we're going to use in day to day life. Level 1 is going to be a built in AI assistant for all software. I really think blender assistant is a preview for the first major change that you will see implemented into all of your favorite software. Kind of like I said before, we are already seeing glimpses of this as people download, run and train their AI locally on their favorite stuff. People who love horror will train their AI on all their favorite horror art. People who love anime will train their personal AI on all of their favorite anime art. People who love books will train their personal AI on all their favorite books. There will be an AI trained specifically on blender. There will be another AI trained specifically for Photoshop. Same thing for Unity, same thing for Unreal, same thing for Microsoft PowerPoint, Excel, and basically every major software in the future will have its own version of blender assistant ready to go as soon as you download or open the program for the first time. And this will solve the biggest problem that new users have when they get lost and don't know how to use the software. I am fairly confident that by the end of the year, tutorial channels like mine will no longer be necessary because new users will be able to ask the AI assistant how to do everything they do not know. So basically all programs will have their own version of chat GPT built in by default. The second biggest change though will be an AI assisted workflow, which means at this point we have learned how to train AI with text data, image data, sound data, 3d animation data. And I believe the next step will be to train AI on sequence data, which means learning to understand the connection between text and action. For example, if we're using Microsoft Excel, and we wanted the AI to understand what it means to take all the numbers on a list and turn it into a spreadsheet, we can train the AI by giving it a written task that interprets as text like chat GPT, then we can also feed it information such as the user's visible workstation screen, and have the AI observe thousands of different people perform the same task. The AI will then study and learn the correlation between what it sees on screen and what the humans tend to do given the task at hand. It will notice what keys you need to press where the mouse needs to go where you need to click, and it will learn to replicate all of that and call upon this information when you ask, which means eventually it'll understand that when you say the words turn this into a spreadsheet, it will understand that what you really want it to do is take the info outside of Excel and move it to an organized sheet inside of Excel. If we were translating this example to something more artistic like Photoshop, after watching a thousand different humans tackle the same task, the AI will eventually understand that when you hear phrases like separate the subject from the background, the proper command sequence will look something like click this button, go here, select the foreground and move it to a second layer. In 3D terms, in the future, when you tell Blender Assistant, instantiate a torus with 16 major segments and eight minor segments, the machine will be able to understand that means press shift A, mesh, torus, go down to this window, change major to 16 and minor to eight. And it will do that for you automatically as you sit there and watch the magic happen on screen. And it will do this because it will learn how from watching thousands of users before you do these exact same steps when they wanted to create a torus, which means the future workflow for your stuff is gonna look something like this. You'll open Photoshop to make an image. The future version of Photoshop will no doubt have an AI built in. So a new user will have a blank canvas and be able to type in beautiful red cloudy sunset sky in the style of Claude Monet, and it will appear. Then the user will type something like make it darker and the AI will automatically go to the adjustment settings and do that for you.  Now my final prediction is that your AI will be personalized to you. Your Photoshop assistant will not be the same as my Photoshop assistant, because my assistant will be good at doing what I want the way I want. If I tell my assistant, give me a good base face for a fantasy princess. It'll probably show me something like this, because that is the style I like. And that's the style I usually work on every day. But when you give your AI the same command, it might show you something like this, because that might be the style that you usually work in. So everyone's AI is going to be personalized, trained on their own interest on their own work for their own needs. So even if we all start out with the same AI in the same soft, it will very likely be different as you train it over time. It's very likely that kids born today will actually have something very similar to Cortana on their phone and in every single program that they use. So those are my predictions for the future. We'll see how close they are as the year progresses. But yeah, this concludes the chat GPT series. And if you join me next video, I'll talk about how this experience with the evolving tech has changed my mind on a lot of things and my approach for how to adapt to the stuff that we're about to encounter. But anyway, I hope that helps. And as always up, you have a fantastic day and I'll see you around.


Hello all, in this video I am going to discuss which one is the good referencing software Zotiru or Menli. Before going to the comparison between Zotiru and Menli, let me make you clear the other important competitor, the N-Note. N-Note I am straight away excluding from our comparison because it is paid software. Even though it has many customized tools for referencing, I want to exclude N-Note from our comparison. Let us restrict only to Zotiru and Menli. When it comes to both Zotiru and Menli, both are cloud based working system. So you can access through your mail IDs and you can access through different devices. So when we look at Zotiru, it will appear like this. Similarly, when we look at the Menli, there will be three pane here. One is for the publication list, one is for the related info notes and tag related. Then another one is the folder related. Same way, here in Menli also the folder related and other options. And the top there will be options to modify your referencing content. Then here in the center page, we will have all the list of references and here we have details in the third pane. So both look similar but what are all the major differences? So when it comes to Menli, Menli provide 2GB free whereas Zotiru provides only 200MB. So when you are doing so many extensive research and so many references, you have to go for Menli. Then the second thing is if you are a person who are reading more document, then what you need to do is you need to prefer Menli because it provides a good reading tool. Like here you can use it as a reading tool and you can annotate and give highlights and then give some extra colors and you can read the document and for further reference you can use this scribbled material. So that way Menli is better. Now what are all the advantages of Zotiru? When we are using so many different types of references in our article, in our research, then we need to go for Zotiru. Then the other thing is the number of collaborators. You can collaborate in Menli but the number is very few. You can collaborate up to 3 to 4 people but here in Zotiru you can collaborate with many number of people. That is the second advantage of Zotiru. There is one more advantage of Zotiru that is when we are using Google Docs, it has an add-on for Zotiru. So you can directly use Google Docs apart from MS word that is Microsoft word. When you are using Google Docs, Zotiru will function whereas Menli will not function. So to sum up, when you want more memory up to 2GB free then you should go for Menli. When you want to use it as a good reading tool for future use, you should go for Menli. When you want to refer more variety of resources, you need to go for Zotiru and you want to add more collaborators, then you need to go for Zotiru. Then the third important thing, when you are using other than Microsoft word like Google Docs, then you should go for Zotiru. At last, whether you use Menli or Zotiru, the most important thing is just the idea of using a reference software for your research. So always use reference software for referencing. Let it be Menli or Zotiru, but use some referencing software for your research. Get your work easily done. Thanks for watching this video. If you like this video, please share it to your friends, subscribe to the channel. Thank you very much.


Oh, what is that? Is that a giant poop? Hey guys, Realistic Gaming here. Welcome back to another Roblox video. Today we're gonna be playing Secret Life of Pets 2, Abbey and Roblox. Oh my god, okay, let's see what we got going on here. And we're up maxed the dog. Just look at this guy. Okay, so let's begin and we're here with Bandy and oh my god, it's Ashley. Okay, so what is this? Oh no, you're gonna need a bigger lap.  It looks like he's pretty cray cray. Okay, let's go here. Oh, now we go through the door. Okay, oh my god, what is going on here? Max, we need to get past these people. All right, Max, you gotta be very careful. What are they doing? Is that Dennis? I think that's Dennis because I seem to serve me out a lot. Okay, oh, get ready. There you go. And I think that's Mr. Backstabber. Okay, oh, that's our chance. What's next? Okay, we go here. Then we have to jump over these carpets. Oh, no, not the carpets. They're the worst. Okay, let's go here. I mean, it's pretty easy. There you go. Oh no, we're gonna go in the elevator. Wait for me, Diego. Now where we're going off to? Oh, we're in the streets.  Oh, oh no. Rest in peace to him. Okay, so now we're in the streets. Dude, now I know why they say New York City is very busy. Oh god, there's a lot of traffic. Okay, be careful with the cars. We don't want to get hit by a car. Okay, where do we go? Left or right? Okay, I see a red thing. So let's go right.  We're doing some parkour with this dog. Let's go. Okay, great. Now there's cars moving. They had to do that to us, huh? Okay, be careful with the puddles because I think they make you slip. Oh god, nope, wrong way. Okay, let's go this way. Dude, okay, this could have been a lot worse, but they made it kind of easy. Okay, where do we go? Okay, so we go in this blue house. Oh no, we're gonna go in the stores. I don't want to go down there, man. Well, let's go check it out. Uh-oh, okay, so now we're in the stores. Hey, there's a rabbit or a bunny. Can you jump like a bunny? I think you can. Okay, you can. If you double press space bar, you can double jump. It's a mess here. Oh gosh, okay, there's beans down here. Where do we go? Oh no, okay, we have to be careful here. Go this way. Oh my god, is that like an octopus? We got to be careful with the tentacles. Oh, that was so close. Okay, this is a little hard.  Oh my god. Okay, we got this. We're like about halfway there, I think. Oh gosh, when it's a little, I know we found in the nasty water.  Rabbits are cool. Okay, watch out, man. Here I come. I'm on the roll, so please don't stop me. Oh gosh. Okay, this is not, you can't jump there. Oh no, wait, can we just jump across? There goes nothing. Oh, we made it nice. Okay, so he jumped pretty far. Okay, be careful with that squid or octopus, whatever it is. And we're out. Oh no, there's more. Oh my god. Dude, there's moving rats down here.  Look at those things. Okay, we don't want to touch those hideous rats. They might have rabies or something. Okay, away from the pass by. Oh god, they look pretty frightening, man. Oh gosh, okay, let's call Max.  That's pretty scary, dude. Okay, hopefully we're out of here. Please, okay, I didn't want to be down there anymore, man. What's up, endoraptor? Oh gosh, more sewer. Okay, this is just not cool anymore. Watch out, buddy. I wonder where this octopus is coming from. I don't know if it's, oh no, he died. Did you guys see him fall over? That was so sad. That was dog abuse. Okay, let's get out of here, man. Man, we made it. Is this the end? Oh my god, there's more to this. Do not press. Okay, dude, I think that button over there will lower the water. Okay, but let's check it out. Okay, it might be time, so we gotta be quick. Okay, I see a key over here. The gate is locked quick. Try to find a key while there's a key right here. Grab it. There you go, Max.  Awesome. Oh no. Okay, so does the water come back up? I don't know, man, but let's get out of here. This stinky sewer. Hey, I'm pretty good at music. Snake out. What? There's a giant snake? Bye, first. So if you think you can get past me, huh? We will see you about that. Oh my god. Now we have to fight a giant snake. Okay, what do we do? I see there's beans over here. Well, it's like, I don't know, wait. How is that defeating the snake? But how do we defeat this guy? Do we throw beans at him? No, we can't touch the beans, okay. Be careful with the beans. But I thought beans were awesome. No, how do we hit this guy? Do we jump on his head? Like some mario thing? I think you do. Nope, he did not take any damage. How do we fight this guy, somebody? Oh, I threw a rock. Okay, I see we get the rocks and we throw them at him. That's pretty cool. Oh god, okay, we have to be careful. He's like throwing venom at us. Or maybe it's just his thank you breath. Oh no, where the rocks at? He only has two more hearts. We got this. Where the rocks? Oh, there they are. Okay, yep, be careful with that puddle. I don't trust it. There you go, we need one more. You're going down. There you go. Oh, did we defeat him? Yes, we did. Oh, he's protecting his eggs right there. You guys see him? Maybe that's why he was going crazy, man. Oh gosh, wait. He got here just in time when I beat the snake. Or is he fighting it? I think he's fighting it, but we can't see it. So we just beat it. Looks like he's fighting nothing. All right, let's get out of here. Finally, can we get out of this place? Hopefully we do. Okay, stage 11. I mean, she's in stage 17, so there's more stages. Dude, guy did not try to hurt your friend, but left us no choice. Wait, what friend, the snake? I think he's talking about the snake. The venom is what made you one of us. Now that he has gone, you shall pay. Oh gosh, now the rabbit is mad. Like, why would you be mad? He was trying to attack us, man. Oh gosh, we're going to need to get out of here. Okay, we're like getting super ultra in sixth mode right now. Oh god, run. Okay, don't touch the slime. Whatever that is. Hopefully we won't have to fight that giant octopus next because they're like, he's everywhere, man. Okay, oh, what is that? That's poop water. That is nasty. Okay, oh my god, there's still more to this? You got to be kidding me. This is insane. Oh yeah, double jump. I forgot about that. Comes in handy. Okay, what is that? Beans? More beans and trash? Why is there a lot of beans everywhere? Geez. Okay, let's go this way. My god, when does it end? When do the tentacles go away? Okay, at least there's no giant meat and rats here. That's a bit of an upside. Okay, look, there's more beans there. Starting to believe the beans are behind this. Okay, now are we out of here? Finally, we got out of the sewer. Okay, now what's going on here? Dang, I crashed my car again. You got to be careful, buddy. Well, it looks like we have to go through my least favorite place, the streets. It gets Max's scared of the cars.  I don't know, wait, through the fence. Oh no, we're going in that evil place. Yep, I feel you, Max. I do not want to go in here. Okay, hey, fella. What are you roaming about? What are you doing roaming out and about? I don't know, man. We're just trying to get out of my house. Okay, hi, my name is Stanley Green Gamer.  Man, you're asking too much questions. Okay, make sure to subscribe to Pacstabber on YouTube. All right, man, subscribe to Pacstabber. How to get to 100K? Okay, wait, where do we go? Although we have to go back here. Wait, there's a key. Do we grab the key? Okay, we unlock this here. Oh no, what happened? I have now evolved into a duck. Uh-oh. Okay, I guess that was duck gaming, I believe. Okay, so now what? We have to get out of the vet. Okay, we got to be careful here. Gosh, there's a door. Is it to take it somewhere? What? We can't jump there? Wait, why did it bring me all the way back here? Oh, great. Wait, why isn't he running? Why did it spot us? Did I miss my checkpoint? Oh no, now I'm gonna send this all the way back here. Isn't that great? Did I really miss the checkpoint, man? That is not cool. Okay, let's follow the arrows. Oh no, we have to do this all over. See the sewer rats? You know, the sewer rats are something else. Okay, come on. Oh, there it is. I see the way out. I see the light. Okay, let's just keep going. We made it. Okay, hopefully I touched the thing this time. I swear I touched the checkpoint.  Look, there it is. Yellow, okay, we grabbed it for sure. I know I'm not going crazy. Okay, the door is open. And here we go. We're back to square one. Wait, the checkpoint doesn't even work? You gotta fix this, man. Right, whatever. Let's try not to oof. Let's see how much of a pro we are. No, the double jump. Oh gosh. Okay, so I guess that checkpoint is broken. But whatever, man. Okay, great. Okay, that one works. But did I even touch that one? I guess not. Whatever. That's what I did, though. No, he's made a double jump. Oh, that was close. Come on, doggy. You got it. It was some G dead, or it's a dealer place. Now I forgot about that. Make sure to subscribe to Dealer Plays. Oh gosh. Oh no, the bouncy balls. Stop that flea. Okay, what is that? Say stop that flea, too. Oh god. Okay, we gotta be careful. Oh no. Okay, that was so close. Okay, what's up with these? Oh no, they're roaming around. They're trying to get us. They even got the... Oh no. Wait, what happened to the doggo? Well, Max, maybe your hobby will come back next year. Oh, look at him. He's trapped in there. I'll see you later, my friend. A talamista. Okay, let's go. Oh, okay. We got the Ultra Instinct mode again. Let's go this way. Oh god, watch out with the giant scissors. Oh, what is that? Is that a giant poop? Dude, that is nasty. Okay, let's move on. Why is there a lot of poops here? This is nasty, man. This is one nasty vet. Okay, wait. This is the right way, I believe. I don't even know. Oh yeah, it is. Oh, we got hit by the bouncy ball. Okay, watch out with the bouncy balls this time. Oh gosh. And the giant scissors. And the giant poops. That is so nasty, man. Okay, oh my god. This is so sketchy. There you go. Hey, what's up, man? The next thing you have to find a giant snake with rocks. All right, I think they're telling them. We did that. You have to understand there's a light. No, we can't read that. Okay, whatever. Quick, press all the buttons to unlock the vent. Okay, let's go. Help me out, Doggo. Why are you just standing there, man? Okay, there you go. We need one more. Come on, get the last button. I see you. Oh, we can't touch the bones on the ground. Okay, gotta be cautious. Okay, there you go, the last button. Now what? Oh, we go up here. No, you're going the wrong way, buddy. I think he's lost or something. I don't know, man. But off I go into the vents. Oh, no, it's a maze. These are the worst. I don't like mazes, but somehow I always get them. Like, I find a way out just by going off. Too, I don't know where. But I'm not having luck this time. Oh, gosh, is it this way? Nope, I think that's the way back. No, it has to be this way. Oh, I think we're getting somewhere and we made it. Okay, nice. Oh, no, there's more veterinarians there. You gotta be cautious with them. Okay, oh. Okay, so there's like some acid here. We gotta be careful with that. Oh, my God, how many of these guys are there? It's like the whole army. Nope. Okay, these doors. Stage 20. Okay, off we go. Oh, I think we're back in the apartments, you guys. I think we made it back home. I think we made it back home, didn't we? Oh, no, there's vents here. Okay, follow the arrow. Where's the leading this? Where are you taking us, man? Oh, we got the badge. Thanks for playing the ward. Yay, we made it back. Yay, we did it. Make sure to subscribe to Pacstabber on YouTube. I am very close to 100K. Well, go subscribe to Pacstabber. Get him to 100K, man. Did you get the badge? Oh, man, maybe he's talking about like the hidden badge. I think he's talking about the hidden badge, man. I don't know if we got it, but whatever, man. All right, you guys, well, thank you guys for watching. Thank you guys for the amazing support. If you guys enjoyed the video, make sure to subscribe to Pacstabber. Just slap the like button if you're new to the channel. Make sure to subscribe and hit that notification bell. Now we'll see you guys in the next one. Bye.


It's a sponsor talk, so hopefully I won't sound too sponsor-dish. My intent is actually to talk about some of the technologies we're working on that are open source. I'll give you a little brief insight into what we do as a company, but mostly I'm going to talk about the open source tools we're doing that really drive from my experience as a NumPy and SciPy communities. We are basically a team of scientists, engineers, and data scientists trying to build tools for others, scientists, engineers, data scientists. We feel like in the wider ecosystem of computer science and computer technology, that category of people, the domain experts, the scientists, the domain scientists, tend to get left behind as people focus on developer tools only, so we tend to be developers that focus on the scientist-tivic tools, and there's a lot of need for this in the real essence of the big data movement is really getting insight from those data, and those at insight create, requires models, scientific models typically. I'm Travis Oliphant, my background is in NumPy, SciPy, I'm actually on a PSF, I'm a PSF director currently as of June. I started the NumFocus Foundation, we'll talk a little about that beyond. I've been a professor of UIU, been a scientist myself. My roots are as a scientist, but we created a company really to allow other people to build open source software. We love open source software. Peter Wang is my co-founder, two and a half years ago we built Continuum. Our whole purpose is really to allow other people to help us build open source and deliver it to the enterprise, and really make it a part of everybody's enterprise experience. So that's what we're about. We love open source, it's part of our DNA, I've been contributing to open source since 1998 when I first found Python, and I've been a Linux user, a lot of us do a lot with open source. Now we've got 50 people worldwide, we have remote developers, depending on the project remote developers work really well, sometimes it can be difficult. We try to find those projects where remote developers can work really well, but they are available. We have major contributors to NumPy, SciPy, Pandas, SimPy, Ipython, and we love more. We love new open source products as well. We think that open source can be more than just a hobby, our desires to grow the community. That's why we started the NumFocus Foundation two and a half years ago as well. This foundation, its whole purpose is to promote accessible computing in the sciences and to back NumPy, SciPy, Pandas, SimPy. A lot of these projects, they are emergent open source projects with just kind of a loosely affiliated community, and not much money to help them. So NumFocus' purpose is to gather money from enterprises and drive it towards sprint development, towards scholarships, for diversity training, diversity events. NumFocus also sponsors and promotes and actually receives any residual income from the PyData ecosystem, the PyData conference series. We're having one as an affiliated event to this event, so please come to the PyData conference. You'll hear all about the great scientific tools, the great data analysis tools that are emerging. Now, as a company, what we sell is enterprise consulting and solutions, optimizing performance, to managing DevOps and the big data pipeline, to building native applications in the web or on the desktop. We also provide training, Python for Science, Python for Finance, as well as practical Python through our partners Dave Beasley and Raven Henninger. And then we are building the Continuum Platform, which is a product for kind of taking the desktop, the data center, and back that allows people to deploy data analysis applications and dashboards. So our products are all centered around that platform. They kind of take the appearance of Anaconda Add-ons and Anaconda Server with Cari Enterprise. I'll show you briefly just those, the key behind these products is to really give experts and scientists what they really are asking for. I've been spending a lot of time myself as a scientist. I kind of understand what the workflows they desire are, and we're trying to bring that to large organizations, large companies. So this is a picture I show of the Continuum Platform. You can see that it rests on an open source base, and an open source base that we contribute to greatly. We continue to contribute to it. The IPython, Sympy, SciPy, NumPy, Pandas, that basic baseline, and we have additional open source projects that we're writing and growing. Numba, Bokeh, Blaze, Dian, Kanda, Elevium, Py, Py Parallel. All these things are trying to bring high-level scientific applications, make them easier to write, make them faster, make them take advantage of the hardware that's changing today, GPUs, multicore. I wrote NumPy six years ago. I still know all the bad places where it does not optimized. There's many, many places, and it's not optimized because it can't take advantage of multiple cores or can't take advantage of multiple GPUs. On top of that, we deliver Anaconda, and then above that are some of the proprietary applications that we provide, all about creating applications that can deploy in the enterprise very, very quickly, and really empower the domain experts that exist in every organization. Why Python? We love it because it provides a spectrum. What you'll see here in the Python community is kind of different categories of people. You have some people who are web developers, and they love that. Some people are DevOps folks in system administration, and they love that. And then I kind of in the camp of data scientists, scientists, and sometimes it can be challenging because we don't all speak the same language, and so we kind of talk and use different words and different terms, different libraries, but one thing that's great about the Python community is it is a community, and people for the most part listen to each other, try to work forward on solutions that help everybody. And in particular, some of those people that are in the Python community aren't even developers.  They're the cut-and-paste programmers. I have an idea. I kind of want to put a few things together, and Python fits my brain. It's partially leveraging my English language center so I can kind of understand what it's saying and not have to be a developer to use it, and I can build things very quickly. Python does that. It's very unique, actually, among all programming languages. Now, NumPy, it plays a central role in the kinds of tools that we build. It's at the center of a large stack of data analytics libraries. There's a lot of users of NumPy, actually. I think about three and a half million. It's hard to tell because they don't ever tell me. They don't write home and tell me a postcard. Sometimes it'd be nice. You could actually get a sense of who did and who used it. As a company, so that's kind of what we build on. But as a company, we ship Anaconda. Anaconda is a free, easy-to-install distribution of Python plus 100 libraries. One thing that's challenging about the NumPy stack is it uses extension modules. It uses C, uses sometimes Fortran for SciPy. How do you get that installed? It's not enough to just have a source install solution. We have to have a binary install solution, and so we invented Kanda. And Kanda is, and we work with the Python packaging authority to try to promote Kanda, help understand how it fits in to the overall packaging story in Python. But essentially, it's like Yum and Apgit for Linux, except it's for all platforms, Linux, Mac, and Windows. It's a fantastic distribution that people rave about, and they love it. When they use it, why do they love it? I think Kanda is a big reason. Kanda is a cross-platform package manager. It helps you manage a package and all its binary dependencies. It's an easy-to-install distribution that supports both Python 2.7 and Python 3.3. You can actually install Anaconda for 2.7, then create environments. I just had a talk by Red Hat. They call these software collections in the next space. We call them environments. They're system-level environments that let you, they're more than just Python. They support anything. So you can run Python 3.3 in a separate environment on a Python 2.7 base. You can also do the reverse. Get a Python 3.3 base and run Python 2.7 as a compatibility test development environment separately. It's a fantastic solution for bridging the gap between Python 3 and Python 2. Then there's over 200 packages available, scikit-learn, scikit-image, iPython notebook, just at your fingertips.  You know more compiling dependencies than we're trying to figure out how to install it. And this is all for free, completely free. You can even redistribute the binaries we make. So that's Anaconda. Its purpose is to make Python ubiquitous in data science and there should be no excuse for anybody in the world using Python to solve their data analysis needs. And that's why we make Anaconda. Get it at continuemyo downloads. It's free for downloading, free for distributing as well. And we do sell some things on top of that. As a company we have to stay in business, we have to sell something. And part of that is an Anaconda server. It's a commercial supported Anaconda. Provides support, provides identification licensing. It also provides a package mirror and kind of a management tool. And if you're interested in that, I can talk more about that to others. Come see me later. binstar.org, you can see kind of what Anaconda server might look like on a on-premise installation. By going to binstar.org, signing up, get a free account and you can upload there any package you like. There's a three gigabyte limit so don't just show up all your movies and content packages. But you can put any binary package you like and share that with somebody else so that they can easily install your solution. And as long as it's public, as long as anybody can download it, it's completely free. Well, Kari is our hosted analytics environment solution. It's a fantastic way to quickly and easily get running with the IPython notebook. You can sign up and instantly you're in an IPython notebook running code. Now, the free version gives you a node with only a little bit of memory and only a tiny bit of computational power. But it's great for teaching, for showing, for demonstrating. If you want more power, you can easily upgrade to get as powerful a node as you like. Then Makari Enterprise is the on-premise version of that cloud story. It's adapted for, the UI has changed to allow LDAP support integration to installs to internal servers. It has a notion of projects and teams and lets people instantly collaborate on a large scale project and then share the results of their workflows with others very easily. So from desktop to data center is kind of our platform story. It helps you anaconda on the desktop, Makari on the data center and a seamless connection between the two so you can go from writing code on your desktop to deployed applications that are on the cloud or on the data center on-premise. So that's our solution. That's the thing we are building together as a company that helps all enterprises everywhere. But the part I like the best is the open source tools that we're actually building as a part of this. We feel it's critically important to continue to build open source technology. So we have key open source technology that builds on top of NumPy, SciPy, Pandas and the rest. So Blaze, Bokeh, Numbaconda. I don't really have time to explain all of these in the brief time I have. Tomorrow, my keynote, I'll be talking not about all these technologies a little bit, I'll mention Numba. Probably mostly about Blaze and kind of how I see it as part of the story for the future of Big Data Analytics. We do have some add-ons. I've talked about those before. So I'm gonna briefly talk about kind of these technologies. Get you excited about it? We're looking for help. We're looking for developers who can help us with each of these. These are paid positions. So one is Numba. Numba is really a technology about taking the CPython stack and providing compiled technology to it. So PyPy is a fantastic project, but it doesn't integrate with the NumPy stack very well. NumPy, Matplib, SciPy, Sympy. So we took and took the LLVM technology stack and with decorators we can take a function, compile it to machine code and integrate it in with the rest of the NumPy stack very easily. It takes advantage of the LLVM tool stack. So the kind of work that we're doing is to basically translate a function that looks like this with a decorator, create a general assembly kind of code via the translator and then LLVM takes that code and runs on your platform. It can do amazing things. I think it changes the game. It lets Python essentially be like a compiled language. It's a subset of Python and we can go to the details if you like later. But a subset of Python can now, you can write it in the Python syntax and get compiled performance just as if you'd written C or C++. And we have numerous examples of that. Very, very easy way to get optimized performance out of your Python code. Here's a simple example of a Mandelbrot generation. Gotta have your Mandelbrot generation example. It illustrates the ability to call functions and have that bypass the Python runtime and essentially be a low-level machine code. So this is one way to bypass the GIL use Numba to add a JIT and now you have a Python, now you have a, it's not in the Python runtime anymore, it's actually compiled code and you can release the GIL and execute that. So that's Numba. Blaze is our data to code seamlessly. It's about taking the fundamental problem Blaze tries to solve is when you have data in let's say it's an HDFS, or somebody else in your teams as well, I think we should have it in Postgres with Green Plum or maybe we should have it in Netiza maybe we should have just a bunch of HDF5 files. That decision of how you store your data ends up determining how you write code, how you write your queries, how you write your solution in Python. It shouldn't be that way. There ought to be a way to write an expressive table-oriented code that then you just plug in whatever data you have and even allow you to cross different tables and have the same expression work across all those tables. So Blaze is a foundation for large-scale array computing that leverages the technologies that are out there already. So with data, this is describing some of the pain involved in data, there's many, many kinds of formats. The big data pipelines are constantly changing. It can be difficult to reuse code in that environment.  So it's a flexible architecture that it can scale across multiple use cases. So data, for example, it can be stored as CSV files or a collection of JSON files or HDFS or HDF-5 or just in SQL, you can add your own custom data type. So a simple API lets you add it but then your Python level expression is common. It's more numpy-like, you can slice it, you can dice it, you can grab pieces of it. And then you can write in a compute graph that refers to part of that data. So this is a compute abstraction that basically can sit on the top of multiple backend libraries, things like pandas. Dined is a next generation numpy equivalent. It's a C++ library, does the same things as numpy but allows other, it's more general, allows things like variable length strings, ragged arrays and categorical data types which are missing from numpy. It can also sit on top of Spark which is part of the Hadoop ecosystem, PyTables which from our friend Francesc who's sitting in the back. Then this Blaze expression graph, you can write a single expression and have it attached to multiple data sources and pull it all together in a single application. Here's a simple example. We have a generalized data declaration format called DataShape which generalizes numpy's D-type and this DataShape allows you to describe data universally in a way that can sit on top of multiple data formats. So here I'm creating a symbolic table and this symbolic table then I can write an expression involving that symbolic table including joining, group buys, aggregations. Now that creates a deferred expression and then the load data, there's different implementations of load data depending if my data is in SQL or if it's in Spark and then I simply map the elements of what I've loaded to basically a dictionary representation of the namespace that that compute is going to evaluate in and then the compute maps the expression graph to the actual backend calculations that are needed. So whether it be pandas in memory or Spark on a 100 node cluster, the same code can be executed. So this is the load data showing the difference between the Spark and pandas. I'll talk more about this tomorrow because I think it really sets the stage for reusable computing and reusable expressions and helping people make sense of the diverse and changing world of big data and large scale array-oriented computing. So last technology, I didn't tell you a lot about Kanda because I've got a lot of videos out there. If you wanna hear about Kanda, there's actually some jokes about me constantly talking about Kanda because I love it so much that you can find videos about Kanda on the web. I'm gonna talk about Bokeh, which is our visualization library. I'm really excited about the visualization library. A lot of people are as well. It basically allows you to do interactive plotting in the web without writing JavaScript. So as a Python developer, you can write interactive visualizations in the same spirit as D3 but using Python. Now it's still in development but quite a bit can be done already. You can have novel graphics. Actually, the violin plot came from a Seaborn library using the map plot lib, compatibility of Bokeh. So you get up a map plot lib plot and then essentially render it with Bokeh to provide the interactivity and the JavaScript rendering. Lots of different kinds of graphics can be built. There's even streaming and dynamic data that can be built. I have a simple demo here. I'd like to show basically it's running in the background. So if I go to, this is just my basic computer and it was been running for a while and it's the microphone. What I'm doing is using the NumPy stack to do a Fourier transform on the audio coming from the microphone and show that spectrogram in a couple of different ways. So I can see the time series. I can see the frequency, here's the time series, here's the frequency spectrum and then here's a image map of the frequency spectrum. Take this line and rotate it and stick it in an image and then it kind of moves across so I get a spectrogram image over time.  So you can see that this is sampling the microphone. I can't whistle that high. Anyway, there's things to do with the game. So this is a JavaScript library and you can actually do this from Python. Currently, this demo is currently written in taking advantage of the Bokeh.js backend but it's being written in Python so you can show just how to do this sort of thing in Python and create these kind of visual apps. It illustrates many things about the platform that I think is the new platform for visualization which is the web browser. So this is what we're doing. What's it about is the kind of things you can do if you come with us, if you come work with us. Let's go back to my presentation. Not the Twitter feed. Although that, maybe some of you tweeted. What the other aspect of dynamic interaction is that because it runs, there's a web socket communication and an object model. Bokeh creates a scene graph in the web browser and an object model that can be reflected in the Python side. So you can write objects, an object model in Python that gets reflected to the browser and you can have server side control. You can also just have all that logic in the browser and have kind of a static web page that has all the interactive logic in the browser. So this is just an example of essentially a web, the web service updating the plot and then the backend server updating the plot in Python and having the web display change. So it's a great way to handle streaming data and all kinds of different interactions. You can also do big data kinds of analysis pretty easily with this kind of setup. I can go to, this is running actually in the US. So these are time series that are stored on a server and I have just a ability to zoom in. So you can see it's actually updates. It zooms in initially with the data it has and then it goes back to the server and updates a higher resolution version. And these are all links, these different plots. So it's just a simple example of resampling that I can reset the view and then it expands out after it grabs the data. This is actually back in the US so there's a little bit of latency between them. Here I have an example I'm actually looking at the whole world. You can see I've zoomed into a particular slice. This is a worldview, it's a three dimensional time series about four gigabytes of data we got from the JPL from NASA. And it shows the ocean view and it's in time. So I'm seeing a 2D vision, 2D projection of the world but this slider changes the time view and it takes a little bit to bring back all that data. But if I zoom in to particularly interesting area of the world, I can see that it updates from the server. It gives me back this resolution view and then I have projections that show the period through time and I can change which slice it shows. You can see it's updating down here. So that's just an example of an application built with the visualization and the kind of things you can do very quickly and then deploy in a website and a web browser across your organization. Another, you have a little widgets you can provide. This is just example of a simple widget and some dummy data about downloads and I can adjust as I slide through it. These are the kinds of things you can do from Python without running JavaScript using Bokeh and it's application technology. So there's lots of, that's the gist of what we're trying to do on the platform. Basically from data to visualization and beyond and make it easy for people to do it at a high level so they don't have to be expert developers. They don't have to change and know everything about SQL and about JavaScript and about development operations in order to get solutions that take advantage of multiple kinds of hardware, multiple kinds of data sets and high level ideas. So no JavaScript just a little more example of the kind of plots you can do. With Bokeh there's actually gonna be a tutorial at PyData. I invite you all to come to PyData in the tutorial given by one of the, by the principal author of Bokeh, Brian VanDeven will be here. There's also a great website you can go to that will explain Bokeh, bokeh.py.pydata.org, it's got a gallery, you can go in and look at the code. It's still a work in progress. It's 0.5 just came out. The widgets just came out. It's making rapid progress. But it's usable today. But if you find something that you want and it's not there, let us know. And I'm sure it's either on the roadmap or it will be added if you let us know about your particular needs. Okay, so that's a quick run through of the technologies we built and the kinds of things we do. And basically I'll end by talking about the openings that we have. There's many openings for the number team, for the Blaze team, the Bokeh team, embedded consultants. If you want to live in New York, come talk to me. I have great opportunities for you in New York City. And these are opportunities that not only work with a client, but work with the rest of our team in helping us build this platform based on open search technology that can benefit large and small scale organizations around the world. We're really excited about what we're doing. We think we have ideas that can really help and transform the way people write code and write code for high level data analysis. And we'd love to have you join us. So I think with that I'll ask for questions or anything else you want to know about. So we got any questions? Thanks for the talk. I have two questions regarding the Python part of the Bokeh. So first of all, I remember that at the beginning the Bokeh was something which was trying to implement the grammar of graphics for Python. But recently I saw that there's no mention in the documentation about the grammar of graphics. Are you still using the same kind of interface or just... I would say it's not the grammar of graphics. Well, I know that some other developers see the grammar of graphics as a good direction, but not necessarily complete. And so Bokeh.js itself uses concepts for the grammar of graphics and its architecture. The interface is something that can be added on top. So for example, ggplot, which currently has a back end and mapplot lib, can easily be retarget the Bokeh.js. In fact, we have examples using mapplotlibs interface of doing that. So let's say the grammar of graphics discussion is higher level than Bokeh and Bokeh.js. And the second question is regarding the widgets and interactivity of the plots. So as I understand, widgets is something that you can play with to, for example, select some data points, get some old information about particular data. Is it something that you have to implement in JavaScript or you can just use Python code to define the widgets? For which? For example, if I want to select some data points and print maybe some tool. Right, selecting data points and pretty them. I believe that's on the roadmap to be done from Python. I think currently to do that, you have a nascent Python interface to that. And so if it works for you, it might be enough, but it's possible that it's still not quite complete, that API. So the idea is you won't have to use JavaScript. I'm not sure if we're completely finished with that API on the selection of points side. Any more questions? And Brian will be here later today and he can give you a lot more explanation of Bokeh. Anyone else? No? Okay, thank you very much, Travis. All right, thank you. Thank you.


Hi, I'm Zor. Welcome to your new Zor education. I would like to continue talking about circles, but in this case it's not about theorems. It's about certain other types of problems which I would like actually to present. It's construction problems, it's problems about locuses, this type of problems. They are slightly different, they are easy. I didn't even put solutions on the Internet, just the conditions of these problems and solutions I'm going to present right now. All right, so let me just start with all these two problems. A couple of problems will deal with one particular concept which I would like to actually define. You know that if you have a circle, this line which has only one common point of intersection with a circle is called tangent. Sometimes we are not talking about an entire line, but only a particular segment of this line from certain point outside to the point where it actually touches the circle. So the point of tangency from a given point outside to the point of tangency, sometimes I will call this particular segment a tangent segment or tangential segment. It's just definition if I will use during one of the problems. And I did mention it before, I'll just repeat, if you have two different circles which have only one common point of intersection, then these two circles are called tangential to each other. So this is a tangent circle to this and this is a tangent circle to that. Just terminology, I will use them every once in a while. Find the locus of points outside of a given circle such that their tangential segments to this circle are congruent to a given segment. Okay, so you have a circle and you have certain segment. Now, you are looking for points outside such that their tangential segment will be exactly congruent to this one. This point will also be of this type and this type and this one. So all these points belong to this particular locus. So all the points, what exactly they represent? What's the set of points all having the same property that their tangential segment to this given circle is congruent to a given segment? Well, let's just think about it. If you have a tangential segment, this is the radius to the point of tangency. What is this? Well, obviously this is the right triangle because the radius is always perpendicular to tangent. In this right triangle, this is the radius which is a constant and this is a segment which is given. So it's also constant. So all these right triangles have this property of having fixed cacti which means their hypogenesis is also fixed. So this particular distance is supposed to be constant because all these triangles are congruent to each other by one tangent and another calculus, by two calculus. And that means that their hypogenesis are the same. So what we can say is all the points which have this property are equidistant from the center of our circle and the distance is exactly the hypogenesis of a triangle which has one calculus equal to the radius of a circle and another calculus equal to our segment. Now, we have to prove it like both ways. One is that all these points, since this length is fixed, are aligned obviously on a circle with the same center and the radius equal to this hypogenesis. So all points lie on the circle. Now the question is the opposite. Are all the points on the circle satisfy this condition? Which means that I will take any point and draw a tangent to our circle. Will this tangent have the same length? Well, the answer is yes. Because again, this is the one calculus which is equal to a radius. This is a hypotenuse which is the same as in this case and in this case, et cetera, which means this triangle is also congruent to all other triangles which I have already drawn. Which means that any point, if I take it on a circle, will satisfy exactly the same criteria. So all points which are lying on this circle with the radius being the hypogenesis of this triangle are the locus of points from which the tangential segment is equal to our segment. And again, don't forget we have proved this going both ways. If this is the point which satisfies our criteria, it lies on a circle, on a bigger circle. And if it lies on a bigger circle, it satisfies our criteria. And that actually proves that these and only these points are those which satisfy our criteria, which means it's a locus. It's very important actually to prove these both ways that certain set of points which satisfy certain criteria are of a certain geometrical shape. And then all the points of that geometrical shape really have this particular characteristic which we're looking for. Then and only then we can say that this is a locus of points characterized by this particular property. Number two, find the locus of points outside of a given circle such that their two tangential segments to this circle form an angle congruent to a given one. So from any point outside, we draw two tangential segments. These are perpendicular, obviously. And this angle is supposed to be given. Obviously, as you know, these two triangles are congruent to each other by common hypotenuse and magnitude which are radiuses, which means these angles are congruent to each other and equal to half of our given angle. So considering this, if this is a given angle and this is a given radius of a circle, that necessitates that wherever I take this point, which satisfies our criteria, this distance must be the same. So wherever else, if I take these two tangential segments, then again, it's the same radius. These are all the same. And since the angle is supposed to be the same, a pattern is supposed to be the same. So it looks like all the points which satisfy our criteria are supposed to be on that particular circle around the same center and the hypogenuse being a hypogenuse of a triangle with one characteristic equal to radius and opposite angle, acute angle, being equal to half of our angle. All right, so we basically did research. Now the proof itself that this is the locus, which means, number one, if a point has this property, then it's supposed to be on a circle. And if the point is on a circle, it has this property. All right, so we basically did it. Considering the point has this property of having this particular angle between two tangent segments, the angle equal to given. It obviously means that it's supposed to be on this distance from the center. Now how to build this distance? Well, very easily. You have the radius, and you have an angle, right? The opposite angle, or this one, which is 90 degrees minus this one. It's the right triangle. So you build this triangle, and the hypogenuse is the distance which you're looking for. So since my statement is that all the points on the circle of this radius is the locus, so basically if the point is such as the angle is equal to a given, then obviously distance is equal to this distance. And on the opposite side, if I take any point on a circle which basically has the property of being on this distance from the center, then obviously if I will draw a triangle, now this angle will go so equal to this one, which is half of our given angle, which means that the total angle will be exactly equal. So again, all the points of this property are on the circle, and any point on the circle has the property. So it's a locus. The locus of points from which a given circle is viewed, if you wish it's like a view, view from a point. You view at certain angle. You view this circle at certain angle from this point. So the locus of all the points, our circle is viewed at certain angle, is a circle around our circle of a certain radius which can be built. Number three, find the locus of centers of circles of a given radius tangential to a given line. OK. So given a line and given a radius, now question is, where are the centers of all the circles of these ranges which are tangential to this line? This, and this, and this, et cetera. Well, it looks like it's a line parallel to our line on this particular distance, right? It's kind of obvious. Well, again, let's just prove. So my analysis shows that the locus of points which have the property of being centers of the circles of the same radius tangent to our line is the line parallel to a given line and on a certain distance of it, which is equal to this particular radius. All right. So indeed, if a point is a center of such a circle, then this is a perpendicular. Since it's a tangent, this is a perpendicular. And that's why the point is on this particular distance from the line. Otherwise, if I take any point on the line, now since this is exactly the same distance, if I will draw a circle using this distance, it will touch the line since the radius is perpendicular to the line at the very end. So the answer to this particular problem is the locus is the line parallel to a given line on the distance, which is equal to the radius. And by the way, there are two different solutions because the line can be on opposite side of the given line because these are also centers of circles. This line is also the locus of centers of circles of the same radius, also tangent to our line, but on the other side of it. So basically, the full answer is two lines on both sides of our given line on this distance. Now, instead of a line, we have a circle and also a radius of another circle, which is tangent to this one. So this is another circle, which is tangent to our and has a given radius. So we need the locus of all centers of the circles of this radius, which are tangent to our given circle. Now, since if this is the radius big r and this is small r, then the distance between centers is r plus r at fixed length. So it looks like all these centers are supposed to be on the same r plus r distance from the center. So it looks like the locus is a concentric circle on the radius equals to the given radius given radius of the big circle plus given radius from a circle, which needs to be tangent. Now, again, we can very, very easily prove both things. Number one, that any point, which is a center of a circle, which has this radius and tangent to our circle, is located on the distance r plus r from m. That's how it is. Conversely, if you take any point on that circle, then considering this distance is r plus r, then if this is a center, you can always draw a circle and it will be tangent to our circle. So this big circle, the dotted circle, is locus. Now, is it complete? Well, now, the answer is, in some cases, you might have another type of tangency, if you wish. You can have an inside circle like this. It also has the same radius, and this is capital R. But now, this distance is r minus r. So this is r plus r, this is r minus r. So this is, therefore, very easily proven another locus. So outside and inside, in outside case, this circle has a radius r plus r. Inside is r minus r. Now, you can answer a little bit more sophisticated question. What if r is greater than r? Let me try to draw it again, and you will see how it looks. So I'm trying to find all the different solutions to this problem. So let's say you have this is r. And what if r, lowercase r, is longer? Well, obviously, the solution outside of a circle is exactly the same. There is no difference, so it will be something like this. And obviously, the centers will be on the concentric circle with radius equal to the sum of big r and small r. But for the inside tangent, the situation is a little bit different. So for a smaller r, we get something like this, right? But for a bigger r, for a lowercase r bigger than the capital, it will be like this. So if this is r, this is r. So from this point, we go back. It will be something like this. And this is the center, so it will be like that, right? And now, the locus will still be a concentric circle, but this cannot be actually the radius because lowercase r is greater than capital r. However, if you would take it absoluterio, which is equal in this case r minus r, see this is lowercase r and this is uppercase r. So this basically is r minus r. That's what this particular segment is. And this will be the center. And then, again, you move around using this as a radius and you will get another locus of points, which are centers of circles of this radius. And they all will be like this, outside of this. Well, it's not like smaller circle will be inside the original one. It's original will be inside of a bigger circle. So it's still a circle inside. But this radius in this case should be given as an absolute value. So the answer is one circle of this radius will be the locus. And another circle is absolute value of this radius. If this is greater, then that's what we were considering the first time. If small r is greater than big, then the absolute value will help to get to the real point. What's interesting here, we should not be confused by the drawing which we have made. Because first we draw a circle and then another circle outside. We immediately came to a conclusion that it would be a sum of two reduces as a locus. But you see, we have been dependent on this particular drawing. We have drawn two circles tangent to each other, outside of each other. But we just completely forgot. Well, we didn't forget, but we could have forgotten the fact that this particular touching, the tangency between two circles can be not only exterior, but also interior. So let's have to get all the different cases. Otherwise, we will miss certain solutions to our problems. OK. Oh, by the way, I think it's very appropriate right now. I do have a note here, and that's why I just remember, to prove that if you have two circles tangent to each other, then the point of tangency actually is supposed to be on the line which connects the circles. Now, why? Well, you remember that all points outside of a circle are further than the radius. So if you take any other point here, let's say this is a point of touching of these two circles. The problem is, if it's not one and the same point, this will be longer than this, right? So you would like to shorten the distance between these two circles down to the minimum. Minimum is 0, where they touch, right? So if it's not a straight line, then it will be greater. And so basically these points will not be one and the same point. So that's the way how to prove it. There is a way to do it a little bit more rigorously, but this is the way to prove this particular fact, that the line which connects the centers should really intersect the both circles in the same point where they touch each other. Otherwise, we will just be in contradiction with triangle inequality. A segment of a given length moves parallel to itself, such as one of the end points moves along the given circle. So you have a segment which moves parallel to itself, and one end is always on this circle. Question is, what would be the trajectory of the other point? Well, you guessed it, it would be exactly the same radius of a circle, but the whole circle will be shifted by the length of this particular segment. Now, how can we prove it? Well, how to prove that certain things is on the circle? Well, points which are aligned in the same circle are equidistant from a center, right? So let's start from the center of this circle and have the same parallel segment from a center. Now, I'm basically making a statement that this will be a center, from a center you shift to a center of a new circle of the same radius, and that will be the lowest point. Why? Well, because this is parallelogram, we were talking about the segment which is moving parallel to itself, which means the parallelism is preserved and the length is preserved. And that's the sufficient condition for a quadrangle to be parallelogram. So that's why these two are equal to each other. This is the radius of the original circle. And this now, therefore, since this, no matter where this particular segment is located, let's say it's this one. It's still a parallelogram because this is parallel and equal to this one. So this one should be parallel and equal to this one. So again, the radius is always the same and it's always parallel. So it will be the locus would be the set of points which are equidistant from this point, which I have obtained by shifting parallel to the same, parallel to this segment, shifting the center of the circle. So the whole proof, actually, is based on the quality of the parallelogram that if two opposite sides are parallel and equal in lengths congruent to each other, then the quadrangle is a parallelogram and the other two sides would be congruent to each other as well. So this is the radius, so this is the radius. A segment of a given length moves such that one of its end point moves along one way over right triangle, while another end point moves along the other leg. So you have a segment of a fixed length, one end on one side of the right angle, and another end of this segment on another side, something like this. So what would be the midpoints of these segments as the segment is moving from this position to this position, always having both end points on two sides of this right angle? What would be the trajectory of the middle of this particular segment? I would like to remind you, Assyrian, if you have right triangle, and this is the midpoint of a hypotenuse, then the distance from this midpoint to all three vertices would be the same. Now, how can that be proven? Well, first of all, we have already proved it many times before. But in theory, if you want, I can repeat something like this. Well, if you take this midpoint of this hypogenuse, so these two segments are of equal lengths, and draw a parallel to a cataclysm. Now, obviously, you remember that the line, which is dividing one side of the triangle in half, parallel to the base, would divide the other side in half. So this is parallel to this, and this is the right angle. So this is the right angle. And now, what you know about this is, you don't know about this yet. You know about this triangle, and this triangle, that they're both right triangles, and they have one cataclysm common. They share it. And other pair of cataclysm are equal in lengths. That's why triangles, this one, and this one, are congruent. And that's why hypogenuse are equal. The same thing with this particular side, obviously, because this is equal to this, and this is equal to this. So all three are the same. So basically, what you're saying is that the center of the hypogenuse is a center of circumscribing circle, because the distance to three vertices is the same. Now, you can use it here, because in all these cases, hypogenuse remains exactly the same, because we're saying that this particular segment is moving such that one endpoint on one side of the right angle and another point on another side. So as this segment is moving, it means that the hypogenuse is always the same. All these triangles have the same hypogenuse. But now, the midpoint, as we know, has a distance to this vertex of this angle exactly the same as half of hypogenuse. Hypogenuse is fixed, so its hat is fixed, so this distance is always the same, which means that no matter how we position this particular segment, its midpoint would be on a fixed distance equal to the hat of this segment from the vertex of the right angle, which means that quarter of a circle would be the trajectory of the midpoint. Let me just draw it again a little bit cleaner, and you will see that this is true. So let me draw. So any line, whatever you... This is the midpoint. Then, how should I draw it? Something like this, that's the problem. These are different positions of our segment, this one or this one. These are different positions of a segment which is divided in half by a midpoint. The midpoint would actually be moving along this particular circle because this distance is always the same and equal to half of a hypogenuse. Okay, fine. Find the locus of midpoints of all chords of a given length in a given circle. That's easy. So midpoint of all chords of a given length. Well, if the length is given, obviously all these triangles will be congruent to each other. Why? Because the length is given, which means half of the length is also given. It's exactly the same as this one. And since this is the radius, it looks like all these triangles are right triangles and they are congruent by hypogenuse and the catatris, which means that the other catatris, which is this one, is also fixed. So all these midpoints of all these chords are lying on a concentric circle, the radius of which can be obtained by constructing this triangle by antiparticles, which is equal to the radius of our original circle, and half of the chord, the length of which is also given. And again, it should be proven both ways. I just shortened my lecture because it's obvious that every point which has this characteristic of being midpoint of a chord is on the circle. And then if you have a circle, then obviously by choosing any point and drawing a tangential line, at this point you will get the chord of the same length. Construct a circle of a given radius, tangential to a given circle, and a given line. So you have a radius, you have a given circle and given line, so you have to have a circle of this radius, you have to find, you have to construct this circle if this circle is given and this line is given and the radius is given, you have to construct this circle. Well, let's just think about the distance from this point to this, let's call this lowercase r, and this is uppercase r. So the distance from this to this is r plus r, which means this point b, which is the center of a circle which we are looking for, is supposed to be in the distance r plus r from the center of a given circle, which means the locus of all the points which are lying on this distance is the circle, right? Now, on the other hand, the distance between this center and the line should be, sorry, I'm using lowercase r, should be r lowercase r, which means it should lie on a parallel line, on a distance lowercase r from a given one, on this side or on this side. So we have two potential parallel lines, which are on the same distance r from a given line on both sides, where this center is supposed to be located and it's supposed to be located on a circle of the radius r plus r from the center a. So whatever the crossing of these two lines and the circle are, any intersection would fit. This is one, this is another, because this radius is exactly the same as this one, r and r. And if our r is large enough, then this particular circle might even cross it in two different places. For both lines, let me just draw another picture, and you will see that there are multiple intersections and all of them will fit the bill, basically. So if this is our initial circle, this is a circle bigger than that. Now this is a line and this is another parallel line and another parallel line. So what are our intersections? One, two, three and four, four different solutions. In this point we can do it this way. In this point we can actually, this is the center, right? So it would be like this. In this point and in this point, I don't know how to draw it. But anyway, whatever the intersection is, it fits the bill. Okay, construct the circle of a given radius tangential to two given circles. Okay, one circle and another circle. So we have these two circles on the left and on the right, and we have radius. Well, actually I don't really have to do it on the same line. Let me just draw it this way. Okay, so radius of this circle is supposed to do this. Let me make it more truthful. Something like this. These two circles are given. So obviously this point is supposed to be on this circle, which is concentric to one of the given circles, and the radius are one plus four ksr. Now this is supposed to be also beyond this circle, which is of the radius r2 plus lowercase r from this center. So we have two different lobeses. Locals of all points on a distance r1 plus lowercase r from this point, which is a circle, and on the radius r2 plus lowercase r of a circle from this center. And wherever these two dotted circles cross, that's actually our point where the center of a new circle can be located. Now, don't forget that there are really many solutions to this problem, and it's all related to certain interrelationship, because the tangential circle can be either exterior or interior. So we have to really think about a drawing which looks differently, which looks like this, something like this. So this circle is the one which we are looking for. If this is the radius, these are two circles which are given to us. So this is just one of the solutions which can be obtained in case two original circles cross each other. If they have intersections, then we can do it this way. Or if you wish, if this radius is really very, very large, we can have even different solutions. We can have one given circle, another given circle, and if our circle, which we're looking for, has a very large radius, then it can be something like this. So two original circles will be interior to the one which we're looking for. But in any of those cases, this radius, this point, can always be found as an intersection of concentric circles of the radius either r1 plus r1 minus r2 plus r and r1 minus r. So any of those cases, and by the way, in these cases, you can put the absolute layer as well. So all these circles of all these radiuses are actually supposed to be considered because depending on their inter-relationship, you can have many different solutions to the same problem. So there is definitely more than one way to skin the cat. OK, I have the last problem. A circle of a given radius is rolling along a given straight line. OK, so you have a straight line. You have a rate of, let's do it more accurately. Let's start with the circle. And this is the line. So circle is rolling like a bicycle wheel on the road. This circle is rolling. Now, there is a point on the circle. And the question is, draw approximately a trajectory of that fixed point as the circle actually is rolling. OK, this is not really the problem which we can solve right now in all the details. I'll just give you approximation. And again, the problem is asking about approximate picture, not the precise picture. Because the curve is really quite complex one. If you will think about this, it will move down, but it will roll forward. So basically, it will be like this. Until finally, it will touch when the length of this will be equal to the length of this, it will touch the straight line. And then it will start rising again. And backwards, it goes the same way. So that would be an approximate curve, approximate trajectory of the point, which is fixed on the circle rolling along the straight line. And this particular curve has a name, say, Chloe. So it has an interesting properties. It was researched by certain mathematicians because it's complex. It's really complex curve. It's not a circle or a semicircle, not at all. The algebraic equation which actually describes this might be a little bit more complex than we are ready to do right now. But at least you know what the cycloid actually is. So this is a trajectory of a point which is moving on a circle rolling along the straight line. OK, that's all I wanted to talk about today. Thanks very much for listening and participating. I would like to point you again to the Unizord.com as the source of many interesting problems. And parents are very much encouraged to take charge in the educational process of their children by rolling them into certain programs, categories, whatever we have on the website. And let them take exams. And basically, if exams are fine, just mark this particular program as completed. If not, ask your students to do it again until they will perfect their skills. Thanks very much. That's it for today.