Thank you so much for coming. My name is Ike. As you said, I'm very excited today to show you something I've been working on for a few months. It's a brand new KDE application. It's called Kirogi. And don't worry, by the end of the talk, you will also know what the name means. I'll start things off though by quoting the one sentence description of the application that is, you know, in the .desktop file and shows up in your menu, which is that Kirogi is a ground control application for drones. And I want to tell you what each of the constituents in that sentence mean. So first of all, drones. These are the drones that the application currently supports. Some of them are here on the desk. This is standard consumer grade hardware. This is the chicken head thing, which is always fun to demo. You can buy these relatively easily in retail stores. You can buy them online. They're not that expensive. One kind of important takeaway here is that these are by different manufacturers. So the application is limited to supporting one brand of drones. It can support hopefully in the future, all of them. Now, what is the ground control? This is a schematic drawing of a drone software system, which has two principle components, thanks to XKCD for that artwork. On the drone itself, the software running there is known as the pilot. That's because it controls the vehicle. It controls its control surfaces. It makes the motor spin up at varying speeds. And the operator on the ground is using the ground control to send commands to the pilot. These can be very simple and direct commands, like fly left, fly right, fly up, fly down. They can also be more complicated. They can be more high level. For example, fly relative five meters or fly to a particular GPS coordinate, depending on the capabilities of the pilot and the hardware. Now, a little bit about drone piloting, like any sort of aircraft, a drone, a multi-copter, as it's called, can roll around these three axes. Different from a fixed wing aircraft, multi-copter can change direction without turning, which is pretty cool. Direction is changed by tilting the vehicle in a particular direction, so you don't need to turn it around if you want to fly backwards necessarily, which means the camera in front can look at the point of interest regardless of the vehicle orientation. And also different from a fixed wing aircraft, it can directly move up and down. Now, it's already time to demo the application and show you what it's looked like. Don't worry, I'm not going to attempt to fly drones in this room. This would risk giving a whole new meaning to crashing the demo. So I'm not going to do that. All right, it does come up nice. So this is the welcome screen. All of this is a little bit programmer art and might need some help from the VDG to make this prettier. But on this screen, you end up selecting your brand of drone, either using this button here at the bottom or over here. You can change that selection later on. It will also remember it for you. If the app quits while you're flying, it will try to get you back to where you left off as fast as possible. In this case, I'm going to connect to Paradrones, which you will now discover and connect to and show you a little bit about it. It's the flight checklist where you can check if your vehicle is ready to fly and then jump into flight controls. Now you can see yourself. In the back, you have... Oh, it's pretty decent. In the back, you have the video feed from the drone. As you can see, there's a virtual horizon which shows some of these axis rotations. Over here, in the upper left corner, you have airspeed, altitude, distance to the ground control. On the right, you have your flight time, which is really important, especially in connection with the battery status of the vehicle. You want to keep track of that. You want to know how long you've been flying and how that is having an impact on your battery life, so you know how much time you have roughly left. And the signal strength of the vehicle. Now, at the bottom right, you can have some amount of control over if you want to record a video or still picture and make a shot. In the future, there will be many more controls of that kind. These things are kind of flying cameras, so the screen will end up being kind of camera up with D-pads. Speaking of those D-pads, on the left, this is multi-touch. Unfortunately, I can't touch the projector screen, but I will show you the app running on a mobile phone very shortly, and then we can attach those. On the left, vertical, up-down, turning the vehicle on the horizontal axis. Over there, vehicle tilt, which makes it fly in a particular direction. Now, I want to open the sidebar where a lot of other stuff is not necessarily buried, but can be found. There you can find various vehicle actions. One fun thing to do is flip the vehicle. These are currently disabled. I haven't implemented that on this particular drone model, but you can flip in any sort of direction. Geofence, which allows you to confine the vehicle to a particular area and maximum altitude and distance from the ground control so it doesn't run away from you. And various performance settings. Over here on the lower left, there are some presets that you can use to sort of switch all of these settings faster. If you're trying to record a stable video, you probably don't want the vehicle to act very sort of twitchy, which is what the film preset is for, which is very low values, but these things are pretty fast. This can go like 50 kmh, so you can wrap that up and can have a lot more fun with it and sort of fly a bit more athletically, if you wish. I will move one of those. You can see it shows the current value as a line there, and only when you release, it will tell the vehicle to assume that and then sync up. All right, yeah. This is not the only screen of the application. Let me open the menu. I can find my pointer here, yeah. The next important page is the navigation map. This is quite bare bones right now, and this is a bit fake data. I don't have a GPS fix in here, but this is our current location, and let's just pretend the drone is flying out there right now. This allows you to see where you are, where the vehicle is. It allows you to fly the vehicle also to a spot on the map by just tapping. Again, this is very bare bones right now. However, this part of the application will probably see most of the expansion in the future, allowing mission planning, setting bait points, allowing the application to fly a free program path. That's where the autonomous comes in, right? And finally, we also have an about screen where you can see my collaborators, and I will tell you more about them shortly. Now let's switch back to this video feed. And in Syria, I could use a camera man right now, but that's right to do this myself. And go into my phone here. Let's see. All right. Ah, well, it works pretty okay. Maybe I can position this a bit stably here and do it from over here. Unsharp, good enough. Let's jump into that other drone that is on the table there. Yeah, yeah. These things that you saw, even if they're not flying, you can see there's this multi-touch. It jumps to your initial touch position, so it sort of adjusts to your hand size, whatever that may be, and then you just move around. I just disable the takeoff button at the top for demo mode. It's a bit scary to carry these around, especially with like a Samsung curved display, and then you accidentally take off, so I need to implement something nicer there, like slide to fly or something like that. So this is really a mobile-first application, because of course, if you're out and about with your drone, you probably don't want to carry a heavy sink pad around, although you will see I also did this at some point, because since I can't fly it in the room here, I recorded a little video of some significant development milestones, which I'm going to show you. All right, so I started hacking in February of this year and the first thing I tried to do was get the video feed from the vehicle and now it's video-ception already, so that's pretty fun. And then about 10 days later, I had enough of the protocol implemented to get some telemetry from the vehicle. So this is not the drone flying, this is me picking the drone up, but you can see the virtual horizon is doing things, was getting UDP packets from the vehicle and decoding them and all of that stuff, and so I could talk to my drone for the first time. And then I did the first flight. Now, you have to know that the city I live in in South Korea is a no-fly zone, so it's not really allowed to go fly there, so I did it at night at like 3 a.m. Also because only by 3 a.m. I actually had it working and went to sort of my backyard and sat on the ground with a sink pad. The flickering is due to the way I did the video capture, no worries.  After like lots of ninja bug fixing. And then two weeks later, to be honest, by far the most painful part of development was making it work on Android. I'll tell you a little bit more about why later. But yeah, this is on my phone, connecting. That's cool. And this is me flying. Now, the other thing you need to know is that I spent most of my time hacking, so I'm a terrible pilot, and this is very precarious, and I did fly into my TV, I did fly into my wallpaper, there's like cuff marks there. But yeah, it's a bit scary, don't do this at home. Why did it work? So again, I was very happy. And finally, I did some field testing, I went to a satellite city of Seoul where that is outside the no fly zone and had some fun for the first time. And after I do a turnabout, you can see one of those flip actions I showed you earlier, you know, in action, which is always fun to look at. I have a still picture from this, where it looked like a selfie from the drone, which is fun. It's one of the use cases for these. It's to take really cool selfies.  And this is slightly overwhelming, it was very windy, you can see it sort of shaking the wind, but it's pretty good at holding position actually. All right. Now why did I make this? Most of you in this room are probably familiar with one of the founding stories of the whole open source movement, which is Richard Stallman being very angry at a printer driver he couldn't get Swiss code to to make that printer work with his system. It turns out this app has a almost similar sort of origin story. I bought this drone in February when I was visiting my parents-in-law down in Busan, the coastal city, which is also outside of the Seoul no fly zone. So you can buy lots of drones there in electronic stores. And so I bought this drone, and none the wiser I of course tried to fly it for the first time in my mother-in-law's living room. So it was hanging there, making a lot of wind and noise, and I couldn't land it, because the application, the official application that came with the drone immediately crashed. Now, and I reopened it again, immediately crashed. Now why is that? It turns out that manufacturer had since then released a newer drone, made a new major version of the application, uploaded it separately to the Play Store, stopped updating the old app, new version of Android came out, things broke, it crashes. So I was like, this probably should be open sourced. This is a bit crappy, and wrote my own. So I think it's a sort of classic free software use case. Most of the proprietary apps are either single vendor or even single drone. This app works with multiple models, so multiple different app vendors. And those proprietary vendors, they often sort of abandon their old apps when they bring out a new drone. So this can give new life to your drone and allow you to use the same software across sort of your fleet of vehicles. And I think it can in the end just serve users better to have an open source app like this. I also personally wanted to learn how to make a KDE mobile app. I had never done that. I wanted to know what's the status of that. It works, so I'm pretty happy with the outcome. And drones are just found. These are like flying computers, the little ARM devices. You can ADB shell into them and you can hack around there, it's pretty cool. So let me give you a little bit of overview over the application. It's of course written in C++ and QML and it heavily relies on Kirigami for the UI which makes it work really well across the desktop and mobile. It's almost sort of a pure KDE app to the extent that still means something because very intentionally we pushed a lot of things upstream into Qt and so on over the years. But the only dependencies it has that aren't part of either Qt or frameworks are Gstreamer which I use for video and shout out to those guys. They were incredibly helpful on the IRC channel and it's the only thing I found that works very well across Android and desktop with hardware acceleration, so really great stuff there. And I use a third-party library for dynamic DNS which is used for vehicle discovery on a network called Qt ZeroConf. We have a framework for that called KDE and NSSD but unfortunately it doesn't work on Android yet. This could be something of interest to Falker, I guess. I think it's not that hard to change. Hopefully we can get that done and then it will basically be pure Qt and frameworks. And since it's a recently written app, I tried to use no deprecated APIs or try to give a spin to some new Qt features like input handlers. I'll not go into these boxes in too much detail but the main takeaways from the software architecture is that the application UI uses a shared backend library. This has public APIs and C++ and QML so you can write your own application using this library and you don't have to write all the code of talking to vehicles again. The library in turn loads support for vehicles of a particular type or manufacturer from plugins. Plug-in interface is also public so you can develop your own standalone plugin and get it in there. All right, now an interesting thing specific to KDE mobile apps on Android. One of the things that I hear a lot is, well, this must be like grossly inefficient and bloated compared to a native app because you need to bundle Qt in there. You need to bundle frameworks in there. Isn't it going to be a huge download? But it turns out that as far as I can tell, we're actually pretty competitive. These are download sizes for two of the most popular proprietary apps. These drones are made by Parrot. They have their own app which is very well done but a little bit bigger than Kirogi and DJI is the market leader for consumer drones and their app is really pretty hefty. Now, those apps currently do have more features than Kirogi does but a lot of that comes down to code more than assets and I think as Kirogi picks up speed and gains some of those features will stay pretty competitive on the download size from there. Now, you've seen it all along on my T-shirt I think so I live in South Korea and in South Korea it's not a thing until it has a cute mascot so I knew I wanted to have one. I'll tell you about the mascot. So, bald geese are actually some of the most competent birds there are when it comes to flying. They are the second fastest animal on the planet. However, the mascot for Kirogi is by the farm goose that however flies even better thanks to superior KDE technology. So, it's early adopter right there, one of our best users and of course Kirogi is the Korean word for wild geese. I lived there, I wanted to have a new K name I still like K names and that works. So, a really cool thing about this mascot is that it was actually done in Krita. So, we have the KDE forums, the KDE forums for Krita have an artist wanted section. I had an idea for this character and I made the post there looking for artists. I got immediately within like the next 24 hours about half a dozen really great submissions. I had a really hard time picking who I wanted to work with from like accent portfolios. I ended up working together with a French second year art student, Lily Tully. And I tremendously enjoyed working with her. She was incredibly professional and talented and within weeks we went from the initial idea through some sketches which I can show you to the final result. She did a whole number of poses at every turn. She sort of let me pick my favorite and she endured all my lengthy communication about the licensing requirements to be able to redistribute her artwork and she was really interested in sort of giving back to the Krita community and helping me with that. So, yeah, it was really amazing. She did some additional sketches for head poses that Raphael Brandmeier from the VDG did the application icon based on. And yeah, so that's really great. I'm amazed by the scope of the KDE community that I think takes dog footing to like a whole new level that we have a painting app that you can use to make artwork for KDE products is just great. So how did the project go so far? What went really well? So the community is super amazing. Believe it or not, I've been a KDE developer since 2005 but this is the first project that I ever started from scratch. I've worked on apps before. I've maintained apps before, but I didn't start them. So it was fun to have a whole new experience. What is it like in KDE to start a whole new app? And I got so much support. Both people putting in effort, putting in real work but also just cheering me on, sharing the enthusiasm for what I was doing and it was really easy to stay motivated even as I was struggling with some of the tech there. So it was really great. The tooling is comprehensive. Those points kind of work hand in hand. We have a really great Android SDK Docker image that you can use to sort of dev on Android apps locally and that is then also used by our CI system to make builds. And Elish did a lot of that and helped me a lot, nightly session. So it was really fun. So thank you for that. And you know, as I said, we have these great content creation apps. I also edited that home video earlier using KDE Live. Just the scope is just amazing. The conclusion of trying to learn to make KDE mobile apps is that I'm pretty happy with it. It worked out really well. However, Android is still a bit frustrating. And most of that is down to the platform. I think making my first Android app, I guess that's to be expected but it was a really steep learning curve. There's lots of gotchas. At some point I had a lip hierarchy but it turns out that on Android, the main binary gets turned into lip name of your executable. So I had a naming conflict there and got no good errors about that. So, you know, lots of gotchas like that. I think documenting those or, you know, automating some of those away could help there, you know, make our community more performant at putting more of our apps on Android. Also, maybe some helpers like using our SVG icons as is instead of turning them into Android's proprietary XML format. And I really hate logcat. I still don't know how to, like, filter through the deep loop messages effectively. But overall, it was okay. As you saw, it took me about two weeks to figure it all out. I would really love if more frameworks modules get Android ports. I really look forward to focus talk on that later. KD and SD, as I mentioned, is on top of my wish list. Now, last but not least, future plans. I have not made a stable release of the application yet. It's already working quite well but I want to sort of polish it up a bit more and then slap attack on that and figure out how to get it on the Play Store under KD's account. And as I mentioned earlier, the navigation map will see a lot of new features, mission planning, waypoints, survey tools, that kind of thing. And I'm very curious if I can switch from cute location, cute positioning there to marble because marble does have a lot of useful tools to put stuff on top of the map. It even has an Android port. It even has a Qt Quick 2 API but it's currently disabled in the build system. I guess they're not really happy with supporting that yet. I'm hoping to find someone from the marble team at the conference later this week to talk about that and figure out how we maybe can help each other. Lots of stuff to do on the media side. This has a camera gimbal which, you know, there's video stabilization but can also be manually controlled. So I want to have something in the UI for that. You need to be able to download the media you record from the device. In the case of these drones, there's actually an FTP server running on them so KIO can do that. I just need to slap a UI on it. And a gallery to browse the stuff you've recorded as well as the ability to record streams locally. Now, there are these consumer grade drones which use proprietary protocols, two of which have implemented so far but there's also great insidious open source community around do-it-yourself drones and they've developed some open source protocols which I'm of course like really keen to support in this project. The most well-known is Mavelink. There's also the multi-v serial protocol from the Arduino community. I hope to have plugins for those relatively soon. Tomas, if he's in the room, has been hacking away on the Mavelink plugin already. I look forward to talking to you about it. FPV, first person video.  I want to learn more about that and figure out how to make UI modes optimized to that. Maybe the preceding speaker can help me with that. Yeah. If you want to find out more about the application or if you want to download a nightly build, the website currently has Android builds, 64-bit and 32-bit, and it has a flat pack for desktop Linux. You can grab those, check them out. And if you have any other questions, find me. If you want to look at those drones, walk over to the table after the talk. Yeah, thank you. That's it.


And you can't talk about the tight end position without talking about Travis Kelsey for the Kansas City Chiefs, the de facto tight end number one until proven. Otherwise, six straight seasons over 80 catches, six straight seasons over a thousand yards, multiple 10 touchdown seasons. Like this guy is the real deal.   It's setting up for Kelsey season. He's going to have the amount of targets that he wants. He's going to be the de facto number one wide receiver for this team, even with all the offseason additions, talking about Marquez Valdez scantling, the draft of Skymore, the addition of Juju Smith Schuster. It's actually going to open up a lot of things for this offense and Travis Kelsey. So I expect him to continue to build. He's a cheat code. He's like having a wide receiver at the tight end position. And yeah, he's going to be bouncing back with an amazing season. He's going to be here. So expect Travis Kelsey to continue to be Travis Kelsey tight end number one. He's the guy would take at the top. Even the second, maybe back into the first round.


Hello and welcome to Mapping False Lines in NewsClick. Today we are going to discuss Biden's visit to South Korea and Japan and also the declaration regarding the Pacific Economic Framework which is supposed to come in this period and the Quad Summit. All this over the next four days. Now, South Korea and Japan of course are two very important and close allies of the United States in the region and therefore what is discussed with them may have a bearing also on the subsequent discussions on the Quad Summit as well as the Indo-Pacific Economic Framework which is called the IPEF. I am sorry to inflict all these acronyms on you but we have no other recourse than to discuss them because these issues are really covered as we will see in other acronyms as well. Now there has been a presidential change in South Korea. Elections have taken place. We have now President Yoon Sok Yul instead of President Moon who was earlier the President of South Korea. President Moon was trying to build bridges with North Korea, China and trying to take out from the region some of the tensions that has been there for quite some time. It is important to recognize that the U.S. still has a virtual veto over South Korean foreign and military policies as it still controls the South Korean military. This is the consequence of the Korean War which was fought 70 years back and that is why the U.S. still has 30,000 troops positioned there and as well has command over South Korean military forces. This is one of the reasons President Moon wanted to have an agreement with North Korea and the United States by which at least there will be a formal peace agreement signed there instead of what is essentially just a temporary cessation of hostilities even if it is lasted over the next 70 years. Without that this military control of South Korea that the United States has will not go. With the new president coming in you are probably likely to see a policy which will be closer to that of the United States and not what it earlier was. The other part of it is of course South Korea's economic relations with China are very deep. It is its biggest trading partner and it has 20 percent of its total exports followed by the United States with 15 percent. So South Korea will not find it easy to break its relationship with China and go over to what the U.S. may want it to do. This is a problem that even Japan is going to have but this problem is much bigger when you come to the next round of issues which are also in the offing because on I think on Monday you have the Indo-Pacific Economic Framework meeting which will take place and they will declare how the region is going to economically work with the United States. This is announced in February as a part of the U.S. Indo-Pacific strategy during the ASEAN leaders visit to Washington. Question is will it attract the ASEAN leaders because if you look at the ASEAN leaders and the policies they have followed they see themselves as a part of a much larger market in China as a big player. The ASEAN leaders are more interested in the regional comprehensive economic partnership which is a large trading agreement between the ASEAN countries and China. Originally India was supposed to be a part of this agreement as well but India walked out of it making China by far the bigger player in this though Japan is also there maybe for a counterbalance in South Korea but if you look at this partnership that is there which has a trade agreement lowering of tariffs planning for increasing their trade with each other. This is very different from what the IPF which is what the U.S. is proposing is because there there is no such trade integration that is being talked about it is in fact it did start with the U.S wanting to according to the financial times wanting to have negotiations but it appears under pressure from the ASEAN countries they have scaled that down and said they will start consultation about what the nature of this IPF will be. So it's neither fish nor fowl at the moment we have to see what comes out of it. Now this is also a part of the larger problem that the U.S created for itself when it walked out of the other trade agreement which is a trans-specific partnership that trans-specific partnership at Japan it had the United States, Canada and the ASEAN countries as well so that could have provided a much bigger balance against China if that was what United States was wanting but under Trump it walked out of the TPP because it felt it would not benefit from such a trade agreement and a much watered down IPF is not a substitute for what the ASEAN countries really want they want to expand their trade and RCA let's recognize is one of the biggest trading blocks in the world today if not the biggest because it has 30 percent of world GDP just for our understanding China's trade with ASEAN is twice as much as that of the United States therefore it's very unlikely that ASEAN countries will readily join the United States bandwagon. If we look at the other issue that is also something that the U.S has been taking up it is a question of exclusive economics zone and the South China Sea issue we have seen U.S Navy patrolling that area claiming right to free navigation declaring this to be a global commons now here is the issue those on the South China Sea there are differences between the ASEAN countries and China on what is each other's exclusive economic zone the all of them agree that economic zones should exist and this is not global commons so therefore their differences with China are very different from their differences with the United States and China therefore to think that the U.S can quarrel them as it is planning on the South China issue doesn't seem to be very realistic and while the United States also talks about unclos what is called the United Nations Convention of the Law of the Seas it itself hasn't signed unclos and it has not not only not ratified it it is deep differences with how economic zones are supposed to be done and that's why one of the reasons that it has not signed it other side if you look at it Marcos Jr. who with his running mate Sara Duterte who have recently won the Philippines elections have vowed to sign a bilateral deal with China to settle the South China Sea issue so both Marcos Jr. and Duterte Jr. bring a whiff of their parents dictatorial and highly autocratic rule on the U.S. and China issue they seem to take a similar position currently the Philippines and Vietnam have sharp maritime disputes with China they have also similar differences with each other therefore a common front of all of them against China doesn't look very likely possibility the U.S. narratives between democracies versus autocracies is one of rank hypocrisy this is what they're peddling when it comes to Southeast Asia or East Asia vis-a-vis China the question is if we look at the freedom house list and freedom house is not a particularly independent body it is very close to the United States and to western powers it has counted that the 42 nations who receive U.S. military and financial assistance so 25 percent of countries the U.S. doesn't like under sanctions 75 percent of the countries it designates itself as autocracies is also being aided by the United States with military and other assistance this whole issue of framing the world in terms of autocracies and democracies with the support that U.S. gives to most of the dictatorial regimes military regimes kings and sultans in the world particularly in west Asia all of it doesn't means there are very few takers for its argument of autocracies versus democracies just because the U.S. decided it doesn't like some country it doesn't becomes an autocracy whether we like it or not within one the Russian elections so by that definition it's not a dictatorial regime China is not an authoritarian regime it has democratic features with you may not recognize I may not recognize the U.S. may not recognize the people of China recognize Iran has held elections to call all of them as autocracies and call the Sultan of Morocco as democratic Saudi Arabian kings princes as democratic is I think a violation of how we look at the world and this is the reason that this whole framing of the issue is problematic when you look at the court when you talk about the court which meeting is also supposed to be in Japan very soon I think it's taking place on May 24th the question is what is the court and here it is about the Indo-Pacific and here we have discussed in news click other times other times as well that it is how countries see the world if you see people you talk about East Asia you talk about Southeast Asia you talk about South Asia if you see it militarily in geo-strategic terms then you see oceans because the Indian Ocean and the Pacific Ocean is where the maritime power is exercised through which you think you can control the countries around these oceans therefore looking at Pacific as the U.S. pawn if you see South China see where is it from you will see it's quite a distance from the United States shorelines why is the U.S. navy there because it believes Pacific is its backwater so when we look at this view of the world this does not square in with the view of the world for instance Tassian countries have which is we must develop our economies must have trade with each other we must develop further the way that U.S. looks at it at it is how to contain China and that is a military exercise not at the moment an economic one where does India fit in in this it it try the U.S. tried very hard to get India to break with Russia on the question of military agreements supply of military equipment to India and also on oil supplies it has failed because India's strategic interest does not allow it to break with Russia in that fashion it has its tension with China but even today China is a major trading partner of India so the question is India how it sees its economic relationships its military ties with Russia and how it sees its ties with the United States over in the Pacific is a big question mark for India and it is clear that India has not gone with the United States on Russia like most of the countries in the region have not like most of the countries in the world have not we have not sanctioned Russia in ASEAN countries Singapore is the only one which has sanctioned Russia so given all of this what is the role of Quad is something we'll have to see it will depend crucially on what India does or doesn't want to do because as far as the other countries are concerned you have for instance Japan you have United States and you have Australia all three are militarily very closely tied and with AUK US which is really Australia United Kingdom and US Australia is very much a part of the American setup at the moment militarily so given all of this this region is going to see a lot of churning whether the president Biden of the United States will make a difference through his visit is an open question as of date it seems to be more optics than real politics that we are going to see transacted but the jury will have to be out on that one a number of supposedly important meetings are being held the Quad and the IPEF the economic agreement that the US wants to have with ASEAN countries and Japan let's see where all of this goes we'll be back with more false lines for you and do keep watching news click and visit our website


Hello, okay Okay, so I've been working with WordPress for quite some time now and I've been loving the way it has come to be the right tool for the job in so many different cases like e-commerce and Corporate CMS social networks and one thing these kinds of projects often have in common is a complex design requirements regarding images They need to be responsive They need to be lazy They need to be indexed of course and sometimes they also need to be are directed and We'll see what that means later on so Once upon a time To achieve all of this all we had was The max width a hundred percent trick Which makes a web page look okay in basically? any device but has the drawback of Picking a huge image like this one and Serving it to a tiny device Like this one here with probably limited bandwidth and connectivity which nowadays is Basically unacceptable since we have resolution switching Which is a way we can tell the browser to use different images on Different screen sizes and this you do by marking up Your image tag with two extra attributes the source set and the sizes the source set is Basically a list of Images at different resolutions, so same image same aspect ratio different sizes and Then the sizes attributes we use to tell the browser Which image to pick according on screen width in this example we have a source set ranging from 160 pixels width to 480 and to Media conditions and then a default condition to be used when the the previous two Unsatisfied, so how does this work in practice? On a small device We will be we will fall in the first case Which tells the browser to look for images Which are a 50 viewport width units which basically means 50 percent of the screen size And on a small device this will probably mean the smaller image of our range But moving on to a larger device and nearer to the first 960 breakpoint Will probably mean picking the largest image in our range And then after that we move on to a second media condition in this case. We're telling the browser to look for images which are 25 percent of the viewport and So between these two breakpoints that will probably mean picking one of these two images I have a 250 or 300 which incidentally are more or less a quarter of these two breakpoint size and then eventually Upper of the 1200 breakpoints Our design dictates that the layout won't be expanding anymore. So we can just stick to the default 300 pixel width Now you might have noticed that I've been intentionally using words like likely and probably because One thing you need to keep in mind when using source it and sizes is that the browser is going to try and be smart so this means for instance if Your media condition dictates that You should be picking a small image size, but the browser has Cashed previously cached a larger image browser won't bother downloading the smaller resolution It will just use the larger one that is that it has cached and this The browser can do because This isn't tender to work On images with the same aspect ratio So the browser is pretty confident that it can pick whatever image version image you He he sees fits and this won't break your layout Because all the images have the same aspect ratio Now this is surprisingly easy to to work within WordPress since it's Baked into core from version 4.4 and Depending on your on your design you might need to take a couple of simple extra steps One being The definition of a few more image sizes because you probably The default small medium large that usually defined in your media options at min screen Probably won't be enough if you're really using resolution switching so you might want to add extra image sizes and You need to make sure They all have the same aspect ratio if you do this WordPress will automatically populate your source set attribute and That leaves us to cater for the sizes the sizes attribute and For this we have two handy hooks That you can use either to just brutally hard code Your sizes value or you can do of course you can do more complicated stuff with conditionals and so But in any case you should look look up in the soil you want to use this You should look up these hooks in the source and see exactly what they do Now all this is fine and dandy if you want to work with images with the same aspect ratio But if someone comes up with a comp like this Source it and sizes won't won't cut it anymore because look look at all different aspect ratios Small landscape small portrait then a squared and another landscape But not so wide then again a wide landscape But larger and this you just can't do with with with source it and sizes for this you need another solution Which is the picture markup? the picture markup is actually even easier to understand than the source set and sizes and It's pretty straightforward every every a source tag has two attributes a Source it again that you can bet you can you can even use just to specify only one image This is what we're doing for the sake of a simple example and And of course a media query and this media query is actually these media queries a full-blown Media queries as you would be writing in your CSS Which is different from What you would be doing in the sizes attributes those are called media conditions and are not so powerful here You can basically use what you already know from your CSS. So it's pretty straightforward to understand what this code does and so This device clearly satisfies this media condition of portrait orientation and a relatively small width so the small portrait version will be picked and Moving on If the same device is in landscape, you'll be using the small Landscape and then moving up you'll then be picking the square and then again a landscape but not so wide and then again The the larger landscape But there are there's one more aspect other than the ratio in Using picture and that is the crop because our direction means Change aspect ratio, but also change the crop probably and to illustrate this you can look at this image and It's a bit boring and the subject is is Right at the center, which means you can crop this image all day long and it will always fit in your viewports and There will never be any ambiguity on what this image is about But if you use a slightly more interesting image where your subject is not exactly at the center like this one Where your product is this and this is other stuff Okay, and while you crop this thinner and thinner You will eventually realize that at some croppings your product is completely cut out Okay, so this clearly doesn't work So in our direction, not only you need to cater for different aspect ratios, but also different crops This is how it should be This is to just automatic centered cropping which won't work This is a proper full example of our direction and see and here you can see you have a basically a Manual croppings and possibly on smaller resolutions also zoom for clarity So To sum up when you're using the picture and source solution You don't have this kind of Limitations we had with the source and sizes solution because The browser will obey your media queries to the letter so no smart Behaviors and you won't need to worry about the aspect ratios anymore. You can use whatever aspect ratio you want And this is also quite easy to to work with in WordPress Basically four easy steps you need to take number one You need to include a polyfill because browsers haven't not all browsers have caught up with this picture and source business so To level the playground on the browsers you need a polyfill unfortunately We have two of them both work very well. All you need to do is choose one and in queue the script as you usually do and It will just work out of the box Again, you will probably have to add some image sizes in this case You won't need to bother about having the same aspect ratio, of course then you need to Somewhere to save your source and Media queries and an image sizes So you could create a very simple data structure, which is basically an array where the key is your media query and The value is the image sizes you just registered over here You then pick up here to build your structure Of of source media and source it and then of course you need a function to generate the markup according to an Attachment ID and one of these formats you you will have registered previously So it'd be rather boring to go through this code here now just to generate some markup But I made a plug-in that you can use To experiment with this picture stuff, which is pretty cool And all you have to do is just drop it in your in your WordPress and it'll work and you can you can start making experiments There's one more thing We need to know we need to be able to do to properly implement our direction and that is the crop and Fortunately, this is WordPress. So we have a really cool plug-in for this. This is a total lifesaver and It basically it adds a screen to your media to your media Administration that allows you to individually crop any image size Including the ones that you might have defined Your custom image sizes you might have defined Of course You you might be thinking what about the SEO because if the browser doesn't fully understand picture yet What about the bots and of course the bots don't understand it either, but Google boss is a JavaScript So once you include the polyfill to make it work for the browser It works for the Google bot as well and your images Marked up as picture and source will be found in indexes and this is true even if you use lazy loading Because also your lazy loading JavaScript will be passed For the other not so smart bots For search engines, you'll just have to find a clever way to include other resolutions in the source So That's it here. You have the repo Go and check it give it a star download it try the picture and That's it, okay, I'm a spazio per una domanda just one question Well, thank you Can I use one of these solutions inside the post content? inside the post contents If you set up the image and saw the source it and size the solution properly it will just work If you want to use the picture solution inside the contact You will have to either find a way to know your attachment id beforehand using advanced custom field or something like that or You can develop maybe a shortcode To insert a picture shortcode in your contact that will be passed as a shortcode is usually up


bold venture adventure intrigue mystery romance starring Humphrey Bogart and Lauren Bacall together in the sultry setting of Tropical Havana and the mysterious islands of the Caribbean once again the magic names of Humphrey Bogart and Lauren Bacall bring you bold venture and a tale of mystery adventure and intrigue of Anna Cuba where we started from where we get off how long can you keep it up slay come on come on off the boat I said how long can you keep it up you've been sore ever since we left Key West so we didn't meet him so we didn't pick up his car sailor a guy named scorn sends us a wire he says meet him in Key West move his cargo I didn't want to go you wanted to go all right and mr. scorn and whatever he wanted us to bring to Havana weren't there but we had a boat ride to Key West and back you and me that's nothing huh come on sailor let's get off the boat here I'll help you I don't need any help what are you angry about the money we didn't make no it was time away from Havana but I didn't have to be away from her you talk about Havana like it was a woman do I how do you talk about me behind my back walk ahead of me and I'll think of something there's your Havana a cock fight come on let's take a look sailor how's your bloodlust today let's get on it consider it sailor two birds with steel spurs flashing each other to pieces let's pause and cheer come on let's watch for a while people get to enjoy this sort of thing let's find out why I don't want to find out why I'll see you back at Shannon's place all right okay let's go you get a bang out of watching that now gives me a chance to get better makes me an honest man the cock fight disgusts you see your taste are too delicate or perhaps what's this slate a new way to catch the Yankee dollar or perhaps the Yankee merchandise lady asked you what this is a may go who are you permit me to tell you the story of my life I am a poet I guess that's worth the dollar give them a dollar slate what are we patrons of the arts permit me to refuse the money permit me to return to the matter of the Yankee merchandise you have brought from Key West this is a man with a problem say you are the people from the boat the bold venture where the people from the boat the bold venture now it rhymes nice going sailor then it is a simple matter since you are the people from the boat it is simple we will make arrangements for the removal of the merchandise now look shelly Mario my name permit me that is my name Mario sure I forgot my memory is a little shaky mine too hers too so we're having a tough time remembering what this is all about slower reading are you trying to be clever me amigo or perhaps you have pleasure in tweaking my patience the merchandise permit me but the merchandise it is a matter of life and death when shall we remove it from your boat the poet only knows one poem slate yeah wave him goodbye a fun farewell but it is a matter you cannot be merchandising it can mean life it can mean death you cannot refuse about the merchandise if you want to be happy and lead a king's life never make the pretty woman you're by therefore from a logical point of view marry a woman ugly of a new a pretty woman makes a husband looks small and then he very often falls his doubtful therefore from a logical point of view marry a woman ugly of a new lady sailor mr. slave why you come back so soon to King Moses because you love me why else King Moses I tell why else because on trip to Key West something sour must have turned more sour am I inevitably correct you are inevitably correct King Moses you come back to make King Moses sloppy with happiness mr. Slate therefore order me about bring us something to eat King oh an ecstasy a joy a frenzy a key just bring us something to eat right now mr.  Slate yours lady sailor you talk I smile inside myself I kept my guitar I got song for you sing it King a lady approach who wait for slave a lady so handsome no one can hate a lady who in hotel did register a lady who bring joy maybe this bad don't miss in your Shannon but I think perhaps you are looking for me for baby no senior I don't know you but I I think perhaps I was looking for you for baby Slate I want to explain something to you about the hotel business sailor I am what is known as a mine host that comes in two parts mine and host sit down baby that's it they have not answered my questions in your Shannon you look for me I look for a lot of things why particularly for you because you are the man who brought his boat into port only a little while ago oh the lady wants a boat ride why don't you try the nearest tunnel of love miss baby this is included in the price we must pay for the merchandise no baby I throw that in for free and wait a minute you said merchandise baby is not what you said yes baby the gentleman posed a question will you answer the gentleman's question you know very well what it is we want sure sure but let's hear it from your own red lips now I understand it is a matter of more money huh well we expected it and we despise you for it but we will pay it I have room six day I will wait for you there but give me 10 minutes to arrange for more money when I pay your price there will be no more delay is it final it is final now let's see uh six days she said that's what she said Slate that's just what she said you know sailor I think I can handle this alone why don't you wait for me downstairs huh because I'm afraid of the dark I cry in it that's what I thought now you know Slate that noise it's already happened to us once today maybe the little lady's a bookie for game cock fight hey let's go Slate look look her face her body yeah slash to ribbons slash to death by a game cock Slate oh Slate now how do you like Havana sailor Mr. Slate Mr. Slate is wearing out his office floor King Moses tell me I'll tell him the police have made a very well to the front door lady sailor they have five minutes gone thanks I'll tell Mr. Slate you want anything I can do for the after the police occasion lady sailor you Mr. Slate no I'll call if we want anything my guitar me and hammock outside you open the window and whistle for King Moses if you want Slate Slate what are you trying to build all right I don't blame you Slate I know it's hard to believe what's hard to believe beautiful woman killed by a fighting bird a bird with steel spurs on it Slate at my hotel girl locked in a room in my hotel with a bird bred to slash for blood I don't like cops in my place cops are for the tourist trade not is that all that bothers you the fact that the police were here what's it to you what bothers me I didn't ask for your questions I didn't ask for you all right Slate all right kind of a jerk am I anyhow a man tells me to take care of his daughter so I take care of his daughter you what am I out of my mind I don't need you hanging around here sailor I don't need anything about you I got along great before before my father died what do you want me to do Slate leave well sit down Slate you're sweating the trick I know it's hot so I sweat you want me to fan you I'll fan you you like me to fan you Slate like this look at you the way you're dressed jeans the way your hair is man has to walk toward you to know you're a woman why don't you do something about your hair sailor what's the matter with us other women with hair like that they'd with hair like what like this you can touch it Slate touch it go ahead touch it answer the door you answer it yeah hey it's a poet tell him to come in he can wave the fan an explanation for the events of this afternoon are in order see how do I make it tough this time Mario what are you trying to tell us a tragedy the killing of the girl bb was a tragedy well what do you know about bb bb was the sister of my wife she please what time is it hey look if you don't it's almost 2 30 mario gracias now permit me it is very wrong that bb is dead a wrong that is part of an even greater wrong so help me what kind of wrong like so the merchandise you have brought those of us on an island you know here in the Caribbean those of us who wait for the guns guns so that's it that's the merchandise guns precisely perhaps there is a better way to purchase human dignity but we do not know of it we need those guns and you think we have the guns for your evolution of course like so you came with the boat permit me I will answer it a compatriot I am expecting he's to meet me here Mario Slate help him he's shot yeah yeah shot dead like so to bold venture our stars Humphrey Bogart and Lauren McCall and the second act of our story she come to Shannon's place a delicate figure and clothes of legs then the lady she died in Shannon's place a game cock with spurs he slashed her face a point he came to Mr. Slate make big apology for being late he explains his wants to Mr. Slate but bullied in heart bring him to stay Mr. Slate he turned to Lady Selah he says you know that's enough King do I call the police again Mr. Slate no two people die in my place that makes it personal I like that port you're not always a real tough man are you Slate I said I like that port and that girl BB and that girl BB what about her did you like her too and she had a problem she came to me for help she died my father said you'd be a man like that why don't you get out of here Selah why don't you go back to the States look at the mess I'm in it you're in it why don't you leave Selah you don't know do you Mr. Slate yeah what do you want King yeah the dead gentleman's papers from his pocket oh let's have a look Mario Pavana 64 Avenado Lorca we're going calling her Slate I want a man like Mario dies somebody's got to tell somebody because somebody might want to know I would I'd want to know let's go to Avenida Lorca Selah what is it you want Senor Senorita we uh we come to is it about BB my sister BB if you have come to tell me of her death it has already been revealed to me well just a minute Senora I'm called Celestine will it not be easier for you so yeah easier if your BB sister than the poet Mario Mario is my husband yes a poet and a husband I'm fortunate am I not you are friends of Mario's yes friends um sailor I can't do what you tell her thanks loads uh Senora Celestine your husband what what is it of my husband what is it he's dead okay okay sailor how long can you take to tell a woman her husband's dead he said he was going to the waterfront to write me a verse a little verse who are you are you of the police well Mario Mario's friends we want to find his murderer it will not bring him back Mario was telling us something before he died about a revolution about guns Mario was to me a man who loved me who wrote little verses for me of this other Mario that you speak I know nothing who wouldn't seniority and a parade maybe seniority and he spoke often with Mario late into the night while I slept I would bring them food and then leave them to talk among men where would we find seniority and he has a villa 17 avenue to quarter us I think there is nothing more for us to say to each other adios friends of Mario come right in senior seniorita is your name my tian no senior I am the uh botlor where's that tian in the auditorium with the rest of the guests there is a concert this way in here I will leave you adios some concert that girl the way she's dancing slays she's wonderful yeah real authentic am I being rude yes yes you are can't you see that girl's trying to express herself I'm your host my name is a tiany uh this way please yeah yeah sure Celestina called she told me to expect could you tell you about her husband about Mario yes yes did you two kill him how's your record at yen not flawless senior uh in here for this room pepe hey what is this who is this guy these are the ones pepe the man and woman we have been waiting for now senior you will tell us why have you come because I don't like my hotel to be loused up with dead bodies first a girl was killed in a poet would you know why yes yes I would know why who are you at yen why should you know so much he does not embarrass me to say that I am a patriot you see bv and mario were revolutionary they were killed by our enemies this we know they were killed to prevent them from taking guns across the Caribbean to our islands the guns they thought were on your boat we shall proceed without bb and mario the man is talking like he's got the guns anyhow slate see we have them they came on another boat not yours well use them in good health let's go sailor uh wait senior I knew it pick over your shoulders slate I just did question what's the caliber of the gun peppy has in his hand a 32 or a 38 looks like a 32 it's a 38 you will help us then help you do what we have the guns you have a boat it's necessary to have both to get the guns to my island besides I prefer not to have you roaming the streets of Havana until we have disposed of the weapons who wants to roam the streets me daddy and por favor senior move quickly there is a great need to hurry you admire the view senior this cliff that screams down into the sea or perhaps senior is afraid of such height but the view is magnificent no the guns are nice too you have exquisite pace and you're in guns in boats and uh in uh in me precisely senior it see how wrong you can be slate the man said that you had to get off at any at the end what do we play now oh no place and you're I assure you hard work peppy is below in your boat waiting for the guns you will see that he gets them then you will take us to our destination on your exquisite boat you mean I let them all away from this cliff down to the boat uh not quite so hard senior you see we are prepared a cargo net winch you place the guns in the net then load them to peppy quick simple like pie it'll be like pie won't it's late I'll help and no seniorita no no you will simply stand there because you will inspire the senior to magnificent effort you may begin senior that's when we're through here you will be killed ask a silly question oh but it's so easy for you you have but to die me I have to commit a murder my heart bleeds for you thank you seniorita that's enough senior for one lord lord the winch see we're glad you're happy Celestine yeah we're glad thanks for saving our lives it was messy but thanks my heart is filled with kindness for you both we'll drink to your heart filled with kindness in nirvana very boy to take that gun away and we'll go you are so kind to come and tell me of my husband's death I want to do something gracious for you in Shannon's place do something gracious for us in Shannon's place I will not permit one to kill you you will die suicides I wouldn't have it any other way tell us about killing people Celestine are you born that way or did it come on you all of a sudden they tried to make a revolution you were foolish enough to stumble into it it is a pity you stumbled into the wrong side you and one here are the right ones you are all alike poets revolutionaries adventurous all with the intellect of terrain fleece bb mario at the end a pepe oh yes pepe is dead also run to care of it bb was your sister in marriage there were fools they're happy you're dead now walk to the edge of the cliff walk you're happy now sailor you're real happy what you came to a van you got what you came for huh excitement romance the tropic moon people killed you're going crazy what are you talking about what you want it isn't it sailor that's why you came to me because it was empty for a girl like you back there from wherever you came from real empty why why you don't slap me sailor I'll break in two no one no do not put your hands on him just keep the gun in his back they will kill each other sailor watch it you watch it he's got a gun in your back have a gun in my back one careful one careful the gun get it sailor pick it up how you Celestine let me go don't struggle Celestine relax enjoy yourself I'm a tender guy I'm taking you back to Havana take your hands off me let me go Celestine I'm holding you real tight till the Havana police take you away from me you hold her that tight she's not going to be in any condition for the police so what about one you got a gun in your hand haven't you sailor oh sure sorry I forgot for a moment well get with it sailor keep that gun pointed to one till we get back to Havana then what then Shannon's place better back there I'll want you with me how do you like it Slate like what dancing with me it's all right I'm wearing a dress now yeah I noticed and my hair you like it this way you like my hair this way Slate let's get out of here I like it here come on let's go go ahead I'll find somebody who likes to dance I said come on why well there's a breeze outside what's a breeze got to do with it I want to see what it does to your hair and so our two stars Humphrey Bogart and Lauren Bacall have brought to a close our latest bold venture story special music was composed and conducted by David Rose may we invite you to listen again next week at this time for another exciting adventure starring Humphrey Bogart and Lauren Bacall together in bold