Black Friday’s in the books, and Kalen & David swap highlights: midnight revenue watch parties, one less high-maintenance client, and a pitch for commemorative tattoos (temporary… probably). They glide past “happy-path” flowcharts that melt on contact with reality, disaster-prep job titles, and AI consultancies that bill you to discover the obvious. Cheerful banter, served with a raised eyebrow.
[00:36:04]
Bulk Editing Fun - Because clicking 1,000 times isn’t fun.
[00:42:55]
Liquid Tricks - Outsmarting pagination one loop at a time.
[00:50:17]
Data Sync Magic - Syncing data like pros (after enough coffee).
[00:53:15]
Hidden Variants - Making products disappear... intentionally.
[01:04:51]
GraphQL Power - Mastering GraphQL queries with ease.
[01:07:03]
Dev Tools Chat - Postman, GraphiQL, and many head scratches.
[01:09:49]
Tech Throwbacks - Linux servers and FTP... still alive!
[01:16:05]
Final Thoughts - Dreaming of projects that debug themselves.
Transcript
[00:00:00]
David: We call it the happy path which is like here's what will typically happen. We know that there are things that are not going to be covered by this.
[00:00:09]
David: But we can talk about those later once we have the happy path well defined and
[00:00:13]
David: like is solid and works well But then you have to make sure that you don't paint yourself into a corner where you can't You know what?
[00:00:22]
David: I mean? Like you have to still give yourself some flexibility for those edge cases
[00:00:29]
David: It's also very hard to talk about this generally
[00:00:31]
Kalen Jordan: Yeah, that's exactly what I was thinking. I was like, I'm getting lost
[00:00:42]
This episode is brought to you by smile.io, customer loyalty. That grows your revenue. Join the thousands of Shopify plus businesses that you smile to increase. Repeat purchase rate, provide exclusive benefits for members and VIP customers and build a more profitable business.
[00:01:41]
Kalen Jordan: it's a strong commemoration move. You know, it was not bad at all. This one client that I was, kind of hoping to drop. And I told them like several times that they should find someone else. They finally moved on, which was a huge relief.
[00:02:06]
Kalen Jordan: Yeah. That was, that was actually very really, that was a big relief. And then, yeah, I just had like one client with an urgent thing pop up. , I can't remember if it was Monday, , or what day it was, but, yeah, I took care of that. , yeah, no, it wasn't, it wasn't too bad.
[00:02:22]
Kalen Jordan: I was, uh, I did my kind of normal like flow of checking email a couple times a day. I wasn't like, you know, doing anything crazy all hours of the night or anything like that. But,
[00:02:35]
Kalen Jordan: Yeah, so. Eh , not too bad. Not too shabby.
[00:02:41]
David: Nice. I I did have to stay up late. Well, I didn't have to, but I needed to stay up late to watch the sales up until midnight PST on Friday. Just cause
[00:03:01]
David: it was a lot of fun. There were a bunch of people staying up watching it go down and Made it past our revenue goal and then made it past another big number that we did not expect. So it was,
[00:03:39]
David: Um,, but yeah, I'm, I'm working on figuring out what we're going to do just cause like, we got to do something, send out to people, like maybe some sort of plaque or something cool.
[00:04:03]
David: DC team is still working through fulfilling everything. We're almost caught up already, but our DC team is so fast. Got those monogrammers monogramming
[00:04:14]
Kalen Jordan: Yeah. When you say DC team, is that,
[00:04:54]
Kalen Jordan: Man. Yeah. One of these days though, one of these days, the the big one will hit. Then they'll be glad that somebody was checking Twitter
[00:05:43]
David: watch hurricanes and stuff over like all around the world. It's pretty interesting listening to him talk about that job. There's people who, Just do
[00:05:54]
Kalen Jordan: that's crazy. And like, why for Jira? Like, why specifically do they
[00:06:00]
David: I guess because they have offices everywhere And so they gotta and there's enough people that like someone's got to be the one to sound the alarm. I
[00:06:10]
Kalen Jordan: I mean I would understand how maybe like Google has somebody like that, but I guess
[00:06:17]
David: Guess Jira is not a company Atlassian but you
[00:06:21]
Kalen Jordan: Yeah, I mean, yeah, no, I mean, I guess they're big enough that that would matter. I mean, I'm surprised, like,
[00:07:09]
Kalen Jordan: I really didn't to be honest, like I saw it and I went, first of all, the day before I was looking at it and this one guy tweeted and he's like, I found out how to see it, but don't worry, I won't tell anybody. Like he figured out a way to see it at a time, I guess. And so then I was like, dude, what the heck, man?
[00:07:27]
Kalen Jordan: , anyway, and then the next day I saw it and I was like, this is amazing. This is, crazy good. And then I was like, I clicked three buttons and I was like, all right, I'm out. really did it.
[00:07:40]
David: You didn't sit there like synthesizing and
[00:07:43]
Kalen Jordan: I did. It was almost so good that it was like, okay, whatever. And then it wasn't, it wasn't until, later that, uh, I saw Toby did a video, like walkthrough of it.
[00:07:55]
Kalen Jordan: I was like, I'll, I'll, I'll watch this. And he did like an eight minute while and all
[00:08:00]
Kalen Jordan: the stuff like I hadn't noticed anything at all from anything like I didn't realize how the the synthesizer like I clicked on the synthesizer and it didn't make any sound and all right who cares and then and then when he showed it like you could highlight an area and then the sound was based on the orders in the area I was like that's insane and um
[00:08:28]
David: all the chords into the wrong spots and have it yell at you. There's, there was a lot of Easter eggs,
[00:08:35]
Kalen Jordan: , it's funny because I always think about webhooks. Like, I'm always curious how many there are. Like, I always visualize this flood of webhooks that's traveling through the internet. And I'm like, how many are there? And then I didn't realize that they showed that metric and a bunch of other metrics in there.
[00:08:51]
Kalen Jordan: And I was like, oh, that's so cool.
[00:08:54]
David: like totally unreasonably high numbers. It's
[00:09:07]
David: it was all real time. That's awesome. I would
[00:09:09]
David: love to, like, I want them to post something about how they did that. that's
[00:09:13]
Kalen Jordan: dude, that's so cool. Cause I've been, I've been following the sphere a little bit cause there's been a couple like UFC fights there. I think it's only been live for, I want to say maybe like a year or something like that. And I was thinking about the fact that Shopify did the sphere before Amazon did is, is like pretty impressive dude, because Amazon is like massively bigger than Shopify, you know?
[00:09:45]
Kalen Jordan: I'm sure Amazon does cool shit, but it's different. There's like a qualitative difference to like, like just doing cool stuff because it's cool or fun. And actually I saw Toby tweeted something that really stuck with me. I think he replaced replying to somebody.
[00:10:04]
Kalen Jordan: And it was, he said, , having fun is load bearing for a business. And the
[00:10:12]
Kalen Jordan: way he phrased it, like really like hit me. I was like, that's such an odd, like way to put it, like load bearing. You think of like a building and you think of a, a beam or whatever, that's bearing the load for the building. And I was like, dude, that's so true.
[00:10:28]
Kalen Jordan: Cause When you're not having fun, you're more likely to burned out. Like , it's just really stuck with me. Like the way he put that
[00:10:36]
David: like that. I didn't see that, but I, yeah, I've, I've been feeling that like this year we, we kind of fell off and like we used to have, like when remote started, we used to do like
[00:10:47]
David: scavenger hunts in your house, like go, go find this kind of thing and like bring it back and whoever can show all of their stuff on the camera first is like gets a certain number of points. And I've been like, yeah, Feeling pretty burnt out this year. And I, like, I was thinking maybe it's because we haven't done this stuff, but now that Toby said it, I know for sure that's the problem. That's right.
[00:11:15]
Kalen Jordan: tweeted something like, uh, or I saw this video of like, One of the like, Black Friday rampages from like, I don't know, the 90s or something like that. And I was
[00:11:26]
David: Oh, like, people blasting through the doors and running to grab the TV?
[00:11:31]
Kalen Jordan: which it's so weird how like it's all inverted now. And I mean, it happens online. And then like, I think in store is like, they're not even giving real discounts anymore,
[00:11:42]
Kalen Jordan: Target, Walmart and stuff.
[00:11:43]
Kalen Jordan: I was like Shopify should do like a visualization of like the in store equivalent mayhem that they're driving, you know, like
[00:11:51]
Kalen Jordan: people clothes lining each other and stuff. And this guy replies with like a little pencil icon. And I'm like, who is this dude? And, his name is Daniel Bo Champ or Bo Champ something.
[00:12:03]
Kalen Jordan: And he's the principal AR VR engineer at Shopify. So he's like, yeah, dude, he's like,
[00:12:11]
Kalen Jordan: so I looked at his, I looked at his tweets, dude, and like all of his tweets have like hundreds of thousands of views and stuff. Cause he tweets about like how he built like the stuff, all the crazy stuff that they do.
[00:12:33]
Kalen Jordan: Which, yeah, so I was going through his tweets and I saw that vacuuming one and I was like, I remember seeing this
[00:12:41]
Kalen Jordan: tweet like, I don't know, a year ago or something like that and thinking it was super cool. , but, like, how cool of a job is that, dude? That you just
[00:12:49]
Kalen Jordan: do cool AR and VR stuff at Shopify.
[00:12:53]
David: You gotta be real good. Like always have something that people are like, Holy shit, that's awesome.
[00:12:59]
Kalen Jordan: Yeah, yeah. No, I mean it's, I can't even imagine how hard
[00:13:03]
David: Oh, I would love to see what, like, if he comes up with something with your idea, that would be cool. Like
[00:13:09]
David: Like the globe hat, like just seeing the surge of web hooks. Coming in like at the start of Black Friday or something like how how much brighter does it get over time?
[00:13:21]
Kalen Jordan: Yeah, that'd be cool. That'd be pretty cool.
[00:13:26]
David: I do wish I could elbow someone else out of the way to grab something online though
[00:13:29]
Kalen Jordan: Dude, exactly, dude. Just like, punch somebody in the face to grab a TV.
[00:13:39]
David: was that didn't gill make some sort of like snake game as part of checkout Like there's gotta be some sort of, like, I start to think about the, um, you know, that snake game where everyone's on the same board and the bigger snakes can eat the smaller ones.
[00:13:55]
David: Maybe there's something like that.
[00:13:56]
David: Some sort of competition for getting the goods.
[00:14:01]
Kalen Jordan: Yeah, that'd be cool. That'd be cool.
[00:14:05]
David: Not smart enough to make it though.
[00:14:07]
Kalen Jordan: Yeah, I haven't made games in a long time. It's been a long time since I built a Tetris game on my TI 85. Yeah,
[00:14:15]
Kalen Jordan: dude. Back in the 90s, man. We used to, like, my friend and I used to just, like, try to make games on the basic Tetris games. The basic programming language on the, on those, um, calculators in like our classes and stuff.
[00:14:55]
David: school, my math class, I have always not been able to pay attention to math, but I just like made it through. And there was this one time, this is totally off topic from Shopify or anything. After lunch, I had math class and it was geometry and it was so boring. And we had a test one day and I fell asleep while the test was going and the girl in front of me was like. David, we're taking a test. It's like, Oh shit. So I have to wake up and finish my test. My teacher would like call on me and be like, what's the answer to this? And then I would have to like read the board and see what it is we were
[00:15:32]
David: talking about. Thankfully, I don't fall asleep in the middle of the day anymore.
[00:15:38]
Kalen Jordan: Yeah. That we know of. Ha,
[00:15:42]
David: That's right. High school student, David,
[00:15:47]
Kalen Jordan: Did you get like pretty good grades in general?
[00:15:50]
David: Yeah. High school. It wasn't hard. I didn't start getting bad grades until I was in college. And then I was like, all right, guess I got to study.
[00:16:00]
Kalen Jordan: Where did you go to college?
[00:16:06]
Kalen Jordan: Oh, that's cool. I went to this small school in L. A. It was like 1, 500 people. But, um, yeah. This is turning into an interview.
[00:17:01]
Kalen Jordan: Yeah. I hate it when like I just want to build the functionality, but in the back of my head I'm going, well, I should probably ask them this clarification question because it might be important to know now, but actually maybe you can wait and I can just build this and come back to it later.
[00:17:16]
Kalen Jordan: But actually it might be good to check with them,
[00:17:20]
Kalen Jordan: you know, but I don't want to wait in slack cause then I'll be distracted waiting. So let me just. Like, I hate that back and forth, , but it's always, part of the process, you know?
[00:17:30]
David: yeah, it is. And it's always like, I do that too, where I'm like, I probably have five different people that I'm talking to at any one time in Slack and it's, it works for me cause that's just kind of how I like, I'll jump around and do different stuff.
[00:17:53]
Kalen Jordan: And it's like, you want to like move forward as much as you can. Like, it's not like every single question you have to wait on, but you know, sometimes the questions just keep piling up and it's like, dude, I really wish I could just get all my damn questions answered.
[00:18:10]
Kalen Jordan: You're never going to have a hundred percent clarity on like the scope,
[00:18:14]
Kalen Jordan: you know, like, and a lot of times you can just like a lot of times, so like out of 20 percent of the time I'll ask a question and then I'll figure it out on my own. It's like, okay, I, maybe I shouldn't have bugged him with the question in the first place, but
[00:18:28]
David: A lot of the time I find too that people like people don't actually have an opinion on that thing. And so
[00:18:35]
David: , maybe your opinion is the way that they would go if it was just already done. But if there's things that you know for sure that need to happen, like here are the goals for this thing. Okay.
[00:18:45]
David: We achieved the goal, but here's some places where maybe there could be a difference in the way that it was handled, but we handled it this way for now.
[00:18:53]
David: That tends to work for me, but yeah, it's,
[00:18:56]
Kalen Jordan: Yeah, I need to get to the point where I can do that a little better. Cause I feel like I asked too many questions. , like I'm very comfortable, like if I'm building my own app and I'm very comfortable like making decisions about how to build stuff and then kind of fitting that into like requests I'm getting or like prioritizing requests.
[00:19:17]
Kalen Jordan: But it's cause it's like my thing, whereas
[00:19:20]
Kalen Jordan: if I'm doing, you know, freelance work for hire or something like that, it's like, I feel like I just have to do what they want and I'll try to give suggestions. And also like sometimes. If they go with your suggestions, you know what I mean? Like early on you go, well, what if we do this and that?
[00:19:37]
Kalen Jordan: And then they go with it and they don't end up like contradicting themselves two weeks later and changing their mind. Then you get to the point where you feel comfortable just kind of driving things.
[00:19:48]
Kalen Jordan: Whereas if like every question you ask, there's some weird answer to, or, you know, then it's like, you just feel like you have to get everything confirmed.
[00:20:05]
Kalen Jordan: It's a lot of edge cases. It's a lot of it. It's a lot of that. Yeah.
[00:20:10]
David: and it's hard to communicate upfront about like, if you're the client, it's hard to talk you through all the edge cases before you've kind of jumped in and felt
[00:20:20]
David: your way around. Right. Especially with
[00:20:22]
Kalen Jordan: Oh, yeah. Yeah, totally. I usually try to jump in and just ask the questions as I'm going. But, um,
[00:20:29]
David: B2B stuff. Like that's what you've been working on lately, right? There's gotta be a ton of different and every edge cases is important because. In B2B, each transaction is much more meaningful.
[00:20:44]
David: Is that the case? I'm that's a question.
[00:20:46]
Kalen Jordan: . Well, I think yes and no. Like for example, this one project I'm working on, there's like, there's customers that are on net terms where they're, you know, much larger orders, but they also pay by invoice. So like we don't need to do as much credit card processing for them. So like the credit card processed orders, I think I'm pretty sure are generally like a lot lower value than the net terms orders.
[00:21:11]
Kalen Jordan: , so there's some simplicity there, but then. Yeah, it's like until you see everything flowing in, you don't really know which parts are important and which parts aren't. Which is probably true of any project in general.
[00:21:29]
David: Yeah, we have a lot of, like we call it the happy path. I'm sure a lot of people call it happy path,
[00:21:34]
David: which is like, he hears, here's what will typically happen. We know that there are things that are not going to be covered by this.
[00:21:44]
David: But we can talk about those later once we have the happy path well defined and
[00:21:48]
David: like is solid and works well But then you have to make sure that you don't paint yourself into a corner where you can't You know what?
[00:21:57]
David: I mean? Like you have to still give yourself some flexibility for those edge cases
[00:22:02]
David: It's also very hard to talk about this generally
[00:22:04]
Kalen Jordan: Yeah, that's exactly what I was thinking. I was like, I'm getting lost in this, in my own, in my own topic that I'm trying to talk about.
[00:22:15]
David: We have a lot of flows that go through, so we go our middleware between Shopify and, NetSuite and, , we always just like, okay, here's the way it looks at launch. It's like one solid line. Everything is handled here. And now after like, it's been like a year and a half, I guess, since I originally built those flows and someone else's kind of working on it now, there's like, Three or four different branches and they go back into the main branch to like just so that we can handle it like This one needs a credit memo instead of something else.
[00:22:47]
David: I don't know it gets crazy I guess that's the just kind of the way NetSuite works because you it's your source of truth, but
[00:22:56]
Kalen Jordan: yeah. I gotta look at your Selego flows one day because I'm doing every, like almost everything in the, in code now. And I like, I like it so much better because
[00:23:07]
Kalen Jordan: Yeah, it's like, I'm up to like 750 lines of code on this like, on this product handling stuff. But it's just like, mapping code with like, it's so easy to do functions, loops, if thens, early returns, da da da da da.
[00:23:27]
Kalen Jordan: And mapping that into a, into a visual thing is such a mess. And also I can run stuff locally. Like I'll save a payload locally to test on, and then I can just easily do a quick local test. If I'm writing, making changes or whatever, I can just test it against that local payload real quick.
[00:23:46]
Kalen Jordan: Whereas like going into the stupid, you know, thing and clicking to test and you know, always takes forever. Um, But
[00:23:56]
David: with Mesa flows? Like, did you run the JavaScript outside of Mesa with
[00:24:01]
Kalen Jordan: sort of, I was building this whole thing. There is a Mesa command line tool, which, uh, works pretty well. And I was kind of extending it to do some things. Man, it's, I can barely remember now how much I, I was able to do locally, but I was able to work on, Oh, you know what I actually, I think I did is that I would work on the code locally and the command line tool would sync the code up.
[00:24:23]
Kalen Jordan: And then I would still test it within the interface. , but yeah, like if, if you can test it locally, it's just a little bit faster.
[00:24:34]
Kalen Jordan: know, and then also like with gadget, I have another project I'm doing on gadget now and I'm always wishing, cause like a lot of the times I'm building like some action or some API route and then you've got to toggle over and run the action.
[00:24:49]
Kalen Jordan: And they have some nice tools for that. They have a nice like graph QL API explorer. They have a JavaScript playground and stuff, which is pretty cool. But honestly, all I want to do is just run it in my local terminal.
[00:25:00]
Kalen Jordan: That's really all I want to do ever.
[00:25:04]
David: Does gadget have a way for you to like, like there's a JavaScript pain where you can write your code and then there's payload and then like the output after that, your payload runs through your JavaScript.
[00:25:15]
Kalen Jordan: Uh, kind of. There's a, You can basically run JavaScript. Like you can just run any code you want. If you wanted to pass in a certain payload, you'd have to like purposefully like pat, paste it in or something like that. And then it gives you the output. , so that's pretty, it's pretty
[00:25:31]
David: Yeah. I always find those super helpful. So legal has one like that for.
[00:25:36]
David: Like post map scripts or whatever.
[00:25:38]
Kalen Jordan: Right. Right. Dude, I got so annoyed. , did you see this guy tweeting today? The builder IO guy, he was tweeting about, um, about Shopify is the most developer hostile company.
[00:25:52]
Kalen Jordan: ever. Yeah. Cause like, I got so annoyed. Cause he basically, he like, he tweeted that and I'm like, okay, what's going on?
[00:26:00]
Kalen Jordan: Cause I'm, you know, I'm used to seeing people rant about some annoying thing that Shopify did for turn an app developer. But it was like, basically he got an email about like, , they have an image on their listing that they were told to take down or something like that. And he's like, well, it already got approved.
[00:26:18]
Kalen Jordan: And we get this email every month and I'm thinking to myself, do you ignore the email every month or do you actually resolve it? If you're resolving email every month that's insanely annoying that they keep bringing it up. And then the last email they said they were going to take down their app by a certain date, you know,
[00:26:40]
Kalen Jordan: Apps, Shopify app store. Yeah. I guess for builder IO for their whatever. Yeah.
[00:26:45]
Kalen Jordan: And, um, and I'm thinking you probably are ignoring the email because you addressed it once in the past and that now you're ignoring all the automated emails, which is not a good idea. And I know from experience that ignoring the automated emails is not a good idea.
[00:27:03]
David: that, that annoys me when people get into that on Twitter. Like here's a thread on the problem that I'm having and, and why everything sucks because of it. And then like you dig into it and it's like, okay, well maybe there's a different way that you could have handled this situation.
[00:27:18]
Kalen Jordan: Yeah. And, and like, I dunno, he's not that in that deep in the Shopify community. I don't think like they probably have their integration and that's all they care about. Whereas like you see people who build apps day in and day out and they have some gnarly shit happen to them.
[00:27:34]
Kalen Jordan: Like somebody copycats their whole app and like puts it out there for free and it completely destroys their app. Yeah. That they've been
[00:27:41]
Kalen Jordan: building for a year. Like that's, that's the kind of thing that really sucks. ,
[00:27:50]
Kalen Jordan: I don't think so. This one guy, uh, I think his name's, uh, or it's a guy or girl named Axel, has been posting about that and it's like brutal.
[00:28:00]
Kalen Jordan: Somebody like completely copied his app. I mean, just, I mean, just completely copied it.
[00:28:05]
Kalen Jordan: And yeah, and then like, you know, I, I tweeted it out a couple of times, but you know, they haven't, they haven't done anything. But, So that kind of thing is brutal or like that time where everybody got their bill for Shopify status like got disappeared
[00:28:21]
Kalen Jordan: the weekend You know like that those are the types of things make sense to rant about but this guy
[00:28:26]
Kalen Jordan: like saying saying shopify is the most developer hostile company is such a fake Fucking stupid thing to say because like developers I mean and when you're working with Shopify day to day, you're gonna have things to rant about of course You know But like they love developers developers love Shopify generally speaking and and yeah There's lots of annoying shit along the way, but I was like man.
[00:28:49]
Kalen Jordan: This guy's a fucking dumbass. So
[00:28:52]
David: Yeah, I feel like I'm in a very insulated place with my developer ness because I don't have to deal with any of the App Store shenanigans. And for me, it's just like, what do I need to do? Go look at the docs. They're well defined. And now I know what I need to do. Enough to do stuff.
[00:29:15]
Kalen Jordan: I will say that I think it's definitely, and I'm in the same similar position where I'm not like an app, , and if you are an app, it's a little tougher, because you've got stuff, you get a notice about something, you got to deal with it or, somebody copies your app.
[00:29:30]
Kalen Jordan: That sucks. Like there's, I think there's a lot more pain in that life. There's also a lot of glory in that life. You know, if you
[00:29:37]
Kalen Jordan: start, you know, you pull a gill, you get, you know, you like build a cool app. But yeah, I think those are two different, \ like you have to differentiate because Shopify, not as public app developers.
[00:29:51]
Kalen Jordan: And, and those are two completely different things,
[00:29:56]
Kalen Jordan: but. I think there's a new, some new update to the partner program that I saw some people posting about, but I don't know what it is. I'm out different tiers or something like that. I don't know if it's just about money, which I really don't care about.
[00:30:10]
Kalen Jordan: Cause I don't get, I don't get commissions in the first place, but
[00:30:17]
David: they had the, for theme developers, they took away the first million. Sales is
[00:30:25]
David: is free like no no Shopify rev share. That's a big change
[00:30:30]
Kalen Jordan: Yeah. That's a big change. It's a big change, but,
[00:30:35]
Kalen Jordan: but that, but yeah, I kind of wonder why too, but I mean, that's kind of crazy in the first place that they give the first million free.
[00:30:42]
David: Yeah, that was a big deal when that came out.
[00:30:44]
Kalen Jordan: yeah, like, I, I don't even remember seeing it when it came out. I just, after the fact that some points on, I was like, what,
[00:30:51]
Kalen Jordan: Cause I, I feel like it was like 30 percent at one point. I don't know, so, I mean, yeah, but like, like again, like if we were theme developers, dude, we would be Screaming our heads off right now because you know, you feel that you feel the pain more obviously, , but when you're outside of that, you're like, ah, it kind of makes sense.
[00:31:12]
Kalen Jordan: Like, okay, whatever. Like, you know, like,
[00:31:15]
David: got to make some money somewhere.
[00:31:23]
David: yeah a lot of what I see is like the dev forums are up and people are answering questions. They're sweet.
[00:31:31]
David: Uh, Gil posted the thing about what annoys you about the admin. And then Ben posted the one about what annoys you about the theme editor.
[00:31:39]
David: Sweet. some like, , thanks dudes. Just solving all my problems. Everything's good.
[00:31:46]
Kalen Jordan: exactly. Yeah. Just like , stuff is getting better.
[00:31:52]
David: posted a thing in the, in Ben's, I think I'm saying the right name. I don't
[00:31:57]
Kalen Jordan: Yeah. Ben something. Yeah.
[00:31:58]
David: I posted one in there about being able to, move a block between sections, like if the, if the section is the same. Being able to move like a block from one section to another one. I had a, like on our visit us page, there's a couple of sections and we call them column block sections.
[00:32:18]
David: So you can have a certain number of columns of blocks inside of this wrapper section and each block is a store and it's just a store image and name of the store. , and I just wanted to move one up into the other column block
[00:32:33]
David: section, but I couldn't, so I just had to like copy all of the.
[00:32:41]
David: It seems like, like, actually, I don't know. I've been thinking about like, okay, the way that this turns out in the Jason is like, it goes under the section as block and the configuration. So maybe it's not that hard, but I don't know.
[00:32:57]
Kalen Jordan: That's cool. Yeah, I can totally see why they would've like just not let you move and brown since you can't move it into any section.
[00:33:05]
Kalen Jordan: But that said, that'd be a nice little improvement.
[00:33:30]
David: the wrong thing. But after that, I think everyone's just like been scared shitless about that. but
[00:33:36]
David: and then someone said something about it. It should be a permission and that makes a lot of sense.
[00:33:41]
Kalen Jordan: yeah, but still like, I just don't think you need the publish button in the theme editor, I think you should have it in the theme section. That's the only place I ever hit publish from. Is in the, is
[00:33:53]
David: I guess the difference is when you're in the theme section, you can't really see what it is that that theme is. So
[00:34:02]
David: But also we never do any publishing. We always just have , the main theme and everything happens there and like gets merged into that
[00:34:11]
Kalen Jordan: Right. Yeah. Or like, definitely if you have git connected or something like that, then just like, remove it. Or like, remove that shit.
[00:34:35]
Kalen Jordan: Well, just, if you search for a SKU, you want to jump into the variant in the admin instead of jumping into the product and then having
[00:34:44]
David: yeah. I was asking the team cause I was like, Hey, there's people who work at Shopify who are asking , what could be better in the admin?
[00:34:52]
David: And someone had mentioned we have these, um, we have this section called product tile
[00:34:58]
David: and, , like there's only a product reference configuration that's available and so what we have to do is like, , configure the product reference. And then separately, there's another field where you have to put in the skew of the variants that you want to be the face out for that product tile.
[00:35:15]
David: Why can't we just have like a variant reference? I need to go post that one.
[00:35:30]
Kalen Jordan: Yeah. Which is cool that he brought it up because maybe they're going to, maybe they're going to do a sprint and just bang and bang a bunch of stuff out. That'd
[00:35:38]
Kalen Jordan: be cool. I finally installed this espresso bulk editor. It's pretty cool. It just lets you, uh, well, all I did with it so far is basically I just wanted an easy way to see a list of products with the metafield values cause I'm importing a bunch of metafield values and I kind of want to see if anything got missed.
[00:35:58]
Kalen Jordan: And, , so I haven't actually done the edits. , but it's pretty cool. It's pretty smooth. ,
[00:36:12]
Kalen Jordan: yeah, well, product and variant metafields. , and yeah, I just having a grid view of products with their metafield values is what I wanted, you know, to just see them at a glance and
[00:36:24]
Kalen Jordan: stuff like that. So that was pretty cool. It's a, nice little app. It has a whole bunch of bulk editing features.
[00:36:31]
Kalen Jordan: So I finally, I finally took a look at it.
[00:36:34]
David: you play with the native bulk editing stuff that's
[00:36:37]
Kalen Jordan: Dude, no, I still don't even quite believe that exists. I think that, I don't know why, I don't know why. I, you've mentioned this to me now like nine times.
[00:36:51]
Kalen Jordan: it. Does it pull up? Does it do that? Does it show you metafield values?
[00:36:56]
David: Yeah. You can even variant metafields. So if you're in the, if you're in a product view and you've got your like 10 variants there, You click the checkbox kind of at the top, so that selects all the variants, and then there's a bulk edit button. And then in the top right, there's a, like a column button. And you click that, and you can go through and set, like, Check which values you want to show up in your sheet, like bulk edit view.
[00:37:22]
David: And they even have like a little, like they're in cells and there's a little tiny square in the bottom right of the cell and you can click that and pull it down. Boom.
[00:37:31]
David: Got the same value across all of them.
[00:37:33]
Kalen Jordan: dude. Okay, I got it. Okay, this is absurd.
[00:37:38]
Kalen Jordan: Isn't it funny how sometimes you'll check out a third party thing because you literally don't know about the native thing and then like, I
[00:37:48]
David: I'm sure the espresso bulk editor is like, like a hundred times the functionality, but
[00:37:54]
Kalen Jordan: I'm sure there's a use case for it. I just don't, I
[00:37:57]
Kalen Jordan: gotta, I gotta better understand. This is the, one of the areas I know the least about, dude. It's like variants, like we were talking about the product or their color specific images and stuff like that. And
[00:38:21]
David: yeah, we had a, I wish our swatches were different, but we have something that works. It's just A-A-C-S-S file that we continue to update that has like a, the name of the color and the class that it turns up as, and then the hex value. And so it just runs off of what, whatever color we assign the variant.
[00:38:46]
Kalen Jordan: Gotcha. Yeah, we have like individual images in this one project for swatches. Um And then, yeah, it seems like there's a bunch of different ways to do the, the color specific, uh, images on the product page. I think we're probably just going to go with like something based on the file name for now.
[00:39:09]
Kalen Jordan: Cause we're dude, we're in that stage of the game where it's this crunch time and like, we're
[00:39:16]
Kalen Jordan: eh, yeah. Like we have a hard date and all the discovery stuff is late. Like they still haven't decided on pricing logic. Like everything is just crunch. So it's, it's that stage where like, you can't be too like, utopian about the
[00:39:39]
David: we were before launch last year.
[00:39:42]
David: I'll never forget trying to get everything ready for our, 2023, August 15th. That was when we launched on Shopify
[00:39:50]
David: It was like, A week or two weeks behind, which isn't too bad, but those last two weeks were a lot. Let's just like redo everything about how we thought content was going to work. Invent new stuff for injecting things into collections. Afterwards it's fun to like look back on, but that mode is, is very Draining.
[00:40:14]
Kalen Jordan: Yeah, and then it always surprises like how long lived those decisions are and like how hard it
[00:40:23]
Kalen Jordan: untangle those things in the
[00:40:25]
David: Yeah. This is a temporary, it'll be fine.
[00:40:32]
Kalen Jordan: Then you're like, okay, well, if we change it now, we got to backfill all this data. We got to blah, blah, blah, blah, blah,
[00:40:38]
Kalen Jordan: blah, like, you know, hindsight, but,
[00:40:42]
David: It's fun though. I mean, it's like before when we were writing software, it was like, okay, we got to make all this stuff and then it's going to be that way forever. And I feel like in, in the Shopify world, there's like, it all just turns out to be Jason when you're doing the front end stuff. And so. You could write some upgrade scripts or like figure out a way to apply that change to all the existing JSON that's out there. It's not too bad. Like I remember having to write migration scripts for Magento. and like dealing with schema and stuff like that. And at least we're not dealing with schema changes or anything.
[00:41:45]
David: everyone's got their own workaround for looping more than 50 times.
[00:41:50]
Kalen Jordan: I haven't really, I haven't really dealt with that yet, what's your work around for that currently?
[00:41:56]
David: a paging. And so you can get around it by, Setting a page size that's bigger than it should be. I think that's like the one workaround is that, , you can loop through pages, but you can get it to output more than 50 things if you, if you page it correctly.
[00:42:14]
David: I can't remember one of the, one of the, um, oh, somehow I forget his name, but he does the, uh, liquid podcast. He posted his solution for getting around 50, , but the main way that I got around that limitation for collections was just to use paging the way it's supposed to be used.
[00:42:35]
David: And then, like, when you scroll down a collection page, when you get to the bottom, there's a, an intersection observer that will determine like, okay, you're near the bottom.
[00:42:46]
David: Um, so we need to send an AJAX call to get the next 50, , not 50, but like the next set of results. And then it loads them in
[00:42:55]
David: That's kind of a, like a tried and true. We did a similar thing in Salesforce. When you got to the bottom of the page, we just like auto clicked the
[00:43:11]
David: one that gave you the non existent property.
[00:43:15]
Kalen Jordan: Yeah, dude, like, that thing, like, , All they need to do is validate against the schema. It's kind of like, like as far as AI stuff goes, they have the GraphQL schema so they could train it against that. Like there's, there's actually no excuse for the hallucination and stuff because they have something to validate every single answer against.
[00:43:47]
David: but you're right. Like, if if you can tell that the model is outputting GraphQL and maybe there's some tagging for. Like start of GraphQL, end of GraphQL for the output that the AI
[00:44:01]
David: comes up with. You could do some like post hoc,
[00:44:28]
David: like, if they're like, maybe they're using their own base layer models instead of some sort of external dependency. I'm sure that's what they're trying to do. So maybe that's where the difficulty is. Is that they just don't have as much of the manpower behind of that verification stuff.
[00:44:47]
Kalen Jordan: Yeah, they probably trained it on some stuff and then it's just a, it's just a model, like, but, If they could somehow just add a check at the end, on the output, that'd be kinda cool.
[00:45:01]
David: Yeah, externally that, that sounds like it should be a thing,
[00:45:06]
Kalen Jordan: Cause like, I posted about it and then Liam was like, Oh, by the way, if you click that to give feedback, he said, the team reviews that, , if you click like, this did, this wasn't, this was bad or something. Then he's like, the team reviews that regularly. And I was like, Oh, cool. I got to just, I should, I got to just remember to click that.
[00:45:24]
Kalen Jordan: And then somebody else posted about the scheme and I was like, wait a minute, they should be doing this.
[00:45:38]
David: There's a lot of hype around AI, , and it's fun to like talk to the CEO about things that she heard about and, you know, Be like there's companies that come up and they're like, we can analyze all of your data and come up with reports and it's all based on AI. And then
[00:45:55]
David: I go onto their website and look at this stuff.
[00:45:58]
David: And it's like, The way that it starts out is we have to have a month long discovery. And I'm like, wait a second, that's not like, that's just the way that things have always been. What do you mean? No, your AI should discover everything for me and just make it all happen magically. That's the way it's marketed.
[00:46:28]
David: all the time. There's Like. all this, like it solves everything, but it's just a, like really what they're doing is trying to tell everyone that. AI is part of their product, but not, not tell you how much of the product it actually is
[00:46:44]
David: integrated into. It's just, we use it. I'm like, okay, we've got a chat GPT account. You know, people go ask chat to BT questions. So we're AI, I guess.
[00:46:55]
Kalen Jordan: Yeah. Yeah. Dude, did you see there's a 200 a month plan now on chat GPT and I saw somebody posted like it like
[00:47:07]
Kalen Jordan: Yeah, I know it's crazy, but it like recreated the Coinbase interface. Like somebody like passed it a screenshot and it generated all the code to build like coin, the Coinbase interface or something like that.
[00:47:20]
Kalen Jordan: By the way, how about that BTC?
[00:47:22]
David: How about it? I mean, not that I have any or anything, but
[00:47:26]
Kalen Jordan: Not that we have any, but it's a pretty cool little milestone, dude. Um,
[00:47:45]
David: got two of them and one of them is in the office in San Francisco displaying our revenue numbers. Someone
[00:47:50]
David: told me it's broken, so I got to figure that out. But,
[00:47:52]
David: , I have it over on my desk and it always shows our like revenue, daily, weekly, monthly, , And then one of them is like the Bitcoin price and it's fun to just see what's going on there.
[00:48:04]
Kalen Jordan: It's such a crazy milestone. I saw this post, this guy that saw the 100 milestone and had it recorded himself, you know, talking about the 100 milestone and then fast forward. It's just, it's crazy, man. It's
[00:48:18]
David: And then he recreated it for a hundred K. I think I
[00:48:36]
Kalen Jordan: think it's going to go all the way like to becoming the, like the world reserve currency, like all that shit. Like , how could it not at this point? Like it's gonna,
[00:48:46]
David: it'll be interesting. Like if, if that happens, then a lot of other things also have to happen, including like the dollar no longer being the world currency. And so,
[00:49:02]
David: I don't, I don't know how I feel about it to be honest.
[00:49:05]
Kalen Jordan: Yeah, actually scary when you think it through.
[00:49:08]
Kalen Jordan: It's kind of, It's kind of, terrifying when you think it
[00:49:11]
David: but it's so interesting. The like, uh, now this is a Bitcoin podcast, like the way that, people are figuring out ways to use energy that is Not easily accessible and there's a geyser or something or some sort of
[00:49:28]
David: some heat source somewhere in a remote location.
[00:49:31]
David: You can't transfer that power, but you could use it to mine Bitcoin and then now you've got a representation of that power that you can
[00:49:42]
David: I think that's super interesting.
[00:49:43]
Kalen Jordan: yeah. Like I remember hearing that they, they would, they could do it in like , oil drillers or whatever, that they have heat, exhaust or something that comes off of their machines or whatever.
[00:49:53]
Kalen Jordan: And they're able to basically funnel that, it's like a waste product.
[00:49:59]
Kalen Jordan: funnel the waste product. Yeah. That kind of stuff. Anyways, back to the, um, Back to the AI stuff, dude. I had, I had a cursor, give me some code that I still don't fully understand it works,
[00:50:18]
Kalen Jordan: Yeah. So like, I, I'm having to sync in data from a MySQL database. So normally the way I do it is I say, give me a hundred records, , that are greater than this last modified date.
[00:50:30]
Kalen Jordan: And then at the end of that, I'll take the. Biggest last modified date. I'll use that for the next batch. And that's how I do the batches. But then, I had a whole chunk of records that all had the same last modified date. Like the exact same last modified date. Like 200 records or something like that.
[00:50:46]
Kalen Jordan: And then I realized I can't use that. So then I asked it how to do it and it basically, it combined the last modified date and the ID.
[00:50:57]
Kalen Jordan: Querying on both like either last modified date is greater or last modified date is the same and the ID is greater and then Sort on last modified date and then sort on ID and I was like, okay, it kind of makes sense But I was like, do you need to reset the ID or something like that?
[00:51:14]
Kalen Jordan: I still haven't fully Grokked it,
[00:51:20]
Kalen Jordan: well because like what if the next batch in the last modified the IDs are in a different order. Like it, the IDs are, different than the previous batch.
[00:51:39]
David: okay because it's a new search Was ideally a new chunk of last modified dates.
[00:51:46]
Kalen Jordan: yeah. It's a new chunk of last modified dates, but what if the ID from the last batch is like different than the ID for the next, but like not carry over to the ID correctly to the IDs for the next batch.
[00:52:01]
David: It doesn't matter because then you would be running into a different constraint on the last modified dates.
[00:52:16]
David: Like does that work? Yes. The output is right. Okay. I need to move on.
[00:52:21]
Kalen Jordan: Yeah. Yeah. Yeah. So, but it's like, it's, it's concerning to me that I, cause normally any code that I write, I understand it. This one, I like, I sort of understand it like only about 80%,
[00:52:36]
Kalen Jordan: but I'm like almost certain it's, it's fine, you know, and I'll just run the import and see if it misses anything, but it's like, it's weird, dude, it's a little creepy.
[00:52:54]
David: I've done that before. I wrote some scripts, , for our black Friday stuff where we have to like, there's weirdness around the compare at prices, in Shopify. Like if a particular variant is no longer in stock or it's like hidden, we'll set it as like hidden. It's still
[00:53:40]
David: So we have to like, we get a list of SKUs that are a certain price. And then like, let's say the SKU list is like all colors that are active. So for the entire product, it is a certain different price. Like it's usually a hundred dollars. Now it's 80. So on the PLP it should show 80 with a 100 struck through.
[00:54:08]
David: And so we have to do this like scripting where we find all the variants that are hidden and also set the sale
[00:54:13]
David: price on those. Uh, but I wrote scripts for this and it was like a Chachapiti like day before the sale, I need
[00:54:21]
David: to do, I need scripts for this apparently. And so this year, one of the devs on the team, I was like, can you handle the prices this year?
[00:54:29]
David: Cause I, I gotta do other stuff. And he's like, how does this work? And I was like, I don't know. Chachapiti did it for me. Can you, can you figure out how it works?
[00:54:42]
Kalen Jordan: That's crazy. That's so funny. And, and so, cause I ran into this, and you don't, so you don't want to delete the variants, right? Because they
[00:54:51]
David: Yeah. I don't want to delete them. They could come back.
[00:54:53]
David: , yeah. And sometimes they do, sometimes we get more stock of that color. And so we want to put it back on. And if we deleted it, then there would be all this other stuff that we'd have to refill in. So we just kind of leave them there sometimes. Um,
[00:55:05]
Kalen Jordan: not just have them as out of stock?
[00:55:11]
David: if it's, uh, like for us on our PDP, if it's out of stock for that color, the add to bag button will change to, uh, notify me, like sign up for waitlist.
[00:55:25]
David: We have this big sheet that is like, there's five different fields that change the visibility of a product. And based on the product team's determination of what phase of life this product is in,
[00:55:39]
David: like you need these different things set. It gets wild
[00:55:44]
Kalen Jordan: No, they, do need that disabled field. And I think they need a native disabled field, the variant, because I think, I think a lot of, we ran into that one. I think a lot of people have that same situation.
[00:55:56]
David: Yeah, it would be nice. Cause otherwise we just, we have the. the. meta field check in, in a few different places in the theme to make sure
[00:56:21]
David: I think we figured out a different way to do it. i'm really excited. I've been getting the team to do more stuff in flow
[00:56:27]
David: and they've all been figuring out different workarounds for all that kind of stuff.
[00:56:32]
David: Now we've got like, uh, tags that we set on the product and then another tag that we set when it's been processed to it Be unpublished.
[00:56:41]
David: it's great. I love that everyone's picking it up and they're like, none of them are developers. And so there, I mean, I'm sure there's some danger there, but we have a testing in place, so
[00:56:53]
David: it's pretty cool watching, people not write code, but have these flows that do. API interactions that aren't possible in the admin.
[00:57:03]
Kalen Jordan: no, that is cool, man. And I think over the next, like, if you imagine 10 years forward, like it's going to get like there, people are going to be able to do more and more. It's funny, I had this client, they were like, hey, um, I set up this flow to tag like expedited orders. And they're like, it's not working on the imported orders.
[00:57:23]
Kalen Jordan: Cause I I built this, uh, integration to import orders from this other system for them. They're like, it's, they're like, it's not working on the import orders. So I go in and I check, there's like three flows they created. Like one, one of them tags based off, based off of the shipping method. And that one's working because it's, just native orders, just have a shipping method.
[00:57:42]
Kalen Jordan: That has expedited in it, but then these imported orders, they have a product called expedited shipping and then one of the flows like wasn't even set up like it, like it was set up right. But then the last step to tag the order just had a blank tag
[00:58:01]
David: Oh, I know what that problem is.
[00:58:02]
Kalen Jordan: And then they had another flow that was like doing something, doing kind of the same thing, but it was also like not set up right, because like the condition wasn't set up.
[00:58:15]
David: tag, like the empty tag thing? We've had that happen before, too. And it's
[00:58:19]
David: because in the field, you'll type in the tag, and then unless you hit enter, it doesn't save it as part of the tags that it should apply.
[00:58:29]
Kalen Jordan: that's, that's, I've totally done that before. Now that you mention it.
[00:58:38]
Kalen Jordan: That's funny, because I was thinking to myself, dude, they didn't even set this up right. What are they, why are
[00:59:22]
Kalen Jordan: Dude, I haven't been on the regular forums in a while, like a month or two. I used to be in there every single day, and Paul was in there quite a bit,
[00:59:50]
Kalen Jordan: Yeah. No, there's just so much, it's kind of crazy. It took him this long to stand up like a proper forum. If you think about it,
[00:59:57]
David: Well, it's confusing because they're like, there's the old forum. Now there's this new forum. Like,
[01:00:02]
David: what, like, why didn't we just, like, what happened with the old forum?
[01:00:06]
Kalen Jordan: yeah. Well, I think the old forum is like merchant facing and
[01:00:11]
David: Uh, yeah, this one's more partner.
[01:00:14]
Kalen Jordan: which I think that's a good strategy to kind of roll it out because. You know, changing the entire forums all at once. Like they have such a massive user base for, you know, merchant user base.
[01:00:26]
Kalen Jordan: It's probably like less technical on average.
[01:00:28]
David: totally. I'm sure the, the questions that they're getting in the dev forums are a bit higher quality than
[01:00:35]
David: the, like, I, I'm sure the old forums were like, read the documentation,
[01:00:41]
David: the, uh, the dark The dark theme on the dev forums maybe scares those people away.
[01:00:49]
Kalen Jordan: there's so many ridiculous questions on the merchant forums, so much, just absolute nonsense. Um, And I mean, I'm sure the new forms will get, you know, as the volume picks up, there'll
[01:01:08]
Kalen Jordan: it'll get a little rowdy now, but they're pretty awesome. I wrote this little method recently that I was proud of.
[01:01:13]
Kalen Jordan: It's called liquify metafields and it,
[01:01:16]
Kalen Jordan: uh, it just takes, it takes the graph QL , from metafields and turns it into the, like the liquid style. You know, Namespace dot field dot value type of deal. So
[01:01:31]
David: needs that dot value on the end?
[01:01:34]
Kalen Jordan: yeah, it, uh, well, no, no, I didn't do, I didn't do that whole, I didn't do that whole
[01:01:42]
Kalen Jordan: Oh God. That confuses the hell out of me.
[01:01:45]
David: I guess it's really just like when it's a scalar value, you don't need the dot value, but when it's like a something like a, it turns it into a drop, like a media drop
[01:01:55]
David: or whatever, then you need the dot value.
[01:01:58]
Kalen Jordan: Okay. Okay. I just always trial and error it like eight times
[01:02:37]
David: I don't know. There's a lot of cool stuff coming out where people are experimenting with, like, put this dress on my, on a picture of me, or like,
[01:02:47]
David: We need to, we gave a shot earlier this year to having a chat bot help with customer experience,
[01:02:53]
David: but it was, , it was Zen desks, like free chat bot version.
[01:02:58]
David: And it was not AI at all. It was like some old machine learning thing, and that's why it was free. And it was just really not good.
[01:03:06]
David: So I want to give it a, give that another shot and have like, have it, be able to answer product questions based on resources that we give it.
[01:03:26]
Kalen Jordan: so like, they answer like, I've asked like four questions. The first three, they totally nailed. And like, and I had like searched the, I had done a quick doc search or something like that, I didn't find the answer.
[01:03:39]
Kalen Jordan: The AI answered flawlessly the first three questions. The fourth question, it actually answered incorrectly. It was something about like a variant metafield file reference. But then within 90 seconds, a person popped in and goes, Oh, I'm sorry, actually that's incorrect.
[01:04:00]
Kalen Jordan: And I was like, yeah, and I was like so impressed that they did it so quickly, but I was also
[01:04:06]
David: Did you reply to the incorrect answer?
[01:04:09]
Kalen Jordan: no, I didn't, I didn't even have time to like,
[01:04:12]
Kalen Jordan: no, I was just getting ready to go in and like, no, I didn't reply.
[01:04:17]
Kalen Jordan: They just auto checked it but which is actually kind of a bummer. You can't do file reference, , metafield. So like you can do, I think you can do. product, uh, like a file URL on a product maybe, but on the variant level you can't, which kind of sucks cause we had the CSV of images for variants and we, Oh, we needed to put the swatch image as a meta field on the variant.
[01:04:44]
Kalen Jordan: So I told the team, I was like, Oh yeah, just drop a meta field in there, use matrixify. And that's like one thing that, that they can't do.
[01:04:51]
David: What's the limitation that you were trying to give it a URL?
[01:05:04]
David: I would love it , if they could just add another step in there. And that's 1 of the things that I'm dealing with right now is like our, we use feedonomics
[01:05:11]
David: and they're trying to get, the media galleries from the variance and when it exports, it's just the references, but it'd be much better if it was like an actual C.
[01:05:29]
David: So they have some way to do that.
[01:05:31]
Kalen Jordan: Yeah, and it's, it's not that hard. I was doing this. you just on the GraphQL, you just do, uh, You just put the reference, , reference object underneath it. And then you put, you know, dot, dot, dot on image or dot, dot, dot on meta object, and then you put in the value or the
[01:06:03]
Kalen Jordan: with metafields and stuff like that. Like you start to really. See the value there because we're grabbing stuff by reference and stuff like that.
[01:06:13]
David: Once you realize that it's like, it's kind of like a class, like you just have, you have objects that reference each other. And as long as you put them in the query the right way,
[01:06:24]
Kalen Jordan: yeah, yeah. I mean definitely like when I first had to look at it, it was a pretty significant learning curve,
[01:06:32]
Kalen Jordan: but, um, I still need a better auto complete in like my code cause I'm constantly going over to the graph QL app. like anytime I need to add a field, like I needed to add, you know, inventory item under my variant query.
[01:06:47]
Kalen Jordan: So instead of just adding it directly in my code with some autocomplete, I go, you
[01:06:53]
Kalen Jordan: know, I go into the thing and type it in to make sure I, you know, type everything right. And then paste it back over. Yeah.
[01:07:03]
David: with postman or something. I tried GraphiQL, and I just don't get, like the, when you click things, certain things happen, and I don't really, I just don't jive with it. I don't know why.
[01:07:16]
Kalen Jordan: You mean the Shopify graphic graph
[01:07:27]
Kalen Jordan: Yeah, the permissions issues are a nightmare. My thing with Postman, it doesn't seem to always auto complete for me.
[01:07:34]
David: Oh yeah, it doesn't really autocomplete all the time, but it does at least tell you if like, no, that's not a thing. You can't do that.
[01:07:57]
Kalen Jordan: But I'm sure there's a way to do it in code. I'm sure that I, I know there's like Apollo graph QL vs code plugin. And then I think if you just point it to the schema, I got to figure that out at some point.
[01:08:11]
David: That's something that the Panoply guy will figure out now that he likes GraphQL. We'll see
[01:08:18]
Kalen Jordan: Does he, is he finally, uh, is he finally, into graph QL?
[01:08:22]
David: I saw something the other day where he was like, surprised that something worked. And so, maybe he's on, maybe he'll get on the train.
[01:08:30]
Kalen Jordan: Dude, he's a wild boy, man. He's a crazy guy,
[01:08:35]
David: He's got one of those brains. It's a good brain. interesting brain.
[01:08:41]
Kalen Jordan: He's a fascinating brain. He was like, he recently like, had a computer die. And he's like, cause you know, he's always posting about like shaving milliseconds off of, like optimizing the hell out of the stuff he's working on. And I don't understand half the shit he's talking about, but it's like interesting to follow.
[01:09:03]
Kalen Jordan: And he like had a computer die. He's like, I don't use Git. I don't, I don't use backups.
[01:09:31]
Kalen Jordan: I mean, as long as your code's up in Git, like, it's the main thing. I don't really SSH into anything. What the hell are you SSHing into?
[01:09:39]
David: I don't know. I made a, I got this droplet that's like 6 a month that's handling the Uber integration.
[01:10:34]
Kalen Jordan: No, that's a good move, dude. I was recently trying to find an FTP server cause a client like needed one. And then I searched and it was like, it was like files. com or some other one. They charge you, want to charge you 30 bucks for some dumb ass FTP
[01:10:46]
Kalen Jordan: server. I didn't have the wherewithal to spin one up.
[01:10:51]
David: I know. Yeah. That's, that's the situation I was in. I was like, I don't want to ask someone if we feel like it's worth having an yet another thing. So 6 a month, that'll fly under the radar.