Hi guys! My name is Måns Adler. Sorry, I just need to take this call. Okay, can I have the slides, please? I know you forgot the key, but it's no problem. I can open the door here for you. Wait. Do you think it works? Do you get in? Are you opening the door? It works. Wave to the audience. Wave to the audience. Okay, great. See you later. Bye. Okay, so this is what it's all about. What happens when everything gets connected? What can we do? What kinds of analog sensors are up and down? Do we already have installed all over the world? And what new things of sensors can we bring? That is what we're going to talk about today. And with me, I have two other awesome presenters. We call ourselves the three bearded men. It's up to you to decide if it's the three wise men that you're going to see today, but at least all of us have the beard. So just some short words of who I am. Five years ago, me and some of my best friends had an idea. What if a camera, which in some terms is viewed as a sensor, could be connected to the Internet? What would happen if people had opportunity to have their camera phones connected in real time to the rest of the world? The company was called Bambuser, and we set out on a journey to democratize the technology that's earlier only been available for a lucky few, namely the opportunity to broadcast live video from wherever to whomever. Back then, in 2006, we did analyze three major trends that we saw. It was me and Jonas Wieg, who did those analyzes of the trends. The first one was that the cameras or the phones processing power would grow increasingly during the next year, meaning that it could compress the video faster and faster. Secondly, we saw that the cell networks were growing rapidly in the terms of bandwidth. How much data per second could you send? Thirdly, and maybe most importantly, people would get flat rate data plans. So for one fee, they could all present everything. So this was 2006, and you have to remember that this was before the iPhone, before Android and app stores. This was when Nokia and Symbian ruled the world. As the operator three here in Sweden, they were handing out three data services to your call service, because as they said, no one is using it. That was from the time when we analyzed how Bambuser would work. And hopefully some of those unpredictable things, like iPhones, like app stores, will happen to the three trends that I will talk to you about today. Firstly, maybe you want to slide for that. Firstly, we will see a move of human communication. From traditional GSM, GPRS networks to 3G networks, and hopefully if Joachim and his company gets as they want, to 4G networks as soon as possible. But what happens there is that we have this fantastic infrastructure still there, the GSM, GPRS networks. And what actually seems to be is that they fit pretty good with what the Internet of Things want to do. It can carry small packages of data quite easily. And since it's already there and have a great reach, you don't need to put up a cell tower every 500 meters. It means that it can be used in many scenarios. Also, very importantly, the radio module or the radio circuit, its patent is running out, which means that the price per radio module for a GSM or GPRS will lower itself really quickly during the next couple of years. Secondly, it's something that David is going to talk much more about, but it's the era of open-source hardware, not just open-source code, but the open-source hardware, presented mostly here in the Arduino platform. This opens up both for rapid prototyping. It's easily and fast. You can do quick, nice, good-looking prototypes. But more importantly, it lowers the price for different kinds of applications or different kinds of scenarios. So you know the engineering guy at home who want to build a thermometer to his girl's horse because it's about to have a baby fall and mammals actually raise their temperature just before they were about to give birth. He is getting his girlfriend's complaints all the time. Is it having birth now? Can we go to the farm and see if it's having a birth? This can send notification by itself. And the same platform can be used, as we saw in Japan, in the spring to detect radiation as several hundred Japanese were putting on gigometers on top of this Arduino platform to see if the radiation was acceptable or not. And they would actually do that maybe because they didn't trust Telcos' own analysis. So what they did, they took the data, they put it on the web and researchers all over the globe realizes to say, okay, stay indoors or go outside. Thirdly, it's something that we, the more sort of social media people have been experiencing a lot during the last couple of years, is how do we share this data? Because if you have all those sensors, you have them in your phone which you know of, GPS, cameras, et cetera, et cetera, we're starting to learn how to share the data from those sensors. And as we get more and more sensors involved, door locks maybe, that open and close this door, do you want to share that data? Do you want to share that with other people? I think we will learn over time that as those different kinds of data can be beneficial for a sort of greater good, we will accept to share the data. Yes, it's okay for me to share if my door is closed or not, if I don't say that it's at my address. But I can say it's in this region, which might help Malmö City to say that, okay, we have very good statistics that 8.45 every morning in this area, people seems to lock their door for the first time during the day and maybe we should set in more buses. It's those kinds of services that we'll see up here. And we're seeing this already. There's a company in the region, just based on better weather forecast, can lower the energy consumption of your heating system in your house by 15%. Just by instead of being reactive, as your traditional radiators are today, they can say that, okay, the cold winds are blowing in Copenhagen and we know that it shall soon cross Sundat and therefore maybe we should rise our temperatures in your home to be prepared for the colder wind and not lose energy in that time. So those are some of the major three trends that are going on, and this is happening right now.


Video equipment rental costs paid for by peep code screencasts Okay. All right. Is this that can everybody hear me any technical problems before I start? All right Well, I want to start out my presentation. I like to jump right in Just get right into the thick of things This is one of the Tools that I'm going to talk about This is a part of a god.rb watch configuration file and I'm going to return to that in a little while So I work I'm the co-founder of other inbox, which is a startup based here in Austin And pretty much exactly one year ago. We were Running a prototype of our app was rails app running on a tiger Server that we just happened to have on a run in the office. It was up on a breadboard That actually worked pretty well for a long time We've got a couple of dozen early early beta testers using it giving us feedback But obviously in the long run that that isn't any that isn't what we wanted to be running our whole app on so today We were running in the cloud and this was my this is how I'm visualizing This is meant to represent the excitement of cloud computing and how distributed and wonderful it is and We're the super hip developers and we could be on a hay bale working on our app, and it's totally fine We're not tied to some server room So, you know, but more seriously We're really able to take advantage of running our app on a cloud platform We can really think about our infrastructure completely differently Our servers are disposable. It's easy for us to experiment You know when we do major changes to our database We can launch two or three different copies of the database and run the migration at the same time So if it fails on one if it's something that's long-running, we're not totally totally stuck and There's a lot of different ways we can distribute work between our servers But how do we go from that one server that just we just happen to have that we could get up and running quickly To being to working in the cloud Well, it took me, you know a few hours to get the servers built if you're whatever cloud platform you choose There's usually a lot of pre-built images that have most of the tools you need So really isn't that difficult for us we use EC2 There's a ton of images out there that contain most of what you need and the rest of the time You can customize it to your own needs So it probably took me a few hours to build the servers It only took me like maybe 20 30 minutes to move the app over, you know I have a little bit of cognitive dissonance because I'm About nine months having passed having done it So I'm probably being a little optimistic, but I don't remember this part taking much time at all Moving from one whole ecosystem running on this one machine to a whole ecosystem that is running on any number of machines, you know the That scales itself and is very Highly distributed that only only took 30 minutes to get that kind of up and running the rest of the time I was working on building new features You know taking advantage of being in the cloud you be having this flexible environment Being able to use disposable servers being able to spin things up when there was more work to do and shut them Down when there isn't So that's what I'm going to talk about Why how why was it so easy for us to transition to this cloud environment? What are some of the things available to you to help you take take advantage of it? I think it does tells pretty well with the last talk You know Where I'm going to show you how maybe a little bit lower level of detail Not not using jet not using third-party or your own gems, but using some third-party tools to help you manage your systems So any kind of talk like this There's a you have to we need to define our terms because cloud computing is now like web 2.0 It kind of can mean whatever you want depending on what you're trying to sell people So let's just for the sake of argument for this talk agree. This is what I personally Mike Zabelski mean by cloud computing All the way to all we're talking about is Servers running your code that you consume those servers as a service It means you rent them by the hour. You don't own any physical hardware. You don't have a You're not responsible for providing power to them It's just something that you can count on depending on whatever level of service agreement you have with the the provider But it also means that your servers are loosely coupled. You have code running at different places It's not you know You're not necessarily going to know who you're talking to ahead of time You don't have a whole lot of information about each side of a connection It's distributed. So like for us We have essential the essential parts of our system are not all running in the same place within Amazon's Computing cloud so but we don't really care exactly where the stuff is running We just want to make sure there's enough Segmentation so that they have a problem in one place Nothing fails in other inbox the service keeps running on and also it's a single point of access So wherever in the world our data is stored or the code is running It doesn't matter to us because we have this all we had to do is SSH into an IP address And it's there all we have to do is set up our DNS and the users can find the server So cloud computing it's grid like if you're more comfortable thinking of it that way Just being this grid of servers that all talk to each other It's utility like because you buy this stuff by the hour the cheapest instance But we use is like ten cents an hour I you know, I don't know the pricing models that Heroku and engine are engineered to use But it's the same kind of thing where you're you're not like stuck with this Device that you just have to own and maintain you're buying it by the hour and you know the main thing is that it's the clock computing it means you're cheap redundant scalable and flexible But maybe a little too flexible so some of the things that You might not Have had to deal with when you just were dealing with this one server that you could if you had to hard reset Or that you could actually you know connect a monitor and keyboard to actually get to you're gonna confront some of these issues I'm putting up here. I'm not gonna This beyond the scope of my talk to talk about sort of like lessons learned probably because I actually think I'm still learning the lessons of How to build an app and deploy it in a cloud? But what I'm trying to say here is that It's great being will turn all these servers on and off and have them auto-scale and communicate with each other but that adds a lot of complexity and Ruby can help you with that complexity I want to share with you how we're using Ruby to help us manage the complexity of of being in a cloud So to start with here's all I was thinking about it We really use Ruby as the code that glues other Ruby code together But I feel that that really underestimates Like it even that doesn't really capture it because you might as well you could just use pearl for that You know It's that implies it will basically it's just a bunch of scripts that kind of hang together And it just makes it so we don't have to type in as many keystrokes, but that's not what I'm saying at all more than that We really have a ruby ecosystem Where it's ruby code that's animating ruby code the connective tissue of other inbox is ruby You know, we're not but we're not like dogmatic about it If there's some other better thing that comes along we'll definitely use it. I'm just telling you For me working on this for one year. I was only developer for maybe six or seven months I was able to get a whole lot done and not spend a lot of time on sysadmin stuff Just by by taking this approach. So I do want to throw that in there like I hope nobody's an IRC right now saying oh my god This guy's a freak. He totally disrespects all their languages. I don't mean that at all I'm just trying to show you some of the benefits that that we've derived. So what am I talking about? What kind of what does this mean a ruby ecosystem? I mean Ruby code that is scheduling the execution of other ruby code. This is an example from a gem I'll talk about later called Rufus scheduler Ruby code that is monitoring other ruby code. This is God again, which I'll talk about Ruby code that kills other ruby code. This is a task from Capistrano Actually, if you want to get technical, this is a Capistrano task. That's calling God RGB So it's like two layers of ruby connective tissue ruby code that launches your servers. So We right now have a homegrown script that we use to bring up new servers Which I actually wouldn't recommend in the future that since I wrote this there's been a lot better solutions and you know I'm going to show you though this full thing of code and it's just kind of one of those scripts It just got longer and longer So I'm not super proud of this but I'm putting it out there, you know I was able to write it really fast and that's why it didn't take me very long to get us up and running on a new platform Ruby code that Configures your servers. So when part of the launch process that we use Is we use the DD client to talk to DIN DNS so that when we launch one of these new servers It's able to get the proper domain name. Whatever domain name we want associated with that machine We can go get it because that's not something you get with Amazon although You can get some static IP addresses, but you're always going to need some kind of dynamic DNS if you want to do this at scale at all so that's this what I'm saying it's ruby that provides a Blanket of freedom and security that we as ruby developers can rise and sleep under All right. I wasn't sure if anybody was going to get that. I have a greater responsibility than you could possibly fathom Okay All right. So why? But why would you do this? If I was in the IRC channel right now, I'd probably be saying like well, doesn't this guy know about Monit or you know Launch D's the bomb Whatever You know or some of this probably I'm sure there's like a hundred things that are even better than what I'm going to show you Why would you want to make everything in your system all ruby all the time? Well, I think for any one of these of cases you can definitely make the case There's probably some better thing out there that's been around longer that you know the original Unix developers wrote and it's awesome So like I'm not saying don't don't do that. Although I'm not really super fan of launch D So the reason why you would go this way is going back to I said earlier about complexity all those different Systems They all configured a different way you have to use you to think about them differently. They have a different syntax And I'll show you some examples of that. Yeah, and if you're doing cloud computing, right? You should it's not just like the exact same thing that you were getting from your traditional conventional ISP It means you are Taking advantage of the loose coupling and you have one machine what you know some code running one place That's giving tasks putting them on a queue for some other Server to pull off and start working on and you got your storage is all distributed So that's that's part of what has is a complexity. I alluded to earlier The fact that the servers are disposable means you got to start keeping track of them You you know that it's easy when you have these five boxes You know where they are you can get your hands on them You don't have that anymore or your ISP could get their hands on them Now you could just start starting these up So this is a snippet from the we use the right scales free management tool to kind of to help us with this part of it Which is a rails app by the way? So like look at the names of some of those their purpose launched They only exist to do a test for somebody named Ian You know one of them doesn't even have a name yet. Who knows what that is Let's just say one example of the kinds of complexity you can find with all this newfound power So Ruby can help you reduce that complexity. That's what I'm here to talk about So let's talk about some of the reasons. How does that work? Well, first of all We all know this I don't think you'd be at this conference if you didn't love Ruby and its expressiveness So you can just say things more clearly more powerfully in Ruby than you can and in some of those other systems so What's what's more readable to you if you were a non programmer and you had to wait in and try to figure out what was going on No non Ruby person or just yeah, not say non developer non sys admin. Would you rather read this or that? You know I can never remember it's like I seriously can't I can't tell you Does that mean it's going to do every five minutes or at five o'clock? I don't know I don't want to know I don't have to do that anymore. What was that? Five a.m. Every day. Well see look at that. I might have written that wrong, but there's no there's no doubt what that means Okay scheduled every five minutes. There's a whole bunch of ways that you can tell Rufus to what time you want things to happen I'll show you more examples All right, so what else what else is so great about Ruby for these kinds of tasks? Well This is not something that I had anticipated, but it gives you platform independence. So as long as you have this All a lot of these tools you're depending on probably will work, you know I mean something like God rb has native C extensions you this it's obviously this oversimplifies it But it means that you know, you're not tied to any one particular Implementation of all those tools. I showed you before now this pretty much give or take is going to run everywhere It's going to have a better chance of running everywhere than all those individual systems that are all written a little bit differently another example of platform independence You don't have to write shell commands There's stuff in the standard library that will save you from having to use back ticks on some of the code I'm going to show you I didn't do that. I kind of so busy trying to figure out how to launch things. I just Defaulted to my knowledge of shell scripting, but if I had to rewrite it I would I would use all file utilities. So then it doesn't matter at all what platform I can feel really confident that if Ruby compiles there, it's probably going to work Who does anybody recognize the syntax in the middle here? This is from a really cool gem called rush Ruby shell and it It basically makes it takes a different approach to the standard library. It's not very object oriented You might have noticed rush gives you it's like an object oriented wrapper It does all the same things that file and file utils do So obviously the latter one is more readable But they're both more readable than having to try to find a shell script that might work in one place And might might not work another one thing that rush does really well As it gives you more powerful globbing and file matching things like that Makes it just makes more sense Okay, another reason why it's this is such a great idea and why Ruby has really helped other inbox Is that this that means you have testable code? You can write test to figure out if your Connective tissue if this glue that's holding your whole app together actually works That was something that they alluded to in the in the last presentation So this really isn't testable is it? How do you know that it runs at 5 a.m.  Yeah, I mean look at that. It's just you know, it's it's great when you know I'm sure like I've used gone over that's fine, but like you know, I don't does that supposed to be a star I don't remember. I don't use it anymore instead. I use that and So you can write a test that proves you're you're scheduling this the right way By the way, I also I definitely I feel we've been very much saved by this approach where we put as little as possible in the glue code Like every rate task we write every roof is scheduled job with a few exceptions They all just call a method on a class because then you can unit test that class much more easily it's separated from this scheduling code and I'm finding that if I ever writing something like this I almost always want to be able to execute it from the console at some arbitrary time of my choosing or just to exercise it So if you end up you should start scheduling long lists of tasks in there It just gets kind of messy exception handlings were difficult logging problems, etc. All right So I feel like I could almost give a whole talk on this but Less context switching what do I mean by that? Have you ever been working really hard on the JavaScript part of your app the stuff that runs inside of a browser or? You know you have a piece.  They should all be underscored whatever same thing applies here if I find that It's like especially when I'm doing things with the God RB which is it actually I don't want to get ahead of my slides here but I just find that I Can stay in Ruby the longer I can stay in one context one language environment the better So if I'm writing a Ruby application that is being monitored killed destroyed launched What have you in Ruby? It's so much easier for me to just jump over to that configuration file Change a few things to get right back into my code Also The if you treat this some of this glue like it's really part of your application It's a lot easier to get it under version control So everything all the stuff that's critical for our app all our config files All all out of these examples. I'm showing you it's all in subversion so we can go back in time All the benefits that come with version control we have Something else that would you know, we're just starting to see is that There's a little bit more of a line on alliance between the people who the network operations folks and the system administrators because They're working on all speaking the same language I mean it does require that you find the people have some facility with Ruby that can make your hiring more difficult But you know, I would say Ruby is a pretty easy to learn language. It's pretty great And it's you know the whole point of what I'm showing you is you can write this stuff in a way That's easy to understand and read so it's not that big of a barrier and what you end up with is developers who really understand the environment and People who are in charge of the environment who really understand the code and people can do a little bit of both I think there's a lot of benefit so not keeping those people in silos like the example He just gave about how he had to give his code to this other System administrator and then walk away that that doesn't see that that wouldn't be good for us as a startup trying to be nimble And just I also would like to say that you can be very you just already know that in this language You can be very productive and you could spend, you know more time on Features and things like that and you can because you're of all these other benefits that accrue to you You could just get more done. You don't have to wrestle with the configuration file all day okay So how about some let's let's get some some red meat here some useful tools Oh, my There we go. All right. Sorry about that. So there's some of the things I want to talk about not in a super lot of detail But I just wanted to Wet your palate to get you excited about some of the possibilities out there. All right, so this is my favorite one That's why I put it first. How many people have heard of God rb before? Yeah, all right, so this is really great for monitoring processes on your on your server and Taking action so it's it has a reporting capability It could send you an email something goes wrong But the real value of it is that if it sees Your your mom girls die or if it sees one of your your daemons go down It knows how to restart it and even better you can you can be very fine-grained about it Only try to restore this thing five times and then stop so you don't get a flapping condition. So here's what one looks like This is the like the canonical example is using God to monitor an application server like mongrel This is a watch condition and you could see a lot of Familiar Ruby help here like I'm using an iterator over a bunch of arrays So I only have to repeat this configuration block one time for four different mongrel instances And I've got this start command there stop command restart And how often how long do I want to wait? What's my interval before I start monitoring something? So I know it takes about 10 seconds to get everything totally up and running I'm not going to start checking to see if it's running for 10 seconds. So The syntax can be a little bit hard to understand at first The bottom one here saying all right if this process that you're monitoring is not running I want you to start it If and at the top here if it starts to use more than this many megs of memory something's wrong I want you to restart it must be some crazy image magic thing going on there You know if your CPU usage goes up. I want you to restart it and here's that Flapping one that I just talked about the life cycle So if you start to have problems more than three out of the last five times you check We're just gonna stop monitoring this we're gonna leave it turned off And we're gonna send out the notification to the warnings alias So something else that I use a lot. I don't find a lot of people talking about but I just think is the coolest Jam ever is Rufus scheduler. So this is an example of how Rufus scheduler works It's from the documentation. I like this because it shows you all the different ways you can express Time it understands all the different formats that that you might want to use You can even you can pass call into it if you're most comfortable with that But this is This is not the method that I recommend Because it's harder to test what you're actually doing in your scheduler instead. Like I said just Tell tell Rufus schedule what time you want something to happen or how often you want it to happen And then have just have it call one of your when your task and maybe I wrap a little bit of logging around it all right So there's a couple of different gems like if you happen to be running on on the Amazon platform There's a couple different gems you can use. This is the one that I think works the best It's put out by right scale. I have no affiliation with them. I just think it's a cool jam And it lets you manage this stuff that your queues your servers your storage has all the different API's you need All in one namespace and works pretty well, and it means that most of that stuff I just showed you really boils down to this all right find the queue that has this name I want you to put a message onto that queue There's also a get that which takes me just off the queue, you know And often the pattern is that you are putting a file name into into your queue and the file name is something that's in Your bulk storage in s3, so it's not much more code than that You can you could probably you could write an app that is Sending tasks back and forth to ask us in just a few minutes if you know you're doing if you have a gem like this All right a lot of people most people know about Capistrano There's also this alternative called Vlad the Deployer. How many people have heard of Vlad the Deployer? I Actually kind of like it better It's a simpler and it uses more native things in your environment because a lot of things people wrestle with with Capistrano can boils down to problems with SSH connections and your keys being wrong and also Vlad uses the Rake so it doesn't have its own different taskings if you already know right you can do Vlad and it has a really cool logo That's cool. So I think I'm gonna you may have like a Rate of lad task file or deployment file looks as simple as that You might not need more than that that last command is what actually will deploy your app And you can make it more complicated than that, but that's usually all you need So that's an example of Vlad all right But also you don't necessarily most of the time or often you're not gonna need something else someone else wrote you just get You are gonna need to write some of that glue code some of that like roll up your sleeves and like and let's get this done so Actually want to show you a little bit of that so we can get out of slide land for a second Okay, I had this size for different resolutions that will work Oh Think preview there. Sorry Losing control here. Okay, so here's an example of a plain old script Obviously, you know if I had to write this again today I probably I would do it totally differently One of the problems that I found is that I put too much into this script I'll explain that in a second. So this is launch.rb Launch.rb is as a wrapper for the command line tools that Amazon gives you to launch your instances And just means that I don't instead of us having to remember all the time What are our image ideas? You know to get the instance up and running What image goes with what server? We just have this one wrapper right here that does everything You know complains if you don't tell it the right parameters and things like that So the whole point of launch.rb though is where we wrap this Command line tool and we also make a small zip file that is available to the instance at the time that it launches And that's called we go at the payload the payload has everything needed to Configure this server from scratch. So we have this disk image That's very large and hard to change and that just represents the raw state of one of our servers But we can make that server become whatever we want So like a couple of the tasks that what takes care of is assigning the host name So that as soon as your server comes alive, it knows what you want to call it It knows what domain you want it in because now you can launch the staging environment Which looks exactly like your production environment, but has a different domain name You can just have all this taken care of Plus all other configuration files that you want to have present right at launch time So we zip it up. We figure out what arguments we want to pass to the command line Then we launch it. So that's the command what we're doing right here down here ec2 run instances Type what group you want it in and this is the whole point of this exercise is this payload file name down here That's what contains the stuff to provision the server. So the way it actually works is when I'm sure this is you get something similar in other cloud platforms, but in Amazon we have these Linux boxes and The they have RC local files that work So it's the last script that gets run as this as the server is being Booted the last thing that happens is RC local runs RC local looks for that payload file Unzips it and it looks for a file called auto run rb And it just does whatever's in auto run rb So the thing that I would change is there's tons of stuff in here That I don't think really belongs in here auto run should just be like the bare minimum needed so that you can communicate with the server So putting an SSH key on there so that your team can get to it You know giving it a name stuff like that like I'm making whatever changes you need since you built that solid disk image That's the basis of the server. So Unfortunately, that's this what we have I haven't had time to fix it But this gives you an idea of how such a system might work What I would change is that instead of doing this in auto run rb I would make a Vlad recipe or a cabastrano recipe that would do this after launch time So there would be like get there be this launch script It's very simple very lightweight and then there would be a cabastrano task called provision That puts up all the different configuration files and make sure all the packages are present that you need And then I would have like a separate deploy task that would work just like any other app All right, so I'm looking at code. All right There's a couple of other gems that I know I haven't used but I hear good things about that I wouldn't want you to be aware of So pool party is in real active development right now And they don't have any other examples that I could see except this one, but this I think this is very intriguing I would be very interested to have this kind of power to Bring up my servers and provision them This sounds like a lot better way to go than trying to write my own thing If I can if I can use something else and continue to work at an even higher and higher level to manage my servers So that I can spend more time getting features out the door. I think that would be great I've already talked a little bit about rush not only something I've played with but I think it would Really change the way that I deal with the operating system I feel like a lot of the problems that we've wrestled with as our team has gotten bigger and more people have worked that This is not everyone's familiar with what files should go where and you know, we This is the part where we could use Ruby's expressiveness a lot more And I think a tool like like rush could do that There's also a gem called pal which has a similar Parts of it are very similar to rush, but this just looks nice to read. This is more intention revealing to me This is more. This is just more fun than writing a bunch of back ticks And I think you would this will get you you up and running faster, which is the whole point of doing this Okay, and let's not forget. There's there's workhorses of the Ruby world that I Would you know, I wish I had taken more advantage of earlier in this process There's there's rake which has all kinds of things you need past dependencies All you know, you're most of us have used rake that it's can be very helpful for managing complexity Think about using a rake task before you just write a random one-off script I think maybe that launch thing I use that probably should be a rake test also And the file and file details give you a good abstraction layer on top of the operating system because of the importance of Which helps with the importance of being platform independent like I talked about like we're thinking about maybe moving through a different operating system Using a different disk image to to base her system on and to me It's like I don't even care because I know as long as all this stuff compiles and we could test it You know we get Ruby interpreter and our gems work pretty well. It's going to be fine Okay, there's a couple other gems that are specific for Managing cloud stuff and you geared towards EC2. There's the rubber gem. There's elastic rails. There's Ruby works I don't know a lot about them, but they're definitely Things that can help you manage a cloud and you know, they're free unlike some of the other Services that you have to pay for so I would give these a serious look if you're considering going this way Here's some things that I would like to see that I haven't come across that We don't use a Ruby for or we just don't have right now Being able to configure a firewall like I wish there was something like adhesion for firewalls And maybe you could even use adhesion for that. I wish there was a Ruby health monitoring system and log analysis I mean there there is I know there are I'm aware that there are things that will analyze logs But something that's a little bit more like that you could monitor my entire clouds logs in Ruby and Backup that's something else that we have a shell script for it. It's just like I just want to get all under ruby okay I've talked already about some of my lessons learned what I would do differently I would I would use rush or make heavier use of the standard library I would write more unit tests for that glue now that I've seen how easy it is to write It's like it's not that much more work to write some tests for it for something That's so important to the functioning of the app and I would do as little as possible at that launch time because When there's a problem when you have to go look at that log file the console log It's really hard to debug why didn't your auto run script fire? I feel like I spent too much time on that one. I should have been trying to make that as thin as possible But it's just me not understanding the what was how often we want to be launching these things and changing the purpose of the server Midway without having to relaunch it etc Does anybody have any questions? We have a little bit of time left We don't we have we are we have a firewall on the on the hosts It's a that's stateful, but also for at least for us and Amazon gives you a packet filtering firewall as well So it's really easy to get something That kind of blocks the low hanging fruit like okay I don't want to you can block whole ports out But if you want to protect yourself from a sin flood those kinds of things on the ports that you do allow And you need you will need to install something yourself, and I imagine that's the same for all the all the providers Yeah, so there are there are companies that put a management layer on top of of You see to or there's just companies like engine yard where you could just buy the whole thing includes a management layer I think I think we're getting the point. We have to do that. We have I would say If you get beyond six or seven servers, it just starts to be a little bit Be really nice to have some of that we feel like we are starting to outgrow some of the like the hand-rolled ruby scripts that I've been using and Like the event also some of these companies have pre-built components that they you know They can help you configure like a load balancer. So yeah, I'm definitely excited to try that out Do you mean like making sure the storage is like retaining what's stored on the server? You can kill them you could yeah, it's easy to terminate them. There's I showed you the EC2 launch There's also a terminate command. I'm sure the other providers work similarly So the the the question was how do you manage DNS when you you don't necessarily know what the IP address of the server is going to be those two two-fold answer one at least for We use for Amazon they give you five static addresses now so You could do a lot with just those five static addresses and you can easily reassign them to different instances And then we also use a dynamic DNS company that let so that you know We had the servers can tell the the DNS provider, you know, okay. I'm now Alpha one or I'm now mail or whatever or whatever we want. So we use there's a that actually is not Ruby That's DD client is the name of it, but that's just that's like the industry standard apparently so no reason to reinvent that wheel shoot We've we're very happy with the cost of it. I was not involved in like the the decision to compare this against other hosting solutions we mainly picked it because we wanted to be flexible and Have disposable servers and be able to Launch a staging environment and play around and then shut it off and not affecting the production database So really wasn't wasn't mainly a cost thing, but it it seems doesn't seem overly expensive to us I don't think it's as cheap as some people think it is. I mean it kind of can add up because So if you're running the servers 24 hours a day and you need beyond the most minimal basic kind of server it can get expensive But I don't think I think it's competitive, but I don't but I'm not I wasn't involved in that much detail Yeah Yes Yes, so They just added it used to be that you had ephemeral stores Whatever you wrote to a disk device you would lose when your server died Amazon just added that and we have started moving some of our servers over to it It's pretty cool So we've been up We've been up on it for More than the nine months or so and we've had one just recently They emailed us to say hey the server that your Instance running on is not looking good. You might want to move migrated over and so we haven't any problems with it But you definitely put one of the things I didn't get into in the talk, but that you have to think about is You don't have that much confidence in any one server See if they build a lot of redundancy in so like my sequel master slave relationships What are clustering? I mean there's a lot of there's a lot of different ways you can do it But that's one of the things you are gonna pay for is like, you know what each any one instance They're cheap, but they're also not as reliable as you might like No, and we have I Mean we're other much it has to do with email So that's that's not a that not much I could say so it's very it has to be super reliable So we have never had one of our No, no, but we had the mail servers running for like a hundred fifty days and one of them Had a problem, but because that's so important. We have two of them Our DNS is set up so that the other mail the other server picked up the mail and absolutely no interruptions service whatsoever It's in a different availability zone So even if some disaster befalls one zone, we'll still get your mail. You know, we'll ever be the wiser Yes, we were but we built our system was built in a way that if any of this stuff isn't available any of this cloud magic We just build up the whatever work like if you're making a site that There's image processing for someone you should build it in a way that assumes that the queue is not always gonna be available That like you might have to store a batch of work on the local machine You know like I guess in that case it would be people upload Gigantic image file to you and then you turn around and push it into Some kind of lock storage cloud like s3 and then you so another server can pull it off Well, you should assume that some percentage of the time you're not gonna be able to do that right away And so our stuff is written to be as dumb as possible So I really I just have a loop that like looks for any messages that have not been pushed up into the cloud And if it sees one it just puts it up there So that means there's some kind of IO error or yeah, there's an outage That loop will just keep running keep trying to do the job until it succeeds And that's also the way that they Taking things off the queue works the same way So if you take something off of an SQS queue, you can say if I don't report back to you in 10 minutes You should assume I didn't do this work And so then if there's a problem on that end of it if your server takes a job off the queue and then it fails 10 minutes later, it'll be available for another server. So I just feel like That's just one of the things I've had to really change my thinking about it so not to not count on the reliability of the servers, but also to That's a little bit freeing in a way Like you can make things that are very loosely coupled it kind of forces you to do that And then it hasn't been a problem Believe me, I wouldn't be up there talking so enthusiastically about it if like it's definitely made my life easier Well, this is one of that's one of the things that I can't get into too much detail on that part of our architecture but there are a lot of like What I would point you to is the the blog that right scale puts out has really awesome explanations of how to set all that up and how you can have your slave can be Almost exactly up to date with your master I mean, you know if you're gonna make a e-commerce site There's you know banking transactions, you know, this might not might not want to put your database in this environment unless you really know what you're doing But you know we We don't put everything in the database would be my answer to it We keep all we keep a copy of all the critical data in text format other places That's just because because of the kinds of problems that were solved.  It's just that's all I can say about it I mean people have found a way to make it work and that's that's the resource I would point you to because it's it's fascinating to me to read about how People have made are making databases work and in clouds Work Okay, yeah scout I didn't know that I was 100% sure that I was getting one of those things I was gonna put up I was really hoping somebody would tell me ah didn't you know this awesome thing already exists. So thank you I'm seriously. I will check that out. That was on my Google queue. All right We will we will check it out. So I'm gonna I think I want to wrap it up So if you have any questions send me an email I love talking to people and making new connections and you know, maybe we can go out to lunch or something like that And I do you know work Can't say much about what we do But we're coming soon and I will be remiss not to mention that we are an Austin company It's a really great environment to work in everybody's super cool. It's as cool than me or cooler It's very flexible, but also highly professional So if you want to you know work really hard on something that is really game-changing But not have to go to a lot of boring meetings like come talk to us All right, so thank you very much video equipment rental costs paid for by peep code screencasts


Organic photodetectors, OPDs have become increasingly popular due to their unique features such as tenability, cost effectiveness, flexibility, and ease of fabrication. Recent developments in device architecture and operation mechanisms have focused on improving performance and applications such as spectrally selective detection, wearable devices, and integrated optoelectronics. Future prospects include addressing research challenges and exploring new opportunities for OPDs. This article was authored by Hao Ren, Jingde Qin, Yan Qingli, and others.


Here's how you can register for a free Shopify store without breaking the bank. Shopify now offers a free three-day trial to start your online business, then just $1 for three months. Here's the link to claim your offer. You can also find it right below this video. Now look, Shopify's been around for a while, but there was never an offer this good and never a better time to start your online business. Here's how easy it is to claim your free trial and register for a free Shopify account. First, I'm gonna click on the link below to register for a free account. Then you can see up here it says start a free trial and enjoy three months of Shopify for just $1 a month. I'm gonna click on sign up now. Now next, Shopify is gonna ask us some questions about our Shopify store, but since we already know what type of store we wanna create, I'm just gonna click on skip all. Then it'll ask you where will your business be located? So choose the right country where you reside and click on next. Then we're gonna create our Shopify ID. So you can go ahead and log in with your email, with your Apple ID, with your Facebook account or with your Google account. In this case, I'm gonna go with email. Then enter your email address and your desired password. Then I'm gonna go ahead and click on create Shopify ID. Now in just a few seconds, it's going to validate my account and begin my free three day trial, then just $1 for three months. And here I am on my new dashboard that's pretty much all there is to it. My Shopify account is now activated. I've got three days to create my store, then just $1 a month for three months once I select a plan. So after that, I'm simply gonna click on select a plan once those three days are up. And here, as you can see, I've got $1 for the first three months. That's an amazing deal. Once again, take advantage of it. Enjoy your three month trial of Shopify. You'll have more than enough time to create a highly engaging store. Start raking in sales and profit before you have any expenses. Click on the link below to get started and enjoy the extra profits.


It is the 4th of March 2020, a fantastic Thursday it is today and I hope that you are well, I hope that you are doing fine. Thank you very much for keeping it Y254. This is Power Talk. We have come to you each and every Thursday from 11 to 12 am. I repeat, all this show will be again every Thursday at 9.15 pm. So make sure that you tune in for that repeat and much more. This is why we give you life inspiring information, messages that can push you towards becoming a better version of yourself. My name is Ram Magukko. Thank you very much for keeping it Y254. We are broadcasting live also on our website at www.y254.co.ke. Make sure that you head over there if you want us to watch us online. We are broadcasting also on our online platforms. On Facebook and on Twitter we are at Y254 Facebook and Y254 channel on Twitter. This morning it's all about discussing the X-Factor, our access, our access for keeps. So many people normally struggle with their access finding out how to move on from them. Is it possible to move on from a long term relationship that has been there that you really had a lot of expectations from? Is it possible to move on from your ex? Why do we keep on going back to our exes? Why do we still keep on contacting them? And is it okay to just be friends? Well this morning this is what we shall be putting into focus as we answer the question. Our access for keeps. Make sure that you be part of this conversation and shall be highlighting where you can find us in a bit. But to help us in this discussion, I'm joined by none other than Virginia Afiji. Hi, thank you. She is an artist, a TV host and a radio host. It's a pleasure having you. Thank you. And to my extreme left I'm joined by none other than Edwin Erteigo, a pastor, a mentor and a trainer. Hello. And welcome. And I would like to also recognize the presence of a few individuals, University of Nairobi students who are also watching us live. And they are in studio here as our guests who are watching us live. Thank you very much. A big shout out to Faith and Bernard. I'm Bernard, depending on what you say. A big shout out to them, University of Nairobi students also with us watching the show live on studio. I don't know what to say. But a big shout out to them, University of Nairobi students, you are well represented. This is Power Talk. Power Talk starts now. The hashtag as always is Power Talk show on Twitter at Ram Aguco. You can find me at Ram Aguco and at Y254 channel. Let's get this show going. Let me start with you pastor. Yes. Our access for kips. And just to start this conversation, is it healthy to just keep in touch with the next? It depends on a lot of things. Like what? One of them being what was the expectation of the relationship when it began in the first place. What brings about the X factor? What makes an X to be called an X? The reason why you broke up. The reason why you broke up. That will inform on whether they are for kips or whether you are to move on and go.  When you want to go from here to Karyobangi, you take Matatu. If you want to go from here to the United States of America, you will take a plane. So it means Karyobangi and the United States of America are two different places. So if you had a relationship where you did not know where you were going, both of you, definitely the X factor will come about. Meaning one will head to where they are going, whether it's Karyobangi, and the other one will continue their journey to the United States of America. There are levels. Lens. Lens. Even when you are flying a plane from Kisumu to Nairobi, and another one is flying from Kisumu to the UK, they do not fly at the same political miles. And also the sea level is different. It's different. So what brings about the X factor in the first place? The reason as to why people break up? Depending on your destination or depending on your journey, you can say that I will stay in touch or not. Yes. Okay. Interesting. Meaning it's a 50-50 thing. It's a 50-50 thing. You can stay in touch or not. Again, it depends on the maturity of the people who are in the relationship. Okay. How do these people break up? Is it okay? Do you guys agree with what he is saying? No. Personally, according to me, I feel like a close chapter should be a close chapter. Kamaimeishaimeisha. Kamaimeishaimeisha. You know, there is a reason as to why this person is your ex. There is no way this person is going to be your friend. Your brother can be your friend. Your sisters can be your friends.  Definitely. You had dreams. You had plans. There are so many things. There is a reason as to why you had a misunderstanding and both of you had to part ways. So to me, it's a no-no. It's a no-no. So you cannot just be friends with an ex? I personally, I feel like it's unfair to the person you... Maybe you're trying to start something with. Let's say I'm a friend with my ex. What about the person I'm with right now? Let's say my ex is a friend with... This is my friend. What about the girl he's trying to pursue at the moment? Are they going to be okay with that situation? I don't think so. So according to me, it's a closed chapter. It's a closed chapter. Let it just be the way it is. And I'm looking at a scenario whereby you have an ex and your ex dates your best friend. Can you say that now we are friends as ladies, we are best friends. Even though he is my ex, we will not talk to him but I'll be talking to you. Isn't that a complicated scenario? How do you balance that? Let me say this. You can only be a friend to your ex if maybe there are kids involved or there is a kid involved. Because in such a situation you have to be friends for the second, the children. But if there are no kids involved, there is no child involved. Completely so. I see no point of any friendship. Even if the person, the other thing is your best friend. I'll have to lose one of them or either both of them. Complicated. I finished my point by saying it depends on the level of maturity. Any time you are leaving a room you have always said watch out on how you close that up because anything might happen. So the level of maturity of who? Both of you. You yourself, your ex, your level of maturity will determine whether that relationship can be kept. Listen first. I totally get his point. Excuse me. When you have broken up with someone, the factors which determine whether your relationship will be maintained as friends depends on what was the purpose of the relationship. In the first place, what was the purpose of the relationship? Any time that you are getting involved in a relationship they always, many people describe and they say that the end justifies the what? It justifies the means. So it means as you're beginning the relationship, look at what are the interests first of all of both of you. Then those will determine whether when you come to the end of that relationship you will say that you are getting involved in a relationship but at the same time if you are getting involved in a relationship, you might need the other. Does that mean that you cannot be able to come together? You are poking my interest now. You are getting involved in a relationship. You are getting involved. I am not saying that you are at the stage, you are in a relationship but what I am saying is you don't have to be enemies but what I am saying is what is the point of keeping staying in contact. That's the main issue. I don't see the point of communicating, you keep texting, you keep calling. How about the person you are trying to pursue at that moment? When they hear you are a friend with your ex you can call your ex when you need them. It's pointless. What are the boundaries for an ex? How do you see that these are the lines that we have and beyond this we have nothing else in common? Yeah, if let's say you had a business together or maybe you had started a business together we can talk about that but you cannot call me in the middle of the night. You cannot text me the way you want. There are things we can talk about. It's just you can't be friends with someone you are You used to be intimate with him. No, you cannot work. If you are no friends, then automatic. You can work together, you can be I don't know. What is your colleagues working together in the same place? What if you are a business partner? What if you go to the same school or church? That's where the boundary is now coming. Together we will talk about school after school. Your ex is a member of your fellowship. Interesting. I have many partners. That is why I have said it is very very much important to be mature in one way. You learn how to differentiate matters. You learn how to differentiate the different levels of relationships that you are supposed to have. Either way when you are having an ex, for example at your workplace for instance, they are your boss will you stop working simply because you are ex? Many people resign. That's where the boundary is coming. You know what to talk with this person about. There are things you will not talk about with them. So which boundaries would you set? Because you matured maturity. Yes, maturity. It means for someone who is mature he must recognize that I will deal with him in this way in this manner. Objectively, not subjectively. How? In this case, if at all you are in a working relationship let it be work and work alone. That means anything you pass through in the relationship you put it at the back and you continue with your journey. Afiji, you mentioned calls beyond a certain time at what time should you say beyond this time, no calls? I think past 11pm that's a little bit over the boundary. Is there a specific time to receive calls? 11 will mean you still have interests. True. He is right. 11 means you still have interests. You still have interests. 30 will mean you still have interests. Unless you are a doctor. Unless you are a doctor. Unless you are a doctor. Yes, there is a case. Where? At this point I would like you to tell those who are watching. At what point should you say beyond this time you should receive calls because there is someone else that probably you are doing what you are pursuing.  And my principle is what to maintain maturity in this essence of the ex-ex relationship. Those are calls. What about texts beyond that time? Texts. Is it okay if I text you at 11pm or midnight? No. What is the limit? I think probably at the same time 10, 11. I believe I want to twist this conversation a bit. Okay. Anytime you have been in a relationship I believe you should ask yourself like she said before.  Yes. The dead can be resurrected and they be meaningful. And to you.  I wonder how. So, how long should you stay away from your ex before it's okay to be friends? How long should you stay away from your ex before it's okay to be friends? I had a theory that it takes half the time to heal. Hmm. Let's say you were in a relationship for 4 years I hear it takes half the time to heal. So it will take you like 2 years to heal. So if you are dating for a year you say 6 months? Yeah, maybe 6 months. So I don't know if you've dated for 10 years if it takes you 5 years well that's a long time. But I hear it takes half the time to heal. Thanks. How long did it take before it was just okay to be friends? It took half the time. When you are interested in somebody, of course you will there are feelings that you will develop for this individual. We call it emotional investment. Emotional investment. But now after you've invested in this person you break up, now it's your ex. But now what does it mean for an individual who keeps on going back to their ex? I would presume I would presume that this is someone who does not know what they want. This is someone who does not know what they want. Because when you begin a relationship there are things that you watch and I believe as you are looking for a relationship you have a checklist together with you, everybody has this checklist together with them. So as the time is moving on they are moving on as they take on their checklist what they have found and what they have not found.  So that one will depend on how much more they will continue investing in this person. So what is the reason that you are looking for a partner for your own money? Is it because of the money you are looking for? You are looking for a partner and he is getting more interested. What happens when those money are not enough? All of a sudden you are spending your time spending your time it means your partner is getting disinterested. Those are what we call the red flags. So you should avoid going out with your ex at all costs frequently? If you are having an ex definitely I will say keep it. If at all there is a relationship which has remained keep it to the reason of the relationship. Don't revisit what I said earlier in my paper if at all the reason of your relationship is not to go back to the relationship totally keep off that. Keep off. Yes. What does it mean when someone keeps going back to the ex? Let me just give an example. Let this have this attendance. It's actually men. Don't let this have this groups where they sit together and you cry on each other's shoulders. She keeps on going back to him. She keeps on going back and forth. Such thing is common amongst ladies. What has that been for that friend who keeps on going back to her ex? Each and every time it's like they never learn. I think in most situations they usually hope for maybe a change. They usually hope maybe this person is going to change their mind. We are going to rekindle what we had and maybe get back together. In most cases we are usually in denial. Most ladies are usually in denial. You've not accepted that this situation is over. This is a closed chapter. You're still hopeful this person to get back together with you. That's usually the situation. You go back once, twice, twice and you see it's the same outcome. Just a point you just have to accept and you move on. Someone won't say madness is doing the same thing in the same way. Expecting different results. But now is it possible for you to go back to your ex and they change and things get better? It is possible.  You always work.  In our African culture we say that you understand?  That is why I mentioned the issue of the checklist. That is what may give you a possibility of giving room if at all there can be change. Going back to your ex and things change and they actually things can change but that person cannot change. Things can change but that person cannot change. Let's say you left someone because maybe they had a bad character trait they will try to change for you. Not that they will try to change they will try to please you by doing something that you didn't like but that person will still remain that person. They will never change. Let's say if he was a cheat he will remain a cheat. If he was a disrespectful person he will still remain a disrespectful person. You get it? So that person cannot change. You cannot go back to someone and expect them to be a whole different person. Now we are talking about going back to your ex. You are dating and you find yourself in a problem that your current fiance, boyfriend or girlfriend depending on the level that you are in cannot help you. And the only person who can help you is your ex. It could be maybe he is financially stable or connected. How do you do that? Do you still go back to your ex? If it's nothing to do with intimacy I will still call him and tell him I need this and this and that and I know you are the only person who can help me.  But that is the person who doesn't care their boundaries as long as I am not interfering with his situation, whatever he is it's well and good. Maybe it may be something that you get so it's okay. That is why I said it is very, very important to be careful on how you close the door. When you leave a room it might happen and you would want to do it to go back. Now what about gifts? Is it okay to still keep your ex's items? The ones that are in your house his clothes, the gifts that he bought you for your birthday. Is it okay to still continue putting on your ex's clothes? Normal. Who is it? Who is it? I would not advise to keep gifts. Which will spur which will spur memories and bring back things which you have already buried.  I am a lady and this is what I will say. Ladies get gifted a lot. Because these are the fake ladies. I am sure. I don't see the issue. Gifts are sentimental so it depends on how you relate to the gift. If that gift makes you remember your ex a lot then it's definitely a distraction. I mean you get gifted today, tomorrow, you know I don't see the big deal you can keep the gift if you want to. It might be a car, you can keep it. You can keep it. Keep the gift. I don't see the big deal unless if you look at the gift you start remembering your ex maybe you get emotional then that's a whole distraction. What was the reason of the gift in the first place? Let's not mix it up. Let's divide it into two. We have the gifts that you received when you were still dating and you still have them, those items. But now you are in a different relationship but you still have those gifts.  And that's the first scenario. The second scenario is you are dating and your ex sends you gifts. These gifts which are keeping on coming they should communicate something to you. They should be a communication. For the gift which you received when you are still in the relationship my friend has said that if it is a car she will keep it. No. Those gifts they meant something to you. They communicated something to you. Definitely. They will refresh your memory about your ex and definitely you will have in one way or another to remember that there is a way or there is a place where they touched you with their gift.  We will come back. Let's take a break. But after this break we will tell me what if your ex is really close to your family members? Okay. So, your ex is really close to your family members and now you don't know what to do because they supported him. We shall be answering this and much more questions. Remember the hashtag as always is Power Talk Show. We had asked our viewers to send in clips as always. This is what we always do each and every Thursday on each show. Tell us your thoughts on our Power Talk Show on Twitter at Ramaguku at Y254 channel. Secondly, tell us your thoughts on video. You sent us a one minute clip of yourself telling us what you think. Some of our viewers sent their clips. We shall something them up after this break. Do not go too far. This is Power Talk. Why 254? Imagine. To get Matthew chapter 7, this is Power Talk. We are getting power from this conversation. I hope you are being empowered through this conversation. The hashtag is Power Talk Show on Twitter at Ramaguku at Y254 channel. Today we are asking the question, are exes for kids? Now, let me head over to Facebook and see what people are saying. I am with a Fiji Moneve and a pastor, Karibun Nisana. To understand what people are saying on our Facebook platform. I am seeing Rodriguez at the Benz Omondi.  Really? I am watching from Ebulwanda Buñore. Koveto or Burakwada. Apple Lops, Nikiwa LD. It is right since you let her know every part of your greatest moves. By the way, your part, is it okay to keep in touch with them just for them to know that you are moving on? Watch this space. In five years I will not be there. That is already a sign you have not moved on. Kalale Waiuna, Nikondani, Nikiwa Kitale, Kibomete, Pamoja, Haditamati. Actually, I am watching from Macha. Masinde, Kutoka Vumile I am watching from Machangichu County. Slector Davie and Songambele Kamayinjili. Songambele Kamayinjili. Faster. We shall supplement them up. Remember, we also asked our viewers to send us a clip. Those clips are coming up in a bit. But now let's move on with this conversation. And I ask the question, what if your ex has a good rapport with your family members? What do you do in that scenario? Let me start with that first. Well, I don't see the big deal if you are friends with my sister, if you are friends with my mom, if you are friends, you know, you can stay friends with them. But I think I won't be in a space where you are there with them, you know. But the family members will be putting in a pressure. They will organize events and make sure that you are on the same table. I would love to tell them whose side are you on here. Is it mine or no? That's why you want him. When the car is in the boat. When the car is in the boat.  But you know, at the end of the day, the decision is mine, you know. There is a reason as to why that person is my ex. If he still wants to be friends with my family, that's up to him. If he wants to be friends with him, that's also okay, you know. You will not go and tell someone I don't want you to be friends with him. They want to stay friends. As long as it's not interfering with me or my decisions or my plans, it's fine. Your ex has a good rapport with your family and friends. How do you work your way through that? The best way is to be able to define yourself. Let everybody understand your principle. And what you want for your own life. Again, they are friends with my family. They are not friends with me. You cannot stop anyone from being friends with whoever they want to be friends with. In this case, I would always say that it is upon you, probably let us go back to where it began. By the time you are introducing them to your family. Don't introduce to your family things which are not serious. Because you will always be having a problem. Because this family remember we love this one. By the time you are coming it will be chaotic. When you are beginning a relationship getting to the level where now you are bringing in your family, let it be something serious. Point not for everyone. To your family. Let it be something serious. Because can you imagine you are having about four exes I don't have okay that especially for believers. I also give my stand as far as faith is concerned and relationship. But can you look at a scenario where you are having three exes and they all know your parents they all know your family, they know your brothers. Your life will be chaotic. Yeah. Let me ask you another question. An ex you are dating but now in the course of you guys dating they die. How do you move on from that? Because now we can just say that is your ex now. But not that in the natural before you were thinking before you could sort things out. But now how do you handle that scenario. Let me come to you Fiji. Well that's different because that's like you still in a relationship with someone and then all of a sudden they are not there anymore. You get it. So it takes time for you to accept the situation. First of all you will have to grieve it takes time for you to accept and then now for you to move on maybe you feel because anyone who has ever lost someone who they are dating they usually feel very guilty to move on but you know it gets to a point you feel like this person has blessed you, has given you the blessing now you feel like you're okay to start seeing someone else it takes time. But will you move on? Most people do even in marriage you know you might even be married to someone still young. Maybe it was an early marriage you were still young and then you lose your partner. It happens but it takes time. It gets to a point where you feel like your partner has given you the blessing so you can now move on. Is it okay to move on? Now that you know you have his things in your house you know property everything you made plans and now death how do you do it? Death is inevitable it is a journey that each and every one of us will take at one point in life that is the first fact to accept in life wherever you are in whatever relationship be it at your workplace no one day you will die the most important thing it is the process that you undertake after that person dies of course there was closeness but now they are not here anymore once you have accepted that fact then you begin on the steps to recover from that we may call it trauma you recover from the emotions that you had and you move on from there definitely at one point you just have to but the question is how long do you give yourself before you say because you find someone people are different someone will even take 10 years so people are different take enough time take enough time to grieve and to mourn because you know mourning is a process after you grieve and mourn now begin to move on with life because it is important you do now I am told the clips already before this conversation is going up it was a sad mood let me change it again you have tattooed the name of your ex on the street Chinneke where? I don't judge people who tattooed names of their partners but I don't judge people who tattooed names of their partners but I don't judge I don't judge but I don't judge but when you get to that point because people do things you can even move in together with someone it doesn't work out you still have to strategize what to do next because at the end of the day there are things that happen so if you tattooed someone's name you just figure out maybe you go and do a cover up or something because if you are no longer together what's the essence of working around with someone's name on your body you know for them who have tattooed the names of their loved ones it is easy but don't get to a place where you worship someone you've never even tattooed the name of God or a scripture on your skin why should you tattoo someone's name on yourself I don't want to be tattooed I am here nobody's son has taken me there no it should not get to those levels love someone express your love and emotions to them but don't get to a place of worshiping them you are saying tattooing someone is actually worshiping that person that is too far tattoo them in your heart that is too far tattoo them in your heart what's the essence let's take a look at what people are saying I still have so many questions that we have not covered let's take a look at what people said remember we asked the people to send a one minute clip of themselves what are acts for keeps take a look good morning Ram my name is Lame from Kembu County my contribution is that you should be able to keep your acts it is controversial but I believe that is the right thing to do because before the dating you were friends first and that friendship should be superior than that you had so after the experiment you must recondole what you had before the experiment that is friendship friendship withstands at the test of time and therefore after you fail to do what you wanted to do in your relationship you must go back to where it started and that is the friendship base you will keep your acts close but not so close to avoid some temptations that may come with some memories thank you hey so excess excess excess excess are not for keeps for me when you leave you have left you cannot have your way back into my life even as a friend it's not supposed to be that way because if that person intended to be in your life they would still be in your life and they would not have left so if they left they left and that's it being in communication you know sometimes you date someone just for a month or two months then you realize no we are not compatible that one cannot be an ex that one was just someone that you went and took coffee together and that's it that's it that on his farm he left he left I don't know let me just give you time to react to what people have said the two viewers who have given their comments do you agree with what they said Afeja I agree with that I agree with that close the chapter Songha the same way that guy said come in Jilly like he said come in Jilly in Jilly in Jilly in Jilly do you agree with what our viewers have said I still maintain my position Salimia ex so for him and Salimia ex just for his own benefit security what are you talking about what are you talking about at one point what are you talking about 10 years from now they are in the same school and they are now on a date that's it let me let me try let me try to see my words properly let's say you are dating somebody and this person does not have the same abilities as your ex and here we are talking about you know the abilities that are that normally take place indoors closed door private activities what do you do in that scenario a phage so you come in the father yeah you come in the father well I think people are different I don't have to kill a kid you get you may find maybe your ex had the ability but there is no kid like there is something he lacked and maybe this person has that factor you get so you just have to find the balance and you know what you can work with what you can't work with if it's something you can't work with I don't understand why you are dating that person if it's something you can work with people are different what is it Osama we are discussion here we are talking about now what do you do your current one doesn't have the same ability to motivate you as the previous one what made you move to what made you move to the current one you understand but these are things you cannot tell you are now inside you are in closed doors you realize oh they don't satisfy me as the previous one expectation it's a bit challenging from where I sit yes let me allow me to speak from where I sit please do as a believer we are not allowed to go about test driving you understand you are not allowed to go about test driving and therefore it means when you've set your expectation in any relationship it includes those private matters that you have highlighted yeah that's what I mean you are a person who is in a relationship who is in a relationship and you may not understand but of course someone must be well functional when you are getting into a what into a relationship you are not allowed to go to the current one and therefore it means when you find you are not allowed to Just work through it, that you make things work because the past is past. But remember, we do not advocate for doing what? Test driving. You have something to add on there? No, I just agree with what he said. If your expectations are lowered, you just have to work through what you have because there is a reason why you started dating this person. Because you're not going to tell me if you find someone is not... If you find the expectations are lowered, you're not going to tell me you will go back. Okay. You're not ready for the journey.  That's what the name is. Who do you do how easy? I don't know how easy. Anyway, let's talk about something else. The ex from Bali, whether they bought your house, they bought your car. They only financed everything that you now own. I'm talking about physical materials. You now have a good house, a good car. They even got you a job. The money you earn, you owe it to them in a way. But now they're your ex. You've moved on, you're dating someone else. How do you handle such a scenario? Because now your ex will feel like they own you.  I believe that when you're getting into a relationship with someone, nobody expects that you're going to break up at some point. So the moment you're in a relationship, you usually build each other.  If you've not built him as well, you get. So it's usually a 50-50. So we've gotten to this point, we cannot go on with our relationship. We have to part ways, but whatever happened, happened. You built me, I built you. Let's go and separate ways. I'll go with the biblical principle. That do unto others what you live to be done unto you. And therefore I always say, look at life from the humane or from the humanity perspective. No matter the kind of investment you put in someone's life, just tell yourself that I'm a human being and I'm meant to do what I'm meant to help. You will move on faster. So any time you would want to help someone, the younger you become, first of all, live along the emotional part of it. Because the reason as to why people have excess, it is because, it is because when you have a relationship, aspect, remember there is no relationship with our closeness.  So, But if you respect the humane principle, Ram, just a minute, first of all, if you respect the humane principle, anything will happen. First of all, as a human being, before you attach any emotion to it, you believe it will be quick. But now we have people who now cry back to you and tell you that you must return everything that I gave to you. I made you who you are. You must pay back everything that I gave to you. I think that's a bit selfish, you know. They were not doing it from akwana fanyana romoja, you know. Because initially, when you're with someone, you don't look at it in terms of it has been a fit name in your relationship, you get it.  You get the same way he's being supportive to you. So if things go south and the mnamoa could break up, I think it's just you accept and then when I say, where are you backing? Are you backing? It's okay, you know. I support you from where we are. You move on. You move on from there. I think the people who usually ask back for what they bought, I think it's a bit selfish. Selfish. And some of them end up insulting you. Announcing to each and everybody. They even go to some media. You had me mention.  Because you deserve it. You go to one party. And then it goes around telling everyone in the party they go, I'm not like that. I'm not like that. I'm not like that. But just as she said, it's a bit childish. Yeah, when you come back to claim back the things that you gave an ex. No matter how expensive it is. Still, I have a lot of questions. Let's talk about information. You are now dating somebody. Should your ex be aware about your current expeditions? Should you keep information from your ex? Information how? Information. What you're doing, what you're working, you know how your day is going. When you talk to your ex and you say, how are you?   It still comes down to boundaries. The same way we spoke before. Because if we are no longer together, I don't see the essence of you knowing where I am, what I'm doing. You could be a psycho. A psycho. Yeah. I could be telling you information about what I'm doing and maybe where we left our relationship. Maybe you're still bitter.  It just comes down to boundaries. What are we talking about? Are we talking about school? Let's talk about school. Are we talking about work? Let's talk about work. Are we talking about, you know, it comes down to boundaries.  How are you? What are you up to? Do you say it's none of your business? You don't say it's none of your business. Remember, this is someone that you once had a relationship with. And the level of engagement here, it may be different. There's information you cannot give to them. There's the deeper information you cannot give to them. Because there are different levels of friendships. We have constituents. We have comrades. And there are those ones who are confident. So at one point probably they were you are confident.  But when you parted ways, they began to move from the inner circle to the outer most circle. So you will see the information depending on where you want the relationship to remain. So yes, there are boundaries, but you cannot be able to deny them the basic information. You give them encouragement. They have to move on with the life. Encourage them in one way. Send them a devotional. Send them a script. Send them a script. Send them a devotional. But you see what can yell. Your ex sends you a text at 5 a.m. Your partner sees it. And he says, who is texting you? Maybe it could be just about some non-issue, a work related issue or something. Should you be concerned as a partner that your current person is receiving messages from the ex, even though it's completely not relationship connected or something? Yeah, Ram. One thing I want you to know is, I want everyone to know, the viewers, that there is no relationship which is absolute. Insecurities are always there.  So it depends on the level of confidence you have built with the current partner you are having at that moment. If they have confidence with you, they can allow you to go and sit in a restaurant with your ex, believing there is nothing that will take place. Should you tell your partner all the exes you have? It is very important to unleash skeletons from the closet. But do it very, very carefully. Unleash one by one.  That is what I tell people. Whenever you meet a new partner, make sure any skeleton you have in your closet begins to release one by one. Yes. Not all at once. Not all at once, it will be chaotic. Yeah, I feel it's necessary because what if something happens in the future and then it's going to build some trust issues. Your partner will be like, you would have told me this, you would have told me this, you would have told me this. So I feel like if you have an ex, maybe that you're still talking to, your partner needs to know. They should know all your exes. Yes. Not all your exes, but could not bring in a C exes. They should know that maybe the major people that mattered in your life, people that you really, people that were really special in your life, you know. Amongst your exes. Amongst your exes. Should you block them? If it's necessary. If they are both. Yes.  Yeah. Maybe they've not moved on. They've not moved on. So that is why I say depending on maturity, when we began the show, depending on maturity, you understand? Okay. It will determine whether you will block them or whether you will be able to continue with your engagement. I have another case scenario. I have so many. Should you be bothered when your ex move on so fast? A hundred percent. A hundred percent. Because people take time to, if somebody really was really special in your life, you're not just going to let go in a minute and hop on to the next one, you know. It takes time for you to heal. Everyone gets devastated. You might not be interested in that relationship, but the moment you realize this person is not in my life anymore, it takes you time to heal. It takes you time to accept. It takes you time to get. Which you said that's time. It's time taken depends on a person. Exactly. What if, yeah, I'm a time-yaki-mesha? That means I'll need to move on to the next one. So maybe the moment we will have to heal, you guys are still in a relationship. He had started moving on, you know. Meaning the breakup started way before you. So when you see your partner has moved on very fast? Yeah. Hey, shouldn't be bothered on your past day when your ex move on so fast? You should not be bothered, yeah. Because one is you also want to move on, yeah. If you call it both quits, yeah, then it should not bother you that they moved on so fast unless you still had some emotional attachments. One thing that I always advise people, once you've gotten out of a relationship, yeah, once you've gotten out of a relationship, take your time, first of all, because if you fail to do that, the mistakes you made in the past relationship, you are here to make them again. And then the X factor will be an issue in your life for good. So don't be offended that someone has moved on, learn a lesson from it. Learn a lesson? Yes, learn something from that. We are coming to the close of this, but let's close with you, Fiji.  Yeah. Tell us about the song that you have so far. Yeah, I have a song in it too, I am tired. You are tired? Yes. My teacher and my ex. No. Tell us about the song. I am tired is basically a song about commitment. So I don't wait but I think in early 2020, so it's basically I'm just trying to represent the ladies who are ready to commit, ready to settle down, ready to be with one person. It's all about commitment. Okay. Yeah. All right. And you can give us a line in that song, Cindy. Yeah. So I'll give you time to sing that, but thank you very much Pastor Tiago for being with us. Today I was with Edwin Tiago, he's a pastor, a mentor and trainer with Virginia, a Fiji, a Bono, an artist, a TV and radio host. That brings us to the end of Power Talk this morning. It has been a pleasure. Our access for keeps. Well, catch a repeat of this show again tonight at 10 p.m. Every Thursday at 10 p.m. Catch a repeat of this particular show. I would like to end with this quote here that says, being friends with your ex is like keeping an empty wine bottle in your fridge. You get nothing from it and it takes up space. It's something new. Well, that brings us to the end of Power Talk. This has been Power Talk Show right here on Y254. My name is Ram Magugo. God bless you. Have a fantastic day. And thank you very much for keeping it. Y254, a Fiji. Malzaki Pindi with your song there. Hi guys. I have a brand new song. It's called Niko Chayari. It's on all platforms. So I'm just going to give you a small piece of the song. Niko Chayari Kusema Nikonawe Usiniache Moewa Kudai Thank you. Thank you very much for giving it Power Talk. See you again next Thursday right here on Y254. This is Power Talk.