Whiskey Web and Whatnot

A whiskey fueled fireside chat with your favorite web developers.


53: Embracing New Tech, JavaScript, and the W3WC NFT Launch

Show Notes

The beauty of tech is that it keeps evolving. As a developer, it's important to keep evolving too. Whether that's trying new frameworks, starting side projects, or adopting emerging tech. JavaScript, for example, has taken on a whole new purpose since it was developed in the 90s to support a web browser. The language keeps developers like Robbie intrigued with features that seem underpromoted and underused by the community. At ShipShape, Chuck and Robbie are always experimenting. They're embracing Astro with plans to transition their website from Nuxt, developing a scheduling app, and most importantly they just launched the Whiskey Web and Whatnot NFT. In this episode, Chuck and Robbie talk about underrated JavaScript features, where to find the Whiskey Web and Whatnot NFT, and why Robbie can't decide on a new car. Key Takeaways * [01:22] - Chuck and Robbie introduce their NFT. * [04:11] - A whiskey review - Starlight Distillery Single Barrel Hubbard's Original Rick House of Indiana Straight Rye Whiskey. * [09:35] - The difference between Maps and Sets in JavaScript. * [22:52] - Chuck and Robbie discuss a scheduling app they're developing. * [36:10] - Chuck and Robbie critique Solid, Astro, and React. * [44:02] - Robbie whatnots about Ciroc Vodka. * [45:13] - Chuck and Robbie discuss streaming services, TV shows, and Ryan Reynolds. * [52:45] - What Robbie thinks about different trucks. Quotes [22:58] - "Internally, we're known for some technologies, but we're always experimenting with different things coming up as much as we can." ~ Chuck Carpenter [https://twitter.com/CharlesWthe3rd] [39:42] - "So the cool thing about Astro is they have support for a lot of different types of frameworks like Vue, Preact, React, and Svelte. If it's a hot thing that someone has mentioned recently, they've got it." ~ Robbie Wagner [https://twitter.com/rwwagner90] [41:44] - "I think for people that like React and want something that's not React just because React is super old, you could try Solid out." ~ Robbie Wagner [https://twitter.com/rwwagner90] Links * Bitski.com/Shipshapecode [https://www.bitski.com/@Shipshapecode/created] * Huber's Starlight Distillery Old Rickhouse Indiana Straight Rye Whiskey [https://www.huberwinery.com/product/old-rickhouse-rye-whiskey/] * Seelbach [https://seelbachs.com/] * Sagamore Rye [https://sagamorespirit.com/spirits/signature-rye-whiskey/] * JavaScript [https://www.javascript.com/] * Oracle [https://www.oracle.com/id/] * Gerber [https://www.gerber.com/] * Hoover [https://hoover.com/] * Mad Men [https://www.imdb.com/title/tt0804503/] * Ember [https://emberjs.com/] * The Doors [https://thedoors.com/] * React [https://reactjs.org/] * Vue 3 [https://vuejs.org/] * Nuxt [https://nuxtjs.org/] * Expo [https://expo.dev/] * iOS [https://www.apple.com/lae/ios/ios-16/] * Jest [https://jestjs.io/] * Cypress [https://www.cypress.io/] * Playwright [https://playwright.dev/] * Ember [https://emberjs.com/] * Hacktoberfest [https://hacktoberfest.com/] * Dependabot [https://github.com/dependabot] * Digital Ocean [https://www.digitalocean.com/] * Chris Coyier [https://chriscoyier.net/] * CSS-Tricks [https://css-tricks.com/] * CodePen [https://codepen.io/] --- Send in a voice message: https://podcasters.spotify.com/pod/show/whiskey-web-and-whatnot/message


Robbie Wagner: [00:09] What is going on, everybody? Welcome to Whiskey Web and Whatnot, your favorite show about Whiskey Web and Whatnot with your hosts Robbie Wagner and Chuck Carpenter. What's going on, Chuck?

Chuck Carpenter: [00:23] What is going on? Who is that? I get it sometimes.

Robbie Wagner: [00:27] Yeah, we're going to have to just get more used to going back and forth on the names, because.

Chuck Carpenter: [00:32] That's true.

Robbie Wagner: [00:32] It's probably getting annoying to people starting an episode and being like, this is Charles William Carpenter III. Even though it is fun to do.

Chuck Carpenter: [00:40] Yeah, it is fun to do. But even though most people don't know me as that. And so they're like, who am I listening to?

Robbie Wagner: [00:45] Yes, Chuck told me to listen to this, but this weird Charles William Carpenter III is on here. I don't know who that is.

Chuck Carpenter: [00:50] He's got a really bad radio voice onto another note. But as you announced with the show, we are going to talk about Whiskey. We're going to talk about web things, web technologies, and we're going to talk about some whatnot. Big time whatnot, like what cars are you trying to buy now? You never seem to be happy with one. What TV shows have we started? What my only sports obsession has begun and how that is devolving the rest of my life. But we'll get to those things later.

Robbie Wagner: [01:21] Hold on.

Chuck Carpenter: [01:21] Okay.

Robbie Wagner: [01:22] We were going to plug the NFT at the end, but let's do both. Let's talk about it now and then because just if someone doesn't listen to the whole thing, if they drop off, here it is. All right, we've got an NFT. It was going to have a fancy launch date. We were going to do it all legit. We fucked that up.

Chuck Carpenter: [01:37] That's not how we roll.

Robbie Wagner: [01:40] So instead of doing legit, having a release and having hype and build up or whatever, it is just released right now. So as soon as you're hearing this, it will be out. There will probably be some ads on some other episodes mentioning it, too. So you'll probably know about it before this episode. But this is when we're talking about it. It is at Bitski. Bitski.com/Shipshapecode all one word. So go there. You can see the four tiers. There are descriptions of what each of them are, which honestly, I kind of forget. But the gist is there's a diamond one that is super fancy, and you get, like, few bottles of whiskey. You get access to all of our whiskey collection, maybe dinner with us, be on the podcast. Kind of VIP experience, to the Whiskey Web and Whatnot swag collection. This whole collection, it doesn't say on Bitsky because I must have messed that up somehow. But it's the W three WC, the Whiskey Web, and Whatnot Whiskey Club, a play on W three C, which we thought was clever. Then there's more tiers. There's a gold tier, which gives you just the barrel picks we do. We'll ship them to you. We give you some swag, et cetera. The silver tier gets just the swag and the bronze. That's the last one. The bronze tier gets access to Discord. It's more of a supporter level like you like what we're doing. Show us that you like it, and we'll chat with you and Discord about various things, let you know about some of the upcoming guests and other whiskey picks, and things like that. It's ascending system. So every tier gets the discord access. And like, everything in bronze, you get in silver, everything in silver, you get in gold, et cetera, up the chain. So, yeah, everyone can join us in Discord. We won't be inviting anyone that doesn't have an NFT to the Discord. So that is your ticket in and hope to see you all there.

Chuck Carpenter: [03:37] We'll see who's interested. Yeah. How many people are interested in the whiskey component? Kind of what we're and we have all these bottles, and we want to share them. Who's interested?

Robbie Wagner: [03:46] The boxes behind Chuck are full of whiskey.

Chuck Carpenter: [03:49] Yeah. In case they happen to use my video for the promotional video portion that you'll see on your LinkedIn feeds. Yeah, that's all whiskey of that same barrel pick that we did.

**Robbie Wagner: **[04:00] Well, if I had just worn the same hat as you and turned it backwards, they could have used either video. It wouldn't matter. We're the same here.

Chuck Carpenter: [04:07] Yeah, that's our uniform. Podcast uniform from now on.

Robbie Wagner: [04:11] All right, tell us about the whiskey.

**Chuck Carpenter: **[04:13] All right, folks, thanks for joining today we're having the Starlight Distillery Single Barrel Hubbard's Original Rick House of Indiana Straight Rye Whiskey. Interesting for this particular rye because it is 90% rye, which apparently they farm as well. That's what it kind of says from their farm. 90% rye, 10% malted barley. They let it, it's distilled in their own copper pot stills. I was a little concerned, given that it's Indiana, that they might be sourcing, but it sounds like they're their own distilled.

Robbie Wagner: [04:47] If they're farming the grains, they're probably making it themselves.

Chuck Carpenter: [04:51] Yeah. And it is aged for a minimum of four years in new 53-gallon charred American oak barrels. So very bourbon-like in that sense. And it's 109 proof. Weak like it's got a little something. Yeah, that's not how we roll now. And 130 plus or nothing.

Robbie Wagner: [05:08] Yeah, like 131. And then the previous one is, like, 127 or something. So this should be smooth and watery.

Chuck Carpenter: [05:17] Smooth and watery. That's how we talk about whiskey here. All right, let's get some. Smells a little floral for me.

Robbie Wagner: [05:26] Yeah, I smell a hint of banana peel.

Chuck Carpenter: [05:29] See, I was going to say orange rind.

Robbie Wagner: [05:31] No, I think it's a little less tangy.

**Chuck Carpenter: **[05:34] No one's wrong, just so you know.

Robbie Wagner: [05:35] Well, yeah, I'm just trying to influence your fruit choice here.

Chuck Carpenter: [05:40] We'll see. Once I get in there and give it a taste, if I yeah, I also say yeah, it's got some heat on the back, for sure. Yeah. So a little pepper, a little heat there. Feeling that the smoothness is lacking. That might have been my heartburn this morning, too. It really warmed me up for this. Nice. I still feel like a little citrus and the initial palette. Feeling that floral, feeling that spice. A little leatherness.

Robbie Wagner: [06:14] Yeah, there's definitely some of that new shoes component.

Chuck Carpenter: [06:17] Yeah.

Robbie Wagner: [06:17] This is not a cleaned old leather shoe. This is a new patent leather shoe.

Chuck Carpenter: [06:22] I'm going to say yeah, slick leather.

Robbie Wagner: [06:27] Like, it's crisp and hip. The kids would like it.

Chuck Carpenter: [06:30] But how much do you like it?

Robbie Wagner: [06:32] Yeah, I think it's okay. It's certainly better than the two we had recently. I don't know if it's just because we've had some really strong ones the past few, but I'm kind of lacking a little flavor.

Chuck Carpenter: [06:43] Yeah, the flavor is quick, and then it dissipates pretty fast as it's going down. And that's why I'm only getting, like, maybe a little of that leatherness as it goes down.

Robbie Wagner: [06:53] It's kind of like the equivalent in whiskey of like a hint water where you drink it and you're like, oh, that does have BlackBerry. But you wouldn't really know unless you thought about it. The flavor quickly goes away. The flavor when it's there is very good, I would say. So I'm going to give it a five. I think the flavor is good, but yeah, I would want it to have a little more hit or something to it.

Chuck Carpenter: [07:16] Yeah. Because it's noted that this is not only their regular offering, but this is actually a barrel pick by the folks at SeelBach's, no longer shipped to you. So we had this a little while in the waiting. And so if this is, like, a special pick and this is what it tastes like. Yeah for a rye, it's kind of lacking a little punch aside from the burn.

Robbie Wagner: [07:39] Yeah, agreed.

Chuck Carpenter: [07:40] So, yeah, five. It's not bad. I don't know. I might even go four, actually. For me, I'm going to go four.

Robbie Wagner: [07:46] Not sponsored by Starlight.

Chuck Carpenter: [07:48] Not bad, but also not outstanding in any way. It's fine. I guess this would do well in a cocktail. It would do well in a cocktail, too.

Robbie Wagner: [07:56] I guess four is middle of the road. I kind of forget that our scale is only out of eight sometimes.

Chuck Carpenter: [08:04] Yeah, four in the middle. And I'd give this a fine middle. Yeah, it's drinkable. Yeah, not bad. But it lacks for me to go back to it.

Robbie Wagner: [08:12] So we'll average at four and a half. Okay, that's not terrible. If you had a good price on it, pick it up. But if not, maybe get something else.

Chuck Carpenter: [08:19] No. Sponsored by Sagamore Rye.

Robbie Wagner: [08:23] That shit is always good.

Chuck Carpenter: [08:27] It's funny how when I introduce people to Sagamore the first time and everybody is kind of skeptical, like a nice looking bottle, but I don't know. $40 out of Baltimore. What's this going to be? And they're like, that is tasty, but I would do that again.

Robbie Wagner: [08:43] Yeah. I don't know how they do it because I know they outsourced a lot of it. I think they're doing more of it in-house now, but I'm sure they started with, we got to have a really cool bottle, and that helped me want to buy it, and then yeah, they've just been killing it on the product.

Chuck Carpenter: [08:58] Yeah. Do we even know what their mash bill is? I don't know, but they're unique for rye, but then they're uniquely delicious every time, too. Yeah.

Robbie Wagner: [09:06] I mean, it's very high rye, but they're different based on the one you get, I think. Well, yes, because when we're doing the barrel pick, they do some high rye and some like medium rye, and they mix them to get the end result or something. So they do some mixing, and there's some science there.

Chuck Carpenter: [09:24] Yeah, they had a port finish one and a couple of others, too, before.

Robbie Wagner: [09:29] Yeah.

Chuck Carpenter: [09:31] Well, with cool. So it's all right. Moving on up, have you heard of JavaScript? No. You can't say that word unless you pay Oracle $5. You know that, right?

Robbie Wagner: [09:41] Well, I know that they own the copyright, but I think it's kind of a moot point at this point. Like Gerber, I think. Owns onesie. People call everything that's a onesie, onesie. So it's one of those things where it's become so ubiquitous, it doesn't matter if you own the name. People are going to use it.

Chuck Carpenter: [10:01] Yeah. Kind of like Hoover used to be synonymous with vacuum. Like, I'm going to hoover. It's a verb.

Robbie Wagner: [10:07] And then they gave everyone plane trips and went bankrupt.

Chuck Carpenter: [10:11] Yeah.

Robbie Wagner: [10:13] Did you read about that?

Chuck Carpenter: [10:15] No, but sounds like a very Mad Men kind of thing.

Robbie Wagner: [10:18] I forget the details, and we'll have to look it up for a what? Not later, but the gist of it was like, they did too good of a plain deal to where they were losing money, and a lot of people took them up on it, and then they lost a bunch of money. But we'll look up the details for a fun story for another time.

Chuck Carpenter: [10:32] Yeah, funny. All right. So JavaScript? Yeah. Let's talk about this thing, this, like, crazy language that we make a bunch of things all over the place now on used to be just in the browser. Now it's everywhere.

Robbie Wagner: [10:46] Yeah. I mean, it's really crazy that it was kind of built to fix things that browsers couldn't support while the browser vendors would implement them. And people just said, no, I'm going to use this to implement really crazy stuff. So that's why we all have jobs and make money. So I'm not upset about it, but that's just an example of like, you never know what's going to happen with the thing you create, I guess.

Chuck Carpenter: [11:11] Yes. So what things do you want to tell us about this thing?

Robbie Wagner: [11:15] Yeah. For anyone who might happen upon this and not know anything about JavaScript, it has some like basic types, like a number, a string, an object, an array. Booleans. Am I missing anything there? There's not a ton of like base types, right?

Chuck Carpenter: [11:33] Number, string, array, booleans. No, that seems like it covers it.

Robbie Wagner: [11:39] Yeah. So for a long time and even still now, I guess even myself included, I'll use objects a lot of the times. If there's a logical structure, it's kind of like a model or something. You have a cheeseburger, and it has properties of amount cooked, like doneness bun type or things you might describe a cheeseburger with, whereas an array is kind of more free form. You don't have key value. It's just like throw whatever you want in this list. So a list of whatever, like a to-do list or a shopping cart might have just like random items in it or something where you don't care as much about the iterating key value type of style. So we've been using these things for years, and I don't know when Map and Set came out. Were they part of like ES2015 or ES6 or have they been around that long?

Chuck Carpenter: [12:31] I think, yeah, a little bit. Yeah, I think they were like an ES6 thing, and then when they started changing it to like the year release, it might have been around 2015 or so.

Robbie Wagner: [12:41] Yeah. Okay. These are basically things that I think haven't been pushed that hard in the community, or like, you don't see them a ton for some reason, but they actually have a lot of cool features. So this is kind of just a public service announcement of, hey, check out Map and Set. So we're going to tell you a little bit about how they're different. So a map is like similar to an object in that it has key-value pairs and you can use it to represent whatever kind of data would work in that. The difference is an object requires all of your keys to be strings, and a map can be anything, which I don't really know the use-case behind that like making a key a function, but it can be. So I guess that would also give you like if you had something that was setting values in it and it was totally wrong and had a reference to a function, it would still work because it doesn't care what the key is. So it does that. It's nice to iterate through because you can just put it in a for...of loop and you automatically get like an array with two items of the key and the value. So a lot of times you would do this with an object, and you would need to do like object entries to get that info and then destructure it out, and then you could iterate through that or things of that nature. So this is kind of takes a little one step out of that. The order is guaranteed, which is cool.

Chuck Carpenter: [14:11] Yeah, I think that's like one of the key features of it, order matters.

Robbie Wagner: [14:16] Yeah.

Chuck Carpenter: [14:16] Can't get messed up.

Robbie Wagner:[14:17] Yes. People may not realize that about objects. Most browsers are pretty good about it these days as you insert things into the object. So if you have an empty object and you go at A, I want foo, at B, I want bar, whatever, those would be ordered AB always is kind of the thought from the developer. But the browsers until recently had not done that. So you would occasionally get like if you had the right sequence of things happen, it would be like reversed. Or if you had a big list of things that could be in all kinds of orders, so there was no way to guarantee to iterate through that object and get the order right, which made you have to do something like arrays have always been order guarantees. You may have to switch your data structure to an array and do things that way or something. But that's super nice that it orders it for you. You can always make sure that's there and then yeah. The thing that I don't know the right technical speak to quite go into what this is talking about. But the keys on the object could be this weird stuff where like, if you had a prototype extension kind of thing or like you are extending from some other object type or things that you may not have been setting on that object yourself might be kind of hanging around. And then you would have to do like object has owned property to look and see what the actual properties on the objects were, not the stuff like metadata and stuff hanging around.

Chuck Carpenter: [15:45] You mean like from an inheritance perspective? Right. If you were adjusting the prototype and it was getting inherited from other objects, maybe further up the tree, the way to clean that up is drop it in a map maybe or something like that.

Robbie Wagner: [15:59] Yeah, but I can't think of a good example. Like I don't know enough about when this happens or why, but there have been times maybe it's from ember objects or like things that have a complicated inheritance model that would have like crap you didn't put on there, and you're like, I don't know what this stuff is, or whatever. There's just stuff that would hang around on objects. Even just vanilla POJOs I think would sometimes have weird stuff on them. So this gets rid of all that. So if you're iterating through the keys, you know for sure you don't have to check. Did I put this key on there? Because you did. It's the ones that you put on there. So that's kind of nice. And it has an easy way to determine the size. So if you put 25 key-value pairs in and you want to know you had 25, there's no like dot length on an object. So you would have to do like object entries length or something. And this just has size. You just go dot size. Give me the size. So nothing that's like super crazy groundbreaking necessarily, but a lot of nice quality of life improvements, I would say.

Chuck Carpenter: [17:00] There you go. How to make your objects better. That's your blog post? How to make your objects friendly.

Robbie Wagner: [17:06] Well, are your POJOs too plain?

Chuck Carpenter: [17:09] It could be that.

Robbie Wagner: [17:10] Make them SOJOs. Make them special.

Chuck Carpenter: [17:14] Get your mojo rising. I don't know if The Doors lyric Mr. Mojo Risin'. Okay, well, you won't get me singing anymore.

Robbie Wagner: [17:27] So do you want to tell us about sets or do you want me to continue my lecture that no one cares about?

Chuck Carpenter: [17:32] Oh, my gosh, yes, professor. Can you take it down a notch? Hold on here. I need to get the little list though because cheat sheets.

Robbie Wagner: [17:42] Got my elbow pads.

Chuck Carpenter: [17:44] Right, perfect. So sets, array versus sets. So what are the differences there? Well, we get to find items faster in a set. So you get some really nice like instead of trying to determine an index and then see if it exists at particular index or, I don't know, includes is pretty decent but.

Robbie Wagner: [18:04] Well, so in the MDN docs, there's a thing that talks about this, and it says that it is faster than array includes. I forget what the big O that they mentioned is, but it's like it's guaranteed to be like an in-login search or whatever.

Chuck Carpenter: [18:20] Okay, perfect.

Robbie Wagner: [18:21] So when the browser implementers implement it, they're required to do more than just loop straight through and find the thing. They've got to have some kind of smart data structure.

Chuck Carpenter: [18:30] Yeah, because find is slow and crappy like that. Because you're throwing in the function for the iterative rather than just finding it in the set. Right. What I like about them is it's an easy filter for unique items. That's usually why I've used it. Not always used it, obviously, but in a time where I know I have an array, that I need it to be completely unique, which is also a nice thing for like nobles and stuff, too. Now, this thing that you have here is interesting, and it's not a reason why anybody would actually ever use it, I don't think. But not a number is considered equal to not a number, even though not a number is not equal. Deep equals is not deep equals to not a number. Right. In a real comparison.

Robbie Wagner: [19:15] If you put that in your console, all of you right now, try not a number, not equal, equal, not a number. And if you say equal, sorry, not the not it'll say false. Even though you typed the same thing on both sides, it's like these are not equal. I couldn't tell you why. JavaScript has some weird stuff, but I just thought that was funny that in a set they are equal.

Chuck Carpenter: [19:35] There you go. Gives you that better type comparison. We can say, right, more explicit type comparison instead of basically would be like that would be like fail in a try-catch normally or something.

Robbie Wagner: [19:48] Yeah, so there's basically like no downsides to either of these things, I think, with I guess the exception of if you needed to have duplicates for some reason in array, you would not want to use a set because it would just auto, not let you put a duplicate in.

Chuck Carpenter: [20:03] Yeah, I mean, arrays are nice for tracking garbage collection, right, or something like say that people are trying to throw away some stuff and you want to be able to collect any of that, and then you can look at how many nulls have got tossed in here, how many strings called first are in here or something else.

Robbie Wagner: [20:23] Yeah, aside from those cases, I would like to challenge everyone listening to use these things more because I feel like I never see these in code I'm working on and I feel like they would be so much nicer if we use them.

Chuck Carpenter: [20:36] Maybe if you created a React hook that uses them by default.

Robbie Wagner: [20:40] It actually goes through and just finds all of your arrays and wraps them in sets and then you never have to even think about it.

Chuck Carpenter: [20:48] Yeah, this is finally a use for a hook that maybe you get down with.

Robbie Wagner: [20:52] I mean, we're not going to go into hooks right now, but just as a quick note, I've been using Composables in Vue 3, and they're basically the same thing, and they're not terrible. I feel like the people I've seen use them in React are way more verbose about it and you have like 15 use effects or something, and it's like this gross, but what I've done in Vue so far has been more logical than that.

Chuck Carpenter: [21:17] People that were old school React devs and then had to change from class to functional components and then had to figure out how to replicate what they know about lifecycle methods, then had to like, okay, I've got one use effect that has no trackable and so it runs on first mount or something like that. Now I need one that actually looks for state changes and makes changes, then that kind of stuff. So that's really all it is. Now you're getting like three use effects that might have been able to handle and been more clearly readable in lifecycle hooks. But alas, here's where we're at.

Robbie Wagner: [21:54] Yes, stay tuned for the next version of React and Vue 4 and all the things where they go. This is a bad idea. Let's use classes.

Chuck Carpenter: [22:03] Will it be as quick as four or will it be React 20 go back to classes because they're at 18 now, I think?

Robbie Wagner: [22:11] Yeah, I don't know when React would do it, but it seems like Vue only releases a major version if there's like a huge paradigm shift. So it was like Vue 2 was nothing with Composables and then Vue 3 uses all of that. So I would think Vue 4 would only be warranted if the composable model went away.

Chuck Carpenter: [22:28] Or they moved to islands.

Robbie Wagner: [22:30] Yes, I think there is a lot of work around islands there. I don't know a lot about the dynamic between Vue itself and Nuxt, so I don't know who's doing what, but there's a lot of stuff being worked on there.

Chuck Carpenter: [22:43] Work is done. You know where else work is done? Right here at Ship Shape, folks. We can do work.

Robbie Wagner: [22:49] Yeah, we're not recording our ad right now though.

Chuck Carpenter: [22:52] No, I'm just practicing. I'm getting into mode. Sure. Internally, obviously, we're known for some technologies, but we're always experimenting with different things coming up or as much as we can. And we're actually working on an internal proof of concept on basically a scheduling app like subscription and scheduling app just to see if, for one, we can easily replicate something that we may have a need for and, two, to try out some new technologies. We decided to prioritize mobile, but not write Swift and Java and whatever else. So how do we get to that? One of the very well-known frameworks around that is Expo, and we're like cool universal apps, right? We just write things once, and we get connected into the bare metal stuff like Swift and a lot of options there to get it all going instead of like a progressive web app or writing directly in native code. Turns out it's harder than you thought because even though we know what's going on in React and its associated frameworks doing that and the transition to React Native is actually not as straightforward as we thought. So there are custom React components around the mobile view, and I guess that gives you probably some sugar into getting connected to those native APIs. But if you're not familiar, then there's kind of a learning curve around it. Styling, all the paradigms around styling, I mean a lot of our consulting recommendations are around tailwind and using that within React Native. Not as straightforward as we expected. Classes, just do the classes. But React Native components don't have the same attributes as traditional HTML components. So there's that learning curve as well. So those are some of the things we found so far.

Robbie Wagner: [24:50] You can't just underscore, underscore dangerously set HTML or whatever and force it to do you want like you can in React. You know what I'm talking about? I always forget what that's called.

Chuck Carpenter: [25:00] Yeah, well they have the other thing now that basically, like yeah, there's another direction in that now. So it's kind of like what we do in the React Shepherd wrapper that allows people to have kind of React components, but then we just use React to turn it into HTML on the fly in that very explicit moment, manually.

Robbie Wagner: [25:18] Calling the render and then passing it down instead of passing the components. Yeah, that makes sense.

Chuck Carpenter: [25:24] Yeah.

Robbie Wagner: [25:24] But yeah, I saw some weird stuff I haven't worked on this app much because I've been busy with other things, but I saw you guys discussing like the buttons are divs or something, and I was immediately like, why are they divs? Why would they not make them buttons? That makes no sense.

Chuck Carpenter: [25:42] Because button is an HTML spec, and that stuff just isn't the same. So if you get into well. I think if you talk about I don't know as much about Swift development as objective C. But you essentially are bringing in a web view and then trying to do some pseudo HTML things there but the web view can also kind of speak back and forth to the native code, so I just don't think you have the full arsenal of HTML components, and also I don't.

Robbie Wagner: [26:16] Everything's a div.

Robbie Wagner: [26:17] Yeah probably. Probably just compiles out to that as needed within web view. They're not worried about semantic code in that way, but then you lose some of the semantic attributes and whatnot there.

Robbie Wagner: [26:31] Yeah, like when you're trying to write a test, and you want to hit click or enter or something on it it's like I'm a div.

Chuck Carpenter: [26:39] Exactly. Yeah. So what attributes we get? I think you mentioned something about Aria or whatever else. I don't know if we even get that. I think it's and how does that work in an accessibility world? No idea. Brand questions there. We know how it works on the web, but for iOS how does it kind of latch on? And I think that model could inform testing.

Robbie Wagner: [27:04] Yeah, I know nothing about the mobile accessibility stuff. Someone we talked to was doing was that Mark that was doing mobile.

Chuck Carpenter: [27:13] Exclusively? I mean, maybe some.

Robbie Wagner: [27:15] No, I think he was like pivoting to some doing more mobile or something. He had done web.

Chuck Carpenter: [27:19] I see.

Robbie Wagner: [27:20] Traditionally.

Chuck Carpenter: [27:21] Yeah, I think we should talk we put a pin in that and talk about that in the future. Yeah. But yeah. So coming from normal SaaS development and pivoting over to a universal app and this is like I don't know. From what I hear. It's kind of best in class in terms of using that to deliver a mobile experience and a web experience all at once if you want. Using similar components but not finding it to be like quite as straightforward as maybe there'll be traction over time. And I made some assumptions, and we also made assumptions on tools we could use. Let's use the things we're familiar with those don't work.

Robbie Wagner: [28:00] Yeah, I would liken it to something like back in the day when everyone used Bootstrap and went all in on it, and it's like it had its own set of components and styles and things and if you wanted to go against what they were doing, you were going to have a rough time. So it's similar in that you get out of the box like, oh, I didn't write anything, and I have some nice buttons at the bottom. It looks like a mobile app. It's kind of nice looking. It's integrated with the native APIs, but every time I want to build a thing in it, I've got to really customize it because it doesn't like that. Which at that point I would wonder if maybe it's not the right choice. We'll still try it, but I would do like, write it all in native web stuff and then wrap it in capacitor or something that can hook into those native APIs. For like for this type of app you may want to do if you book something like a room, you might want to have it update your calendar or something that would probably be a native API thing with the iPhone or whatever, little things like that. Or maybe you would need to take a picture of something and post an announcement to people. So we need the camera, but I think for those you would just like, do capacitor, give me camera or whatever. Yeah, I don't know.

Chuck Carpenter: [29:16] I mean, the web has an API to the camera too, so how does that translate over too?

Robbie Wagner: [29:21] True.

Chuck Carpenter: [29:22] Yeah. Great questions. Not sure. We are trying to do a POC, so I think that just getting it functional and seeing if this usable and if we want to pivot to more, just decide this isn't great for us. I mean, once you get to POC point, that's fine. You can actually scrap and pivot completely and say what is actually MVP and go from there. Yeah, so I agree with that. It's sort of like if you just follow the docs, you kind of get there. One of the biggest challenges that we have is that we prioritize actual, like, integration or end-to-end testing so that we can ensure that, like, further development doesn't break critical paths. Can people log in? Can people sign up? Can people get a plan? Cool. Jest is what they're using and doing more unit testing. And I feel like it's just very minimal in terms of, like, providing you any kind of like assurance that changes aren't going to break your whole app or aren't going to break a critical part of your app. So I can deal with, like, this is your way of doing things, and it's not semantic and beautiful and whatever else, but I can get something working, and I can start to release and whatever else. But like a key thing that we're tripping over is this end-to-end test flow.

Robbie Wagner: [30:41] There's no way to use Cypress or anything like that.

Chuck Carpenter: [30:45] Maybe they don't have a direct Cypress integration bit in their own docs, but Cypress might have a thing because they have a ton of stuff about how to test all kinds of different things. So we'd totally be up for that. We tried Playwright first, and Playwright follows more of the page objects model.

Robbie Wagner: [31:05] Oh, hate it.

Chuck Carpenter: [31:06] Yeah. Okay. Well, then, you're looking more for those explicit page objects in order to trigger your tests and assertions.

Robbie Wagner: [31:18] Yeah. Let me tell you why I hate page objects.

Chuck Carpenter: [31:20] Sure, go for it. Yeah.

Robbie Wagner: [31:21] Just a quick aside, especially in an Ember app, what I'm used to, you would use Ember test selectors, which is really just a thing that strips your test selectors out when you production release. So you can put, like, data test foo on an element foo that you want to be able to grab from your test. You're like, I know what it's called. Right?

Chuck Carpenter:[31:40] Yeah.

Robbie Wagner: [31:40] Then you come in, and you go, all right, I want to add a page object on top of that. I'm going to call it foo button, and it's going to point to data test foo. Now I'm looking at the HTML. It says data test foo. I have to search where that is, find the other selector for it, and then find that name. I got to search two things instead of just finding data jest foo in my test.

Chuck Carpenter: [32:01] Right.

Robbie Wagner: [32:01] You know what I mean?

Chuck Carpenter: [32:02] Sure.

Robbie Wagner: [32:02] So that's why I don't like them.

Chuck Carpenter: [32:04] Okay.

Robbie Wagner: [32:04] Because it makes more work of jumping around to find things interesting.

Chuck Carpenter: [32:09] A subtitle of this podcast is Robbie hates that. Yeah. We'll talk about some things you don't hate sometimes, but then it's very easy to find the things you do hate.

Robbie Wagner: [32:21] Well, I mean, page objects, I get the reasoning that it's cool to be like, checkout button dot click two times or whatever, and like, oh, cool. I abstracted that out. I would rather do give me the selector of checkout button call, click on it twice. I don't need sugar. Whatever.

Chuck Carpenter: [32:39] I see. That's true. You skin a cat a few different ways, but you probably shouldn't skin a cat. I don't know.

Robbie Wagner: [32:45] No, that sounds terrifying. I wouldn't do that.

Chuck Carpenter: [32:50] Wait, we'll just do, like, a quick question. Does Robbie hate cheap T-shirts?

Robbie Wagner: [32:56] Kind of.

Chuck Carpenter: [32:57] Like, if you go to a conference and the T-shirt you're given is poor quality. Are you upset by that?

Chuck Carpenter: [33:04] Yes.

Robbie Wagner: [33:05] Especially if it uses non. Like, we're getting a rabbit hole here, but like, there's water-based ink, and there's, I guess, oil-based or whatever. So the oil-based kind of sits on top of the shirt, and you'll be familiar with those. You go buy a $5 shirt for an event or whatever, and you wash it one time, and it all cracks. That's an oil-based one. Water-based is what you want. It soaks into the shirt and dyes at that color. So it doesn't matter how many times you wash it. It just has that kind of vintage-worn look all the time, and it just continues to look much better. And people don't know about that. And I think it's maybe a little more expensive to do water-based ink. So they always do the oil-based, and you can wear the shirt, like, two times, and you're done.

Chuck Carpenter: [33:49] Yeah, but you know, one dollars times 100, money saved.

Robbie Wagner: [33:53] You're not wrong, but I think a lot of it is just people aren't informed. Like, they go to 123givemeshirts.com, and that place is like, yeah, I print shirts. Here you go. They don't ask about the best options.

Chuck Carpenter: [34:05] Right? There's a pro tip for all future conference organizers. If you weren't doing that, you really should. Especially if you want don't you want someone wearing your shirt, like, five years later being like, yeah, it's still good, still comfortable, and I had a good time here. Evangelizing, your event.

Robbie Wagner: [34:23] Coming up soon, actually, Hacktoberfest. Please listen to this and make water-based ink shirts.

Chuck Carpenter: [34:28] Did you do Hacktoberfest? Get a shirt, and it was crappy?

Robbie Wagner: [34:31] Oh, I do. Every year. Because you have to submit four pull requests. So October 1, I click, I'm done. Give me the shirt. And it goes, okay, nice. I don't have to do any work because I'm already doing that many pull requests.

Chuck Carpenter: [34:44] Look at you.

Robbie Wagner: [34:45] A little against the spirit of the event, I would say, but I want my shirt.

Chuck Carpenter: [34:49] Yeah, you want to say, I got this, but I mostly cheated, and it's crappy, so I don't ever wear it.

Robbie Wagner: [34:56] I'm doing real, like, open source work, but it'll be like my add-ons or Ember stuff I was going to do anyway, so it's not like I went out of my way to learn a new thing and contribute to it, which is what they're intending.

Chuck Carpenter: [35:07] Yeah. So Dependabot upon that doesn't work, right?

Robbie Wagner: [35:11] No, they've made it more complicated because people were doing stuff like that, like putting up four garbage PRS and merging them themselves and getting the shirt. So now it has to be audited and approved, and the maintainers can say, this is an invalid PR, and then you don't get credit for it or whatever. So they're more stringent on it now.

Chuck Carpenter: [35:32] Interesting. Well, maybe the shirt quality will go up since the volume goes down.

Robbie Wagner: [35:38] Maybe we should sponsor it.

Chuck Carpenter: [35:39] I don't know. Do we have?

Robbie Wagner: [35:41] We have as much money as Digital Ocean, right?

Chuck Carpenter: [35:44] We'll ask Chris Coyier. That's true.

Chuck Carpenter: [35:48] He would say it's false. Do we have enough money to buy CSS-Tricks?

Robbie Wagner: [35:51] No.

Chuck Carpenter: [35:51] We do not. We do not. Now or five years ago. We also still don't have that much.

Robbie Wagner: [35:57] Well, I have to talk to him about that. I wonder if he was looking to sell it. Like he wanted to focus more on CodePen or if they went, here's the most money ever. And he was like, okay. Be curious.

Chuck Carpenter: [36:08] Follow-up episode.

Robbie Wagner: [36:09] Yeah.

Chuck Carpenter: [36:10] Let's see here. We've got a little more tech that we wanted to talk about, and I think we should at least touch on it. I feel like this is going to be an evolving topic because we've just started like so we recently had Nate, Astro Contributor. Yes. Nate Dog was in the house. Thank you for that, though. So Nate was on talking about Astro one we've been interested in Astro for a while. Robbie has been dabbling into Astro. We are looking to pivot our site into Astro because it just makes a lot of sense as a static site for the most part.

Robbie Wagner: [36:42] We're looking to see how many sentences Chuck can say and end with the word Astro.

Chuck Carpenter: [36:46] Astro, Astro, Astro.

Robbie Wagner: [36:48] You just several in a row there.

Chuck Carpenter: [36:49] Three at least. And so it's something that we're interested in. And we like the ability to swap out view layers and do a few different things there. I personally have been interested in Solid for a little while. There's been a lot of back-and-forth discussion on Twitter between some of the Solid creators and contributors and Vue creators and just things going on there. And Solid's has been around for a little while, but I think it's getting a lot of traction there. And I guess they're working on a partnership with Astro, although Astro will work with other things, which sounds great. So it's sort of like, let's look at this thing and let's sort of choose our own adventure, but with a guided path. And what can you say about that?

Robbie Wagner: [37:32] Sure. Well, first about Solid, I was trying to we're all in on Astro. We love the idea of being able to use whatever Vue layer we want. We love the idea of shipping less JavaScript. We love the idea of making it like native web style. Like we're going to have multiple pages the way it's intended. It's going to have real HTML without a bunch of crazy. Like I need a link component, and I need an image component. Although we do use our image component because it does some optimizations. That's neither here nor there. Behind the scenes that image component just kind of compiles to HTML though, so it's not doing anything all that fancy it just like convert your images to WebP. So we like Astro. Solid's website is not great looking. That's my critique. So I think their technology is good. The interest is there. I was comparing them and Lit because I have heard about both recently and I didn't really know anything about either. So Lit is class-based, which I was already going to be drawn to, and it ships web components, which I love, and a lot of nice things. And their website looks nice, et cetera.

Robbie Wagner: [38:41] It has less interest in stars on GitHub though, so, like, people don't love it probably because it's class-based.

Chuck Carpenter: [38:47] Yeah, probably.

Robbie Wagner: [38:48] That being said, Solid I think is solid from a technical perspective. I would love to help them make their website look a little bit better, but we'll find out a lot more about the tech behind it on the next episode when we talk to someone from the Solid team. But I tried it out. Of course, it's JSX. But So is like Astro. I would call them like subsets of JSX. I don't know that either of them say they do everything JSX does, but it's JSX like okay, so you're going to do like a bracket map your HTML kind of thing instead of a syntax that makes sense and is logical to people. But that being said, the thing that I read that was different about Solid is Solid does, it doesn't have like virtual DOM or shadow DOM or insert your hot new word here DOM. It uses normal DOM. There's just DOM. I just change it when the data changes. Cool. So the cool thing about Astro is you can put any of these frameworks like they have support for a lot of different types of Vue and Preact, React, Svelte. If it's a hot thing that someone has mentioned recently, they've got it. So that's cool. And Solid, well, we needed a framework for the contact form component. So far it will probably be some more that we need occasional thing here or there for our website. But the need was like it's a form, it needs a form validation and needs to do like recap just stuff, a few Javascripty things so you can't ship no JavaScript and have that thing work. So rather than shove in a ton of vanilla JavaScript in a script tag and like, let's try Solid out and it actually has some cool stuff. It's very much the same. I mean, I haven't really done React as we all know, but it is very React. Like you do a use form to create a form, and you do like that form dot like submit form calls, your submit function and then like it has just like a validate, or used form has a validate like colon validate or something you put on the I forget the syntax, I just play with it for like an hour. But basically, it has built-in validators for if your form type or your field type is like email, it knows there needs to be an ad in there. If it's like a required field, it's like this must be filled in. Like you get some of that from just the browser too. I think there's like those little unstyled pop-ups that are like this is required or whatever. Yeah, but this was all built in. It gave examples of make this other component in line where you're just like this component equals this function that returns HTML, and you would put your error message in that so it would show those under everything. It seems pretty nice. I think it's not all that dissimilar in a developer experience perspective from React. So I would like to hear more from someone who knows more about it, which we will next week about what the actual use cases are and where it shines compared to competitors. But I think for people that like react and want something that's not react just because React is super old and why would you want to use React anymore? You could try Solid out. React is fine. It gets the job done.

Chuck Carpenter: [41:59] Well, as you know, I shared a recent article about why React may be aging and may not be the best choice for your project. Right. And hireability. Just take that out of the equation because it tends to be a great argument. Is it easy to put React down and then get a lot of applicants?

Robbie Wagner: [42:17] Yeah, it's also easy to require basic addition, but we don't put that on, like no, let me debunk that argument.

Chuck Carpenter:[42:26] So React on its own because React doesn't even give you an application necessarily. It's pretty tough to say this thing gives you an app. It doesn't. You've got to do a lot of extra things, even create React app. Guess what? Adds other packages, like React Router that they didn't make. And that's going to get you towards an app. But I feel like one of the things that resonated with me was React isn't necessarily the best framework or the best library. I think it said explicitly, like, React isn't necessarily the best choice. It's just the best marketed.

Robbie Wagner: [43:01] It said the only thing React is good at is being popular, was the exact words. And I love that.

Chuck Carpenter: [43:08] It's the Absolute Vodka of the JavaScript world. I don't know if you ever had that. I'm not really a vodka person. I mean, back in the day, I drank a bit more of that, but vodka essentially good vodka tastes like nothing, tastes like whatever you put it in. Right. And absolute tastes like absolute garbage. But it's very well marketed. It costs more. They put it in a glass bottle. They have some cooler pictures in magazines, but, I mean, it's like, maybe five times better than pop-off garbage like plastic bottle vodka. Yeah. And that's not much to say for its cost.

Robbie Wagner: [43:48] It's not Ciroc.

Chuck Carpenter: [43:49] No.

Robbie Wagner: [43:49] Diddy does not endorse.

Chuck Carpenter: [43:51] I never had that. But it's not even, like, Stoli and Stoli's like $18 a bottle or something. Or was when I would buy vodka?

Robbie Wagner: [43:59] I agree.

Chuck Carpenter: [44:00] That's my comparison.

Robbie Wagner: [44:02] Continuing down that whatnot. Ciroc is made from grapes. I don't know if you knew that. Didn't and their only advertising thing I haven't looked at their website in years, but when I first heard of it, I went and looked, and they're like, imagine putting a fistful of grains in your mouth. Now imagine eating some grapes, which is better. Ciroc. Like, just saying that there's a better quality from what it was made from. And it's actually pretty like, I like Ciroc. It's pretty good.

Chuck Carpenter: [44:30] I guess. Does it taste like grapes?

Robbie Wagner: [44:32] No.

Chuck Carpenter: [44:32] In any way?

Robbie Wagner: [44:33] It's all distilled out, but.

Chuck Carpenter: [44:34] Yeah, it's just like, we found a way to turn sugars into alcohol, and then we filtered out as much flavor as possible. So good for them, I guess, for filtering out enough to make it decent.

Robbie Wagner: [44:44] Yeah, they probably made a really bad wine, and we're like, how can we save this? And just like, made it into.

Chuck Carpenter: [44:50] Yeah, that was the pivot. Diddy was like, I know we're going to make vodka. That's my Diddy impression.

Robbie Wagner: [44:56] I think Diddy came after it was established, but I don't know for sure.

Chuck Carpenter: [45:00] He had nothing to do with the creation? I didn't know if he had like a Ryan Reynolds kind of model there where he invested early on, maybe like, tried things and was like, yes.

Robbie Wagner: [45:11] I'm not sure.

Chuck Carpenter: [45:13] Well, it's possible. Speaking to Ryan Reynolds, one of the shows I've been watching recently is Welcome to Wrexham, available on FX or Hulu, depending on how you get your entertainment.

Robbie Wagner: [45:25] In both ad-supported and ad-free versions.

Chuck Carpenter: [45:28] Yeah, exactly. And I go, ad-supported. It's garbage, right? But I just do it as part of the Disney Plus bundle. So it cost me, like, nothing, basically. But it is annoying if you pay for Hulu and you still get commercials. I remember when cable started doing that. It's the same problem. It's just like, oh, I pay for cable because it doesn't have commercials. And then, over time, like ten years later, it's just as many commercials.

Chuck Carpenter: [45:51] Yeah. I mean, we're going to go back to just cable because everything is going to be such separate apps that if you can get anything that just gives you, all the channels, people will be like, please give me that. I don't want 52 apps on my phone.

Chuck Carpenter: [46:04] My Roku has about like six apps that we rotate through depending on what we want to see. And then what's our cumulative there? We're not a la carting anything anymore. Yeah, that's fair. I guess the only thing that is good about it is that it's cross-device, right? Oh, we're on the road. I'm going to watch on my iPad.

Robbie Wagner: [46:23] Yeah, you can also download them, like to watch on a plane, I think. Yeah, but I wonder, will it still download commercials if you do? I don't know that I've downloaded anything from them.

Chuck Carpenter: [46:33] I don't think I've downloaded anything that is commercial supported in that way. So I'll go on to HBO Max and download stuff or whatever.

Robbie Wagner: [46:40] But I don't think I've done Netflix. And they didn't have commercials, but I haven't done a Hulu one.

Chuck Carpenter: [46:45] Yeah, I don't think I have either. And I've watched a few Hulu shows anyway, Wrexham. The premise is, two rich Hollywood guys go by a Welsh club. That was the oldest club in English football, I think, or whatever. But they're like down in the fifth year now. They have the oldest operating stadium or something too. So yeah, they're not doing well. These guys come in, buy them out, bringing a bunch of fanfare around it and see what happens. Does the money make any difference? TikTok is a sponsor now, and they're doing some commercials and stuff. So Ryan Reynolds got a bunch of money from selling off his Aviation Gin brand.

Robbie Wagner: [47:26] He gets money from everything. He just prints money. I think he has just a printer going in his basement.

Chuck Carpenter: [47:31] And Blake is just turning it. We need some more. Let's do it.

Robbie Wagner: [47:36] Every so often she takes a break and let someone else do it. And she like films a movie and then goes back and takes back over.

Chuck Carpenter: [47:41] Gets back to earning their money. Yeah, that makes sense. Yeah, I know. The OC is still paying. I don't know what she did since then.

Robbie Wagner: [47:48] I don't know. I mean, she'll occasionally be in a movie, and I'm like, oh, cool, that's something I'm not going to watch. But glad you got paid for that.

Chuck Carpenter: [47:55] Yeah. A little something extra you guys needed, you know, maybe a place in Montana for a week or two.

Robbie Wagner: [48:02] But Ryan Reynolds like owns everything is in every movie. Like he puts out so many movies, it's crazy.

Chuck Carpenter: [48:08] Yeah, he's been in a bunch of movies. I think he started, like, marketing companies. He does angel investing stuff too.

Robbie Wagner: [48:13] Like he owns Mint Mobile.

Chuck Carpenter: [48:15] Ashton Kutcher. Oh, yeah. Is he on that or is he just like an investor?

Robbie Wagner: [48:20] I think he owns it. He had enough money to buy it out.

Chuck Carpenter: [48:23] Cool. I don't have that, but good for him.

Robbie Wagner: [48:26] Yeah, I love his marketing approach. Their recent commercials were like, yeah, inflation is the thing. Everyone's raising their prices. We're going to cut ours in half. Wow. They're just saying companies don't need to be raising their rates right now because they're making billions of dollars already.

Chuck Carpenter: [48:45] Yeah. And they're betting on the volume game too. They're like, cool, if we just have more of you, we're fine. Our capacity is fine.

Robbie Wagner: [48:53] The problem is none of these smaller players have their own infrastructure. So if you really kill one of the big players hard enough and you're like using Verizon's network or something, they're going to be like, you know what, I don't want to give you guys good service. Like, we're going to really prioritize Verizon customers and your service is going to suck.

Chuck Carpenter: [49:10] It might. Yeah, who knows? Yeah, I'm sure there are times where there's like service contracts and stuff where they can start to play that game. I don't know. But yeah, I love that the Welsh town, Wrexham. They have a song already about them, and it's like about Deadpool and then Rob Macklehaney or whatever his name is. He's on It's Always Sunny, and he's one of the creators and writers also. That's kind of his thing. And he kind of drove this project and got Ryan involved because he needed more money. So they didn't even know each other before they got involved in this too, which I thought was interesting. I thought it was like, oh, it's friends buying a sports team. Okay, interesting. No, you just brought them in.

Robbie Wagner: [49:51] Just extra investors.

Chuck Carpenter: [49:52] And so the thing is about Deadpool and then this guy, and then also at match is initially now they're like going through their first season, and there are people that will dress up as Deadpool. So essentially they're like, yeah, Deadpool bought us. And he's only known as that. They forget he was also the Green Lantern. Come on. It's not his first superhero.

Robbie Wagner: [50:13] Yeah, he was a bunch of stuff.

Chuck Carpenter: [50:16] Yeah. I mean, two guys, a girl in a pizza place, and I think it just came two guys and a girl eventually or something. That show that he got famous on originally.

Robbie Wagner: [50:25] Yeah, I don't know.

Chuck Carpenter: [50:26] That famous.

Robbie Wagner: [50:27] I just know that out of the 20 movies that they'll be marketing at any given time, like, one of those always has Ryan Reynolds. You're just seeing random commercials, and it's like Ryan Reynolds and Detective Pikachu or whatever it was. Okay.

Chuck Carpenter: [50:46] Oh, yeah. I don't know. I didn't see that. I saw part of Good Guy or what was it like? I don't know. There's one where he's like a video game.

Robbie Wagner: [50:53] Free Guy.

Chuck Carpenter: [50:54] Free Guy. That was it.

Robbie Wagner: [50:55] That one was really good.

Chuck Carpenter: [50:56] Yeah, I watched part of it on a plane ride and then never got to finish it on another plane ride. So kind of where those start to die for me.

Robbie Wagner: [51:05] Yeah. Not interested enough to pick it back up.

Chuck Carpenter: [51:08] Exactly. I watched Deadpool. Seeked that out. Yeah, I don't care about Free Guy.

Robbie Wagner: [51:13] Yeah, Deadpool was really good.

Chuck Carpenter: [51:15] Yeah. What about you? Are you watching any shows?

Robbie Wagner: [51:18] I finished, Old Man.

Chuck Carpenter: [51:19] Oh, yeah?

Robbie Wagner: [51:20] Have you watched all of them?

Chuck Carpenter: [51:21] Yes.

Robbie Wagner: [51:22] Should we spoil it for everyone else?

Chuck Carpenter: [51:24] It's crazy. It's just crazy because it's like 70-year-old Jeff Bridges, and you're like, what? And then he's like some incredible assassin.

Robbie Wagner: [51:35] Yeah, I won't do actual spoilers, but I like the first episode. They show him getting out of bed like five times to pee at night, really highlighting how old he is. And then he just, like, destroys everyone. He turns it on as soon as he needs it and is a badass.

Chuck Carpenter: [51:51] Yeah, so I think that one flies under the radar.

Robbie Wagner: [51:55] It was very good. And I watched episode seven, the last one, and then was like, wait, where's episode eight? It didn't have a clean ending to where I thought the season would be over, and I was like, oh, maybe they're doing like half a season. Like, release the other half later. Like some people sometimes do or whatever. No, it's just done. Like, you got to wait for the next season. I'm like, these guys are old. How many seasons can they possibly make of this? They better have already started recording them. All right.

Chuck Carpenter: [52:24] Hopefully you already signed up. Yeah, that's a good point. I didn't consider it.

Robbie Wagner: [52:28] They renewed it after episode three is what I read. So I don't know if they've already started recording it or not, but Jeff Bridges created the show. I guess that was, like, his idea.

Chuck Carpenter: [52:39] Okay, well, so hopefully it's around, or it's not going to happen.

Robbie Wagner: [52:43] Yeah, it wouldn't work without him.

Chuck Carpenter: [52:45] No, that's pretty crazy. All right, so let's talk about why you don't like any car, yet you're still insistent on buying old cars, which are more finicky. You've got to be like, yeah, this is just a nuance of the car.

Robbie Wagner: [53:01] Yeah. I don't know. I think I like collecting things and, like, experiencing new, different cars. So I have the old truck now, and I like the look of it. I like some things about it. I don't like the way it drives, so I want a more redone version, and I want to have a back seat to make it family-friendly. And it would be just, like, on Sundays, drive down to brunch kind of car or whatever, something fun for the family. But not like I'm not going to drive it on the Interstate or anything super unsafe because it's an old car. Right.

Chuck Carpenter: [53:39] I mean, I've taken old cars onto the Interstate.

Robbie Wagner: [53:42] You can, but I'm not going to.

Chuck Carpenter: [53:44] Yeah. And you're interested in more in, like, the off-roady lifted. Give it a few challenges, but don't take it over 55.

Robbie Wagner: [53:54] Well, I don't necessarily even want to go offroading. I just like those type of vehicles. So I would even do, like, stock ride height. I don't need it to be raised. I don't know anything that's, like, got that from the war. Old Jeep look, I guess, is, like, kind of the thing. It's just boxy. There's something cool about it. They don't make anything like that anymore.

Chuck Carpenter: [54:16] I don't know. Have you seen those new Broncos?

Robbie Wagner: [54:18] They're not that boxy. I mean, I like the new Broncos.

Chuck Carpenter: [54:22] But not boxy enough.

Robbie Wagner: [54:23] Yeah, I think if you made, like, new material cars that boxy, it would look weird, so they wouldn't be able to like it looks right in sheet metal, but it wouldn't in, like, plastic.

Chuck Carpenter: [54:35] Yeah, fiberglass or whatever the mixed.

Robbie Wagner: [54:38] Yeah.

Chuck Carpenter: [54:38] What about not that old but original H1? It's just too big?

Robbie Wagner: [54:45] I was never a Hummer guy. I think maybe it's just the stigma that comes along with Hummers, but I've always thought they were obnoxious. Not that I hated the look. Just like, oh, that guy must be a dick.

Chuck Carpenter: [55:00] That guy does a lot of bench pressing but no squats. That kind of thing.

Robbie Wagner: [55:04] I mean, that's me. Maybe I should get a Hummer.

Chuck Carpenter: [55:06] Well, now we figured it out.

Robbie Wagner: [55:09] Yeah, I kind of like the Hummer EVs, okay. I don't know that I like it enough to want to buy one, but I think it looks different enough from the original Hummer that it's like, oh, this is kind of, like, modern and nice looking.

Chuck Carpenter: [55:21] So this is improving grounds out here. So I actually have seen one on the highway, and I was like.

Robbie Wagner: [55:25] Oh, no?

Chuck Carpenter: [55:28] I didn't care for it. That was kind of a weird monster, especially in, like, the EV space. You're like, oh, electric. We're very efficient. Look at this giant thing.

Robbie Wagner: [55:38] That's true.

Chuck Carpenter: [55:39] We must need 400 batteries to move this thing. And that's. Why it's $200,000?

Robbie Wagner: [55:44] You pull a trailer of batteries behind you so that you can keep going.

Chuck Carpenter: [55:48] Yeah. For this General Motors product. Like, I don't know, the whole thing just kind of doesn't work for me.

Robbie Wagner: [55:54] Yeah.

Chuck Carpenter: [55:54] Interesting concept, but I think it's a swing and a miss. Yeah.

Robbie Wagner: [55:57] My dad pre-ordered the what do you call it? I guess it's a Silverado. Yeah, like the Chevy truck.

Chuck Carpenter: [56:05] Their answer to the Lightning, right?

Robbie Wagner: [56:07] Yeah.

Chuck Carpenter: [56:07] F150 Lightning, they have the Silverado.

Robbie Wagner: [56:10] Because it's very similar to the old Avalanches, like in looks. And we used to have an Avalanche. That's kind of cool.

Chuck Carpenter: [56:17] Yeah. Because it kind of changes. Right? Like, you can change some aspects of it. Yeah.

Robbie Wagner: [56:21] Like, you can take the back window out and fold the seats down and make it like a big open truck. Or you can really prioritize comfy seating, and it can be kind of either or.

Chuck Carpenter: [56:32] Interesting.

Robbie Wagner: [56:33] Yeah.

Chuck Carpenter: [56:33] So it's like this 70s Broncos or whatever where you just pop the lid off, and it was just kind of like an open truck.

Robbie Wagner: [56:39] Yeah, kind of like that. Not as much open, but yeah. And then it also has built-in covers for the bed. So it was in section. So if you needed to have, like, one tall thing, you could take one section of the cover off and put it there. I don't know. It was cool, I thought. Maybe I just thought it was cool because it was like when I was learning to drive and stuff, and I was like, oh, I like this, but maybe it isn't as cool as I actually think.

Chuck Carpenter: [57:04] Maybe instead of getting an old bronco, you should just get a Chevy Avalanche.

Robbie Wagner: [57:09] I could just get like 16 of them and save some money.

Chuck Carpenter: [57:13] Yeah, and still save money. Exactly. The niche that you've not dove into in terms of old cars. I don't know.

Robbie Wagner: [57:21] That's going to be what people get now.

Chuck Carpenter:[57:22] Yeah. Chevy Avalanche conversions. Totally coming to bring a trailer. Good luck with that. Yeah.

Robbie Wagner: [57:28] All right, well, we're over time. I will reiterate. We have an NFT that has been dropped. Go to Bitski. B-I-T-S-K-I.com/Shipshapecode. And buy some of those NFTs, and we will see you in Discord when you do so.

Chuck Carpenter: [57:51] Thanks for listening to Whiskey Web and Whatnot this podcast is brought to you Ship Shape, and produced by Podcast Royale. If you like this episode, consider sharing it with a friend or two and leave us a rating, maybe a review, as long as it's good.

Robbie Wagner: [58:06] You can subscribe future episodes on Apple, Spotify, or wherever you get your podcasts. For more info about Ship Shape and this show, check out our website at shipshape.io.