Kalen and David hit episode 2 running—hacking private Black-Friday strike-through pricing with variant metafields, cursing at app-proxy URLs, swapping POS/monogram war stories, and day-dreaming about a “Scope Bot” that turns messy project calls into usable specs. More laid-back dev therapy for Shopify nerds.
[00:00:00]
Kalen Jordan: Because what I was doing is making a new theme or a new preview theme. Then tying that to a branch and then publishing that to cut over which is exactly the wrong way to do it.
[00:00:16]
Kalen Jordan: It's exactly the wrong way.
[00:00:25]
Hey, what's up. Kalen here. Welcome to episode number two of talking shop.dev. Sat down again with David and we talked about some of the discount functionality he's building for black Friday. We talked about some app proxy URL issues that I'm running into. A weird checkout capture issue.
[00:00:45]
If anybody can help me solve this, it would be amazing. And we also talked about some point of sale stuff that David's team has done and some stuff that I've worked on recently and a bunch of other random stuff. So check it out.
[00:01:05]
Kalen Jordan: So, um, what have you been up to this week? What's the latest?
[00:01:10]
David: this week. Um, we have been working on some sales stuff. So For Black Friday, Saturday, or Monday.
[00:01:18]
David: And, uh, if we want to get into the weeds already,
[00:01:22]
Kalen Jordan: Let's jump right in, man.
[00:01:23]
David: Shopify has, uh, compare at prices that like by default and most themes show strike through pricing on the and the PDP and, and the cart and the checkout.
[00:01:36]
David: But we didn't want to use, uh, we didn't want to use compare at prices because we want to make, we want to have like a private, where there's like a private sale kind of situation.
[00:01:48]
Kalen Jordan: Private event? What is that?
[00:01:51]
David: yeah, like only we want only certain customers to see these strike through like discount
[00:02:00]
David: and, uh, yeah, I've been trying to work through making sure that that's all good and had to go into a little bit of a hacker mode last week to make stuff happen for
[00:02:36]
Kalen Jordan: we get everybody, we're gonna get everybody NDA'd. Don't worry about that. Everybody listens to this, we'll get them all NDA'd.
[00:02:42]
David: well, it might be surprising, but I'm using, uh, a metafield the variant
[00:02:51]
Kalen Jordan: Literally in my head I called it.
[00:02:53]
David: the, the price that it would be discounted at and put it in there.
[00:02:57]
David: then, um, some super simple JavaScript that checks to see if you're, if you're in or not, and if you're in, it flips the price. Um, but the, the complicated thing is not every color is discounted certain products.
[00:03:22]
David: You have the ability to change the color on the PLP to preview and if someone switches over to the sky blue color, which isn't discounted, and they take a screenshot and send it to customer support, and we're like,
[00:03:44]
David: when you switch between colors, you got to make sure that when you switch to the sky blue. This isn't actually one of the excluded colors that was like from last year, but, um, it's got to not show the strikethrough price anymore, which doesn't sound very complicated and actually didn't end up being that complicated. Um, but just a lot to test through
[00:04:03]
David: sure that everything's good. And then like, okay, we've got recently viewed products at the bottom of the PDP. Guess those also need to have the strikethrough
[00:04:16]
Kalen Jordan: Nice, dude. Yeah, that, that's one of those things that you go into. You go, okay, I knock this out real quick. And then, and then you stumble into all the other shit you gotta deal with.
[00:04:34]
Kalen Jordan: did, uh, dude, uh, well this morning I was, or yesterday and today I've been, been, uh, trying to get an app proxy URL to work
[00:04:46]
Kalen Jordan: and, um, speaking about not complaining about anything.
[00:04:51]
Kalen Jordan: And, um, so I just, the problem is man.
[00:04:56]
David: the app proxy URL thing? Like, what is it
[00:04:58]
Kalen Jordan: So basically within an app, you can set, uh, an app proxy URL. So there's like certain sub paths, like slash apps slash a slash something. You can pick one of those and then give it a pass. So then on my store. com slash apps slash proxy, let's say, well, in my account, in my case, it's an account section, trying to build out a custom account section because the account section is complicated.
[00:05:26]
Kalen Jordan: And, um. They, so, uh, so when they go to, uh, the store slash a slash account, um, I want to pull in this account section. And so I'm like going, okay, how, how am I going to build this exactly? Because, you know, I'm so used to just working within liquid, like working with some established framework. Like if I'm doing a Shopify app, I'm using gadget or, you know, like, There's these certain frameworks I'm using for things, but within, within the app proxy, you have like, uh, you have to pick what you want to do there.
[00:06:05]
Kalen Jordan: So, so the, so the, so the app proxy points to any URL and then you host and you host your, your app, I mean, uh, uh, your, your app, wherever you want and you point it to that URL. And if your app returns, uh, content type liquid. Instead of like content type text, HTML has to return content type application liquid.
[00:06:28]
Kalen Jordan: Then Shopify pulls that into the site template. So it pulls it inside of the header. It has the header and the footer of the site and it just drops your stuff right inside of that. So it's like, that's perfect.
[00:06:41]
David: Sweet! Does it process the liquid?
[00:06:43]
Kalen Jordan: yeah, it, yeah, it can process the liquid too. Um, and it has,
[00:06:49]
Kalen Jordan: Yeah. And so that's what, cause initially I was going to do this all in, in hydrogen, this whole account section in hydrogen.
[00:06:55]
Kalen Jordan: But then I realized that I thought we needed some authentication deal, some like some autism, like some weird authentic single sign on type authentication that I thought was going to require headless. And then I realized it probably, we probably weren't going to need that. So it was like, Oh, well, this app proxy will be simpler.
[00:07:16]
Kalen Jordan: Cause then we would have had to manually mirror the headers. Like we would have had the headless site have to match the header, you know, so that you feel like you're on the same site. It was like, that's going to be a nightmare. So, um, just trying to get this.
[00:07:30]
David: Does the, uh, does the app proxy, that like already handles auth stuff,
[00:07:36]
Kalen Jordan: Yeah. That's the other thing. It, it passes a head. So when it, when it sends the request to your server, it sends you the logged in customer right off the rip. So you have their ID and.
[00:07:49]
Kalen Jordan: There's a signature, so you're good to go. It's all, it's all handled. Um, but so I'm like, okay, what, what am I going to build this on?
[00:07:58]
Kalen Jordan: And I was thinking about like doing something with node and finding my own, like deal, like framework or whatever, or, um, well, at first I thought I was just gonna do like plain liquid, but actually, um, I, like, you know, I In my case, uh, I need to do like this impersonation feature. So I'm not going to just return, let's say the orders for the logged in customer.
[00:08:29]
Kalen Jordan: I need to, um, I need to allow them to use like a cookie to impersonate another customer. And then I'm going to just do a Shopify API call to get the orders for the, the customer they might be impersonating. So I can't use just plain, plain liquid in there, which was the first sort of complication. And
[00:08:55]
David: the impersonation aspect, like you need to log in as
[00:09:00]
Kalen Jordan: Yeah. And so, um, so then I'm like, okay, well, I'll just use remix. So I use remix, but it's doing this weird thing with the JavaScript and CSS that it's, that it's, um, loading because let's say your app is it cloudflare domain. com, whatever. And then your app proxy is.
[00:09:29]
Kalen Jordan: yeah, you're at, you're, you're, you're loading it at my store.
[00:09:33]
Kalen Jordan: com slash a slash account and it's proxying to that domain. So then when it tries to load CSS, it's loading it at the root of the store domain, which doesn't exist. And I was like, okay, this can't be that hard to figure out. But it was, and I, I, I found this GitHub issue on, I still don't know if it's possible or not.
[00:09:55]
Kalen Jordan: I think, I think I got it to work without using the liquid content type. If you use a regular content type, then the, then the app proxy page loads as a full standalone page and I got that working.
[00:10:10]
David: So you can like directly inject the CSS and JS or something?
[00:10:14]
Kalen Jordan: Yeah. Uh, yeah. Like it just worked that way. But then with the liquid, with the liquid header, it was all messed up. And I was like, how can this be this complicated? But I just uh, so I kind of got stuck there and then I tried a Next. js starter template and um, I, I, I don't quite understand all the magic behind React and Remix and Hydration and all that shit.
[00:10:41]
Kalen Jordan: Like when it, when I use a boilerplate and it just works, then it's great. But like,
[00:10:48]
Kalen Jordan: yeah, yeah, but it's like returning, I think maybe you can't return React and JSX and stuff like that in that, uh, liquid, um, app proxy. So, uh, dude, it's just, I was just spending hours on it. It was brutal. It's absolutely brutal.
[00:11:11]
David: what is the, uh, so if it's not headless,
[00:11:14]
David: the reason for not using like a gadget like you're familiar with for
[00:11:18]
Kalen Jordan: So, at first, um, I thought that we couldn't use Gadget because I thought that, um, that we were going to need to use the infrastructure that, you know, they're using certain things on Google Cloud. Um, they had their infrastructure kind of diet, like, like they're kind of particular about that, but then
[00:11:37]
Kalen Jordan: just today I was like, well, maybe I should ask and I asked and they're like, yeah, that's fine.
[00:11:44]
Kalen Jordan: So, but then, so I posted the question to discord and they said, uh, the initial response back was that you actually can't serve react JSX through that at proxy. And I'm, I still need to double confirm that, that that's the case. Um, because at first they said, well, you can't do it through a theme app extension.
[00:12:09]
Kalen Jordan: I said, well, it's not a, it's not a, it's not a theme app extension. It's just a regular proxy URL. So dude, it's.
[00:12:18]
David: another question. What about the, don't, it doesn't shop. Do they have like a new customer account section that you can publish blocks to now?
[00:12:26]
Kalen Jordan: They do. They do. Uh, but what is the reason we're not using that? Uh, it's pretty, I think honestly it's too restrictive. From the, from the little bit I've done in there, I don't think you could possibly do impersonation. Like you have very,
[00:12:51]
David: uh, impersonation, I'm like, okay, so how are you going to get hacked?
[00:12:58]
Kalen Jordan: Well, here's the, here's the good thing is that, um, you know, at first, uh, I thought we thought there was going to be this solution to do impersonation through this, uh, provider called Auth0, uh, that has this new integration apparently that's going to launch with new customer accounts because like, uh, another way to do impersonation is with multi pass.
[00:13:20]
Kalen Jordan: Like, with multi pass, you basically send like a payload that's signed. it's like signed with your, uh, access, your secret key or something. And you can log in anybody you want to. That's, that's how multi pass works for single sign on, but it's not compatible with new customer accounts. So I think Auth0 is supposed to do that.
[00:13:44]
Kalen Jordan: But then we, we, we found out that Auth0 does not allow impersonation. They actually remove that feature. from their platform like four years ago because it's a security issue.
[00:13:58]
Kalen Jordan: so, but then what I realized is we don't need, uh, like full impersonation in the sense of actually logging in as the Shopify customer.
[00:14:09]
Kalen Jordan: We just need like a cookie so that we can show them some stuff in the account section. And we could use like a cart attribute on the storefront to show them the right pricing. If let's say they impersonate another customer, another customer that has different pricing, we could show them that pricing and they're never going to need to actually check out.
[00:14:34]
Kalen Jordan: And actually you don't want them to. Like actually be able to check out. So it ended up being one of those things where like, at first you shopper has this restriction and you're like, damn it. But then you realize they were right all along and you were, and you were just trying to do something stupid, you know, you're trying to Magento it or something.
[00:15:00]
David: if you've got two discount codes that are both set not to combine, but one of them is better than the other one for the customer when they try and put in that better one. It will, it will still replace the one that exists. So like there, there's a little bit of a mismatch there and like, maybe the expectation is that if a coupon doesn't combine with another coupon, then it just doesn't let you come put it in. Shopify like made this decision that actually we should just switch to the one that's better for the customer.
[00:15:33]
David: And I went through the like. Sometimes when Shopify makes decisions like this, it's well, most of the time it's because they see the way that people are actually
[00:15:49]
David: And if we're trying to get around it and add complexity, there might not actually be value there at the end of
[00:15:55]
David: we should just. Stick with what's
[00:15:57]
Kalen Jordan: Yeah, like you might have had your first reaction be like, No, wait a bit. I want them to have the cheaper discount. We don't, we don't, we don't want to be giving money away or something like that. But then, when you think it through, you go, Well, yeah, you should. It makes sense. It's almost like there's this like denial cycle of like the Shopify constraints where it's like, you know, at first it's like, this sucks.
[00:16:22]
Kalen Jordan: And then it's like anger. And then it's like depression or that it's like acceptance that like they were. Yeah. Well, yeah,
[00:16:34]
Kalen Jordan: that that's one of the big mindset shifts coming from open sources is that like, is the N You know, is that like a lot of time, a lot of the constraints are really good. Um, and like liquid even has a bunch of like constraints, like you can't, like you can't assign an object.
[00:16:55]
Kalen Jordan: I think I remember running into that and thinking that was weird. Like I wanted to overwrite like a variant object and you just can't, I think.
[00:17:10]
Kalen Jordan: And then I was like, this is so stupid, and then I looked into it more and I was like, oh yeah, cause they want, they want the liquid to have a certain amount of simplicity to, to it.
[00:17:23]
Kalen Jordan: And, and, and even with those constraints, like liquid still gets, you know, insanely complicated when you have like gigantic files or crazy third party themes. But. It would be even
[00:17:36]
Kalen Jordan: if the, like, if the state wasn't managed as, you know, as tightly.
[00:17:41]
David: Yeah. And it's like super, like the, the decisions they make. Are such that it is super cashable like
[00:17:52]
David: have complicated liquid, because it's like pre rendered, then there's a bunch of caching in the middle. And so a complicated liquid file still could be performant because of the. Constraints that have been put in place.
[00:18:06]
Kalen Jordan: Right. Right. And, and they have, um, like, I think they, I was looking at a club, uh, some cloud, like some, uh, some weird cloud flares or, um, I'm looking into an issue with, uh,
[00:18:24]
David: What are you doing on cloudflare? Tell me.
[00:18:25]
Kalen Jordan: it's actually not that interesting, but basically this one client has a captcha that the H captcha showing on every single checkout session.
[00:18:37]
Kalen Jordan: When you get to checkout, even on, uh, the shop. app domain, which in my on desktop, I'm logged in. So it takes me, they have their own custom domain for checkout, but it took, it takes me to the shop. app domain. my testing and I'm logged in and there's still a capture. And so there, um, it's, you know, and the captures, you know, people are getting stuck on, like, have you ever seen that before?
[00:19:06]
David: I've never seen that. I was like super like, when is that supposed to show up?
[00:19:09]
Kalen Jordan: yeah, like I, I can, I think it shows up every once in a blue moon. And so I'm trying to figure it out. And then once somebody asked me if they're using cloud flare and I was like, . My first response was, no. And then I was like, wait, there's a baji. First of all, , there's like 97 CloudFlare features for one for two.
[00:19:31]
Kalen Jordan: Like Shopify used cloud for natively. They use the CDN uh, natively. And then I was like, well, what about reverse proxy? So I looked up the domain, I looked up the DNS of the domain and it was pointed to CloudFlare and I was like, oh shit. They are. Proxying it. But then I looked at another place and it was Shopify name and address on the domain.
[00:19:57]
Kalen Jordan: So I think that, I think that all, all Shopify sites are reverse proxied through cloudflare. I think,
[00:20:06]
David: And, and the way that you determine that is by looking to see if there are requests directly to cloudflare.
[00:20:12]
Kalen Jordan: I mean the domain, the domain is, was pointed to cloud like a cloudflare IP. Um,
[00:20:24]
Kalen Jordan: unless, I mean, unless maybe it's, I don't know if it's, if it is a reverse proxy or if it's just hosted there or something, I don't know. But, um, it's crazy how many, how many different cloudflare features there are, but, um,
[00:20:40]
David: what is the, what does using cloudflare have to do with the
[00:20:44]
David: that that's like a cloudflare, like feature that's coming
[00:20:49]
Kalen Jordan: So what I think could potentially happen is if you're reverse proxying your site. Then the Capcha could pick that up and see that all of the requests are coming from the same ip, and then it could think that you're a bot or something and, and throttle you.
[00:21:12]
Kalen Jordan: Like if the capcha is not, and then I was like, wait a second, is Hcap from CloudFlare?
[00:21:18]
Kalen Jordan: Because I'm like, who the hell knows CloudFlare like, is everything these days? But it's, it's not, it's like, I think it's like a different company. you know, so if CloudFlare is reverse proxying all the requests and then the capture is seeing that. So I'm so lost on it, dude. And it's like a big issue for them because you know,
[00:21:40]
Kalen Jordan: yeah, hit up plus support.
[00:21:41]
Kalen Jordan: The, you know, the first response was like absolute didn't make any sense or it was just, um, I can't, uh, gosh, what was it? It was just, it was just, it didn't really cover the issue. So I replied back, hopefully. You know, sometimes you gotta go back a couple times and back and forth before they start actually like, looking into it, but, um.
[00:22:05]
David: I don't know. I, I have, at this point, I've opened so many. support requests maybe they put me in a different queue.
[00:22:24]
Kalen Jordan: you proxy this support request through your accountant? I need, I need to get with whoever the,
[00:22:32]
David: for Kuyana. This is like my friend, Kayla, and it has another random site and he's experiencing this issue. Can you help me with,
[00:22:39]
Kalen Jordan: yeah, dude. Oh man. That's funny. They probably do stuff like that where they route you around or maybe it's based on tier or something like that. But, um, yeah.
[00:22:50]
David: know. I, in general, I'm pretty impressed with, like sometimes, yeah, they don't, they don't. Understand stuff, but like, the range of questions that I have are like, go from way technical to like, just something stupid and. They always seem like they get
[00:23:06]
Kalen Jordan: Dude, you, you are, dude, bro, cause I hear this from a lot of people and I've, I've done a handful of plus support requests by now and seeing them come back like pretty, pretty, they seem like tier, tier one or tier 0. 5 support. Like you're on a different tier, man. Um,
[00:23:34]
Kalen Jordan: I, I'm actually really curious now. I want to go through all of your support tickets and like, see the, see the responses. Um, but yeah, so that's that one it's saying there's like so little I can do. I'm searching on the forums. I see people saying, okay, I have a user getting blocked by captcha. That's not surprising.
[00:23:56]
Kalen Jordan: Like everybody gets blocked by captcha sometimes. I see that come up. I see people that want to enable a capture. I see people that want to fully disable it. You can't, you can't disable it in the checkout. Uh, you can enable it in like your forms and other parts of the site. Um, but I haven't seen a single other person mentioned this specific issue.
[00:24:17]
Kalen Jordan: And, um, at this point I'm losing my mind. So
[00:24:21]
David: Yeah, I haven't heard that either, and I guess Shopify support didn't tell you that it's like something that's impacting this particular Shopify
[00:24:29]
Kalen Jordan: not yet, not yet. I, I, I sent a, I sent a follow up. So I'll hear back. By Monday or something. Um,
[00:24:38]
David: Wait, are you doing, you gotta do the, you gotta do the, uh, the chat support. That's the good
[00:24:42]
Kalen Jordan: Oh, do you do the chat support?
[00:25:01]
Kalen Jordan: Okay, I gotta try that. Cause, I'm usually hesitant to like sit there and wait around like for a chat and You know what I mean? I don't wanna bill somebody like a half hour for sitting around back and forth with chat. You know what I mean? But, but, you're probably right. That's probably, um, I should try that.
[00:25:21]
David: Yeah. Maybe waiting for the back and forth in email is, is worse than, cause most of the time when I'm interacting with them, it might be like 30 minutes that I'm there talking with them. Sometimes it's like five
[00:25:46]
Kalen Jordan: yeah, it's a weird one, man. Um, by the way, did you see the new meta object entries, uh, flow trigger? Yeah, not really. I've just seen, I've seen that request come up a couple of times. And uh, it was just, it was just cool to see that come through.
[00:26:06]
Kalen Jordan: For some reason I thought you might have mentioned that, but I probably just saw it a couple other places.
[00:26:12]
David: I might have to figure out something to do. So it's, um, I guess the way that it works is you define what meta object you're interested in seeing, interested in doing something when a new entry is entered.
[00:26:26]
Kalen Jordan: Probably, yeah, I haven't even, I haven't even looked at it yet. I just, just
[00:26:32]
Kalen Jordan: saw the tweet. Thought it was, thought it was cool that they're adding, adding some, some triggers.
[00:26:37]
David: I always see, uh, I forget his name, but I love seeing the, like the, by the way, you can do this now in flow cause we're getting more and more into using flow for, for
[00:26:49]
Kalen Jordan: Dude, I got, I got this, I got this, uh, one client there asking me to look at one of their flows and I, you know how, you know how you click on it and then you see the preview and you can drag it around within the preview. And I, I thought it was going to be like a few steps, but I'm dragging and I'm like, Oh God, it goes,
[00:27:12]
Kalen Jordan: yeah, it's never ending in every direction.
[00:27:17]
Kalen Jordan: I was like, Oh God, this is going to be complicated.
[00:27:21]
David: get kind of like glassy eyed when you show them flow charts like
[00:27:25]
David: like, wait, what's happening here? But usually it's not too bad once you break it
[00:27:30]
David: they need is like, maybe they already have it is like a, a description of what this flow is doing. That's like generated by
[00:27:39]
Kalen Jordan: Yeah. That's a really good, that's a really good little AI use case. You know, there's gotta be,
[00:27:47]
David: like there's a few places where Shopify must be on cooking something up. AI, like um, like generating alt text for an image. Why isn't that a thing that you can just
[00:28:02]
Kalen Jordan: yeah, it's, it kind of feels like they should be moving faster with AI, like, I'm like, you know, like I know they've got.
[00:28:17]
Kalen Jordan: dude. Yeah. Like there's some interesting things going, but like, I don't know. It like, if it just seems. It's like, it's going slow. Like you see all these AI products moving so fast.
[00:28:34]
Kalen Jordan: And I almost wonder whether you got to be AI first to just move really fast on that stuff. I mean, Shopify has some, so many other things to worry about. So it's like, and they have such a complicated scale. So like they have these things and then they just take forever to launch, but
[00:28:56]
David: Yeah. I mean, I, I, I'm a Shopify believer. I'm just going to guess that it must be hard,
[00:29:06]
David: the, the specific scenario that they're in with some of this stuff. And like, like totally, maybe, maybe generating alt text is not something that has been a big pain point for a lot of merchants, but I feel like it has to be, especially with all of the, ADA stuff going
[00:29:25]
David: like has to be something that they've heard of a lot. And like that, like my solution for that took me like a couple of days. I feel like Shopify devs. Have something going right now and they're not releasing it for some reason. Well,
[00:29:43]
Kalen Jordan: and, and I'm a big believer in Shopify too. I just think that like, you know, like the cursor editor, for example, it's like two guys, you know, I mean, you've got all of Microsoft and VS code is like super impressive. I mean, everybody uses it and they have co pilot, but cursor just like pretty much leapfrogged them with like two guys, you know?
[00:30:06]
David: they started from the entire VS code code base, right. And then they added stuff on top
[00:30:11]
Kalen Jordan: Yeah. Yeah. Yeah. I mean,
[00:30:29]
David: way, because. I'm not great at managing people at least. I feel like I feel like that sometimes. and I, you know, something I'm working through, but maybe, well, we'll definitely help with some level of people management at companies. Like, where, where is that planning doc for that feature that we were going to work on? you know, you got to, like, ask someone about that and everyone, you got to make sure everyone's looking at it on some cadence. Um, I totally feel like is, is going to become super empowering there where I'm, I'm a, I'm an individual contributor and I have something that I need to
[00:31:14]
David: But there are resources that I can't find right now, and I don't know the right person to ask have this person who is actually a robot who knows everything that's happening and can, like, push you in the right direction like that. is a huge unlock.
[00:31:29]
David: There's so many times when people are like, just they don't know what the next step is.
[00:31:33]
Kalen Jordan: yeah, yeah. I, I feel, I actually feel super empowered with, uh, by AI. I like how you use that word. Cause it kind of hits the nail on the head. Like just using, you know, cursor, like using it to write some code. Um, I actually used GPT for the podcast transcripts and it was freaking awesome because I first used 3.
[00:31:59]
Kalen Jordan: 5, uh, and it like did them and I was like, this is fine. And then I like took another look at them and I was like, this actually sucks. Like the, the, the timestamps were so generic. And then I went ahead and just paid for the, cause I had stopped paying for it. I, for the, for the four Oh model. And it was so much better.
[00:32:20]
Kalen Jordan: Like I was about to sit there and re listen to the whole thing again, even though I was absolutely sick of listening to it for the fifth time, just because I wanted the timestamps to be better. And it did such a good job. And, um, I think I've definitely had times. I think we all have, we're like, Oh God, AI is going to replace us.
[00:32:40]
Kalen Jordan: Uh, But I just feel like it's awesome. Like, I feel like it's, we're going to, you know, we're going to use it to be, to be like, you're saying exactly like what you're saying is like an individual contributor, which is also my mode. Like I can't, I'm not good with people, um, you know, to just be able to just do more, do more stuff and, you know, get more done and stuff.
[00:33:29]
David: and like sometimes people will be like, you know, when you have that many people on the call, like you kind of overlap when you're trying to
[00:33:50]
David: Yeah. Next time you're on a video call with someone or just like any sort of Google hangout, they've got a Chrome extension and you can sign up for like, um, I think they call it premium
[00:34:01]
David: and Everybody who has interacted with it in the company is just like totally blown away by what it's able to do and like pull out and summarize like the main points of what was discussed and the decisions that were made.
[00:34:22]
Kalen Jordan: It's funny because this one project I'm on is, uh, they, they, you know, there's these calls with like seven people and there's this, you know, we're doing a bunch of discovery for this big project and there's all these details and we're using, uh, you know, uh, I don't know what we're using to summarize the calls, something plugged into, I don't know, teams, I don't know what it's doing, but some zoom plugin or something.
[00:34:46]
Kalen Jordan: And, um, and at first, and then we're aggregating everything. In a, like a knowledge base by set by topic and we'll drop in the, the notes, the auto generated notes from the call. And then, you know, as a man, it sounds cool. Right. And so I was like, okay, cool. And then, but then like the debt, like when, then when you get into the details, like I was like work, I was like starting to work on some of the data mapping and I was like, okay, like, let me see if I have any notes on where this is.
[00:35:14]
Kalen Jordan: where the skew is, skew is mapped from in NetSuite. And I went in and I'm like reading the notes and I'm like, nah, this does, it's not like, it doesn't have the right level of detail. It didn't capture everything. And I was just, you know, I was just like, I'm not going to even look at this too much, it, but if, but if it was better, you know, it's, it's, it's, it would be, it would be amazing for these like.
[00:35:44]
Kalen Jordan: Complicated projects with tons of discovery calls. It would be amazing to have, to have it be really good. Oh dude. That's freaking awesome.
[00:35:54]
David: the next level of this. So they, I'm going to keep talking to like, I, I'm a little obsessed with it lately. Um, say you've got like you, like you said, like the seven, like you've got five discovery calls and you've gone through like all these complicated things and everyone's given their inputs. Um, And if, if those transcriptions, along with the summary and like, the ability to ask chat bot about that video call, like, if all of that was in some sort of central
[00:36:26]
Kalen Jordan: Oh dude. That's massive. No, that would be so cool.
[00:36:35]
David: or if it's like something that is like an executive or a leadership call, like don't, don't share that, but everything else, if it just went into some repository and you were able to ask about a set of calls or just in general, like how are things going. Um, that's, that is a huge unlock for companies and all of that goes into an AI.
[00:37:02]
David: And then, so like a level above that, you're like, okay, we know that we have this repository of all this information. Give that to model. And then that model is kind of like, if you have a question, ask the model first. It's like, we're there. Like that, that is
[00:37:22]
Kalen Jordan: that's so cool. Yeah, it's like, um, like I've started to use the, um, uh, question, the AI question widget on Amazon, on Amazon products. I don't know if you've seen it, but at first when I started seeing it, I started seeing it pop up. Um, it was popping up in like the bottom left corner on an Amazon product page and I was like, get this thing out of here.
[00:37:47]
Kalen Jordan: So I like closed it out. I minimized it or something like that. And then for some reason I went and I looked because like a lot of times if I'm looking at a product, I want to go, Oh, well, I, you know, I have some specific question and I'm reading the reviews and I'm trying to figure out like, okay, is it, does it do this thing or does it have this problem I suspect it has or does it, whatever.
[00:38:09]
Kalen Jordan: And then I used the, uh, chat thing and it was pretty good. It would like, it would pull in, it would, you know, analyze the reviews and it would answer your question pretty accurately from, from the reviews or from the product info, everything like that. Yeah. Okay. And so now I'm starting to use it a lot.
[00:38:54]
David: We tried using like a, A free chat bot. Um, that was not, it wasn't AI based. It was like the
[00:39:02]
David: the old version of AI where it was like, it tries to pull out keywords from your question to, to tie it to some flow of answer. And it's just not good. Like, especially when people have the context of chat GPT as a
[00:39:18]
David: when your customer comes to your store and like tries to use this old kind of chat bot, they're just like, what is happening? And this isn't like, send me to an
[00:39:28]
David: But with like, with the ability, like imagine a chat bot on like a support chat bot that you just upload your brand guidelines to. You upload your FAQs, and rather than like, sending you a link to the FAQ that answers your
[00:39:46]
David: Um, like that, that stuff that I feel like exists now and everyone should have, but at this point it's like, costs money, or costs setup
[00:39:58]
Kalen Jordan: Yeah, the support AI widgets, most of the time, for me at least, I hate them, like if I'm using them and you know, but I will say that this one app I started using, um, it's a, it's an iPass called Workado. And, um, it, uh, when you, when you do a support thing, it takes you through an AI thing first. And like, the first time I used it, it didn't give me, you know, it didn't give me an answer.
[00:40:26]
Kalen Jordan: So then I had to do agent and I'm like, I hate this so much. It's just one extra step, uh, before I can just talk to somebody. But then like the second and third time it, it actually answered my question and I was like, damn it. I mean, I was ha, I was happy, but then I was also mad because I wanted to think that it sucked.
[00:41:31]
Kalen Jordan: That's a thread. It's a constant thread for you,
[00:41:35]
David: they have, uh, they, so they have a Slack that you can
[00:41:39]
David: and anytime you go in and ask a question in the general chat, there's an immediate response from, uh, AI. That they have trained on their
[00:41:49]
David: and it gives you the right answer within one second.
[00:41:54]
David: then if, uh, and then like, if it seems like it didn't answer your question, like, I guess maybe they have some, reporting on this, but then there's always someone from the team who comes in and is like, Hey, do you like, did this answer your question?
[00:42:17]
David: just go in there and ask it a random question about chemistry
[00:42:20]
Kalen Jordan: Actually, dude, that's, you know, I actually was looking at it for this, uh, this potential Magento migration. And, um, I did have a question about something about a product import. I was planning to, I was planning to test, uh, test one out. Um, so I'll, I'll try that. I'll try that. That's, uh, Mm hmm. Mm
[00:42:45]
David: like built in, um, using matrixify to do store backups of like products and collections and everything. And you just set it up to run like once a day and it's stores
[00:42:59]
David: like built in. FTP the file to someplace. Um, it's
[00:43:05]
Kalen Jordan: Oh yeah. They're huge, man. Um, they, I always, I always hear really, really good things. Um, and it, it was, it was funny because when I was at Mesa, they, I wouldn't say they were competing, but there was some use cases where there was something I was trying to get, you know? And then it'd be like, it'd be like, oh, dude, it's easier to do in Matrix.
[00:43:27]
Kalen Jordan: I. Um, but I'd be like, damn it. But, um, but it's kind of cool. Like, you know, now, like now that I, like, I'm all really only care what the best tool is type of thing. It's, uh, yeah. Cause I always hear really good things, um, about, about them and stuff.
[00:43:52]
David: I was using Mesa the other day for
[00:43:53]
Kalen Jordan: Oh, nice. Hell yeah. I saw that they released an updated, uh, UDU connector.
[00:44:00]
Kalen Jordan: Um, ODU, UDU, it's like a, it's like an ERP. Um, it's like a web based ERP. I've never actually, so I remember hearing about it, like, I don't know, seven, eight years ago or something like that. And it was like this rinky dink little ERP, you know, and then, um, Now, all of a sudden I see signs in Austin, like billboards for it.
[00:44:27]
Kalen Jordan: And apparently they've, they've gotten like fairly big. At one point I was trying to like get a partnership, you know, contact there. And I couldn't even get in touch with anybody. Um, but,
[00:44:40]
David: they like a deeply integrated with Shopify situation
[00:44:47]
Kalen Jordan: it's, I think it's a not Netsuite situation, but there, I think they're open source. I've never actually used them. I tried to do like an integration once and it was, it was kind of a nightmare. The API, they're, they're have a bunch of different versions cause they're open source. So there's like a million different versions and I couldn't figure out where the API docs were.
[00:45:06]
Kalen Jordan: It was kind of a nightmare, but apparently relative to ERPs, they're like pretty, pretty decent type of thing. But, um, anyways, um,
[00:45:19]
David: We moved from, uh, I think it was like an open source ERP to NetSuite. And, uh, that was, that was interesting. There's some, uh, there's some interesting projects around ERPs lately. There's this one that's like trying to build, build into Shopify. Like the, the Shopify native ERP is like what they
[00:46:04]
David: once in a while. It's pretty interesting. They're like, they're doing it. It's like all, it's a like an, uh, it's an ERP like light that does certain things like PO management. Um, but it's all built with like the Shopify, uh, what is it called? Polaris. So it looks
[00:46:21]
Kalen Jordan: Oh, cool. That's awesome, man. You know what's funny is, um, Pym thing last time and this one guy, um, replied and he was like, Oh, I was really interested in the full episode because Because he's trying to evaluate a PIM situation right now. And, you know, he was like, how, how should it work? How should the metafield and stuff like that work?
[00:46:45]
Kalen Jordan: And, um, and then the other day, I was like thinking, I was like, man, I need to, I need to start working on an app. And I was like, maybe that PIM thing's not a bad idea. So, like, how, how would you, how would you want it to work? Like, if, if. you were to break it down, how it should work, you know, like,
[00:47:15]
David: I guess the only way that it would not be confusing if it could be deeply integrated into the existing like product and variant views and Shopify. And there are some cool things like the, um, what do they call them?
[00:47:36]
David: Yeah, you could do, um, maybe you could do something interesting there, but really like the thing that's missing is, um, a way, like everybody wants to work on product data. In a way that it looks like a spreadsheet, like every, um, every, uh, PIM these days has this like, look, here's a way to look at all of your data as a
[00:48:04]
David: that's valuable because you can go through and like, quickly edit any of the,
[00:48:08]
Kalen Jordan: Right, right, right. Okay. Mm hmm, mm hmm, mm
[00:48:13]
David: box on a bunch of them and say, like, I want to do this with these.
[00:48:17]
David: I want to set them as, exit date of blah, blah, blah. Um, and I feel like that's just the, like, that's the layer that's missing in Shopify. Like they have the, they have the bulk editor, you can't bulk edit everything. another interesting thing that PIMS tend to do, uh, is generating a reference site. Um, like, let's say you've got 10 attributes that are all relevant for a product, uh, from a product from, like, a product management or a, uh, customer experience perspective. Like, if if I'm support. I want to know, I want to know these extra five things about a product that I can't get to from the PDP because the PDP is like structured in a boom, boom, here's the things that you need to know, but then like, what are the exact inside dimensions of the tote or something like that?
[00:49:16]
David: Maybe isn't relevant, but someone might ask
[00:49:19]
David: And so that's another thing that, that, uh, PEM can do is help, help you internally understand things about your products.
[00:49:29]
David: not need to display to the customer. And right now, and like, it just doesn't make sense to put all that stuff in Shopify because Shopify is just the display layer, but if there's some way for Shopify to also fulfill or a tool in Shopify to also fulfill some of those other actions,
[00:49:47]
Kalen Jordan: that's interesting. That sounds, that sounds like a finesse little feature that probably some decent size companies need. Um, there's, um, I do remember hearing recently about, uh, this new bulk editor app, but I cannot for the life of me remember the name of it. I could probably find it, but I think it was, I think it was supposed to be really good as a bulk editor.
[00:50:16]
Kalen Jordan: So I think some of the bulk editors are not like great. Um, so I gotta, I gotta check that out.
[00:50:22]
David: like bulk editing is one of the things it's also like another good, like there, there are processes that need to happen in terms of hydrating product information before it gets to Shopify. And the reason why it's before is because as soon as it's in Shopify, you've either got to set it as like unpublished. Or, like, you got to make sure it's not showing
[00:50:50]
David: like, this time period between concepting a product and, um, working with the, working with developing that product at, at, with the manufacturer. And then, like, okay, we've developed this thing with the, with the manufacturer. We've got, so at this point, we've got a SKU.
[00:51:10]
David: And we've got like, a list of colors that this thing will be, but what we need to work through is with the
[00:51:43]
David: to work on with the copy team. And so if, if that could be done in Shopify in a way where it's not like anxiety inducing that now that this is a Shopify, it might be showing somewhere, how do we make sure to like, them all ready?
[00:51:58]
David: That's another big thing that PEMs do is like letting, you know, like, okay, There are of this set of products for the holiday season, 30 percent of them still need copy like that. That's some of the interesting stuff that pens can
[00:52:12]
Kalen Jordan: right. But as far as, uh, the pre-published stuff, like you could just set the product to a draft, uh, that's pretty simple. Or are you talking about. Pulling in updates to an existing published product where you need them in some, uh, preliminary state before you push them in.
[00:52:36]
David: guess it could be both. I mean, I, I guess, I guess draft help helps
[00:52:41]
David: that we have and I'm sure other companies have that's around like, um, what should the exit, what should the release date for this product be? And that's something that we had to build something
[00:53:04]
David: Um, but as soon as we get to the release day, the, the waitlist button should change to an add to bag button. Same with preorder. Like, if it's on preorder, what's
[00:53:14]
David: Uh, how much pre order quantity do we have that we want to
[00:53:17]
Kalen Jordan: Right. It's almost like there's this whole flow to the life cycle of a product. I like, I almost imagine this collect a collaborative, like, you know, there's like collaborative tools for like, I don't know, Figma files or like, Where in that pre like state, pre pubescent stage, when you're like, you're collaborating on copy and you want to see the percentages and maybe you will have an approval flow where they draft the copy and someone approves it and then pricing and then like, I can imagine like a whole collaboration.
[00:53:55]
Kalen Jordan: Flow. And then there's like the pre, and then it goes into a pre waitlist phase and then a pre order phase and then an actual order phase and then a sunset phase. And then, uh, yeah, that, that'd be, that'd be kind of cool.
[00:54:26]
Kalen Jordan: You're not going to, I mean, you, I mean, I got to pull up this bulk editor app cause I remember it being good, but you're not going to have like a really good bulk editor, like Google sheets within Polaris, you're just, you're just, it's just not going to happen.
[00:54:42]
Kalen Jordan: Like there's so much from like bulk copy paste to like, there's just so much you can do in a spreadsheet. And I mean, if it's, if it's nice and tightly integrated, then, then
[00:54:56]
David: Yeah. I mean, it has. We worked on it, like, you've got the spreadsheet and then you've got custom code that you can run on top of it with app
[00:55:05]
David: And that just does stuff for you.
[00:55:09]
David: the 1 of the things that we got on Twitter after our, our conversation about PIMS last time was like, um. just like this is something that PIMS just aren't good at and, um, maybe that's the case, but either way, you still have to just like someone has to build the, the step between the PIM data and getting it into Shopify.
[00:55:35]
David: And in our case, we just built it on top of the sheet. but if you've got like a PIM that also is missing that step. You're still just going to be building that step
[00:55:47]
David: the PEM data and Shopify. So why, why is the PEM even part of this
[00:55:54]
Kalen Jordan: Yeah. It's complicated, but I do think like it's interesting. You mentioned the native shelf, a native ERP, um, which by the way, that's a much bigger scope than PIMS. So, I mean, If, if, if they actually pull that off, I mean, but I do think there's going to be, you know, with the built for Shopify program and stuff, I think that there is going to be like Saguno, they, they talked at, um, at the Toronto event and they're, they're an email app, but they're native into Shopify.
[00:56:27]
Kalen Jordan: So they're like a collect Clavio native into Shopify. And I hadn't really been aware of them up until that point. And they were talking about like, they did a whole talk and actually the guy, I think is, uh, Chris, I think his name, he was ex Bronto. I think, I think I, if I'm not mixing my stories up, but I think I, we had kind of known each other a little bit from the Magento days and, and he was at Bronto.
[00:56:52]
Kalen Jordan: And anyways, his whole talk was on pushing data into Shopify, into Metafields and, and how at one point they pretty much rearchitected. The whole app and just like killed a ton of data in their own database and pushed it into, um, push, push it into Shopify native. And, um, yeah, so that he gave a whole talk on it.
[00:57:16]
Kalen Jordan: And when I, like I was seeing that and realizing and kind of thinking about this, this, this, um, like research, like I don't know if we're like resurgence or wave of like native apps, like fast forward a couple, three, three years, like I could see them getting acquired, you know, I could see them getting huge and that's email.
[00:57:36]
Kalen Jordan: And then you do the same thing for every other category, like, you know, um, for like these more complex types of apps that would typically be a standalone SAS, but like, you know, Shopify wants native apps and they're doing, I think doing a good job of pushing for it and incentivizing it. So, um,
[00:57:58]
David: Yeah, they definitely spend a lot of time making sure that the API is generally usable so that any app that is thought up of can exist. Um,
[00:58:14]
David: and then they just like, wait and see what happens.
[00:58:16]
Kalen Jordan: Yeah, dude. Yeah, right. Just wait. Um, dude, I, um, I, for this, uh, customer account section I was working on at first was planning for it to be a whole separate database and the current site that we're migrating has a whole separate database and they pull orders in from different places. And then, um, I actually, I went, wait a minute, we could just put all this in Shopify.
[00:58:41]
Kalen Jordan: And I went through and there were a couple of minor limitations. Like there's a, there's an order screen that lets you sort on a tracking number, for example, which you can't do. Um, but I'm pretty sure that's like not really an issue. And you know, there was a couple, as I looked into it, there was a couple really, really minor trade offs.
[00:59:00]
Kalen Jordan: But I was like, dude, we can kill this whole database. And, uh, so I hope, I hope it's going to work, but that was kind of cool.
[00:59:09]
David: So will you have to like import old orders in order for them to be
[00:59:16]
David: Just make sure you uncheck the, uh, Calculate Avalara taxes before you
[00:59:22]
Kalen Jordan: okay. That's actually, that's actually really good. That's a good heads up.
[00:59:31]
David: We're trying to get like all the way back to 2014 on our orders and trying to get everything into Shopify. And there's been things, but matrix five is, uh, is helping out
[00:59:42]
Kalen Jordan: Oh, nice. I had this one where I, where I was importing orders and in, uh, for Avalara, it's funny, they didn't tell me any of the requirements up front. It was just like, we're getting ready to launch and like, what about Clavio? What about Smile. io? What about Avalara? Like, I'm like, why didn't you tell me this three weeks ago?
[01:00:03]
Kalen Jordan: And, um, so, but it turns out if you leave the status as, I think, unpaid. Um, it doesn't, it goes into Avalara as like an unconfirmed and then it doesn't show up on taxes and stuff. I don't think that's the ideal way to do it because you probably want the status to reflect accurately, which is paid.
[01:00:31]
Kalen Jordan: yeah, it's a, it's a hack actually.
[01:00:34]
Kalen Jordan: But, um, that was, that was what we, and it shows yellow, you know, the yellow status in the orders dashboard. But, um, yeah, we got that.
[01:00:45]
David: It's not a simple exercise, so I can empathize with
[01:00:49]
Kalen Jordan: There's, it's, it's always so like with these bigger companies with multiple systems, like things get pretty complicated and it's hard to trace like things out. Like, you know, it's hard to figure out what the hell is doing, but yeah.
[01:01:06]
David: You got to just chip away at that stuff like that. That's kind of like we, we were there and. think Shopify is helping kind of eliminate some of those systems because the more, the more of those you have, like, there's going to be something that gets dropped between them and
[01:01:22]
David: having and the Shopify point of sale alone probably saved us like half of our time.
[01:01:32]
David: just like debugging what's going on with this, what's going on with,uh,the SuiteCommerce in store point of sale, how are we getting, like, how do we make sure the discounts work the same way in store as an online and like that, that has just been a huge unlock. And I've, uh, like, we kind of, we kind of are chasing that in more ways to try and keep things, not keep things, but. Uh, break things apart so that there's not so much of
[01:02:02]
David: And a lot of the time it's just like, yeah, let's just get that into Shopify.
[01:02:06]
Kalen Jordan: Dude, are you guys, um, doing any, um, point of sale extensions or apps or anything like that?
[01:02:15]
David: We use a couple apps. Um, I was thinking about one that would help with monogramming because we're using, um, infinite options to
[01:02:28]
David: with monogramming on, on the front end, it's like a, like a, it's a um, interaction and everything gets set as a cart line properties and all that
[01:02:49]
David: And so you just kind of have to set up, like, a series of checkboxes and fields for the store teams to make sure that they fill out the right
[01:02:59]
David: So I was thinking of making some sort of monogramming app, for point of sale, but in general, yeah, it's, it just kind of
[01:03:07]
Kalen Jordan: Is that native that you can add fields? Uh, what you were just talking about, you said where you can add fields for them to fill out?
[01:03:16]
David: Uh, no, it's from, uh, an app called infinite options.
[01:03:21]
Kalen Jordan: but you mean in point of sale? It ties in point of sale?
[01:03:32]
David: to, to like ask certain questions.
[01:03:34]
Kalen Jordan: But you're saying it doesn't go into the cart line items correctly in
[01:03:39]
David: It does. It's just like on so on on the front end, we can very clearly say, like, okay, this is a travel case set. Do you want to monogram 1 or both of the travel cases? Because you get 2 of them.
[01:03:53]
Kalen Jordan: When you say on the front end,
[01:03:55]
Kalen Jordan: when you say on the front end you're talking about the online store? Oh, okay.
[01:04:00]
David: so all that is like set up in metafields and the front end can can load in that stuff and present the customer with the right options. in in point of sale, like, in the way infinite options is set up is you can't have those conditions based on certain metafields. And so you just give all of the options and it's up to the associate to know, like, okay, here are the things that I need to make sure I
[01:04:38]
Kalen Jordan: uh, it's pretty good. It wasn't too bad. It was very, very simple. Um, it just adds a couple things to the, um, cart attributes. Uh, that show up, uh, grab some displays, some discounts in there, but I'm really interested in the point of sale space.
[01:04:55]
Kalen Jordan: Like I think it's like, I think the net, I think, I think the next Gil is going to be a point of sale. I actually think Jordan who worked for who Gil hired at checkout blocks and he's now, he has a point of sale app. I think he's going to be the next Gil with a point of sale app. But, yeah.
[01:05:15]
Kalen Jordan: um, well, he has, um, he has one app that I think does, uh, stock counting.
[01:05:21]
Kalen Jordan: I actually don't know. Yeah. I think it integrates in point of sale. It lets you do stock counting, but he just seems like he's really smart. I think he's going to figure something out whether it's this app or some other app or something like that. But I think that the point of sale space. It seems really interesting.
[01:05:38]
Kalen Jordan: Like, I think a lot of people are like, I've heard a couple agencies wanting to specialize in it and it seems like,
[01:05:46]
David: And their hardware is great. We, like, we had to buy a lot of hardware and over time they, they keep, uh, bringing in new stuff like the, the point of sale go was already cool with like the, the case that lets you scan stuff and then they added the, the dock. So now the point of sale go can just like go into the dock and it's,
[01:06:09]
David: them like. stuff or whatever, see the receipts
[01:06:13]
David: California, there's like, all these rules with weights and measures where you have to make sure that while you're ringing up the customer, the prices are shown to them.
[01:06:21]
David: so, like, they, they keep doing, like, they, they keep pushing that stuff forward. And it's, it's, uh. It's really nice for our stores store teams.
[01:06:31]
Kalen Jordan: that's cool. Yeah. It's, it seems like they're pushing it. Um, both from the hardware point of view and, you know, from the, um, integrations point of view, it's definitely rough. I mean, it's funny cause we talked about how in a lot of ways we're, we're, we got into Shopify development when a lot of things were really mature, but like the point of sale APIs are kind of wonky.
[01:06:51]
Kalen Jordan: Like it actually, I couldn't pull in metafields into, uh, I think I couldn't pull them in into the UI extension. Um, Which I was like, what? So then, I had to do a fetch out to a server to get to like, re compute some things that were already computed in Metafields. And um,
[01:07:19]
Kalen Jordan: Exactly. So it's like, it's pretty, uh, it's pretty rough around the edges. Uh, and I'm sure it's going to like, over the next, I mean, over the five years from now, it's going to mature. I think like, like crazy.
[01:07:35]
David: Yeah, I mean as I think about like five years from now who is gonna be competing with Shopify like at the same level of Maturity or like focus on the merchant. I don't know
[01:07:49]
Kalen Jordan: Yeah, I, I really don't. The only thing I, I come back to is if, if, is if there's a company that's really AI first AI native and that I don't even know what that looks like means exactly as an e comm platform, but I could see that disrupting. That's the only thing I could imagine somehow disrupting them.
[01:08:13]
Kalen Jordan: Other than that, dude, like, it's funny. My, my friend, he's like, he's like, dude, shop away, shop, finds a runaway train, man. And I keep, I keep thinking about that. Like it's, it's, um, it's actually, I don't know if you ever,
[01:08:34]
David: Like it's, there's just so many, like, I remember so many times just like being at a dead end. On, on older systems and, and it feels like there's always a way.
[01:08:47]
Kalen Jordan: Yeah. No, it's, it's, it's cool. I'm really like excited about the whole ecosystem too. And, um,
[01:08:56]
David: I feel like MetaFields came out this year, right?
[01:09:00]
Kalen Jordan: I don't even know when they, I feel like they originally
[01:09:04]
Kalen Jordan: came out sooner. I think they originally came out a little while back, didn't they? Yeah, dude. It's been like six years or something.
[01:09:22]
Kalen Jordan: But, um, yeah, like at first I was like, dude, I'm not going to be able to do iPhone development. Like, this is going to be a nightmare. They give you all the tools and they tell you how to hook into the Safari debuggers. You can see like console logs and stuff like that from that are, that are originating from the app.
[01:09:43]
Kalen Jordan: And, um, yeah, so I got, I like connect my phone up to the thing and then I'm like, I'm like, boom, boom, boom. I got my app going, it's syncing to the phone. And then I have a function that's syncing to like, The discount functions and I got my code syncing up to gadget. I got all this shit happening out of like
[01:10:02]
Kalen Jordan: directory, you know, that's doing it all.
[01:10:14]
Kalen Jordan: I'm kind of nervous about like when it goes live and like inevitably some bug comes up and It's gonna be like super urgent You know it'd be like the whole store is gonna be blocked because of something And then I'm gonna have to like and I'm gonna probably not be able to reproduce the issue in Production or something like that.
[01:10:36]
Kalen Jordan: I'm kind of terrified about that actually But but
[01:10:51]
Kalen Jordan: Did a little catch up, dude. Could get used to this.
[01:10:53]
David: How many, uh, how many items from your checklist did
[01:10:57]
Kalen Jordan: my God, dude. I have 23. I have 23 things on my to do list. Theme. I was going to ask you about theme workflows. I was going to ask about.
[01:11:12]
Kalen Jordan: Ugh, I was gonna add, okay, we got to the PIM thing. I have a pet peeve of the week. Skew searches in admin. I have an app of the week. I have a tool of the week. I have so many things, dude.
[01:11:25]
Kalen Jordan: We didn't, we didn't get anywhere near the full list.
[01:11:32]
Kalen Jordan: Yeah, I guess we'll have to do that. But we got through some of it.
[01:11:36]
David: I would love to talk through a theme. I feel like our theme is pretty solid.
[01:11:43]
Kalen Jordan: Yeah, I, I, like we, we talked about it before and I was like, cool, cool, cool. It makes sense. Makes sense. Okay. All pretty straightforward. And then as I get into the, my own theme workflows, they're inevitably like don't have any of that stuff. And I'm like, ah, I don't have the time to set all that up. And if I had, if I really had the muscle memory from it, I would just fire it up real easy, but I'm just like, ah, dude, I don't, I don't.
[01:12:12]
David: is painful to test through. Cause you just have to like, commit,
[01:12:18]
Kalen Jordan: I'm, cause I'm like, Oh, well he gave me the blueprint like from the get go. And I'm like, I haven't done any of that shit, dude. Like, none of it. Like, like, my theme workflow is garbage. Um, the main thing I, that I, it drives me crazy is that I used to do a theme poll. Anytime I wanted to merge stuff in, and I think it's cause I was doing it wrong, but I kept hearing people say that GitHub will sometimes randomly not sync certain files.
[01:12:56]
Kalen Jordan: The GitHub integration will just not sync files to GitHub. So if, if, you deploy a new branch, you could miss things. But then I realized I don't want to deploy a new branch. I want to just merge the branch into main and then everything's a lot simpler.
[01:13:59]
Kalen Jordan: Right. Because what I was doing is making a new theme or a new preview theme. Then tying that to a branch and then publishing that to cut over which is exactly the wrong way to do it.