There are a lot of things I don't like about the company Apple But one of the things I dislike most is how I underestimate how crappy their products are and It's embarrassing that I'll talk to somebody who has an iPhone number like oh, yeah, you should be able to do this You should be able to do that. It's just like common standard things and then I find out I'm wrong It's like it's like I think oh, no, they can't be this bad They have to be able to do this and then I'm wrong and it's like it's almost like I was defending Apple And they're just worse off than I thought they were so going back when the iPhone first came out You know you hear okay, you can't you need iTunes to copy your music over. It's I'm like and I knew that I'm like, okay Unlike most devices where you just plug in USB and you can copy files over you copy your music over You need iTunes that's pretty crappy But I'm like of course if I put it up on a web server you can download now This is this is like I don't know 2009 2010 whenever it just within a year or two of the iPhone coming out I'm trying to help a friend. He didn't want to use iTunes at least not at first and He ended up having to It's just but I'm like there's no way you go back in time It's like the you know the 70s and it's so pathetic that the iPhone can't do certain things that the that that Computers back in the 70s could do and now obviously we didn't have mp3's back in the 70s But you were able to log into a server with like FTP or whatever you will pull down whatever file you want there would be no mistake I just want to pull down this file and obviously back then you know an mp3 would be a huge file would take forever But the thing is you you technically could do it an iPhone Still to this day. It's 2018 If I put an mp3 up on my web server and send someone with an iPhone or an iPad the link they can stream it They can listen to it, but they cannot download it And at first that that blew my mind. It's like really How can how can you restrict that and and I was just embarrassed that I was told some oh, yeah Yeah, you could definitely do that Why wouldn't you be able to do that and it's just funny because it's like Functionality that is there. I mean the phone could obviously do it but they took the time to put in so that you can't and that is so ridiculous and Actually at the time again, this is old-school iPhones back in the day I tried to trick it. I was like, okay. Well, I can I can download a text file So I actually took an mp3 put it on my server. I was like, okay, I can rename it I've named it whatever dot txt. I'm like, I'll download it and rename the file Well, I download it and there's no option to rename the extension. I'm like, what and so I'm like, okay Maybe I think I converted to and well didn't convert it But I renamed it that html after that to see what would happen and I clicked on it And actually at the time if you took a large file like an mp3 a large binary file named it that html Put it up on a web server and directed safari to it It would lock up the phone for like five minutes and then finally the cook the phone reboot Which when I first did that's my friend's phone. I thought I broke his phone But luckily it got out that oh, but I used to have so much fun Going to the Apple store and just going to all the browsers and pointing it to my web server to the mp3 file I renamed that html and they would all just freeze up Nothing would happen and then it would get the Apple symbol that you know on the screen And it would take forever for it to reboot and just to stand there and watching the sales people trying to show people the devices And none of them were working eventually, you know after five minutes or so the phones would reboot and they would start working But it's just like so ridiculous Since then they they fixed that problem. I don't know if the new phones have More RAM so it doesn't just overflow everything or if they fix things in their browser so it doesn't overflow and then But more recently a year or two ago. I had a buddy who had an iPhone and Since then I've gotten him switched over to an Android phone Not that they're a whole lot better. I also want to make that clear. I Have an Android device. I love any device that I can get a root shell and a Linux kernel I'm good on and The Android devices do some a few things very well, but they could be much better So so I don't you know everyone some people are like oh Chris Chris is an Android guy He loves Android. I don't love Android. I use Android and I tolerate it, but compared to an iOS It's a hundred times better, but here's another example. My buddy. He was an artist He would make these sculptures and he was trying to enter a You know a competition or a gallery or something like that and he needed to take pictures of his work rename the files the name of the artwork and then email him to somebody and He came and asked me. Oh, can you help me with that? I'm like, oh sure no problem You know you take the pictures you know he didn't have a computer all he had was his his phone and iPad at the time He's like I'm like just take the pictures and we'll rename it You know so you go in there and I'm trying to find that you know the file the file browser But there's no rename option So I mean we spent 15 20 minutes and every every I found videos on YouTube Oh, yeah to rename an image file and all them it was you had to buy An application there was no free application device just couldn't do it itself You couldn't like on an Android device you can go into your your file manager Whether it be the default one on the system or or a free one like a maze is the one I'm using now Which is a free and open source one. It is you just go in there and rename the file It's like you put on a computer that I could not figure out how to do it without buying software So I said, you know what you know what we're not wasting any more time on this Email me the files. He emailed me the files on my phone I renamed them and then emailed them back and then he was able to email them to the guy It's just ridiculous again going back to the to the 70s if you had a computer in the 70s You could rename a file, you know the thing on your your your file system You might have a limit to number of characters in the name But you could rename a file whatever you want within those restrictions, but it's like you could rename a file and Again, you couldn't do it. It's just like and then more recently and these are just a few examples But I'm just like I tell people. Oh, yeah, we can do that You got an iPhone what we can do that we and then I found out you can't well I was talking to somebody about notifications and I was talking about how Now with HTML 5 standards you have Web push notifications, which I think is a great idea instead of I personally don't install very many applications I don't even use web notifications At all, but I think it's great rather than having a hundred different Applications in the background running on your phone checking for updates from their servers You can just have Chrome or whatever web browser you use. It's a standard HTML standard.  It's been around. It's part of the web browser and Later on the day I go home, and I'm googling about it and turns out even though it's been around in standard standard in It iPhone still doesn't have it and it's not that it doesn't have it is that they restrict you from doing it So even if you have chrome or firefox installed They limit you can't you can't have web notifications as far as I know So you're required to download all these different applications for all the services you use So if you want to get Facebook notifications, you have to install the Facebook app rather than having one application Handle all that which I think is a much more efficient way of doing it if you're going to get push notifications like that And again personally, I don't think I have any of those set up and I personally get notifications from my web server But I just have the web server texted to me which you get like a five to ten second delay getting a text, but I'm just amazed that again web browsers like chrome and firefox who have this function I built in don't have it on an iPhone and I'm assuming because Apple doesn't allow them for another example. This is this is another thing. Um, I love When I make a website or a web application, I create a nice little icon for it and I set it as the fave have the fave icon so that when you add to home screen it uses that icon well and on an Android device or Linux or Windows or I'm assuming Mac as well desktop device using Chrome it will use that icon if you add it to your home screen or desktop and Not on an iPhone first of all on iPhone Chrome and firefox the restricted I'm assuming that they're not loud because on an Android device I go into chrome It says add a home screen and I'll use my icon put it on my home screen that from the web server and It works it works great And you can even have it so that it opens up without the toolbar and everything again settings in your page So it looks just like a regular application on your device There's really you quit you can't tell that it's a web app other than a newer version of Android they added So when they put your icon, they also put a mini chrome icon on there, which is really annoying But other than that and hopefully they get rid of that Once you you add that to your home screen you can't tell that it's not a local application It runs just like it even has little use of that icon as a load screen when your page is loading. It's great iPhone you can't add Shortcuts to firefox or chrome as far as I know of the only browser I know that you can add icons to the desktop with a safari and again I'm assuming that's restrictions put on there by Apple if I'm wrong. Let me know which is annoying because safari if you go to like Web standards safari is always the last one internet explorer Even internet explorer seems to come out ahead of safari on that with functionality adding functionality like the the web Notifications, it's like these are functionalities. It's the standard since so-and-so and it's like Chrome has had it firefox got shortly after that internet explorer got up two years after that Safari still doesn't have it, but it's the only Browser that they allow on iOS devices to put an icon on the desktop that is so annoying But it's just to force you to use their products Which is also why they don't let you download music because they want you to use iTunes. It's all about control It's all it is. It's not even about money. It's about control which can make you lots of money But going on from there It's just so annoying and then moving on actually I was gonna end there But now I'm thinking about like with safari something else that's annoying about iOS devices in safari so I've written lots of applications for use at work making it easier for people to organize stuff and I'll use local storage on the device so you can go in offline mode and or it saves your settings into local storage now on in a chrome browser on both Android and and iOS as far as I know and desktop machines If you're in incognito mode, which is private mode and I set local storage able store that stuff to local storage until you close that tab and then it's erased Which is great. So if I have it, you know, for example, I work for the fire department I have you doing something and you set your truck so that every menu going to it knows what truck or station you're at I use local storage And so you don't have to each screen if you're falling out of form I go I'm at this station on this truck. It just saves it and even in the incognito mode It saves it until you close that window, which is great. It still works fine I had all these problems with people some people with iPhones It was working other people it was not and they were using Safari because they wanted to add the shortcuts to their desktop to make It easier to use Which by the way when Safari adds shortcuts to the desktop on iOS devices It doesn't use the icon you set it takes a screenshot of the web page and shrinks it down. It looks horrible. It just does But finally I figured out these people were in private mode They didn't even realize they were in private when they got into it by accident I've had people get back into it by accident without realizing it which really doesn't happen with Chrome It's like well you're in this if once you close Chrome those tabs go away But you can close seems like you can close Safari and when you reopen it if you were in private mode before you're still in private mode And it does not save anything to local storage during that session. It's like and My programs weren't working because it's looking for the local storage and it isn't there And it's just like why would you do that? I get this is private mode, but Clear it out after I close the browser don't don't prevent me from having that functionality just because I'm in private mode That's just ridiculous So and I'm sure there's some people argue. Oh, but it's more private that way. Let's not it's not it's not It's like I'm using functionality of a site and when I close it It should go away if I'm in private mode, but not while I'm in there But that's why I have local and session or yeah local storage and session storage when I'm making a choice when I'm writing the application anyway, so That's just ridiculous and again. I it's like why would it function like that? I would assume that it would function the standard just like every other browser out there, but no it doesn't and That's the annoying part. It's like this is how things are done This is how everyone does things and it's not that what you're doing is a better way of doing it You just want to be different and most of the way It's so you control that person it is annoying and I keep underestimating Apple I keep going there's no way that they won't let you do this and then I find out that they won't let you Do this and it's again it's they're going out their way to do it because it's standard functionality some of this stuff like renaming files are downloading mp3 is it's like They actually have to go in it and write programs that stop you from doing that so that you can't do that It's already the default, you know settings so annoying anyway These are the things Just a few of the things that aggravate me about Apple. I thank you for watching And I hope that you have a great day


A group has called for a change in the NIS policy asking the immigration service to accept consent letters from mothers when processing passports for minors. Although their policy says either mother or father can provide a consent letter, the NIS only collects from fathers and this provides a challenge for single mothers who might not be able to access the unavailable fathers. So they're asking the Comptroller General to make it possible for the NIS to accept letters from mothers. And joining us to discuss this is Waymi Iriboshi is the founder of Vivo Foundation. Thank you so much for joining us, Waymi. A pleasure. Thank you so much for having me. Great. This is a very, very, very important conversation for all mothers not just on national TV but everywhere. And it's very important that you pointed out the fact that yes, it is recent in print that the letter can come from either the mother or the father. But then there is some form of emphasis on the father. Let me start by asking why you decided to take on this advocacy. So you know the funny thing we've actually been sitting on this campaign since last year. And this is because, you know, we've had so many stories and so many instances of the injustice that women or mothers rather have faced in trying to access passports for their children. So the Vivo Foundation is a community-based platform that supports single mothers across Nigeria. And so within the community itself, it has so many stories of women who have come forward to say, you know what, I've suffered injustice. I've been disgraced. I've been embarrassed just trying to get passports for my children. One of them, you know, his child almost lost his scholarship opportunity because she couldn't get the passport for her child. And so for me, it's like this has to stop. We can't sit down and let this continue because at the end of the day, beyond the mothers, it's the children that are involved, right? So you're stopping the lives of these children who possibly will get scholarships or even travel abroad and gain exposure that literally changes the course of their lives. So I think it's just time, you know, to begin to have this conversation. Interestingly, one would ask, and without trying to sound like a feminist rich, I'm not one. And there's nothing wrong with that. But if the tables were turned and if the rules are reversed, when the father goes with a constant letter, why do they not insist for the mother? Because of course, it takes two to make a child. And if we're going to go by what's written in letter by the NIS, then both letters should be made available. And in the case where one parent is unavailable, then they should be able to take that of the other who's available. But has this case, apart from the advocacy, has this case gone to court before? Has it ever been adjudicated upon? Yes, I think it has. I think it's currently in court, but there hasn't been any final word on it. But it has gone to court once, I think, but nothing has come out of it yet. And I think for me, that's where the injustice comes. Because I mean, even since the advocacy started, we've not had any father come forward to say, I tried to apply for a pathway for my child and I was denied, right? And I was asked to go and get a constant letter from the mother. And this is why this policy needs to be had. Because for me, any policy law system, whatever, that poses extra levels of hurdles for mothers, it has to be challenged. And that's why we're challenging this right now. Because there hasn't been, I haven't heard, and I'm looking forward to actually hearing one man who comes forward to say, you know, they asked me for a constant letter from my wife.  There are people who say, when we started the advocacy, people like, oh, go to court and get an affidavit of single motherhood. That is first of all, let's unpack that separately. But even when women go to court and get these documents and bring these documents to the immigration office, they still are not allowed to get passports for their children.  And we need to begin to unpack them, you know, so that people can move forward with their lives, because it's completely unfair, you know. In unpacking this, let's also try to, you know, strike a balance. We try to strike a balance in who shows up and, you know, if the tables return. But let's, I have had cases where fathers have called on a radio show to say, well, a woman took my children out of the country without my consent. We did not have the conversation. And I've not been able to get access to my children. Same thing for the men. We hear people say, they take their children out of the country and say, well, they're my children. I'm going to pay for this. I'm their father. I had the last say. This for many would seem that it is a cultural problem, which the MIS has also one way or the other, inculcated and brought to some level of, you know, bias towards the women. But also, I mean, mostly the women in this case. So what are you saying that with that? Because I'm thinking, if you're coming to me to, you know, advocate on stuff like that, and I'm a man who's been robbed of his children by a woman who was able to maybe use a father's name or her father's power, know somebody somewhere and they was able to get passports and take my children out of the country. How are you able to get me involved in this advocacy? And I'm sure that this is where really, this is where this rule, you know, or policy or law came from, right? Because we cannot deny the fact that, yes, indeed, there are human trafficking, you know, instances and, you know, kidnapping or whatever it is that we want to call it. But if a woman provides everything and even shows you evidence that, look, this man is alive, I'm trying to reach him. He's refusing to accept, refusing to acknowledge. There's a way we can show that, right? Because I mean, the conversation even went on on Twitter and you find people who actually screen grabbing conversations between them and the fathers of their children who are refusing to acknowledge these conversations. So if I come forward enough to show you proof, to say, look, I have tried my best to get consent from this man and he's not accepting or he's not coming forward, then I don't think it should stop anybody. Because at the end of the day, like I said, it becomes completely biased towards the mother, right? And that's what we're fighting against. We do not want a system or policy or structure that pulls any extra hurdles on mothers. So at the end of the day, yes, those instances happen, but we cannot use one instance to, you know, cover every other person's life experience and just stop everybody else and say, because we've had a couple of instances where this happens, then every other person should be following under that blanket. And we, you know, mothers should not be able to accept passports for their children. Because at the end of the day, just like you said, it's both ways, right? So it happens on the father side. It also happens on the mother side.  Yes, these things happen. And it's just because we have hurdles like this at, you know, at the end of the day, they'll tell you it's Nigeria, anything was, but why do we have to do it in that way, when we can just ensure that people do the right things in the right way and everybody moves forward. And let's talk about in the case of absenteeism, I've sent fathers or absent mothers, you know, I've had cases where a woman just jetted and left the children behind. Same thing for the men, you know, the woman gets pregnant, he refuses to acknowledge the child, you train the child to a certain level.  And you say, well, his absence, he's never been in the child's life. Again, that also is a spanner in the wind of things. Could we bring the issue of affidavit in and what weight does the affidavit carry in this instance? Well, apparently that's what the immigration office would ask you to go and do actually go to court and swear an affidavit of single parenthood.   So what are we doing? Yes, what is the level of dialogue between the VIVO Foundation and the NIS at every level? Have you been able to pull through or are you even getting the attention in any in any way? Not yet. We're not getting the attention yet. The conversation is starting. Thank you to you know, plus TV for, you know, having us on this. So we're hopeful that somebody hears it and gets it to them, but we're looking forward to actually, you know, hearing from them and getting into dialogue and ensuring that for both parts, for both parties, both the fathers and the mothers at the end of the day, you know, because we're hopeful that if we move this forward for mothers and at the end of the day, the fathers who are also in this situation will also bear the benefits of this as well. So we're hopeful that the NIS will reach out to us or we'll get into some dialogue with them somehow. Because again, when you are pushing at focuses like this, it's always best to start with dialoguing with the people who are at the core of this matter, which is the NIS, whether it be at state levels and local government levels or at the federal level. But let's talk about the VIVO Foundation. How wide is your spread? The national level, are you in states? Because again, this again would, one way or the other, determine the attention that would be given to this at focus. You know, I'm not saying that this is not good, even if it starts in Lagos, but then what is the spread of the VIVO Foundation? I'm actually based in Abuja, but the VIVO Foundation is spread across Nigeria and, you know, wherever now going into Ghana. So we have community members spread across almost all the states in Nigeria. So this is not just the local thing, which is why this is a national campaign. It's not a campaign that is targeted at any NIS for a particular state. It's targeted at the entire, you know, so we're hoping that by the time we're getting to dialogue with them and get into conversations, we're able to get to the point where whatever solutions we come up with are going to be able to spread throughout, you know, all the NIS offices across the states in Nigeria. I'm most interested and I want to ask a very sexist question.   And like I said, again, there's nothing wrong with feminism or the feminist movement. But then there is also that, you know, stigma attached to anything that has feminism written all over it. Oh, they've come for the men. And is this advocacy also involving men because men are also victims of these cases of their children being taken from them with the guy in the guise of absenteeism or, you know, forging papers? Yeah, it's a very, very interesting question. Funny enough, we've had a lot of men also sign the petitions. We've had men who were raised by mothers and had to go through this experience as well. I think for me, the reason I'll say it's not a feminist campaign is because we're not, we're not focusing directly on the mothers, we're focusing on the children because the mothers can get their passports. So this is not about the mothers in that sense. It's about the children. And if you stop a child from getting a scholarship that can change a child's life, from getting access to healthcare, I'll share a story with you. There's a member of our community who had a child who was ill when she was, when he was born and had someone who was willing to sponsor a health full health check and health for the child in India.  So this is beyond women, this is beyond mothers, this is about the children. And that's why the focus is getting passports for the children. And of course, children are male and female, right? So this is absolutely not a feminist, it's not a feminist conversation in that sense.  That's the only reason why the name of the mother is even coming up in the conversation, right? But at the end of the day, it is about the children. It's not about men or women or anything. It's the children we're focusing on.  Has there been anyone maybe going to the floor of the National Assembly to push for this also? Because again, if that particular phrase or that line in the NIS Act needs to be contested, then we need to go back to the lawmakers. What are the efforts that you're doing to push for this on the floor of the National Assembly? So we haven't pushed because we literally just started this campaign about three days ago, Friday, because we're trying to, we want to gather, it's not coming from the place of one or two people. So by the time you see the number of people who have signed this petition, who are also open and willing to share their experiences on the petition, if you have some time, please go back and try and read some of the comments on the petition. You'll find women who are sharing life experiences of how, of, you know, some of the situations they've been through. So we're in this place where, you know, we're trying to put the word out, we're trying to create awareness for this issue that is in existence that maybe not a lot of people know, but because, I mean, I'll give an example also because the story that we use for the campaign is the story of a woman in our community, but has refused to share her identity because of the stereotype and the stigma that comes around all of this, and all of the single motherhood, you know, and all of that. So for us, it's, we're trying to push this out as much as we can, so that there are more people who are aware of this conversation and then we'll take it forward from this. So by the time we get to the floor of the Assembly, they already know that this is something that they need to focus on. Yeah. Finally, again, what are the things that, because again, it's one thing to start an advocacy, it's another to educate the people that you are targeting this advocacy or rather advocating for or on their behalf.  So this is where the conversation started. It started last year from someone actually asking this question on the group to say, look, this is what I'm dealing with, this is what I'm facing.  So what we're trying to do is within our community, there's a lot of conversation that is already ongoing. And, you know, more people who are, of course, coming out to share their experiences and people also sharing their experiences to say, look, this is how you can avoid it or this is what you can try to do. But I think it's just been a lot of conversation around this. Like I said at the beginning, we've been sitting on this for about a year. But I feel it, we just felt like, you know, what, it's time we begin to let's push this out. And the foundation in which we're partnering with was partnered with the Vivo Foundation to actually launch this petition is a foundation that is also started by a former minister. So we're all in this together because at the end of the day, regardless, like I said, the children, we're focusing on the children. And we really do need to move this forward. Well, when we, everybody is the founder, Vivo Foundation, and that they're voting for the change in the NIS passport policy for, you know, insurance and passport to minors. I want to say thank you, Wayme. This is a very, very great thing that you're doing for both men and women. And I hope it doesn't stop here and you continue to push for this to be changed. Thank you so much for coming on the show. We appreciate it. Thank you so much for having me. Thank you. Great. Thank you. Well, that's the show tonight. We want to thank you all for participating and enjoying the conversation. But if you want to pick up on all of our previous episodes, just go to Cross TV Africa on YouTube, like, subscribe, and you will never miss any of our shows. I'm Mary Ann, and I'll see you tomorrow as we continue to talk for development. Have a good evening.


This is stock number 11469Z. We are here at Summit Automotive in Fond du Lac, Wisconsin near new and used sports car headquarters. Today we are checking out this super clean 2006 Chevy Corvette. This vehicle has the 6 liter V8 LS2 motor which pumps out 400 horsepower. This car has been fully safety and inspected by our service shop for the state of Wisconsin inspection process. It has a fresh oil and filter change. All the fluids have been checked and topped off and this car is 100% ready to go. Victory red is the color. We shoot all of our videos in 1080p 60 frames per second. So if you have HD capabilities on your computer tablet or smartphone device turn them on right now because it is definitely your best way to check out the quality and condition of the vehicle before seeing it in person. And if you'd like to check out all the photos of this car in the upper right hand part of the screen as a link to our website click that and check us out there. This one comes with Goodyear Eagle 24540 ZR18 tires and these tires have a good amount of tread left. I'd say probably 50%. Maybe a little bit more. No scuffs or scrapes on that rim. Driver side front fender looks great. This one does have the HIV headlamps, the factory fog lights. And just look how clean this front bumper is. Really nice condition. Don't see any rock chips. You don't see any bug debris. Very nice and clean. The hood is in excellent shape as well. And the passenger side front fender is in really nice condition too. Passenger side rim. No scuffs or scrapes. And as you go down this side of the car, take note of how clean the body is, how reflective and mirror like that paint is. We take these HD videos so if you are far away or even if you're close by and just cannot make the trip down but you're still interested in purchasing the vehicle, you can see the car, hear the car, and of confidence in what you're looking at before you even get here so that when you do get here there's absolutely no surprises. And that is why we offer this Summit Auto Fast Pass option in the upper right hand part of your screen. A link right to our website where you can apply financing, get pre-approved, see a payment quote, even appraise a trade all from the comfort of your own home. So when you get here all you have to do is drive the car, love it, and you'll be all set to go. Back tires have just about as much tread as the front tires. Maybe just a little bit less but still decent tread there. As we come around to the back of the vehicle, rear bumper area is in nice shape. You get the quad-tipped dual rear exhaust and you can see those exhaust tips are nice and clean. Look really good. The back hatch is in nice shape as well and the glass is in really nice condition too. As you go down the driver's side just as clean as that passenger side, no scuffs or scrapes on that rear quarter and for full disclosure this back rim, nice condition too. Down this side the door looks really good even the edges of the doors are in really nice shape. Inside you get the black leather interior, power driver's seat, no rips or tears on that. Pretty nice condition for being an 06. You also get factory floor mats, auto headlamps, tilt, steering wheel, power windows, power locks, power mirrors and we'll hop inside here and we got to start it to see all the information here. You can see this car has 28,519 miles. Instrument cluster is very nice and clean. You do get the leather wrapped steering wheel. You also get the paddle shifters on there because it is an automatic.  You get this one does come with two key fobs. There's your keyless entry and two keys. This one has a stabilla track, passenger side, floor mat and seat are in excellent condition. No rips or tears on that. Car smells very clean inside. This is a removable top and the headliner is in nice shape too. Dash looks pretty good and we'll check out under the hood. We'll also check out the trunk, our hatch area. This one does come with a car cover. You can see it also comes with the floor mat back here. This is where you'd store your hard top when you take it off and it looks like it comes with some shims of some sort. There's your book and everything and yeah very nice and clean. You get the sunshade back here. Sounds really good and we'll take a quick look under the hood. I would personally like to thank you for checking out the video today and hopefully from this HD video you will have been able to tell just how clean this car is all the way around inside and out. Under the hood we have the six liter V8 LS2 motor, 400 horsepower, 400 foot pounds of torque and today's very clean, runs very smooth. Once again this car has been fully safe and inspected by our service shop. It has a fresh oil and filter change. All the fluids have been checked and topped off and this car is 100% ready to go. For being an 06 this thing is in amazing condition. You can see those HID headlamps and we'll do one more final walk around here with the car on and lights on and I'd highly recommend this car from a quality and condition standpoint and to see more pictures of this car or one of our other 450 new and used cars, trucks, SUVs, minivans, Wranglers, sports cars, Corvettes, Camaros, Mustangs, GT500s, Challengers, Chargers, you name it we got it go to our website right there www.SummitAuto.com. Full pictures and descriptions of every single vehicle from two locations all at SummitAuto.com and if you'd like to check out more HD videos you can go to youtube.com slash summit auto remember to like, subscribe, and share on this video and all the videos that you see there in fact in a second you will see a link to subscribe to our YouTube channel on your left and link to more Chevy Corvette videos like this one on your right if you've not been to our website on the bottom a link to this vehicle on our website click those check us out and we're super excited to be offering this extremely clean 2006 Chevy Corvette with the 6-liter V8 LS2 motor in victory red clear coat thanks again for checking out the video


Asa seniwa se, minetom Saidizi, amo kipenda the boy you believed, mindi onimandika hii o kitabu. Oficio nemni payas, mitika. So, I'm based in New York City, nimi kujia juzi. Specifically kwa ili event tumefanya ya charity hukomero, tumetoka hukokupiana skulu, uniformist, kufanya mentorships, naku saidi apia the girls with the sanitary pads, zi netuli peyana. Nipia party, kujibama na wana funds nipasiba bukongu hii ni personal, kuh growing up apu kijijini, kuhiyo shule as a seven-year-old boy, mone ya medile ya kutokupia miyaka saba.  And for me, it's really personal. Kwa sabi hukunu hulu kwa nulizda, mwana wana piyana uniform zi wana wisi chukwe, vitu zi ni wufanya ya ma kusahidi awa tu kusoma. It's personal kwa sabu na jwa nili sababila school uniforms. Kutoka ukiwa 7 yas miyaza maisha, uko pekiaka wana wazazi. So, para school uniforms zili kwa, school uniforms zili kwa angumu. So, that's why we have this initiative and we can say man, if you want to collect a machinani, you have to wear the kusahidi ya. Other people to become the boys who will be lived and the girls who will be lived. Yes. So, last year to last year, last year it was 60. 60 pupils. So, this initiative is full uniform. So, kamaewa ni, amam wulana tunaki kisha kona short. Amma trouser depending on what you guys wear. Na shat. This year to mefanya at least minimum from what we to my sabu so far 150. Na wile ni me sema piyat kufanya sanitary pads at least over 200 girls. To mefanya, to mefanya entertainment, sana, to mekula mikata na maziwa. But most importantly, new mentorship aspect. So, the shuleikona over 600. So, to liweza kufanya at least almost adadia shuleik. Kupata new school uniforms. Kama wile muthaonana, amma wile meonana wile muthaonana kwa some of the photos, wana fuzi wengine tukona playa school uniforms om evangu za nyumbani. So, we ni kumane shia kliili weni wana fuzi woni adiwezi. So, na kikishanga wali woni wana chagua wana fuzi kwanza omaina kwa orphans. Wunanzia kwa orphans. Kisha kikumali za wali amma wani orphans kwa shule. Tunaenda sasa ni nani akuna uniforme niwime raruka, maime pigo patch. Tunaongiza kwa esabu. Na evangu tunaizanga kufikiya nambai. Tula state lifanya, mostly orphans, amma ni akuna singo parent, alafu dizia tukongiza wani sasa akuna uniforme mombazo aziko sawa. So, mentorship mostly I like using my personal story which is what you know the book the boy believed and tells because ni raisi kwa gukwa sabu mimi li kuwa po wana wili ni me sema growing up as a 7-year-old boy in the village without anyone to take care of you and growing to go to the U.S. and study there, wika patak degree akunza ni me fanya masters and working in Wall Street I remember ni kiwa wakatimenda kufanya kazi in Mali li kuwa nakak very few actually Kenyans wana fanya kazi Wall Street so I started, nona ni leki to sometimes na chikulia bituze na fanya zinaka ni ki dog, but it's a big thing kwa mitutomanya kwa palia kijiji nimo yana jua. You know, kijana me wu msediza me piti apa to show them that it's also possible for them to be a great as well. Yes. Yeah, to we go to Kifanya actually nili fanya the opposite to Lians and Nairobi, to li go to mefanya events na ya kodida that's how we started to mefanya we did tournaments to li fanya tournaments na ya kodida I think 2022 I went there ni kanulia a lot of teams in Kibera na Madare, Jazizza, Zafuta and then from there to Kanza, Mashule, around and then sasa ni gaulani bituza pia to focus kuru di nyumbani, so ni me rudi kufanya initiatives, nyumbani actually last year most thing mekwa ni kufanya other places my goal and my dream ni kufanya across the country and especially to our watu yang niyang because it's very easy shape our say and also ni easy for us because we want to achieve something so it's easy to mentor these people and show them actually they can also make it you have a specific target in one year ten years? I don't have a number per se because pia ni limitation at time so how must I I flew in on I think over the weekend last week the next day the next day bara bara ni hiyanda kufanya event most of the time na kudia Kenya na kudia like 2 weeks in a limit how much how long I can go so my dream ni kufanya such that I don't have to be here na kama ni nini tu na pangakuna kufanya zayanda mahali tu na fanya event such that I don't have to be here as long as there is resources nani miwa na wakanya niwa kusahidi asana yes nili provide uniforms but kama mi kata zote zili 800 likuwanazo maziwa 800 pcs likuwanazo tens na kila kitu niwa likuwan the contribute so na wasipia niwa na wakawili so if there is a way we can find people that we can partner with even different counties likuwara isi so that I don't have to get all the way to from New York City to our facility event good since we did the first interview during the launch I think I think over 10 countries across the world U.S. is the biggest market of course because of Amazon followed by Kenya and then now UK Japan, Australia other countries come in ni more than I expected when I was writing this book it's really humbling and especially the fact that in Kenya and it's doing better outside here it's a dream country people don't believe the story on a Korean fake because you tell someone you raise yourself from the age of 7 and then when you read the book because it's really raw and real so some people read the book and they think it's scripted because I've been doing interviews so it's easy to trace my story it's so hard to lie because everything is online a lot of people have meaning especially last year we really did very well this year I slowed down on marketing but it's now not really a good user in New York but it's really doing well what are the a movie the boy who believed I'm really hoping that I can work with some of our producers and creators in Kenya last year I was to do a meeting with a few of them we see how we can organize in Japan and appear budget wise but I'm hope that didn't happen because again time will be issue but before I leave next week I will try to make sure I schedule and see within probably the next one or two years I'm hoping sometime this year yes, I'm hoping this year in a different county but I'm hoping it can be more a partnership with some other people so that can because someone here actually might have a story from where you come from so when I could you name me how about you help me go to my school you know we see what we can chip in and then we go help you do the same thing so you can name me Tunapeleka so you can name me Tunapeleka and Afanya Kwa so that also we can inspire other people who are in the Kwa because it doesn't have to be a lot at a kama ni uniform transfer na kumise you can get shoes, you can get sports, you can just go there to sing and to dance let us out I said something I don't know if I should say it again but I have a few friends I will mention something without mentioning her name Laka maya kwa na nyumbani kwa na miongiana a few politicians wawuko and one former women rep promised me 5 uniforms 5 uniforms and then when I reached out to her our plan was to do something very big so we were going to have a bigger crowd and then along the way to kama wacha easy resources not as the andekwa uniforms but like funding the tents and all those things so to reduce crowd out on akuja she asked us to refund the 5000 after puski akuna crowd again I won't mention the name but it's a former women rep and the fact that shulekumero so you can connect the dots and to refund the money for 5 uniforms and to refund the money so emekwa very hard because sometimes people think it's political but it has nothing to do with politics I'm not buying for any seat it's just that we are trying to show other people that there is something we can do for ourselves even without the political side of the story yeah oof, yeah really trade mark genam said easy because emekwa di kitumia for a while and I was afraid that I might lose it after to my younger brand to learn the trade marking in 2022 at kama lisia last year I don't remember the exact cost because nalipa in stages but the biggest cost the lawyers are handling and running everything around but the motive to trade mark the word emekwa di kitumia not really so that what was itumia kwa wana jukunwa wali wakatili kwa yo nusili tokan jukunwa wali sema nawa nyanganya jina eksoili enia kilamto na tomiya but it's just for kumashia purposes so you cannot use the word emekwa di for anything that is money making but you can use it for language for creativity as long as it doesn't fall within even if it's music you can use it but as long as it's not something you're making money out of yeah what happened muziki liguangumu the last time nilifajasong ilikuwa 2020 ili video ya niko singo and then nika shift attention I have passion for music so I used to do those things nikiwa high school after high school but then corporate many shika so I decided to focus more on investment banking kwa sabubu piya pesa naji yo muziki piya sometimes in ikuangumu especially when it comes to monetization so but I hope one day interuidi kuimba wow my friends umuona djimo is mentioned djimo did something that was instrumental to me nasumaga niali na naita na irobi aliku janga he is a campus tour sometimes baka kani para niki imba he took me to jumbo jumbo ilikuwa jumbo ilikuwa jumbo and then that's what actually I met Jeff so jumbo akani li piya track bili and then unfortunately wakata sasani kuataku lunch music career bia sasani tuka kenyanika in the US but na momba li na a lot of other people akinawa higa they've been so supportive even in my other events come at the book launch and I'm very grateful actually kumutu mone ame niseidi in one or the other sii naji me ikuwe pesa hata ili kwa mone siya you know where to go when you need something kitu omusho ni kusama tu asante ni sana ko alewatu na jitoke zanga kusapot initiative kama isi giving back and to all the people that bought my book I was so surprised we sold over a thousand copies during the launch which I didn't see coming because we didn't do serious marketing so ni asante sana ko kila mutu ame suma kitabu ya ebu will be lived so here's the book so this is the US version there's a kenyan version a bit smaller but it's a great book so recommend for anyone to you know try get a copy in kenyan wazipata from Nuriya and then you can also buy it from Amazon so that will be my request for you so get a copy for you and for your loved ones and then see lastly ni kusama don't give up in whatever you're going through so minasaman I live by three words and vision believe actualize leoni kiyamini that I can be the president of this country and I believe it I know I can be it so you envision it believe it and actualize it and thank you so much


He's a much better speaker than I am, so you'll really enjoy his talk. So if you are really thinking about doing some work for WordPress.com, I think, and of course, building themes to JavaScript and the rest of the API, concentrate on this talk. Hi, run. So this talk is kind of going to be like the opposite of what John was just talking about because lots of the basic concepts that John was talking about, I'm going to throw out the window. So most things relating to building themes with JavaScript and the rest of the API are completely different to how we've been building WordPress themes so far, and I've been talking about this quite a lot over various WordCamps and stuff, so if I speak too quickly, then put your hand up and slow me down. I'm going to go through quite a lot of different topics. I've got some lots of live demonstration things, so lots of scope for this to all go wrong, but we'll see how we get on. So the way we do things now, John has just been talking about this. At the moment, we build themes with PHP, as you all probably can guess. We have little interactive bits of JavaScript, so we might have carousels or picture galleries, that kind of thing, but broadly speaking, the websites are built with PHP, and JavaScript is just a little side thing that we use a little bit, and maybe we use jQuery or something similar. So we always need a solid internet connection because the way that our websites work at the moment is that when the user clicks a link, the browser checks the internet, goes to the server, gets the content, brings it back, shows it. So that creates, I think I have a slide for, yeah. So what does this look like? You all sort of know, but I've got a demo, which I'm using the Chrome DevTools to show off what I mean by this. So if we go to something like the Straits Times, I'm using the iPad view just for the sake of it, doesn't really matter. And I'm throttling the connection. So this is just a normal, this is a 3G connection, a good 3G connection. Now, I know that people in Singapore don't have to deal with that. You normally all have 4G all the time, even on the MRT. But in London, it's not like that. So if we go to thestraitstimes.com, this is over a good 3G connection. And you can see that those actually pretty quickly. The Straits Times is actually a pretty decent website in terms of its performance. And if I click around on to a different story, if I click to the story, that's pretty quick. That's very good. I mean, considering this is just 3G, and I can go to the homepage. Now, obviously, although I'm on this website, and I just clicked on to this story about the former Malaysian Prime Minister, if I set myself to now being offline, by changing this to offline, I'll try again. If you don't guess what's going to happen. Oh, it does work. Cash. Yeah, but it doesn't. Oh, okay. Right. That's what I thought. So that was just trying to get back as well to the main homepage. So it's gone. The cash here, the cash shouldn't work. Anyway, but there we go. It didn't work. Good. Maybe it won't come. Yeah, Craig maybe hadn't actually gone offline at that point. But so I'll put it back on again. And if I press refresh, we should come back out. There we go. So yeah, you've all seen websites. So the problems we have in that sort of traditional way that we've been building websites, and it's not just WordPress themes. It's all websites. Is that when we think about how a mobile app works on our phones and our tablets and everything else, they're a lot smoother there. When we go from one bit of content to another, there's an animation, it's smooth. But on the web, when we click a link, page goes white, we wait for a couple of seconds, this page comes back. And obviously, if we're on a really good fiber connection, that's quicker, but it's still not that great. I'm bearing in mind that a lot of the time people are using the web on their phones or on their iPads. And iPads and phones are much slower anyway, because they have the whole handshake thing just takes longer when they connect to their Wi-Fi or they connect to the cellular signal. It's just not, yeah, it's not brilliant. And when we think about what we've become used to on consoles and apps and everything else in games, it's really nice and fast and quick and slick. And the web is just like slow and nothing moves and it's boring. And it's fragile because Singapore is really, really good on this. But if you ever lose connection, which if you get a train across the UK, this happens constantly, your connection keeps coming up and down and up and down. And if you're trying to do something online, it's really annoying. You keep losing connection. You keep a page, keep saying, I can't be displayed. The Wi-Fi disconnects. If you've got Wi-Fi on the train, it's all rubbish.   So imagine you're not in Singapore because Singapore's great. But yeah, so it's fragile. The minute anything happens to our connection, the whole web breaks and it's all gone. And we've lost everything we had. Even if we've already been on something, we can't get it back. It's broken. Now, the main way that we can improve this is through JavaScript. This has become sort of an ever-growing thing for us as web developers. I really like this quote from Douglas Crockford. He wrote a book called JavaScript the Good Parts. It's a really good book. I'd really recommend reading it if you haven't already. And it's a really good way of learning a lot more about JavaScript. But JavaScript is the language of the browser. So, will we be getting the slides out? Yeah. This is being recorded. And I will share the slides. There's a lot of this isn't slides, so I will share the slides. But on their own, there won't be that useful. But I'm actually creating an online workshop at the moment, which I'll be doing probably next week. So everything I talk about will be available online somewhere in the next few weeks. And I think this is probably already somewhere on my speaker deck or something. I'll share stuff. And just ping me if you have any questions. Yeah, so Douglas Crockford says that JavaScript is the language of the browser. And it's absolutely true because that's the only way of actually telling the browser to do things differently to how the web traditionally works is through JavaScript. And as I'll come on to later, there's lots of new technologies now emerging in browsers. And the only way to use those technologies is through JavaScript. You need it. So I've got another demo. So if we go back to our little straight science example, which is quite nice, we have a website on webpress.com, which uses the REST API and is built with JavaScript. And hopefully load. This is also throttled. So this is also going to take the same kind of time to load. It's similar. But once it's loaded, the content that it loads is stored in the browser's memory. So when we click on, say, this first story, it's instant. It loads it really quickly. This website is called Quartz. The URL if you want to have a look is qz.com. There are VIP on webpress.com. And I just really like this website showing off how you can build something much more interesting. And if we click back, it's really, really fast. Now the straight science was quick. And in some ways on this kind of example, it's not that much faster. If we kind of go between the two, we click on, say, that story, and we click on to this story, how to put an egg. So that's now loaded already. That's loaded. But we can get back. Back. Yeah. I mean, the straight science is pretty well, but it's taken a while. It's having to reload the same things that it already had before, whereas the Quartz website just goes straight back to where it was before. Now here's where it gets really interesting. Let's go offline. Now bearing in mind that I actually haven't gone on some of the articles on the Quartz website. So I've gone offline. If we now scroll down, and I haven't pre-loaded this, honestly, if I now click on, so we are now, it's been a few seconds, we're definitely offline. If I click on, say, this story, keeps working. So if I was on a train or on an underground or whatever, I can carry on using the Quartz website because I've already started using it. I can walk into a train station. It carries on. It doesn't have the image. There was probably an image that's supposed to go with this, but it's giving us what it does have. So we've got a few broken images, but it's better than nothing. We can get back to the homepage again. It carries on working. And just to double check, this is definitely not the case with something like the straight signs. And I'm not picking on the straight signs because it's the same with the BBC, but so now we've gone offline. If I pick onto a story, now it's working. How is it working? It is again. Okay. Right. Let's have a better example. Let's go to one I didn't already go to. So once we have the straight signs back up, is it coming? There we go. Right.  So this one doesn't work. Good. Right. That's my point. So whereas any story on here, we can get to anything at all and Quartz just carries on working. And I'll talk about one of the reasons it does this and why it does this, but when you think about it, when you're building a normal WordPress theme, when you get data, when you run the loop, which just happens automatically on index.php, which is normally the landing part of any theme, technically you go to the database and you get the data that would include the content. You get the data that would include the full post, but you don't use it. You just use the title and you have a link. So when the user comes, they see the title and the link and they click it. And then you go back again and you say, yeah, now I want the title and the content again and give it back to me. But when you use a REST API and you're using JavaScript, you can keep anything that you get from the database that you might want to refer back to. And that's how Quartz does this. So it's quite nice. It's not the only reason and obviously they're not really doing anything flashy with animations or anything, but it's certainly a bit more app-like. It's not doing this whole white page, we wait, comes back. It's just quite cool. It's nice. So I'm going to place this now. Oh, and I've got another thing I'm going to show you. So that was Quartz. I had a project. This is called Picard. So me and my team at Automatic, we had a meet-up. This was actually at the start of this year and we wanted to make a theme that used JavaScript and the REST API. So this is quite a lot like Quartz. In a way, this won't be that exciting because I've just shown you Quartz, but it's something we made. We made it quite quickly. It was, I think, a couple of days. So I've actually got it recorded as a video only because this is on GitHub and we are working on it and we've kind of broken it at the moment. So I can't show you the live demo. So I'm just going to show you this video. This was, this was in a browser. This was working normally. So I'll let this run. So you can see as we click on different links, it happened. It just loaded it instantly. It doesn't go to the server. It's a similar thing to what I'm showing you, of course. So we could, we could be offline. We are online, but yeah, it just works. And there's some really nice things. If we go into a post on the homepage, you can see this is the post. It's just loaded it straight away. It's quite exciting. And I think I click on the left icon in a sec and it animates between different posts. So the previous and next post links are instant and they animate. Slightly janky. We could make that probably better by improving the performance. But you can also use keyboard navigation with this. So I was using the left and right keys on my keyboard and that animates between the different posts, which is pretty awesome. And as you go between each one, the content is all changing as well underneath. I scroll down in a sec and you can see it's different. This is Star Trek Ipsum, which is just Star Trek rubbish that you can just put into your posts as demo content. So I think I also have an example of the commenting system, which is really nice and smooth and it doesn't involve waiting for the page to refresh. That's awesome. It's called Picard, by the way, because it's the next generation of themes. That was the kind of joke for any Star Trek fans. So this was a fake comment by Matt. He didn't actually say this, but we just used his email address. So it looks like it's... So I think I type in a reply now and you'll see how the comment system works. Need to email me? That's the email address. It's not how they work wrong. And then you hit post. It goes straight in. It's really nice. So there's no refresh, no...   So now you might reasonably be wondering how does that work? Because obviously I've been talking about JavaScript and themes and not using PHP. So it's using JavaScript, as you probably guessed. JavaScript has changed a lot over the years. It was kind of... I remember 10 years ago, it was a bit of a joke. There was a website called Dynamic Drive where you could get these little things that you copy and paste and the whole crazy animated things. But it's become a much more serious programming language. And I think that really started with the release of Node.js, which some of you may have heard of. It's a type of web server that you can interact with using JavaScript. So you can run JavaScript on the server as well as on the client. And most people are used to just seeing it on the client.  It was NPM, which is the Node package manager, which is basically like a plugin library for JavaScript. So in the same way that you can install plugins on WordPress, you can install almost any bit of JavaScript you like in your project using NPM. And the idea of NPM, being the Node package manager, is that you just circulated Node stuff, but actually over time, people have now created all sorts of just random JavaScript things that you can use. And loads of stuff on NPM has nothing to do with Node, really. It's just cool JavaScript stuff. There's people have shared carousels and all sorts on it. So it's quite an exciting platform. And then, of course, there's all these new frameworks that have all been kicking off. And I think literally not a single one of these existed five years ago, which kind of shows you how much things have changed recently. So we've got Backbone and Angular. Backbone is a JavaScript framework for building REST API-based things. So that could be useful for theming. Ember is another really good JavaScript framework. Angular is the one created by Google, which, again, is a really good library, really good framework for building applications and everything else. The one I'm going to be talking about today is React. I only talk very briefly about it, so don't worry too much. React is a interface library from Facebook. And it's really nice. And it's quite easy to get the hang of. And it's very simple compared to the other three, because it's just for interfaces. So it's perfect for theming, in my opinion. Now, some of the things that you saw going on, both on Picard and on Quartz, are to do with browser technology. And some of this technology isn't actually new. So the thing where you store data in the browser's memory is the Web Storage API, which I think has been around for about eight or nine years. So it's really not new. It's in, I think it even works in 98. And yeah, it allows you to store basically any data you like into the browser's memory and call it back through JavaScript. We then have other things like the History API, which, again, is not that new. The History API allows you to change what happens in the browser's history. So whenever I talk about JavaScript themes and that kind of thing, a question I often get. Well, the first question is about SEO. How do we deal with SEO? Because you're rendering stuff without a server-side version. So how do the crawlers know what the page actually says? And the other one is, well, what about when the user presses back? Because they're going to lose where they've been. But they're not, because luckily we have the History API, which means that you can, if you simulate changing pages, like you saw when I went left and right on the Picard page, you can tell the browser's history that you have changed pages. And then you can press back and it will go back and it will just work normally. And then there are new technologies, like Service Worker, which isn't here yet, but it's really exciting. Actually, it is here. It's in Chrome, but it's not in Firefox or Safari just yet. But it's coming. And it's really exciting. Service Worker, I'll try to summarize in two lines. It basically allows you to change what happens when the user... Well, it allows you to run your websites offline. So when the user first types in the URL for your website, if they've been to that website before, and that website has let the browser know that it can work offline, then before the browser will even go to the internet, it first just checks the browser's memory. So you can have a complete offline website that works from scratch offline. So you can hit refresh when there's no internet connection and it carries on working. And you can get on a plane and you can use it. So there's all sorts of new things that this will potentially allow us to do. But in the first instance, in the case of a theme, it means it can carry on working when the user's not there. And the way it would work is that it will just use whatever it had last time. Now, that might be not ideal if you're running a news website. They could be a few days out of date, but giving them something is better than nothing, I think. And actually, in many cases, even if you are running a news website, if they have comments articles that maybe don't go out of date so quickly, they can see anything they've already, that they've already not even necessarily read, but it's just been viewed on their browser in some way. So yeah, so I think that's... I think the idea of something being offline is great. And there's obviously... You can change the way that you interact with the user. You can let them know that it's a few days out of date. There's all sorts of things we can deal with those problems. But it's quite exciting times. Now, JavaScript is one thing, but you may be wondering if we're using... And don't worry, I've got some examples that cover all of the things I've been talking about. If we're building stuff with JavaScript, which you hopefully all have some understanding of, or jQuery or whatever, you know how we can change things on the page and make little adjustments to what the user can see. How do we get the data? If we're building a normal WordPress theme, we have PHP and we can use the loop and all these different things to get different things out of WordPress, different bits of content and titles and links, and we can show those to the user. But if we don't have any PHP, how do we get our data? And this is where the next exciting thing comes in, and that is a REST API. REST APIs, for anyone who's not familiar, are actually not very complicated at all. They allow you to get data from your website over HTTP. So what that means is, instead of having to write a database query or write some PHP, you can just go to a normal web address and just see data. So yeah, I'll show you some examples of how this works, but you type in a normal web address and you just get data. It's in the case of the two WordPress REST APIs, it's JSON. Historically, some REST APIs used XML, which is just a different format, but yeah, you can get pure data. So you can say you want to get a post, you can go to a certain URL and you will just see the pure data for that post. It's ID, it's title, it's link, all those kinds of bits of information. So there's a WordPress.com REST API, which has been available now since 2012. It's available to any websites on WordPress.com. It's also available to any self-hosted website by Jetpack. So you connect your website to WordPress.com by Jetpack and you can access the WordPress.com REST API. But it's not brilliant for development because you can't extend it, you can't edit it because it's just, you're just a client, you can't do anything with it. More excitingly, there's the WordPress.com REST API. The project name has been WPAPI, so you can find it on GitHub as that, but I'll share links and everything afterwards. The WordPress.com REST API has been in development now for, I think, about two years. It started as a Google Summer of Code project and it's erupted. And I don't know if it was necessarily always going to be part of Core, but now it definitely is and it's been mooted for a long time to be going into Core, but it really is actually now going into Core. So the infrastructure is going into WordPress 4.4 and the endpoints, which are those links I was telling you about that you can go to and see data for your website, they're going in in 4.5. So 4.5, which will be out early next year, I think in springtime, that will have the WordPress REST API in it. But right now, I think I'm going to, yeah, so I'm going to now go to you some other tabs. If you don't want to wait until then, this is the WordPress.com REST API. I'll share the links for this, but this is more exciting. The WordPress Core REST API, which is available as a plugin and it has been available for quite a while now. So you can just install this plugin and you have exactly what the Core REST API will have when it comes out well at its current level of development. So you can just install this on your website and the first thing that this will do is it will create some new links. So I'm actually going to come out of presenter mode because that's not ideal for showing you this. This is full screen. Here we go. I'm going to make this bigger. So unfortunately, I can't make the top bit bigger. But so the URL I'm at at the moment, this is a test WordPress website. If I had, yeah, if I just go to REST theming.dev, that would be my WordPress website. So like anything.com. So a bit like how you have WP Admin where you go to the admin part of your website, you can get a WP-JSON. And then you see JSON data for your website. So the first page I'm seeing here is not particularly exciting and it also might look a bit like gobbledygook. Most of what it's saying here is just it's telling you about how the API works and what things you can do. So for most people, this doesn't really matter. The two things that are kind of interesting here is this top. This is the title of my website and the description, which is the strap line that you can also edit. So if I edit those, they would change here in the REST API. Now, the way these URLs work in the current version of the REST API is you go to something like WP slash V2 slash posts. So at the moment, the WordPress REST API, although it's not even in call yet, it's on its second version. The reason that they have these different URLs is so that they can add new things to the REST API and they wouldn't break everyone's websites because if they changed something in the REST API and you were relying on a certain URL, as I'm going to show you now, it could break things. So we now have posts. So if you imagine how the basic loop works, this is what you get from this top-level URL, which is essentially just posts. So it's going to take, by default, it's going to be the latest 10 posts from your blog. It's just like a blank loop. If you did the loop on index.php and you hadn't set any settings, you would get 10 posts. You can change that in the reading settings and it would happen. It would change here as well. So some of these things might start to look familiar to you. We have things like the title and that's like the underscore title. We have the content and you can see it's got all the HTML tags and everything that you would normally expect. You get all through information, which at the moment is, I don't know whether this is all for zero, comment status, ping status, certain things that you would normally be able to get through the loop if you wanted to. You then get the different links, different relevant things. So the link to just this top post because I can collapse that and we can see the next post. So that's if I scroll down, we can also find the next post. So here's the next post ID of one. This is the default post that you get with WordPress, the Halloworld post. You get obviously also the modified dates and the published dates and various other information. This is the normal link that they include, which is the permalink function that you would normally have. Now we can just go to one post on its own. So as I showed you at the top, this is post ID 1241. So if we now just add to our little URL here, 1241, we just get that first post. So if I scroll down, there's nothing more, it's just that one. I'm using a plugin just in case you're wondering on Chrome, which just tidies up JSON and makes it look a bit more readable. But just so you know, if you don't have that, JSON looks like this. So it's a bit yucky and it's quite hard to work out what's going on. But that's just raw JSON data. Once you get used to looking at it, it doesn't look that crazy. But if you haven't seen it before, it's better to use something like this because you can make human sense of it. So yeah, this is now just one post on its own. And again, I can change this to say one and we will just get the default Hello World WordPress post. There you go. Now you can see I'm just, I'm just going through a URL so anyone can get this data. It's another really exciting part about the REST API because it means if you're building something like an iPhone app, it's much easier to get data from a WordPress website than it ever has been because how have you done this before if you wanted to say on an iPhone, get data from your WordPress website. Not that easy. But now with the REST API, really easy. So I've got a couple of, I will post these links. This is the Mozilla developer network. I really recommend using the docs here. So there's a little bit here about web storage, for example. And I've got a list of, this is all the other web APIs. Now, almost all of these are exclusively available through JavaScript. So it's a very good reason to learn JavaScript. I'll leave that there. Another website which I really like, it was kind of marked when it first came out. It's called You Might Not Need jQuery, as you can guess, and it's youmightnotneedjQuery.com. What's actually really good is if you are used to jQuery, if you have used a bit of jQuery, and I know that that's quite popular among the WordPress community, it has examples of how to do the same things without jQuery. Now, sometimes that might look mad because you can see the jQuery example, and then you see the other example, and it's much, much longer. But sometimes it's actually almost the same. Now, I'm not trying to tell anyone they should forget jQuery and not use it, but my main problem with jQuery, and the reason I would recommend learning some real JavaScript, is that as good as jQuery is, you're kind of constrained by the things that jQuery allows you to do, and you're not able to go beyond what jQuery can do and try all of the crazy stuff that JavaScript allows you to do. So, who's still with me? Has anyone got any questions at this stage? Because it's about to get crazy. Because I've got some real code, and an example. That's a short question. Authentication? Authentication. If you want, or if you want to Yeah, that's a good question. So, authentication, how does that work? So, a lot of the endpoints for the REST API require a level of authentication anyway. So, at the moment, the system that they're using is OAuth 1, which you can look up. It's a way of authenticating a user. OAuth 2 is much better and much easier to work with, but OAuth 2 requires HTTPS. So, they're using OAuth 1. They're also using basic authentication, which is another way that you can authenticate. So, anyway, sorry, that's going to get me a bit ahead. So, anything that would be public anyway, like your posts, because you can get those through RSS, for example, already. They are accessible to anyone. Anything that you wouldn't be able to do by default, like adding a new post, which you can do by the REST API. So, as well as reading data, you can post data to the REST API. That requires some level of authentication. If you try and post without anything, it just gets rejected. So, basic authentication involves posting the username and password with your request. It's not recommended, because you're putting in the password in sort of open text. So, anyone who might be sniffing what you're doing over the network will see your raw password. So, you shouldn't use that. OAuth creates a token, basically, which the user gets a token, and that's trusted in the way that it's set up. So, you log in initially, create the token. The token comes to you, and it's unique, and it's, I think, 64 characters. And then you use that as part of your authentication, and then normally expire it after a certain amount of time. But yeah, that's the kind of easy answer. I won't try and get into anything deep with it, because it's, yeah, it's, I don't understand it, but yeah. So, don't worry. The REST API won't suddenly open you up to loads of problems. Like, it's anything that people can access, they could access already via RSS. So, there's nothing new. And I think with custom post types, you actually explicitly say whether or not you want them to be available to the REST API. So, it's just going to be, it's an extra attribute that's going to be added to custom post types. So, yeah, anything else? Cool, okay, right. So, I have a live demo. So, this is a really, really, really basic way of getting data from the WordPress REST API and putting it on page. And I'm going to show you the code that does this. Now, just to show, if I disable JavaScript, so do not allow, I'm going to come back to this. So, if I refresh this page now, you can see we only get the link. That's because the rest of that page was being rendered by JavaScript. Now, this also demonstrates why this could be a problem for search engines because search engine crawlers typically don't have, don't, can't run JavaScript. So, they're going to just see how they work on this page. Although, technically, this page should also show that other content. But we'll come to that in a minute.  Here we go. And it will come back. There we go. So, how does this work? Let's go into some code. So, I have just one pet file. It's called index.html. So, I'm not actually doing any for normal WordPress theming stuff. I haven't got any PHP at all. This is just HTML. And if we scroll down, this is visible to everyone, you can see I've actually taken the, this is the Ajax request to get content from the REST API. And this is taken straight from that. You might not need jQuery.com. So, in this example, we actually probably could use jQuery, but we're going to try and get on a different path and not use it. So, hopefully, what you can see from here, the XML HTTP request is part of JavaScript. And this you can, you basically create a new instance of it as a variable called request. And then we can say that we want to open a connection to this URL, which is that one I've been talking about. Which is that top post from the REST API. And then we say, if that loads and the response is greater than or equal to 200 and less than 400, i.e., it's responded okay. We're going to do a little bit of trickery, and we're going to change some content on this page to include data that comes back from the REST API. So, the response is a variable called data. We parse that JSON so we can access different bits of it. And you can see we have this data.title.rendered. Now, you might remember that that is how the content looks here. So, title, rendered, and we get the title. And then we're going to get the content as well, which again, content, rendered, and we get the content. And the .innerhtml function is just some pure JavaScript that basically replaces HTML on the page. With something else. So, we can say .innerhtml equals and it will change what's there. So, that's what happens when the page first loads. Now, we've also got one other exciting element going on here. If I go back to that page and I click on Hello World, it changes to another post. It's bad practice. The URL doesn't change. I can't press back. So, we're not doing any of the things that I said we needed to do, but it does work. So, the way this works, if we scroll down, it's basically the same thing again. We have a function called changePost, and again, this is kind of hard coded, so you wouldn't want to do this in a production environment, but it's just a demo. So, this basically does exactly the same thing, but it actually uses a different endpoint from the REST API. It goes to post with the idea of one, which is the Hello World post, and it replaces the content with that new bit that I've just said. And the way this is attached to the, if we scroll back up to the top, you can see we have this link that says Hello World, and it's got an ID of another post. And if we scroll down, you can see right here at the bottom. I hope that's visible. So, we're going to add an event listener, which is kind of jQuery, has an automatic way of dealing with this, and we're going to listen to click, and if a click happens on the element with ID another post, we're going to run the function changePost. So, we're going to change out the post. As I said, I will share this. This is just a really simple code just to kind of get people going with this whole idea. But this is theoretically a very, very basic WordPress REST API theme that gets data from the, sorry, JavaScript theme that gets data from the REST API. Now, I have a more complicated example, if you get to the next one. So, this is now a complete loop of posts taken from the REST API, and you can see we even get the basic formatting of something like a tile gallery. And that's going to work. It's going to get that and share that to us. This is just the theme unit test data that John was talking about. So, it's just all different sorts of things, different examples. I think there's some other ones with images in, and yeah, lots of different stuff. So, yeah, there's some images. And again, you get the very basic display settings that will work as you'd expect. So, oops, sorry. So, how does that work? So, now things get a bit more intense. And in this example, I'm using some React. Before I actually dive into this, I'm going to just quickly go to the React. That's what hopefully just worked. So, I'd highly recommend, for anyone who's interested in what I'm talking about, doing, there's a getting started tutorial with React. It's really good. And they explain a basic commenting system.  So, down here, you can hopefully see, we have this bit of code here. This is a very basic React component. And we can actually interact with this and change it. So, say we were talking about John here. He doesn't have an H, so we could take the H out, and it's correct. Hello, John, over here. So, basically, what happens here is that we create this component. That's the var hello, hello message equals react.createclass. And then we're going to say we want to render, and then we have our bit of content here. Now, it's saying, it's being given a prop, which is given here as an attribute. And you can see this looks a lot like HTML, because that's kind of what it's based on. And as that prop is passed in, it changes what's said. Now, we could take that out. We could just hard code something else here. So, we could say hello, sorry. We're pressing a pull. And again, that works. But ideally, it's good to have something dynamic that we can change automatically. And you can see the errors come up as well. So, we could also, for example, add another bit, which we could add this prop.sername, for example, which at the moment is going to show nothing, but we could add this in here. There you go. And that's showing. So, yeah. Now, the mount node bit at the end, that's just basically the node on the page that React is going to be shown in. So, you can see that we could start setting up a template here. This style of using HTML within JavaScript is a custom syntax that Facebook has created called JSX. It does need to be compiled. So, you don't send this straight to the browser because obviously this, as JavaScript, wouldn't work because it has some actual HTML in it. But they also show you conveniently on here what the actual JavaScript looks like. So, it's just a little bit more complicated. And instead of having these little just written out normal HTML divs, it does this thing. Don't worry about this too much. It doesn't really matter for our example. But yeah, we can write normal HTML in JavaScript, which I find quite exciting because that's kind of what people do at the moment with themes in PHP. You write normal HTML in PHP. With React, you can do it in JavaScript. So, here's our little example. Now, some of this is quite similar. Some of this will probably look quite alien to a lot of you because even just this very first thing I'm doing where we require React. So, this is using a convention in JavaScript known as CommonJS. And CommonJS is a convention around packaging JavaScript into multiple files. So, in the way that you can currently include in PHP or require in PHP, the CommonJS system is based around having that same functionality but within JavaScript. Now, the way that it's ultimately sent to the browser is that we process this somehow because, obviously, again, you can't just require something and put that live on the server and you'd have lots of different JavaScript files which take ages to load. So, you use something like Gulp or Grunt, which some of you may have heard of, to compile your files into one single file in the end. But yeah, so this basically means that we can require React. Now, when we require React like this, and it's just a straight-up string, we're using the Node package manager to do it. So, it will, I'm probably losing people, I'm aware. But, yeah, we can basically use anything that's on Node package manager through this system. We don't really have to know how that's working. It just works. Don't worry about it for now. So, you can see this first part is very similar. So, we're using these methods that React has. Component did mount means the component has loaded on the page. So, the first thing it's going to do is get data from the WordPress REST API. Let's scroll down. We can see it. It's just like the other thing I showed you. But instead, when it gets the data back, instead of doing that really basic thing I showed you, it's actually going to pass all of the data from the REST API to this component called page within a div. And that's where the data goes when it starts. Again, we're not handling any errors or anything like that, but the request gets sent. Get initial state is another basic thing that React does. So, it's saying that before anything is loaded, just show an empty div, which it does. And when it renders, it's going to render the component, which I've set up here, which is called page. So, you can see we set the state component. That's our page. So, I know some of this probably will seem nuts, but this will hopefully look vaguely familiar because now we're getting back to normal kind of WordPress-y stuff. So, here we have our template structure, which you would see in a similar way to other scores, and we're using the same sort of classes. One weird thing about React is that class is a protected term within JavaScript, so you can't just say class. So, you use the class name attribute, but basically that creates a class. So, it's exactly the same. You just can't use the word class. So, you can see we're populating this template with bits of real data from the REST API. So, we're creating links, and that's going to be post.link, post.title.rendered. And, yeah, this thing that happens at the start, that's a bit like a for-each. So, what we're saying is that for each bit of data, we're going to pass it into this function as a post, and then we can take any data from each of those posts that we had. So, that's that. You can see we've got the post-date coming in as well. And then this dangerously set inner HTML is a thing that React has by default. They escape everything by default with React, and John kind of spoke about this, but as you probably saw, we had HTML in the response from the REST API. So, we want to explicitly tell React not to escape the content, because the content has HTML in it, we know that. And it's, there might be a more secure way of doing this, but that's what we do for now. This certainly long thing is just the way of them trying to make you realize that you shouldn't do it. But we get the post-content.rendered comes out. And, yeah, so we create this variable here, this post-nodes, which is going to be basically like an array of posts, and then we render them onto the page here. And that makes up our page. And at the very bottom, we have React.render, and we're going to render this whole component, which is called controller. That's the very top, like all the way back up. The whole thing is called controller, and we render that onto document.body, which is just the body of the website. And we end up with this, which is just a list of posts. That's kind of it. I will... Yeah, I'm at React Linux on most things. We have the full Picard theme on GitHub. It's under the automatic user account, and there's a Picard repo. So it's github.slashautomatic.slash Picard. But I'm always talking about this stuff. I'm at React Linux on everything, like GitHub, Twitter, Instagram, if I want to look at my photos. But, yeah, if you want to ping me about anything, feel free to do that. And if you want to ask me questions, stuff after this talk, I hope that's made some sense and I'm happy to answer any questions and ask questions, if they want to be to ask questions. But, yeah. Anyway, thank you very much. Cheers. Questions for Jack? I think everyone's minds are blown. Did I get you high? Yeah, sorry. But here's a key takeaway. If you want to use current ways of creating things, use child themes, make sure it's also secure. A lot of resources online, such as parent and child themes or how to create WordPress child themes, probably pages and pages of tutorials from WP beginners or especially magazine. If you want to go to the next generation, you're going to go ahead, look at what Jack is talking about. You don't actually have to understand all this if you are not a developer. But if you meet a developer or you're looking for a theme online, use these search terms to find something great for you. I think this is at least a takeaway you have today. So, um, Jack is actually from the UK, so he's only going to be here until tomorrow. He's going to fly away. So if you want to pick his mind later on, you've got limited amount of time, yes. And then I'm going to pass it to Ben. He's going to do a little bit of housekeeping, kind of a thing. Okay, so just a last two things.