Okay. Let's kick this off. The very first thing is we have a shirt. It's part of Adafrit's policy to only stock women's sizes first. So as you may know, we don't do NFTs. We don't collect NFTs unless you're talking about nice F and T shirts. This is the front. This is the back. There's nothing on the back. I'll talk about my custom version that I'm doing. Here's Lady Aida wearing it outside of a NFT gallery here in New York City. We're doing something special. When you buy this shirt right now, again, it's only women's size. We'll have other sizes later, but this is how we start and we wish other tech companies would do the same.  When I fill out the form before I go live on YouTube, it says, is this for children? And I say no. So there is some adult humor in some of this stuff. So I'll let you check out some of the other things that it comes with. One could say there's a little bit of cursing here and there, but it is a wholesome memes and more and we wanted to make it clear that we don't do NFTs unless you're talking about nice F and T shirts. If you want to check out our amazing gallery of shirts that the Adafrit team has, you can check out our statement and then we all got together and we decided like let's show our shirts because we all seem to collect amazing shirts here at Adafrit. People at Adafrit have great taste. Yeah and there's lots of amazing shirts every day. We have a stand-up meeting here and I'm like, hey, who has a cool shirt today? The history behind some of these, who bought them for who, dead inside but caffeinated. There's retro ones. This is a shirt that was given to someone's dad here. Amazing. There's so many neat things that people use to express themselves like T shirts. This is kind of neat. Improvising electronic devices is not a crime. So anyways. Oh, that was sent in. Thanks. Yeah, well, we have that one. So anyways, that's it. Do you want to show, do you want to hold it up here? Yes, I just had it. Sorry, there's a lot going on. Yes. Yeah, it's beautiful. It's soft. This is from the share zone and this has helped us out too because we have stalkers and harassers who keep saying we do NFTs, we don't. We don't. Unless you mean. Unless you mean nice adventurers. Okay. So anyhow, that's the shirt. If you're not a woman's size, that's okay. We'll have some later. We'll get some later. And you get the party pack with it next up, Lady Aida. Okay, so the show, maybe the feather is, we have a new STEMAQT board. This is an arcade, LED arcade STEMAQT breakout, which lets you connect up to four arcade buttons with LEDs built in. And here, thank you. It was a wonderful video of Jelly showing off our 23 millimeter arcade buttons. And they have LEDs in them.  But before you know it, you're using a lot of PWMs. You have a lot of inputs. Could you make a version that makes it easy to control these? And in addition, our red and yellow LED arcades and other LED arcade buttons often need five volts for the LED. They're not designed for three volt logic and power. And so there's a little mini boost converter on there that'll convert whatever voltage that's coming in to five volts. So even if you're running this off of a Raspberry Pi or, you know, an RP2040 that's a 3.3 volt logic and power board, the LED will be lit and PWM'd with five volts. So it's I squared C to four button inputs and four PWM LED outputs with five volts max current drive. There is a resistor in series, so if the LED doesn't have a resistor, you know, don't worry, you're not going to blow out your LEDs. It's it's like super safe no matter what. Okay, and you want to show it off? Yeah, I thought I'd show it off. So this is the same, you know, I think it's one inch by three inches that our other, you know, the NEO key and the NEO slider. So it's kind of a, you know, DIY interface using all the same size PCBs. Here I have it plugged and played into a STEMA QT port on a QT Pi. And there's a little mic controller with four address jumpers and it's just connected over I squared C and it's reading the button press and you can see it's pulsing the LED PWM and 8-bit PWM number from 0 to 255 and you can see how responsive it is. Like even though it's over I squared C, the button is red and the LED is written is is happening pretty much instantaneously. Do you sell those wires? Yes, these are arcade quick connects. They're great for connecting to arcade buttons and micro switches very easily. No soldering is required which is why I particularly like this for if you want to add arcade buttons you just, you know, you just plug the JST XH connector in and it's polarized and then on the other side these, I mean they're they're a tight fit on purpose. I kind of don't want to break this. Yeah, okay. Okay, I don't want to break it but if you use pliers, you know, they pop right off but if you're using your hand I don't want to, you're not supposed to yank by the cable. Don't do what I just did. The demo gods are treating us nice tonight. Let's not tempt it. So yeah, you don't have to use these small LED buttons. We also have ginormous ones but you'll just make, want to make sure you have the right arcade quick connects for whatever size button you've got and LED socket. All right, and then the star of the show tonight is the D-Lady, our community, our customers. The Adafruit team is the free pink feather. They're back. They're back. So, you know, that was a new product but the only way to get the pink feather is just to load up your cart and then you get a free one after you spend $99 or more and, you know, look at the chart, learn some things, use the code and more. It's pink, guys. And that is this week's new product. You say no to pink? Nonsense.


I could tell you guys stories of me quitting, you know, there's one time I came back from the UCLA track and I was working on a bunch of US track guys and I left there from being there from six in the morning till noon with $20 in my hand and I'd done that a dozen times and I'm thought well kind of idiot am I like why am I doing this and I think entrepreneurs you're gonna have those conversations with yourself and you have to find something that pushes you through those and luckily for me the thing that pushed me through is every time I used this on someone they were so gracious like oh my god that feels so good when can I have it again and I thought I can't quit I come home I was pissed off because I'd only made $20 and I thought I can't pay my bills rent kids all that and I swore at this thing and I put it in a box and I put it in my closet in my kitchen and I'm like F you I'm done I'm gonna go back to being a chiropractor two days later a guy who's now a really good friend of mine knocks on my door I live in Manhattan Beach to get to my door you have to know where I live I mean yeah you have to walk behind a house and down this path and sure I'm in the bathroom and my daughter comes and says dad there's a guy at the door who what guy I don't know he's asking for you I come out and there's a guy standing there I'm like hey he goes Dr. J I was like yeah he said I'm down on the beach training Alex Rodriguez and we lost somehow one of the batteries in the sand and we can't find it and I googled you and your house happened to be right here happen to have a battery and I was like kidding me I just swore this thing away and now Alex Rodriguez wants a battery that's amazing I could tell you little stories like that where the universe sort of nudged me like hey you can't drop this and I'm being real about that there there were many times where there was another power that just said you can't leave this so I don't think anyone that starts any business is expecting it to be easy but I also didn't understand how hard it was going to be oh man I really love that I really I love this is exactly why we started this podcast for these conversations and I think very few people are they don't want to talk about imposter syndrome they don't want to talk about the times they almost walked away and they had someone important nudge them whether it's you know someone showing up at your door or a parent or an investor or just someone at the very last day of you closing down is a such a fan of your product and calls you and says hey are you looking for investors I'm willing to put in 50,000 you know and at that time it's everything it's everything that you need to say I knew I wasn't delusional I knew it I knew it I had this feeling and now I have to continue I think that is there's two things when people ask me how I was able to get through this it was persistence consistency and delusion yeah I believe that this is going to be everywhere in the world how would you rank those out of all three of those I honestly it's a rotating list you know in the morning sometimes it's just consistency I I I have to do this routine you know when I'm standing at a NHL one of the first NHL summer conferences I went to and I'm the only person with with standing there with Cutter one of my good friends and and our the VP the company and we're standing there at the NHL conference summer meetings with this and the brand new tool and people are laughing at us you have to be delusional you have to kick in that's what's gotta be the first so I'll be honest with you guys I didn't think of those things consciously I did think of consistency and persistence I knew those two things would happen I just realized later on I was delusional hey everyone thanks for checking out that clip if you enjoyed it be sure to hit the like button down below and if you're interested in hearing the full episode it's out right now on our YouTube channel we've had a lot of great guests come on this show before and we've got a lot of great guests coming up in the future so hit subscribe so that you don't miss a single episode and one final note we're always looking for new ideas and new companies feature on the show so if you know of someone or know of a company write us a comment down below letting us know who they are and what they do we'd be happy to have them on the show till then I'll just be here waiting for your comments so uh see you later


What's going on everybody welcome back to another video and we continue our series of the road to the title to the French Open title for 2021 and we're gonna be having a look at Egas Fiontex road to the title and the players that she's probably gonna have to beat If she is gonna win her back-to-back French Open trophies, of course, she's the defending champion currently world number nine Let's go have a look at her road to victory All right, so our first-round opponent is gonna be against Juvan an opponent She actually played earlier in the year and beat in three tight sets So her first-round opponent might not be as easy as it seems but you'd expect this Fiontex will win that matchup Her second-round opponent is likely to be Shelby Rogers And Fiontex has a 1-0 head-to-head record against her as well and that match being on a hard court So you'd expect that on a clay court Fiontex should be able to beat Rogers heading into the third round Fiontex is most likely gonna play the 30th seed Contivate and interestingly enough Contivate actually has a winning record over Fiontex 2-0 So they played the twice and Fiontex has not beaten her yet So it's not going to be an easy match in her third round if she does play against the 30th seed But these two have never played on clay so you would expect Fiontex on clay should be able to get over the 30th seed Contivate heading into the fourth round now and the number 12 seed awaits Gabinia Muga-Ruta is gonna be the 12th seed and is the probably the most likely player that Fiontex will have to face Interestingly enough 1-0 is the head-to-head and it's in favor of Muga-Ruta with these two playing in Dubai earlier this year And Muga-Ruta serving up a bagel So that is not going to be an easy match for Fiontex The other scenario would be that she plays against the 20 second seed Martich who she has never played before so you would expect that on the clay courts Fiontex should be able to beat Martich and if Fiontex could have her choice She would definitely not want to pick Muga-Ruta Especially the way that Muga-Ruta beat her only a couple of months ago heading into the quarter finals now And the two players that she is most likely to place Fiontex in those quarter finals It might be a replay of the final the French Open last year Sofia Kenan the fourth seed is awaiting in that quarter final with these two only playing the one time before being that French Open final Back in 2020 so Sveontek would like her chances against Kenan And the other scenario would be that she plays against at least Mertens an opponent She has never played before so again You would expect when she's never played someone's fiontex She should be able to beat them on the clay courts Especially the way she was beating opponents last year who she had never faced heading into the semi-finals now And the most likely opponents there's two of them the world number one Ash Barty These two have played only the one time and that was actually a few weeks ago with Barty getting the win But Sveontek did have a lead on Barty in the first set So maybe if she can capitalize on that lead She can turn the tables at the semi-finals and the other player is the number five speeds Fetalina Who she has only played the one time before which was actually back in Rome a couple of weeks ago and Sveontek got the win So if Sveontek could have her choice She would definitely rather place Fetalina But if she does have to play Barty which I think a lot of us are projecting to happen She can definitely get the win heading into the final now as Fiontex makes it all the way to the final There's two opponents that stand out with Sabalenka being the most obvious one the world number four the third seed of this event She actually never played Sabalenka before so it would be a very interesting matchup because remember Sabalenka has never made it to a Grand slam final and Sveontek does have a French open to her name So based on experience even though they're both young you would expect it Fiontex should beat Sabalenka in that big final and the other opponent that she might face is the number two seed Naomi Osaka now we know Osaka is not a great clay court player But if she does get all the way to the final Osaka does have a leading head-to-head record against Fiontex 1-0 That match was two years ago on a hard court though, and we're playing on clay this week So Sveontek I would expect would be the favorite against Osaka So there it is the road to victory for Egas Fiontex to back up her 2020 French open title Can she go back to back? Let me know down in the comments below Who's her toughest opponent and how far is she gonna go in this tournament? I think Barty is her toughest opponent I think if she gets through the semi-finals the final is there for the taking for Sveontek So the defending champion she's got a pretty tough road to the final But if she can get through that semi she might be able to back it up


Weh today I may a nbite kumakamni kyemarakani, I can hear their hearing but they just want to hear This one, that's not going to stop this song. I may have this one question. What kind of beautiful are you? Wasis. Ya mo flap dem bobo jamaani. T� organiza yo semia kuwe kwa? She's fine. Kwa na kwa na kwa nzaya kipafoma maifil U kwa nzapu kwa blessing All over my body man My body is my soul Sos na nm na Miss Katawe Zea ko kwa, ya You're busy focusing on valentine See ya life Please introduce yourself to those people who don't know you yet Okay Um, my name is Rokoro I'm a 21-year-old musician and the songs that you heard You've taken notes I can't you The songs that you heard were No Love, Blessings and My Latest Single Crazy which they're all out on all platforms Alright Okay previously the first time Rogora came to us that's when she fully confosed us so we've just been waiting for her to release Awesomeness at her own special time and it wasn't that long ago so this project that you've released was it already in the work? some of you just fast picked that No it was already in the works it was already done by the time I came here which wasn't long like long ago it must have been like a few weeks ago but the project was already done we were just waiting for a release date Wow You stand up chesachini Yes you need to keep things I'm still back on the beautiful part look at her face has no makeup Are you seeing this mind?  Rogorotania on Instagram Rogorotania on Twitter and Rogorot.tania on TikTok I don't want to be a fan I will try to keep her talking as much as possible so you enjoy from where you are How has the reception been to your music so far? So far the reception has been amazing especially for Crazy I think Crazy is literally the best I've ever gotten out of an audience because even before I released Crazy when I was teasing it people were like what's that I've already had it so many times so I was like what do you mean it's my song what do you mean they're like Allah that's you I'm like yeah yeah that's me so people were just like okay we need to hear this song so short I was like wow people actually like this people actually like Crazy a lot excuse me DJ do you need us to start requesting because that's content right there it's really good music? Yes I love the music so there's no need for us to keep asking please please please we'll just incorporate it exactly it's official it's in the mix great I now know where I can find it we'll be watching now you're going to be performing in these events because people I want to believe have been vaccinated so now the restrictions are going to be let loose a little bit I'm hoping I'm hoping come on to Kazihaga guys it can happen it can happen yes definitely I want to start I love performing so much you're so brave though okay I am not as brave I have stage fright but once I get onto the stage and I get into the groove it's literally like it's like you doing something that you're scared of it's exhilarating but it's scary you come out like what was that? that's performing for me I'm scared of it but when I'm in the zone I'm like oh my gosh I get this rush of like dopamine all of the good vibes I get them as much as I'm scared so I come out like that was amazing do you look back and what you've done and say today I did this alright let's play that song one more time one more what way do you think she's talking about? that way this way all okay oko jil I don't know alright so how do you volume it up on Goka? we've just been here crazy crazy crazy guys crazy crazy you know what I think I think as I was downloading information about your brand new song why you surprised me so much you're so young and you already know what you want nani I won't say things but I'm not sure I'll start giving you my receipts actually I have a question what is the inspiration behind crazy crazy crazy at first didn't have an inspiration we just put ourselves in like a setting like okay we've okay the thing is we've all been in that situation majority of us we've been in a situation where we've been called crazy when it deep inside our hearts look how deep we know we are right nani like a woman scorn man I know I'm right why you calling me crazy that's for like the song is meant for those situations because a lot of people can relate to it by the way I've been called crazy before then you turned out to be right yeah I wasn't crazy I was just so frustrating sorry anyway but that's the inspiration behind crazy that's nice I like that you didn't have an inspiration and then suddenly yeah at first it was like okay at first like when we started writing it it was just like let's put ourselves in that position and then as we were writing it I was like by the way nani tell you should I hold you accountable of all the bullshits no alright saa beli koi MLB we live you be alright parting words mama parting words thank you for all the love that you've shown crazy I hope that you guys continue to follow me on my musical journey and that you guys continue to follow your dreams as well because it's very key and I love every single one of you honestly everyone watching this even though I've never met you before I love you and I hope you have a great day we love them too we love you too thank you for coming and Ati we love would you like to open heart Fungwa Roho no we can do this look amyaza kujipatia shuguli it's like I'm done with this one anyway hashtag is Bounce Nation one more time how can we find you on socials and support you on YouTube on Instagram Rogoro Tanya on Twitter Rogoro Tanya on Tiktok Rogoro Dot Tanya and on YouTube you can find my music under Taurus Music's YouTube channel I'll make sure that I can follow as we are practical people me I followed her right here on set can you start the process at 254 Facebook 254 channel on Twitter 254 underscore channel on the gram we are going to support Rogoro by 4C by 5 and when she wants to say in fact after this selfie real quick if you see it we know each other real quick real fast yes you say what you think hashtag Bounce Nation it will be the settlement of Kwangoma wait take your time you follow repeat if you want how to repeat amy okay we can't repeat it's okay I have it kidogo kidogo na Lord we got you we got you did you know we go live every Tuesday and Thursday from 4645 did you know the resident DJ is Keen Kingsley and he has been so gracious as to allow his brother DJ MLB in the house do you know what MLB stands for he's come with English you've heard it already me misto kwan kistraku a little bit alisama comment moja I think me something something brege I only heard it as murage seriously did you follow did you subscribe tairan how we doing this we are doing this lemmi give him a yeah okay let's do a thing I love with Taro let's do it but for sure let's support her she is amazing that as well hashtag Bounce Nation take it away


Yeah, I'm Dharmaraj Joshi from Nepal. I work with ILC's National Engagement Strategy. I was here to attend the India Land and Development Conference and also data meet OAKSOP. So, especially about today's OAKSOP, I was not that much aware of open data kind of thing. Today I got to know about how to use it, how to better utilize and how to make sense of the open data source. So, thanks to the organizers. It's my pleasure to be here. Thank you.


No America is a think tank like no other and here in New York It's become a go-to place for reinventing policy conversations to include a larger network of problem-solvers. In this city to be a fixture in the policy landscape also means being a fixture in technology, finance, art and culture and sustainability. And we're not just talking the talk. We're actually doing policy. Our initiatives are on the ground working in community-based resilience and innovation and entrepreneurship and 21st century diplomacy. With all of that, plus our lively forum for public events, New America NYC is an accelerator in our long-term vision to becoming a civic enterprise with local roots and national impact. We've always been a home for big ideas and now we're turning them into big change.


Let's go surfing now, everybody's learning how to go on a surfboard with me. What is up you guys, welcome back to another one. If you are new to the channel, I am Goldpony and today we are in the new 2020 Subaru Ascent, courtesy of Faulkner Subaru in Mechanicsburg PA. And so I did review this one last year, however, there are some changes for the 2020 Ascent. Therefore, I am in this one again. So, as always, let's start with pricing. And so there will be several different trim levels for the 2020 Ascent, first one being the base trim, starting at $31,995, then you have the premium, which is the one we have today, that one is going to start at $34,395, limited starts at $39,345, and lastly the touring is going to start at $45,045. But regardless of trim level that you go with, the power plant on the 2020 Ascent will be the same. Powering this beast is a 2.4 liter turbocharged four cylinder engine, putting out 260 horsepower at 5,600 RPM, 277 pound-feet of torque available from the power band of 2,000 to 4,800 RPM. Power of course sent to all four wheels through Subaru's legendary symmetrical all-wheel drive system, and I put it as legendary because everybody who has tested all-wheel drive systems in any kind of comparison, Subaru always comes out on top, which is part of the reason they advertise so heavily what their car is being featured in snow, because this is an off-road, especially in the snow beast. But anyways, that power is going to be sent to the ground through a linear Tronic CVT, giving you MPG numbers coming in at 21 in the city, 27 on the highway for the base or premium trim levels, and then you got 20 in the city, 26 on the highway if you go with the limited or the touring. Either way, the Ascent is going to take regular, unlit fuel, aka 87 octane, so it'll save you a little bit of money there. But so now, having said that, you guys know what we have to do next. I believe I have a straightaway, I do. Let's go ahead and come to a stop, and let's do a quick little acceleration. See how quick we can get the 2020 Ascent here up to speed. OK. Power definitely kicks in in the upper RPM range for sure. Little bit of turbo delay, turbo lag, so to speak, but it's not all that bad. Definitely a good bit of power, though, once you start climbing up to, like, I don't know, 3,000, 4,000 RPM-ish. What's a one additional thing I wanted to mention to you guys is if you slide the shifter all the way to the back and to the left, that is going to give you a manual shift mode. So you do have paddle shifters I wanted to mention on this one. So let's go ahead and put it in that manual shift mode. We are in fourth gear, third gear, second gear. And here we go. Actually, not that bad. Got to keep in mind at the same time this is a CVT, but if you needed it, paddle shifters do react quite quickly. And that, of course, also being a good feature for some engine braking if you're in the snow or something like that. So you don't have to actually hit the brakes and we're spinning out. You guys know how it goes. Any of you, speaking of the brakes, brakes are, of course, equally important. Up front, you will find 13.1 inch ventilated front discs. In the back, 13 inch ventilated rear discs. And as far as the braking feel goes, definitely brings you to a quick stop. Very impressive brakes on the Ascend. Touching on suspension and handling a little bit, you will find a four-wheel independent raised suspension, along with a mode called X mode. And X mode is actually available for every single trim level of the 2020 ascent. I like this. The reason I like X mode is because it does give you a little bit of additional off-road capability in addition to that Subaru Symmetrical all-wheel drive, of course. But it's going to adjust things like the throttle response, transmission settings, the all-wheel drive system itself, VDC system. It also gives you hill descent control as well. And overall, when you add all these things up together, essentially, X mode is going to help prevent wheel slip and overall give you more traction in off-road situations, like in the snow or on a gravel road or if you're climbing the mountains or something like that, essentially. And then touching our ride quality. Honestly, the ride quality has definitely been a plus in the Ascend. I have no issues with that. Very smooth ride, soaking up PA's road imperfections. Very nicely for me. Steering feel is a little on the loosey-goosey side, but it is as expected, I guess you could say, for an SUV. I wouldn't have minded a little heavier of a weight to it, but it's not bad. Cabin noise is very subdued as well, even with that acceleration I just did. 2020 Ascend definitely does give you a very quiet cabin on the inside here. And touching on visibility, honestly, visibility is great for a 3-row SUV. A lot of times with 3-row SUVs, they will try to bring down the back end a little bit for styling purposes, which does hinder the visibility. But with the Ascend, that is not really done. And therefore, you have excellent visibility out the back. So I'd probably say among the best as far as 3-row SUVs are concerned. But so now, having touched on all the performance characteristics of the 2020 Ascend, let's now touch on what's new for this year. And so to start, Subaru engineers have added a power rear gate lock function. That is new.  Just in case you forget about your kid or your dog or your parrot or whatever in the back seat, that is going to help remind you. But so now let's take a look at the exterior, starting up front, you will find 8.7 inches of ground clearance, which I believe is the best for 3-row SUVs. Don't quote me on that at the very least, it's one of the highest. To the sides, projector beam halogen headlights will come with the base and premium trim levels. There are LED steering responsive headlights, though, available if you want with the limited or the touring trim level. And by the way, if you want with one of those trims, you will also get LED fog lights just below. To make your way to the side, raised roof rails will come standard on the ascent, along with chrome windows surrounds. And if you want with the premium trim level and up, you will also find rear privacy glass in the back there.  And you will get integrated turn signals if you want with the limited or touring trim levels. Then take a look down at the wheel setup, 18-inch aluminum alloy wheels come with the base and premium trims. Then you get bumped up to 20-inch aluminum alloy wheels with the limited or touring. Then making your way all the way to the back, there is a rear spoiler with an integrated brake light up top there. Just below that, a rear window wiper and just below all of that, dual exhaust outlets with chrome tips. So you guys know what we have to do next, even though we're in SUV as always, here is that exhaust clip. And so, but now since we are around back to open that rear trunk, there actually is a power lift gate with the limited or touring trim levels. That is how it's gonna come standard at least. It is available on the premium that we have today and therefore that is why you see that. But now, since we have that cargo area open when it comes to cargo capacity, 17.6 cubic feet behind that third row, 47 cubic feet behind the second row. And if you ended up folding both rows down, you will find 86 cubic feet behind that first row. I did want to mention in the very back there there is some underfloor storage available as well as grocery hooks to help you out back there too. But make your way to the rear legroom. Third row legroom comes in at 31.7 inches. So for reference, I'm an even six feet tall. This is how much space I have back there. Second row comes in at 38.6 inches. Again, this is how much space I had in the second row. Definitely more manageable. Third row is better left for small kids of course. And of course, to make sure everybody is comfortable all three rows, there is rear ventilation throughout all three rows of course. Heated second row seats will be available. They do not come standard though. And with the Ascent, this is available with eight or seven passenger seating, meaning that second row can come in a full bench seat giving you room for three occupants. Or you can go with the captain's chair setup where you have two in the middle there just so you don't have the kids fighting with each other as much. Then make your way to the front seats. Manually adjustable seats will come with a base trim level. You will get a power driver seat with a premium. Then if you want the limited or touring you will get a power driver and passenger seat.  Ventilated front seats is gonna come with the touring. Cloth finish with the base and premium. And leather finish with the limited and touring. But now taking a look up front, there is a tilt and telescoping steering wheel that comes standard. If you wanted it to be leather wrapped go with the premium trim level enough. And if you wanted a heated steering wheel that is gonna come with the limited or touring trim levels. But now when it comes to the startup let me first start by showing you guys the key here. There is a lock, unlock and the button to pop the rear hatch. And by the way, the unlock button is the Subaru logo in the middle. Always like when companies do that. What's so anyways to actually start the Ascent? All you need to do is simply put your foot on the brake. There is a push button start if you want with the limited or touring it is available on the premium. And again, we do have that one today. So all I'm going to do is simply put my foot on the brake and press the engine start button there. And so, but then what started up tachometers on your left speedometers on your right there is a small digital display front and center. And that digital display is gonna display things like your safety features, average miles per gallon at any given time. Trebae and Trebye gear, you're in just the basics essentially. But so now let's take a look at overall interior quality. First thing I wanted to mention is there is an auto dimming rear view mirror with homeland controls standard on the limited and touring available on the premium that we certainly have today. Once again, also one of the cool things the sunglass holder on the roof here when you press that the doubles as kind of a rear mirror as well. So you can spy on the kids like a school bus driver would. So like I was previously mentioning with the rear ventilation, the Ascent actually does come with tri zone climate control standard, meaning driver, passenger and rear passengers can all set their own temperatures if they wanted to panoramic moon roof is gonna come with the touring. It is available on the premium and limited trims, however, although we don't have it today. Wood grain accents again, standard on the touring, but I will say I love the tune toned interior that we do have on the premium. Always like the contrast between the black and the tan accents. And those tan accents actually tie in as well with the stitching. There's actually tan accented stitching within the black leather. So it all ties together quite nicely. Also there is a small little cubby area just above the passenger side glove box as well. If you wanted to throw some stuff there. And of course, since we have a 2020 there are USB ports everywhere in this thing because everybody always needs to stay connected of course. But now since I'm touching on the tech apparently, front and center you will find a 6.5 inch color touchscreen display with the base trim level. However, if you bumped up to the premium or limited or touring, you're gonna get an eight inch color touchscreen display. Either way though, you're still gonna get Bluetooth and audio streaming even with the smaller screen as well as Android Auto and Apple Carplays. You're still good there too. Factory navigation system is gonna be available when it comes to the radio settings as far as the sound system goes. Six speakers are gonna come with the base, premium and limited trim levels. However, there is a 14 speaker Harman Kardon Quantum Surround Sound System that is gonna come standard with the touring. And that is gonna come with a ton of watts meaning 792 watts to be exact. But that is not the one we have today. So let's go ahead and turn on the radio so you've got playing this morning and let's test out the six speaker sound system that we have in this premium trim level today. ["Scrillix"] Dude, that was a pretty intense sound system. You gotta love Scrillix. You guys gotta love Scrillix but good bit of base, good bit of clarity, definitely more than enough loudness honestly even with six speakers, more than enough loudness for a three row SUV like the Ascent. But the last thing on the tech display I wanted to mention is when you do put the Ascent in reverse, you will find a rear view camera for every single trim level letting you know who or what is behind you which is always is going to lead me into safety. And so when it comes to safety, there are front side and side curtain airbags also in the back you have latch aka lower anchors and tethers for children for the rear car seats. Also back there rear child door locks of course. But the best part about the safety of course is Subaru's eyesight. This is gonna come standard actually on all trim levels giving you things like adaptive cruise control, pre-collision braking, lane departure and sway warning and lane keep assist. But the safety continues if you bump up the trim levels a little bit. Premium trim and up is gonna add a blind spot monitor with rear cross traffic alert and limited trim and up is gonna add high beam assist and reverse automatic braking. And so with that is about it for this one you guys. Thank you so much for watching. Be sure to like the video and subscribe. Feel free to follow me on social media at the bottom of the screen there and I will see you guys in the next video. Stay good.


Okay, so tell me about the kind of the technical versus the business side of your practice. I mean you've got the technical challenges, but you've also got talking to business users and executives that might not understand the big data, what the approach is all about. Tell me about those two different worlds and how you approach them. So I think our approach has been to really lead with what we call a brainstorm engagement. It's a two-week engagement and really allows the IT and technical folks to really sit together with the business strategy folks. And we kind of brainstorm what types of analytics they would like to do and why they can't do that with their existing infrastructure. And then we kind of come up with a goal architecture using Hadoop and the ecosystem of products that are available today. And then we kind of move forward and pilot that. And then in the eight-week scenario, we're kind of standing up something that is useful. It's not a throwaway POC. So kind of the business sees immediate impact. They get visibility into some reports of some analytics that they couldn't do before or would take months to ask the IT organization to develop. And kind of we repeat that process. So this notion of a big data solution factory is really something that we're kind of instilling in our clients. So they work with us. We take them from prioritization to the technology to the analytics and solutions to sit on top. And then it's a continual process to really leverage the asset over time. As we all know and we've heard in all the case studies today in the sessions, kind of originally what these clusters originally stand up to do, very often the organizations find new things to do with it. So once that word gets out, like, wow, I have all this compute power. Wow, I can take all of this new data that we couldn't analyze before. It starts to really grow on the business side. And that's kind of where we really bring marriage to the IT organization and to the business organization.


Hi, I'm Josh. Thank you for coming. This is like 9 30 after the after party the night before so Thank you. I'm really impressed. Everybody's here and like looks awake. We're awake ish pretend. It's a story you tell yourself. Um, so Come join us. Thank you. Um, I Meant to message Carl and say I didn't really like the word slightly in the title Um But you know, then I know we got distracted. I think this is a little bit more like fairly advanced topics and block development So be kind to yourself if this is all new which it is for the whole community. These are topics that I've come across in my work Working on a plugin called caldera forms that I'm pretty obsessed with and I get the pleasure of working on It's a drag-and-drop free responsive form builder and we've been working on incorporating the new Gutenberg block stuff What does that mean? How much of it are we gonna use inside WP admin in other places? So that's kind of what this talk is about and it's a word camp talk So you're not gonna become an expert in Gutenberg in 45 minutes, but hopefully when these problems come up You'll remember this in these slides are at caldera forms calm word camp Montreal 2018 If you look in the speaker notes, there's gonna be a link whenever there's a code example And you might kind of squint to read and it's a image if you look in the speaker notes when you download these slides There is a link to You know a file you can download that has the slide the code Um in some cases, it's literally just cut and pasted out of caldera forms It's a word camp everybody's welcome what we are talking about today is Once you've been mastered the basics of Gutenberg if you haven't yet, you know if you don't know how to build a block That's fine. There are tons of talks about this on word camp TV to search for Gutenberg Mine from word camp Jacksonville kind of goes before this talk in the chronology But we're going to let's go back We're gonna be talking about Building slightly more complex products and what do you do about your short codes? Right, you have a plug-in. You have a theme you have a site you've developed and you have short codes there It's a hundred percent necessary that those short codes continue to work, right? So let's talk about that because that's one concern But also if you're building plugins you want to make sure that your users don't keep using short codes They start using blocks to work with your plugins. So we'll talk about that Um So we're just gonna be talking about like sort of the modern JavaScript tools Constructing like an interface out of Gutenberg components and creating components components that can be shared Right for use we're gonna talk a lot about code for years How do we kind of build web web applications out of WordPress? Thanks to Gutenberg? This is a photo of my dog She's super excited like I got this photo her food would be slightly off to the right And that's her favorite ball and her favorite little toy so she was super excited about this and that's kind of me Are this stuff like I'm nerding out about it and it's um, it's really fun But also like, you know, it's my dog. She gets me in the slideshow um the Kind of question of do you need to use all these fancy things that you hear about with JavaScript development webpack npm parcel? Whatever um This is an important topic. I write I generally side with yes Um The period gets its own line for emphasis You don't have to I Is there anything obvious unobvious about my opinion here like npm yarn like dependency management Consistency everybody on your team has exactly the same copy of low dash of react Right and that's a thing that you write one line of code and everybody has the same thing when you distribute it Everybody has the right dependencies You can build in your automation for your testing for building for release, right? You know when we develop plugins we have test files We have unminified JavaScript all the stuff that maybe we don't want to send to wordpress.org We don't want to load on the server and production, but we need for development We can write scripts to do that so it's really a lot of the crazy stuff about wordpress Where we're cutting and pasting copies of like bootstrap jQuery plugins in That's kind of at cons known modules gets big. We have to learn some new things. I think it's worth it Webpack webpack is a fully featured bundler so it could do things like take JavaScript files and minify them combine them. He can Take new JavaScript syntax is yes sex. Yes next things like Type script and flow which creates strongly type JavaScript, but you can't actually run that in the browser webpack and compile that to browser safe JavaScript You can help with CSS and images because of them Because of Babel you can use the new JavaScript syntaxes and because of web assembly you can use basically everything It's not the easiest thing to learn And it's a very fast-moving ecosystem so That kind of but it using webpack and Babel allow you to use the new JavaScript, right? I can never remember if I'm supposed to call this yes next or yes 27 10 17 and right I just call it the new JavaScript because we get like Constant and let instead of our much simpler We have arrow functions iterators fetch a single wait like it's a really neat Language using it is a little bit more mental overhead.  So but once we start doing this I want to talk about the things that we can do when we use a modern approach to JavaScript development in WordPress Does anybody use node package manager? Right. It's useful, isn't it? What's use it to manage WordPress right nbmi WordPress element? Install with the WordPress element instruction. That's part of Gutenberg. It's on npm This is Cut and paste it out of the Gutenberg source code for element what we just installed And if you look it's importing create element Create cuz that's what like React basically does is creates elements It all these other things Component when you see react doc, you know class extends react dot component That's react dot component and WordPress is just exporting them right away unmonified in the reason for this Is you know how WordPress uses jQuery one dot something? but jQuery is on three Because there's just no better solution for WordPress There's no way to upgrade the jQuery dealing with the fact that jQuery 3 has removed certain functions That many WordPress sites are dependent on from jQuery one. We're just stuck So this right now is literally like cutting and pasting in a sensible fashion So in the future if WordPress needs to go in a different direction, we have a place to do it But right now, it's literally like import react export react So everything that we're talking about today is a WordPress concept But it's really a react concept, which is great because there's a ton of resources out there on how to use react And there's a ton of great tooling and a ton of great stuff But also your WordPress developers, you're like, what about backwards compatibility? This is smart When this becomes an issue, this will be how it'll be solved. That's way better than the jQuery situation and inside a WordPress This gets put on a WP global. This exists now. We have like WP dot API request things like that in WP admin. There's no real management for it But now if you enqueue WP components, you would expect WP dot components to be the WordPress components package And that's things like in this case a select control Or WP element, which has got component for building components And then WP dot I18n, those are the translation functions WordPress is this great set of PHP translation functions where you give it a string and a name And then the text domain and then it swaps out if it has the translation for that string It swaps it out and you have all those PHP functions. There's now a JavaScript package that does the same thing So that's the WP global when you're in WP admin You or Gutenberg or whatever has enqueued WP component, WP element, WP data Using WP and Q script like we always did So I said that we were able to use npm to install these parts of WordPress So if we're in a WordPress plugin, we don't want duplicate right, we don't want to load my my copy of WP I18n and your copy of W18n and course copy, right? That's bad for performance We want to load one. So I'm gonna develop add them to my develop dependencies So I can test with them. I can use it in isolation But my plugins, I'll just use WP and Q script to put it there If I'm doing an app that won't be used in WordPress I'm just going to install it regularly. So that way it's in my webpack buttons And sometimes this gets a little trickier and like webpack and roll up can handle this sort of stuff I mean, I just kind of paste from how it's done in Gutenberg So what inside a WordPress now? Once I've installed This doesn't really matter if it's WordPress plugin code or a web application code at this point. It doesn't matter Like as long as we take this into account In our decision-making the rest of this doesn't really it doesn't matter. This is the same. So I can now If you do JavaScript development, I know this should be look weird, right? I can just take a piece of WordPress and import it into my scope using webpack And then it does all the tree shaking and optimization if parts of these libraries aren't necessary. It doesn't include them It's pretty smart This could be its own slide But the benefit of working this way is that just an enzyme are really cool testing things We're talking about this on the way over here that when you like start a WordPress site with WPC You get very little WordPress stuff done Whereas when you create React app you get like unit testing and accessibility testing and all of this stuff like right away it's a different developer experience and when you develop WordPress this way you get to start to tap into this stuff and it's great because You can have your tests as you're developing them So any time your components change you're just basically taking a JSON representation So if it changes it shows you a diff of what's changed and you say That's great. That's what I wanted and updated or you know, I made a mistake and keep working So I really love that you know accessibility testing really great so Once you have this all set up you can use JSX this is an option you don't need to know JSX to write react or WordPress Gunnberg I recommend it strongly So we'll get back to that as we go There's scaffolding tools for blocks out there, right because this is a lot of setup Right, I think this stuff's important. I think it's worth Thinking through if this solves problems that you have in your life, but also like I don't want to set any of the stuff up, right like I Basically understand webpack But if you asked me to like set all this stuff up in scratch And I could cut and paste from code on github. I might get it right but WPC li is the command line tool for WordPress These two commands will make you a new WordPress plug-in with a block That's basically like a hello or a block requires no build tools This would be what I would recommend if you've never built a block install this package type that modify what it generates and That's really the best way to get started For more complex blocks that actually use the monitor tooling create good and block Is copy is similar to create react app if you're familiar with create react app Which is developed by the react team for scaffolding react apps. This Gives you all of that stuff in a WordPress Gutenberg block package in one command There's also good and block Which I've looked at and tried once and then got distracted, but it looks really neat it's similar to Create good and block and it also gives you like a Docker environment I think it's still under development, but we're looking at Human made has a React WP scripts That's their own create react apps that handles a lot of the weirdness of in queuing scripts in WordPress when you use webpack It gets weird They've worked through that doesn't actually create blocks, but it's really easy just to add a block from there The when you're doing JavaScript development you can have the page Refresh every time you make a change And with haunt module replacement. It'll only replace the one thing that actually changed. So it's super fast Um, and that can be tricky in WordPress I generally just don't have it like the create react or that human maids WP react scripts Creates a separate dev server that does that and then you just load it into WordPress when you're done That works for me Let's talk about building blocks out of this stuff I'm creating blocks out of modular components What's really cool about react in Gutenberg is we can have very small functions that do one thing And then we can build larger things out of it So the Gutenberg philosophy is everything is a block as developers We can go more modular than that everything's a component that we put together to build blocks So our users can build stuff out of blocks So this allows sort of modular building blocks for our code Every single function has one concern Code becomes reusable code becomes highly testable I work in plug-in support does anybody else here do plug-in support theme support work for host? Yeah, people are concerned about stability aren't they things break a lot in WordPress That worries me as somebody who's dependent on more and more people coming in wanting to build WordPress sites And hopefully they choose my plug-in and then upgrade to the paid version, right? So I'm worried about some of these stability concerns when we as developers write code that's more easily testable We're more likely to write tests that helps solve this problem So has anybody have we all built blocks? Last time I gave this talk it was like at the end of the Gutenberg day And I was like, yeah, that's topics that make sense. Josh. We've been talking about Gutenberg all day I realize now I'm skipping past some of the basic stuff in your Gutenberg block You have an edit callback. It creates the edit interface We got that concept edit edit callback edit interface This is the JavaScript function that generates our edit interface that you see in the Gutenberg editor And you'll notice that I'm not doing a lot of code here. I'm just dropping components We'll zoom back up to the top to see where some of the stuff gets imported from But inspector controls That's a h.o.c. From that's a component from wordpress that when anything inside of here shows up on the right in the You know block Settings this right here. This is my actual block. We'll get into the rest of this stuff. This is the whole thing We're gonna zoom in on parts of this One of the things that we can do in Gutenberg as we start to make this more complicated We can use data from state From like what the people are currently typing into other parts of the interface Right, anybody ever had to like figure out what the categories are and then make a recommended post widget down there You could do that in real time by just subscribing to the categories So if we wanted to like use the current post title now This was kind of smushed in there. It's kind of hard to read before that's why I jumped ahead You saw this in the last slide we could say WP data Right, this is one of those modules. We were talking about importing. I want to select from core editor I want to select from the post editor The document title and the document permalink So whenever the permalink or the dot or the Or the title changes This function gets run again in this array or this object that I'm building here will change So some as somebody types and changes the post title this object will change in real time how that works just doesn't matter I mean it's redux. I give a whole talk on it, but we don't have time for that But my point is for you as a developer it doesn't matter you should not worry about that You should just worry about the output let WordPress take care of that concern This is literally all you need to know in order to know what the title is at any given time as it's being changed That's much different than I'm used to working with WordPress Um, so what am I doing with this? I'm passing this into a component Right, this is a tiny little function That takes props and Then with props we get that settings back out. We figure out the share link here Right, this is kind of like Twitter comm like this is if you just build a text input This is sort of the no, you know, no Twitter tracking way of building a Twitter link You don't want to embed all their tracking JavaScript Which you'd need like a GDPR consent and a cookie consent for and just building a URL and Then building a little link, right? This is JSX here But it looks like HTML doesn't it that's a div you see how it has like an HTML div That's how you create a div Why reinvent the wheel? Let's start reinventing the wheel. You see how it's this class name That's because it's a JavaScript function, so you can't use the word class Right because that means something very different than like the CSS class So class name gets rendered as class Same thing with like on a label. It's HTML 4 instead of 4 because 4 is a JavaScript Keyword so this gives us it's very much like in PHP when we can do with in double quotes with We can put variables in but this updates live in the DOM automatically for us So whenever the value of any of what's coming in in props changes this re-renders as much as it needs to But as little as it needs to so it's performing and there's a ton of math there that I don't understand But that's why we have Facebook Like I don't use Facebook much socially, but I use their open source every day. It's really weird um, I really like the Inversion of they're working for me instead of the other way around So let's look at an example of how we can reuse word presses stuff In our own pockets, right? I have this theory that if all the plugin developers get together and use Gutenberg components for interfaces It'll be a lot less confusing to use word press, right? Because if you learn Gutenberg then you should you should automatically know how to use the rest of the thing, right? As WP admin takes on more Gutenberg components as plugins do it should be more intuitive to use word press because you'll be learning less things And you'll be switching us So here's another component. I've kind of zoomed into its render So we can fit it on a screen again. This is why I have the downloads for my slides And we you see how up here we have import checkbox control text control from word press components They've got basic controls like radio button, you know range slider that kind of stuff Whatever you see in Gutenberg you can reuse And then more complex components for these are just basic checkboxes where I say Heading label help text it's wordpress and this stuff's super accessible like they've thought through all this Like it still needs work like there's a lot of a li a 11 y issues in Gutenberg that need work But that's a good thing about wordpress is somebody will step up on them or maybe somebody here But they'll like put the aria described by tag based on the fact that you put that help There like it's figured out for you And it'll be consistent and if there's a change in the standard wordpress can update that right if wcag 3.0 is a thing I assume one day and it changes how this works like wordpress can help update all of us once we're through here So like we say is it checked or not and then we have an unchanged function. This is super important This is coming through We'll see this but this is coming down from it When we have to pass data back up this is coming in our edit callback and wordpress We're past this function set attributes if you're a react developer and you're familiar with set state This is the same API. I assume it's the same function under the hood somewhere. I didn't look But our block has some attributes which we defined and then when we update them we use set attributes to update them Right we get attributes. We get set attributes in wordpress is passing us this function and saying hey You use that function to update that your values and then we can we can wrap it up in a reusable function like this And then we can pass that Into our components. So our components are unaware of the fact that they're loaded in Gutenberg But they work perfectly with Gutenberg because set attributes as a predictable API and we're just passing this unchanged function down to them and This is the same slide Code reiss Right so inside of our component. We're just calling on settings change this dot on settings change So our component is unaware of what it's doing. It's just calling this function what that function does doesn't matter But I said that wordpresses set attributes has the same API as react set state That's an opportunity for code reuse. It doesn't really matter where it goes to the component That also means you can use it with a unit test very easily The difference between using it in a unit test and using it in real life doesn't mean anything really So this is my settings component I've kind of like lopped off the render here so we can see we were looking at how it renders But we get past this on settings change component. Oh, I'm sorry. Yeah, see this dot props dot on chat Unchanged settings. So this is a dependency that comes in and then we just pass it an updated value of what it came in We merge the change in and we pack we call that function which then gets called by Gutenberg Right because remember that came from Gutenberg in here So this is kind of this part that I had lopped off For Britain for the sake. This is the bottom where we have these these functions So JSX looks like HTML And it's kind of like if HTML was dynamic. It was live whenever any of these values change it changes for us But besides that it's like fancy HTML Blocks in the front end This is less complex than it seems we gave this Talk at WordCamp Miami like all-day workshop like four of us in March when this is all very brand-new and at the end somebody went Okay, so how do I show it on the front end and we said but it's just HTML Right like we spend a ton of time on how to build these complex interfaces that hopefully are just putting HTML Into the post-contact and then it's like how do you show HTML in the front end? Well, that's what we've been doing for like 15 years, right? We've been using the tech the whizzy wig editor and short codes to put HTML into the front end and if you're saying yeah But Josh, we don't actually output short codes. Well, hold on like there are pages on my website where there's like broken short codes But in general, we don't want to show a short code. We want to show us a markup So in some cases, we're just going to use Gutenberg to save HTML into the post and that's great And then we use a Javascript and CSS to To enhance it so in this case, this is the save callback in our block Take a look in the handbook at register block. It covers all the different things that you do when you register a block using the function register block We can all remember register block So when we save we can save some some HTML. What does react do? It generates HTML. So when it saves the block, it'll call this component Which by the way is the same thing I used for previewing it, right? And potentially I could mount in the front end or in any other react app And I just use it to save HTML to post content Right and that's really neat because we could save semantic HTML that works with screen readers works when Javascript is turned off Works in low brand with situations and then we make it better progressively. That's really neat Um Right like why invent a new thing Like I know it's WordPress and we like to invent new things come up with our own way But I love the restraint here. I love that like just save a semantic HTML whenever you can strategy I think that's really beautiful. Um Sometimes your blocks are dynamic for example WordPress core has a block for recent posts It doesn't save the HTML of recent posts there because that can change every time it loads It does a rest API call to get the current post and puts them there, right? It actually queries the database We've all written short codes this way Sometimes you might want to save your blocked out as post meta, right? You can query by it. That's super useful You do like a where query. Those are great. Um, and so that might mean like a more complex rest API driven app That might mean get post meta gets called in your theme. I don't know. These are all problems We had before there Before this um now you can use a PHP function to register your block This is super useful if you already have a PHP function that renders what your block does for example a short code callback So in your JavaScript, you can tell Gutenberg Don't save anything. It saves the attributes like magically In one of those HTML comments that doesn't actually get printed. It gets stripped out So when you do this The rest is kind of automatic, which is cool No pun intended So in caldera forms, this is what we do because we created a block to show a form But like we already had a short code to show a form that we already had a PHP function to show a form Why reinvent it, right? I mean like that would be fun, but I had other things going on So um in PHP side we can register a block we can either do it in JavaScript, which is preferred Unless it doesn't work, which sometimes it's just not the right option in this case We needed to register our PHP render callback So I have this function You'll notice the first thing I do is check if the function register block type exists And if it doesn't exist I return That's key because after that I'm assuming Gutenberg's installed as a plug-in or WordPress 5.0 is active Right, that's a big assumption. Let's test for that first So we test for that and then we register a block Just like rest API routes, they have namespaces this will throw an error if we don't have that slash that So all of the ones from your one plug-in show the same namespace and I have no idea why I abbreviated, but I'm stuck I did this in like December. Nobody knew what they were doing And then I registered the name of a function that will get called when this rendered We'll get to that in the next slide and then I say it has attributes. We kind of touched on that and again, I apologize Well, we're good the Jesus 10 minutes. I've got like three slides the Because I thought we would have like a beginner block because this is in Boston But the attributes are kind of the data that your block has like what are the settings of your block in this case We have a we have this attribute called form ID and it's a string in its default value is nothing There's a section in the handbook on this It needs work. I should try I should do some work on it, but it kind of explains this attributes concept I went way more into it in my intro talk, but the idea is that this block knows about form ID Wordpress handles that automagically storing it and then when it renders it calls this function, okay? So this gets past that array of attributes. I should have run a linter on this There's an extra space after attributes, but not well. There isn't a space before attributes, but this is an array And then if right remember the default value of form ID was empty Right, it was just an empty string. Well, that's no good. There aren't forms of that So we do have to do a little bit of validation And then as I said, I already had a function that renders forms So I'm just using Gutenberg as a way of connecting settings in the user interface To this function that just takes an ID and renders form, right? And this is exactly how my shortcode callback works You know, my shortcode has a that's exactly the same arguments and calls this function The difference is that um, this is data coming out of the database so I don't trust it So I am going to count Airforms very safe string does a lot of sanitization to strings that I don't trust So I do right like it's coming out of the database. I don't trust it But that's good early all it takes to render an existing PHP function based on the settings of a block And it's designed to be a lot like shortcodes so that way you can Reuse your shortcode type architecture, which creates backwards compatibility simply I'm basically at the end. I'm around the rest of the day We're doing a lot of this stuff putting at Caldera WP Putting blocks together putting stuff that goes in blocks also in react apps in Laravel that kind of stuff So that's interesting. Come find me or I'm at Josh 412 on Twitter Caldera forms comm slash contact again in touch It means a ton to me that everybody like came out this early in the morning to hear me nerd out about the stuff that I get to Do um, so thank you very much. I think I have a little bit of time for questions Any questions? Jamie yes, yes so the question is about Extending blocks is there a model here to take a block and make it into your own version of that block That that's fair. So yes, there are in WordPress PHP. We have this this plugins API We have do action add filter right apply filters and action There is a if you search on npm. There is a WordPress hooks package Now that is a JavaScript implementation of that same pattern So one of the things that happens in the JavaScript code be right after a block is registered is one of those filters goes So you can actually use that to a modify it and say, okay, this block has a setting for color False that's no longer a setting always save it as you know, this hex code Don't let the user do that for example. Now also color palettes are in your theme You can register color palettes so that will constrain the settings of blocks to only use certain colors, right? So there's a lot of these options But one of the things that I've done is at that event like when the core button block goes renders copy It's current settings into a one that has like one additional thing and now I have a second block that just you know But in for one special use so there's a lot of opportunities like that And then the other side of what you're saying is like what if you don't want that capability? um on a per post type level you can whitelist and blacklist blocks and You can also have like intercall you got a box that have nested blocks inside of them and you can define what type of blocks go there So you have a lot of different control like you can make it so in the books post type You have like an author bio block and author photo block in a you know Book summary block and those have to be filled out. You can't add any more they go in these positions Or you can say like that's how it starts, but they can add and remove blocks beyond So there's a lot answers to that which is great because if there was one they wouldn't be good enough Do we have other questions? So the question is and correctly if I'm wrong if you're getting content from a post that was edited in Gutenberg via the REST API Do you just get the rendered content or do you get the blocked out? Right, so by if you go to the rest API and you query for WP slash v2 slash post 42 and you get post 42 and then you go to you know content dot rendered like you always did you would expect to see all the Block content rendered there, so I'm gonna answer your question twice and say no It's all rendered there just like short codes are but there are new API endpoints For getting the block data of each post because like for the most part you just want it rendered right like you have a valid developer reason for wanting that data But 90% of the time you just want it rendered right and that's why the rest API was built where like the title and the content Are an object and you have dot rendered So that way we can do things like have dot you know have un-rendered when you're in an admin context or whatever it is and there is You're gonna have to look in the docs. There is either an endpoint or a sub route of There's either it's own route or an endpoint of the post route that gives you all the block data But you have to have the right authentication. It's not publicly available by default Because there's likely private information in there, but it is available and also Michael wood has a blog post. He's WP scholar com. He's WP scholar on Twitter Michael would he has a blog post on creating a rest API endpoint out of the block parser, right? like there's a PHP parser for block data and He bet he showed this very simple bit of code that creates a rest API endpoints That's just JSON encoded attributes in that potentially for front end could be very interesting query that type stuff So there are a lot of options, but by default it's just gonna render it out, which I think makes sense Other questions time we had a time here Okay, well, I'm around the rest of the day and I love talking about this stuff so come up if you have questions about Gutenberg But thank you so much for coming out. I really appreciate it


Welcome to the original gangsters podcast. Another quick hitter edition. We're going back for our weekly update about what's going on in the great white north. And it appears to be the end of one of the chapters of this, you know, complex web of wars within wars. It's being reported by some outlets in Quebec as well as my sources are now confirming that the war that was happening in Quebec City over the last year between the blood family mafia and the Hells Angels Quebec City chapter is over with and that a piece has been reached at least when it comes to the home front in Quebec City. And I want to be clear that does not from what I'm hearing give a free pass to blood family mafia boss, David Ice Pick Turnell, who's currently I'm told being hunted by a group of Hells Angels from Quebec as well as soldiers in the crew of Montreal Street King Godfather Anna Tupac Anna. And that Marty Robert of the Montreal Hells Angels has an open half a million dollar contract on Turnell's head. That all is still active. But in Canada, it appears that according to police in Quebec City, according to the Hells Angels in Quebec City, there is now no more conflict, no more war on the home front. We reported that it was reported that things really, really reached a boiling point last month, where it cooler heads were not prevailing. And Turnell has been in hiding in Europe since July. At first, he was on a fugitive on the run from the law from a case that was dropped in July against him and some people within his organization. And then in 2024, it looks like it's more of like he's on the run from the law, but he's also on the run from the Hells Angels looking to kill him. He's being, I'm told, hidden by the Resudo mob. He aligned with them last year in kind of wars that were mirroring each other. You know, when your your enemy's enemy becomes your friend, the Resudo mob as now for the last year, year and a half is been at odds with the Hells Angels in Montreal group that they had been aligned with for 30, 40 years and that has all fallen apart. Meanwhile, over in Quebec City last year, the BFM were consolidating all the street gangs and refusing to pay the Quebec City Hells Angels 10% tax on their drug drug sales. I'm told through a meeting via a cousin of the Resudos, Turnell was friends, one of his lieutenants was a cousin of one of the Resudos and got a meeting with these guys, got co-signing.  I'm told he personally went out and shot up Matt Pelletier's house.  I should say a, I'm sorry, a Hells Angels prince from Quebec City. And then last last month, things went haywire where a very respected feared prominent Quebec City, Hells Angel by the name of Mario bananas are here was avoided an attempted kidnapping that was launched by the BFM. And then within a couple days of that, some of his, I'm told some of his cousins were kidnapped and held for ransom.  One of them or they both escaped when one of the people that were being held hostage broke out of his restraints and killed one of Turnell's top lieutenants, a guy named Patrick Martin, who was, I guess kind of captaining that kidnapping crew, they call him RIV, RIP to RIV. He was stabbed and shot to death while he slept. He fell asleep guarding these hostages. And that's how, you know, his demise came about. But I was told by sources on both sides of the law this sent everything, you know, it was already zero to 100. Then it went from like 100 to 1000. And I'm told that Mario bananas actually got on a plane to Europe with other members of the Hells Angels, as well as some of Otna's guys to go search for Turnell and kill him. Mario bananas is back in Canada right now, reports again, shout out to the dirty news. They've done a great job at being at the top top of the line and reporting all this, you know, boots on the ground in Quebec. But, you know, they reported that Mario bananas met with the police and the sq recently and, you know, told them that that the war is over with in Canada, that they will not be seeking retribution. They won't be looking to kidnap relatives of Turnell or Turnells and tenants. Now, some of this was just kind of organic in the sense that, you know, it's hard to wage a war against a group that's been dismantled. And as all this chaos was breaking out last month, Quebec City Police bring down a big BMF BFM indictment nailing about three dozen of them. So Turnells on the run, his right hand man and bodyguard, Rubens, Denise, they call him the Rhino, I'm told, was just picked up last week in Portugal. So he's kind of a lone wolf now, last man standing, everybody's in custody. So there is no more blood family mafia to be at war with unless you wanted to do what the BFM did was go after relatives. And according to Mario Bananas and the police in Quebec City, that is not going to happen. But I am told that David Turnell is still a marked man and open contract. I'm told that the SQ is confirming this half a million dollar contract out on Turnells head open for anybody in Europe to collect on it. We'll keep you updated. But right now the war within a war within a war, we have all these different conflicts breaking out. But the Quebec City war between the blood family mafia and the Hell's Angels Quebec City chapter is done. And it was about a year's worth of violence. We were slow to pick up on the reporting there. I kind of I had heard about what was going on, but I thought it was separate to what was happening in Montreal. But it was actually kind of one in the same two wars kind of became one. And then over this last month as things really started to pop off, we were giving you all the latest updates. And it also should also be pointed out that Mario Bananas had gone to Portugal at some point in the end of 23 with a peace offering for ice pick Turnell and didn't even get an audience. Turnell said, I won't see you get back on a plane. So this guy seems to have made his own bed and is going to have to sleep on it appears to be hell bent on living fast dying young and leaving a huge legacy. This guy's balls or the size of the Canadian Rockies and whether or not he survives this spring or summer or even the rest of the year, he'll definitely be remembered. OG pod Scott Bernstein out.