Andrew from Bullet Train Stops By

February 10, 2021

Transcript

Sean
00:00:00 – 00:00:03
Okay. Alright. I've started recording.
Aaron
00:00:04 – 00:00:04
Okay.
Sean
00:00:05 – 00:00:06
So you and Colleen.
Aaron
00:00:07 – 00:00:36
Yeah. So I just got off with Colleen a little bit ago, and she's obviously the one doing our rails implementation. And it was good. I mean, there's just so much like I was saying, there's so much stuff there, in terms of how it all recursively calls itself, how it represents to the front end, and how it receives data from the back end that it's just it's a ton of stuff to, like, wrap your mind around. And it's kinda weird.
Aaron
00:00:38 – 00:01:10
I think one of the things that was tripping her up is it's kinda weird that when you configure your filter, not only are you configuring it, like, for the front end. So when you say, like, text condition, first name, like, that data gets sent out to the front end, but that also gets reused on the back end when the user's input comes back. And so it's, like, being used a couple of different places in a couple of different times in its life cycle, and I think that was the part that was really tripping her up.
Sean
00:01:11 – 00:01:30
It's strange. Well, yeah, I think it's almost like like, I have it divided up on the front end. Because I was looking at your code, and I was realizing a lot of my code kind of duplicates it Mhmm. In the, in the view, like, more like, sort of more comprehensive view open source thing Mhmm. That I'm doing.
Sean
00:01:30 – 00:01:40
It and the way I sort of broke it up was, like, I would think about it as I was thinking about it as, like, configuration versus, like, the blueprint
Aaron
00:01:40 – 00:01:41
Mhmm.
Sean
00:01:41 – 00:02:13
And trying to break the 2 up and have them live in 2 different worlds. And then and I always get confused because I'm thinking about, like I'm, like, doing all these things to loop through conditions with quotation marks, But then sometimes I'm looping through conditions that are an instance which are a part of the blueprint, and then sometimes I'm looping through conditions which are this the configuration to, like, set up the builder blueprint. And it's a mind bender with that name being the same, and it's kinda the same problem, I think.
Aaron
00:02:13 – 00:02:25
Yeah. Because at one point in the life cycle, the conditions are just representative of what's available for the end user to choose. They can choose first name. They can choose last name. They can
Sean
00:02:26 – 00:02:29
They can configuration. How to configure the query builder.
Aaron
00:02:29 – 00:03:11
And then at a later part in the life cycle, those conditions become the actual objects by which the data is applied to the query. And what's so great about using them for the same like, using the same thing for two purposes is there are all way like, you're never gonna run into any mismatches between your configuration and your application. And so if you don't send out clauses, you know that you shouldn't ever receive those back, and so you can do validation, and it's all encapsulated. But, yeah, it it's it's wonky for sure, but it makes it super powerful. Mhmm.
Sean
00:03:11 – 00:03:18
Yeah. Yeah. I I feel her pain. It took me I remember when we first started working on this. That was, like, the thing
Aaron
00:03:18 – 00:03:20
Oh my gosh. I remember that.
Sean
00:03:20 – 00:03:32
My big mental blocker. I was like, what? How does this how does wait. Conditions and then those are what now on the table? I I just couldn't, like, map anything any of the language.
Sean
00:03:32 – 00:03:34
Like, it all makes perfect sense to me now.
Aaron
00:03:34 – 00:03:43
And I remember some Saturdays, we would talk for, like, 2 or 3 hours, and I would just be like, I don't understand what you're saying, and you'd say, I don't understand what you're saying.
Sean
00:03:46 – 00:03:52
It really helped when you got the docs. And then I read the docs, and I was like, uh-oh. I Yeah. How this works.
Aaron
00:03:53 – 00:03:53
That's why
Sean
00:03:53 – 00:04:01
I ended up having so many different versions of the front end because it represented, like, my understanding of how the whole system worked.
Aaron
00:04:01 – 00:04:17
Right. I pointed her back to the docs today because I think I really do think it's helpful to see it from, like, the end developer's perspective of what they're doing that kind of, like, makes it a lot easier from our perspective of what we're allowing them to do.
Sean
00:04:17 – 00:04:26
Yeah. Yeah. Exactly. And I think I I should even, like, show her the front end and, like, what you can Yeah. I defined this in this condition.
Sean
00:04:26 – 00:04:31
I could even show I should do that, actually. Maybe I'll I'll ping her after this and see
Aaron
00:04:31 – 00:04:31
Yeah.
Aaron
00:04:31 – 00:04:32
If that
Sean
00:04:32 – 00:04:32
would help.
Aaron
00:04:32 – 00:04:43
Yeah. But I think she's got it. I mean, there were there were just some fundamental things that, I mean, I don't know how much she knows PHP. I don't know Rails at all. It's a totally new
Sean
00:04:43 – 00:04:46
PHP is idiosyncratic for sure.
Aaron
00:04:46 – 00:04:48
That's offensive to me.
Sean
00:04:48 – 00:04:51
And Ruby is idiosyncratic. Okay.
Aaron
00:04:51 – 00:05:05
That that I agree with. But, yeah, it's just it's just and then, of course, on top of both of those languages, we have 2 different frameworks. So it's like, well, okay. Is this a Ruby thing? Is this a Rails thing, a PHP thing, or a Laravel thing?
Sean
00:05:06 – 00:05:08
So Mhmm.
Aaron
00:05:08 – 00:05:13
Rather than try to do one thing at a time, I think we've decided to do 8 things at a time. So that's good.
Sean
00:05:13 – 00:05:15
Yeah. Perfect. That makes sense.
Aaron
00:05:16 – 00:05:42
Yeah. But I did I did get, I don't know if you saw on our channel. Oh, I showed you this privately. I got our docs set up with a new, a new code highlighter formatter, that actually uses Versus codes highlighter, so it's, like, correct. Because I was reading through the docs and noticing that lots of the code highlighting was just wrong because it was using a
Sean
00:05:42 – 00:05:43
a client side Good.
Aaron
00:05:44 – 00:06:10
JS thing. But now it looks great and is correct. And we pull in we pull in the docs now from each of the individual repos so the docs can live alongside the code, which is good. So we're not having to jump around back and forth between different repos to update docs for code and try to keep them in sync and all of that stuff. So I got that working this week.
Sean
00:06:10 – 00:06:11
Awesome.
Aaron
00:06:11 – 00:06:15
Yeah. I stayed up way too late one night trying to get it done, and I did it.
Sean
00:06:17 – 00:06:45
Oh, so I just finished up that that meeting with our client Yep. Which was everybody on the team, and it turns out the, I think we've mentioned it. It's like a skunkworks project. So they're like rebuilding the entire application that their entire pretty large company, exists on with nobody on the team knowing except for this small sum group of of people and mostly contractors. And I think it's, like, 50 people or something.
Sean
00:06:45 – 00:06:48
It's crazy. That is not a small team.
Aaron
00:06:49 – 00:06:53
We're a small team. You, me, and Colleen is a small team.
Sean
00:06:53 – 00:07:03
And, and I realized as they were going through people that they were gonna come to me and want me to, like, demo something. Oh, no. And I was like, oh, shit. So I got to go
Aaron
00:07:03 – 00:07:05
with the contract we have with your attorneys.
Sean
00:07:07 – 00:07:26
So I got the, the query the Laravel query builder. I had just broken it, so I've, like, had to go back to, like, a few several days ago. I kept I'm, like, keep going back in my Mhmm. Git get logs to find a point that's, like, kinda works. And it's broken still, but at at least, I'm like, I just wanna show them the developer tools in Chrome.
Sean
00:07:26 – 00:07:29
Like, well, this Perfect. It looks like it's working. It looks like it's working.
Aaron
00:07:30 – 00:07:32
So you were able to actually show him something?
Sean
00:07:32 – 00:07:46
So then so then the our main guy, our main contact there who's running the meeting gave me an out. He was like, I don't think that you guys you guys just started. You probably don't have anything to demo. Is that right? And I was like, bless you.
Sean
00:07:46 – 00:07:59
That's right. But in the meantime, I'm, like right now, I currently have, like, the stress stink, like, coming out of my armpits because I was stressed about it. Horrifying. I was like, oh my god. I have to demo something that doesn't exist.
Sean
00:07:59 – 00:08:09
Okay. But yeah. So, I mean, I I knew that he knew that, but I was like, I don't know. I gotta try and show something to everybody that were here. Like, let them know what we're doing.
Sean
00:08:10 – 00:08:19
And it's it was stressful trying to figure out, like, what I'm gonna do, but got out of that. So that's good. Yeah. Good. So the the the Vue query builder.
Sean
00:08:19 – 00:08:26
So here's what I wanna do. So I'm gonna keep working on it every day a little bit to keep it loaded up in my head.
Aaron
00:08:26 – 00:08:27
K.
Sean
00:08:28 – 00:08:52
But I'm good. Progress is gonna slow dramatically on that for the next like month or whatever, because we really need to get something to show for our client. So Agreed. So I'm gonna focus my time on that. Whatever's, you know, time I have around my day job.
Aaron
00:08:52 – 00:08:52
Right.
Sean
00:08:52 – 00:08:58
I'll do I'll I'll do that. And then and then we were just talking about
Aaron
00:08:58 – 00:09:01
Well, can I make can I make a request on that first?
Sean
00:09:01 – 00:09:02
Yes. Yes.
Aaron
00:09:02 – 00:09:17
I would like whatever time you do have to be spent on getting us integrated because I feel like that I would like Laravel and Vue to be talking to each other as soon as possible.
Sean
00:09:18 – 00:09:19
Well, I way, I can improve
Aaron
00:09:19 – 00:09:26
and you can improve, and we can do it together. Is that not doable at this point?
Sean
00:09:28 – 00:09:30
So we could do that one way
Aaron
00:09:30 – 00:09:31
Okay.
Sean
00:09:31 – 00:09:38
Where you could generate the clauses that I need in a static file, and then we're integrated in that direction.
Aaron
00:09:39 – 00:09:39
True.
Sean
00:09:40 – 00:10:14
And then integrating the other direction, I think it'll be limited because I have only implemented a certain subset of those And that's that's fine. Right. And then and then the builder as it is now is a little broken, but it but it could it should be able to load up from a set of conditions that you give it generated by the server so that and we could do it with the limited number of, clauses and stuff that we that I've already implemented. Hang on. Andrew's okay.
Sean
00:10:14 – 00:10:21
Andrew's gonna pop in. So, yeah, so we could totally do that. And, I
Aaron
00:10:21 – 00:10:23
just feel like a smart That means
Sean
00:10:23 – 00:10:28
that I have to work on the NPM packaging. Yes. So I'll just switch over to doing that.
Aaron
00:10:28 – 00:10:34
Yeah. I think that's where we should spend your effort on this part so that we can
Sean
00:10:35 – 00:10:48
I know it sucks? My only reluctance on well, first of all, I don't wanna do that, but I I have to, so I'm gonna do it. But then the other part is one of the other reasons why hey, Andrew. Hey. We're recording a we're recording a podcast.
Sean
00:10:48 – 00:10:48
So you're,
Aaron
00:10:49 – 00:10:51
you're in a podcast next week.
Sean
00:10:53 – 00:10:53
You know,
Aaron
00:10:53 – 00:11:02
it's so funny. I thought that that might be happening because I just discovered SquadCast yesterday, so I knew what I was getting into here. So I plugged in my real microphone for you guys.
Aaron
00:11:02 – 00:11:03
Oh, perfect. The best.
Sean
00:11:03 – 00:11:19
So so the rule is we're not saying our client's name at Of course. In any way. We are we do talk about our client, but not the not in any sort of revealing way. So yeah. So, anyway yeah.
Sean
00:11:19 – 00:11:28
So and just to finish up what we were saying. I don't want to stop working on the the API, like, altogether
Aaron
00:11:28 – 00:11:28
Mhmm.
Sean
00:11:28 – 00:11:39
Because one of the reasons this has taken so long is because I would, like, get a little bit of work and then get crushed at work at my other job, And then I'd have to reload the entire thing up into my head like what I was
Aaron
00:11:40 – 00:11:41
Totally get that. Yep.
Sean
00:11:41 – 00:11:47
Yeah. So I don't I wanna I gotta somehow keep it loaded up. Otherwise, the the context switch is gonna be ridiculous.
Aaron
00:11:48 – 00:12:14
Yeah. I I totally get that. I just think we need to get the 2 put together because that's gonna help define the rails side as well and, you know, whatever we end up choosing for the client front end. But that's gonna help that's gonna help define the whole glue in the middle. And until then, we're just kinda, like, operating on, you know, a a nudge and a wink.
Aaron
00:12:14 – 00:12:17
And it's like, yeah, it's gonna look this way. I'm sure. But we don't really know.
Sean
00:12:17 – 00:12:24
No. I agree. It's time. It's time to merge them. So, Andrew, speaking of that, let's talk about bullet train.
Aaron
00:12:27 – 00:12:28
What would you like to know?
Sean
00:12:30 – 00:12:44
So okay. We we we just got off that meeting, and everybody's demoing their stuff. And I saw that they have React in their in their pipeline. Yes. So but you do not in bullet train.
Sean
00:12:44 – 00:13:00
Right? No. Right. So what I was thinking was so I've been looking at the query builder, and that that's the part that I'm gonna implement, like, Hollien's doing the back end, and I'm gonna be implementing the, like, front end, like, actual builder part. And I was looking at doing that in hot wire.
Sean
00:13:00 – 00:13:28
It doesn't seem like a great fit for that paradigm. It's kinda weird because, like like, it seems like Hotwire is set up for, like, I make some changes in this field up here. And then down here, that change is reflected in the model, and then it refreshes this view down here. What I'm doing is I'm making some changes in this field up here, and the field itself is changing, which I don't know if they've solved all the problems that that would cause. You know?
Sean
00:13:28 – 00:13:52
Like, if if I'm if if the query builder itself is being generated from some query object on the server that gets updated every time I do something client side, is Is it gonna, like, blow away my focus? Is it gonna blow away the, like, whatever state that I had client side? Like, I think there's probably ways to figure it out, but it seems weird. It seems like a hard like, a not a good fit.
Aaron
00:13:55 – 00:14:17
So Yeah. I okay. So I'll I'll give you my my feeling about this, which is, not this is not my forte at all. Right? Like and I didn't have unrealistic expectations of what Hotwire would be able to do for people because, you were around for sprinkles.
Aaron
00:14:17 – 00:14:31
Like, that that was something that I lived with. It's the same paradigm. Right? It was like a it was my own proprietary precursor to Hotwire. And so I'm familiar with exactly, you know, some of the limitations and also ways that you can get around stuff like that.
Aaron
00:14:31 – 00:14:52
But, the in terms of a consulting project I think I've been through this enough times and have been burned enough times. And even on oh, shoot. My headphones just died. Oh, it's terrible. Sorry.
Aaron
00:14:52 – 00:15:40
I guess I'm gonna have to listen to you guys. This is gonna be this is gonna be brutal for your recording. But I'll I'll just say this and then I'll bounce or whatever. But, the the problem that I have run into on consulting projects is as a consultant, it is always about delivering value, and and sort of bringing in, making a reality whatever you know, a client's vision was when they hired you to solve a problem. And the problem with newfangled tools, I've run into this with Hotwire on this project where you're messing around with something new and it seems like it could be the thing, but then you end up running into all of the roadblocks.
Aaron
00:15:41 – 00:16:03
Like, all the unknowns Yep. Turn out to be dragons, at least a fair number of them. Right? And so, the the issue with that in a consulting context is it I feel like it ends up reflecting on you as a consultant because, like, here's the deal. We hire consultants.
Aaron
00:16:03 – 00:16:53
They produce awesome. They get paid, and then we rinse and repeat, and we keep doing that, basically until, like, the relationship is no longer generating sufficient value for what we're paying, whatever, or, like you know? But when that works, that cycle that, like, that, basically, like, chain reaction starts with getting onto the project and just doing real good right at the beginning. And so it's tricky. I feel like in your guys' situation, it's a little bit tricky because you wanna get in there, you wanna deliver a win, and you know you've got the goods, but there's this one little ask, there's this one criteria that's being put forward as a, like, can you do it this way?
Aaron
00:16:54 – 00:17:04
And that criteria represents a big unknown. Everybody would understand that. Right? Because it's a new technology. We've already had problems with it.
Aaron
00:17:04 – 00:17:39
Like, we've already run into rough things that are outstanding things that we still need to fix, that I need to fix. And so, that's that's what I see as being, the risk that you need to mitigate. And it sounds like, yeah. That that's really all I can say. I I I think I was always open to when we've talked about Hammerstone in the context of bullet train, I've always been okay bringing in Vue or React or whatever as a dependency for that thing.
Aaron
00:17:39 – 00:17:42
Even if it's only for that thing, I'm okay with that.
Sean
00:17:42 – 00:18:01
So, I have an idea for you about this. So the what we could do, we could still integrate in bullet train, just the back end part. So, like, all you get all the magic of, like, it's automatically added to super scaffolding. Boom. Well, it'll automatically generate all the basic conditions for each of the columns that you have on your models.
Sean
00:18:02 – 00:18:28
And then if you want to add a query builder to a view, then you NPM install in your project, you NPM install your Vue or React component, and then you just put in a one liner, and it should automatically be configured to work with, with bullet train. Like, because you'll be able to, like, generate the conditions and and plug them into the view that way. What do you think?
Aaron
00:18:28 – 00:18:51
And your hope is that you are gonna have an adapter on the front end for React, and you're gonna have one for Vue. Correct. And so people could use whichever one of those, you know, they might be using Vue for something else in their bullet train app. They might be using React for something else. So it would be make sense to go with 1 or the other, but inherit that dependency.
Aaron
00:18:51 – 00:19:03
I think that's a no brainer for this first time around. If you have a React, adapter on the front end, use that Because then it because what was that, Aaron?
Aaron
00:19:03 – 00:19:03
I said great. Let's do
Aaron
00:19:03 – 00:19:22
that. Yeah. Because then, if you do that, you mitigate the risk. You've got something that you know works, and there's still nothing stopping you from playing around with the Hotwire thing. But there's a little bit of timeline pressure in in the thing that we're working on.
Aaron
00:19:22 – 00:19:23
So, well no.
Sean
00:19:23 – 00:19:37
I so we don't have an existing React thing. I'd have to build it. However, it'll be easy because I've already built, like, a much more complicated Vue version, and I would just be building the straightforward, like, query builder version of the React thing, and it's it may be like a 2 day project.
Aaron
00:19:37 – 00:19:41
And you're a React developer, so that would be very easy for you.
Aaron
00:19:41 – 00:19:44
Yeah. And nobody's a hot wire developer. Nobody.
Sean
00:19:44 – 00:19:58
Yeah. Exactly. So I'm like, I feel like we could get some progress real fast if I just did a React component. Yeah. And then I could make it look like they're, you know, designers mock ups that we saw today, and everybody probably be feeling pretty happy about that.
Sean
00:19:58 – 00:20:17
I just have to check to make sure that doing it with a React component works with the way they're designing the places where they want to add the query builder. Seems like it would work. Right? Like, you just pull in that Rails gem that lets you generate a React component and just, they could pretty much put it wherever they want.
Aaron
00:20:19 – 00:20:37
Yeah. So I'll mention that. I I can bring it up, that we had that conversation, just so that it sort of preempted with what my thoughts are on it. And I I think that that'll make sense because we've already experienced a little bit of this pain with Hotwire. Right?
Aaron
00:20:38 – 00:21:13
And I think that in the long term, Hotwire is gonna be amazing, man. I I feel very confident of that because I've lived in that paradigm for a bit, and I I really think they have the goods, but it's early days. And so for for you both, I feel like that's just an unnecessary risk and a real risk to the project as well. So I I think I think it's smart, that you brought that up instead of feeling like, well, this is what we talked about and this is what we agreed to, so we have to make this happen. No.
Aaron
00:21:13 – 00:21:32
I think it's I think it's negotiable. The end result is we just really need that best of breed filtering experience with the ability to save those queries so that they can be reused and all of that stuff, that's that's that's the magic. Nobody cares. I don't think anybody cares what technology is implementing it.
Sean
00:21:32 – 00:21:50
No. I the reason I thought that there was gonna be value in doing the Hotwire thing was that I thought they was trying to get away from pulling in, you know, react and stuff like that as a dependency. But as soon as I saw the demos today, I'm like, oh, they definitely have react in there. It's like, they're specifically talking about it. So okay.
Sean
00:21:50 – 00:22:15
Wait. This is not as important. Like, if they already have React in as a dependency, then it kinda makes sense. The only place it wouldn't makes if if they have, you know, these different parts of their site where they want to use the query builder, I won't talk about it specifically because I don't wanna give any clues as to who they are, but, like, there's different parts of the site where they want to use the query builder. Some of them might be React already, which then it's easy to put it in.
Sean
00:22:15 – 00:22:33
And then, however, some of them might be mostly a standard like Rails view or maybe a Hotwire app, and then that's maybe harder to integrate, a React component in the middle of that. So that would be the one thing I gotta scope out real quick.
Aaron
00:22:33 – 00:22:41
Can you can you sprinkle React's components on the page as long as React is is active on the page like you can with Vue?
Sean
00:22:42 – 00:22:59
You it's not like Vue. It's different, but you can. Okay. And and I'd like, I have a Rails project now I'm on where we do that. But, if I'm not sure how the whole thing would interact with Hotwire if Hotwire is already running on the page.
Sean
00:22:59 – 00:23:29
I'll have to, like, test that out or something to to see see how that goes. And then also, they would need to have there's this, like, gem that you have to pull in, which lets you like, in a in a view in rails, you could put you put, like, render react component, and then you pass it in the data, which would be exactly what we want for our query builder. Right? Like, at this point in the page, render the query builder component and pass in this data that we just got from our controller Mhmm. Which is probably the conditions generated from the query that we saved in the database, and there's your query builder.
Sean
00:23:30 – 00:23:39
Which so that's probably that seems nice, but they just gotta make sure that it plays well with all the other technology choices they made, I think.
Aaron
00:23:39 – 00:24:00
That would be the one thing, it's just making sure that whatever your invocation method is, that it is something that plays well with Hotwire. Because even the original JavaScript stuff that I was doing, it was like straight up jQuery. Right? And and subscribing to Turbolinks kinda, you know, events or whatever in bullet train. All of that stuff broke with turbo.
Aaron
00:24:00 – 00:24:17
It just and in fact, actually, one thing that really broke was it's not inertia. What's that other project, Aaron, from the, Laravel space? What's the little JavaScript not React? Alpine. Alpine totally breaks.
Sean
00:24:17 – 00:24:18
It's like,
Aaron
00:24:19 – 00:24:59
we haven't figured out how to how to solve that one yet. So, the mechanism that I'm having everything switched over to in bullet train is stimulus, that whole react thing. And that I don't know how yeah. Even way outside the realm of my expertise. I actually hired somebody to deal with it, like, a real stimulus expert to port over all my old stuff to the new stuff so that it's compatible with Hotwire and I cannot imagine how that would work with React and Vue and all of that.
Aaron
00:24:59 – 00:25:20
So you've got you've got some stuff to think about there. The other thing you have to consider is that at some point the query builder and stuff is also being incorporated into aspects of the application that are full page React apps. Right? Like the
Aaron
00:25:21 – 00:25:24
I think that necessitates that it be a be a React component.
Sean
00:25:24 – 00:25:33
Yeah. And offline, maybe you could tell me what what parts of the app are like that that they wanna have the builder in because I'm not I'm actually not clear on that.
Aaron
00:25:33 – 00:25:38
Yeah. Interesting. Anyway yeah. So did you have anything else? That was it?
Aaron
00:25:38 – 00:25:39
That was your
Sean
00:25:39 – 00:25:45
Yeah. That was it. I just it occurred to me, like, maybe I should just do this thing and react. Cool.
Aaron
00:25:46 – 00:25:57
So Anything else you guys wanna talk about while I'm here? Anything else you wanna talk about while I'm here? Other otherwise, I'll bounce so you guys can keep doing your powwow.
Sean
00:25:57 – 00:25:58
Dude. Bounce. We're good.
Aaron
00:25:58 – 00:26:00
Thanks for stopping by.
Sean
00:26:00 – 00:26:01
Yeah. Thanks for doing that.
Aaron
00:26:01 – 00:26:09
Alright. Hammerstone forever. Go, team. You, Andrew. I can't figure out where the leave button is.
Aaron
00:26:09 – 00:26:12
How to leave. This is, like, Hotel, California.
Aaron
00:26:12 – 00:26:13
Close the tabs.
Aaron
00:26:13 – 00:26:13
We don't
Sean
00:26:13 – 00:26:21
Close the tabs. Edit either. Okay. Alright. So we're recording again.
Aaron
00:26:22 – 00:26:25
So I think React is the way to go. Right?
Sean
00:26:26 – 00:26:57
Feels like it. So I just need to I'll probably just fork their repo, do a real quick spike on this, build one out, and put it in where they're eventually gonna wanna put it in and see if it works. And that's where I just need to figure out where do you wanna use this thing. So shit. And our main guy is going on vacation for 2 weeks, which is he's like the one, like, central coordinator of every of all the things.
Sean
00:26:57 – 00:27:15
Yeah. I might just have to, like, DM at all the different little individual project owners. That is one thing that's interesting about this project is they have, it's very distributed. Mhmm. So it'll be interesting to see if things get pulled together at at some point.
Sean
00:27:16 – 00:27:24
The project manager was having a little bit of a panic attack about you know, like, there's 37 working days between now and the end of March.
Aaron
00:27:24 – 00:27:28
Holy crap. Oh my gosh.
Sean
00:27:28 – 00:27:54
But their goal is is not to be done by the end of March. Their goal is to be able to show internally only the project as it is. So, like, let people know it exists. And then they only wanna pull the trigger on that phase when they feel like all of us are comfortable saying, yeah. By this summer, this will be done done, and we can launch, like, a 1000 customers or something.
Sean
00:27:54 – 00:28:00
Yeah. So so the timeline is not that stressful, but, I mean, it's a lot of work.
Aaron
00:28:00 – 00:28:01
It's a lot of work.
Sean
00:28:01 – 00:28:05
Hey, Andrew. I I had to just close the window. Hope that didn't break anything.
Aaron
00:28:05 – 00:28:05
Yeah.
Aaron
00:28:05 – 00:28:12
Turns out it did, but I will figure it out. Yeah. Thanks, squad kids.
Sean
00:28:13 – 00:28:38
Alright. So that's basically everything that I have right now. I feel good. I think I'm just gonna go I think I'm gonna save I'm gonna I'm gonna start working on our client stuff tomorrow, and then today finish off where I left off with our view component. And then I'll start working on the MPM stuff, like, a little bit each morning.
Sean
00:28:38 – 00:28:41
Yeah. That would be great. Week, I think.
Aaron
00:28:42 – 00:28:48
Yeah. If we could if we could yarn ad by next week, by next Friday, that would be amazing.
Sean
00:28:49 – 00:28:50
Yeah. Hopefully.
Aaron
00:28:52 – 00:29:06
We just we just, yeah, we just gotta get it set up once, and then we're good. And I'm I guarantee you there are numerous tutorials about how to link GitHub to NPM so it's all done automatically.
Sean
00:29:08 – 00:29:13
That would be nice. Yeah. I I don't know. Even Adam Wathan was struggling with this Yeah. Just like the last year.
Sean
00:29:13 – 00:29:14
And then when I was
Aaron
00:29:14 – 00:29:16
Which is bad news if he's struggling with it.
Sean
00:29:16 – 00:29:31
Doing this for for us. I already did it once, right, for, like, version 2. Mhmm. And that was not obvious at all even with the 3rd party tool I pulled in. So Yeah.
Sean
00:29:32 – 00:29:33
But, anyway Yeah.
Aaron
00:29:33 – 00:29:33
It sucks.
Sean
00:29:33 – 00:29:34
Fresh eyes to it.
Aaron
00:29:34 – 00:29:36
It sucks, but we gotta we gotta do it.
Sean
00:29:39 – 00:29:43
Yeah. So I'll start peeling that off this week. Start making some progress on that.
Aaron
00:29:43 – 00:30:09
K. So what's the circling back to Laravel? Do we still have a plan to launch that at some point before the just the Laravel Vue? Like, if you're pushing if you're pushing Vue to the back burner, are we holding off on launching Laravel Vue for a long time, or what are your thoughts on that at the moment?
Sean
00:30:09 – 00:30:46
Well, just reality is that I I'm not gonna make much progress on that for a little bit here while we're doing this client project. And then so that just, you know so then the it's not like we have a deadline No. For doing the launch, so I don't wanna stress about that. But the I think the best thing for us to do, I think, would be to have a beta launch. So I'll start like, it's getting to the point now where there's stuff to show, and I'm gonna start tweeting about that and, like, text my list and, you know, I mean, email my list and stuff like that, and just get a little bit of interest in making sure people know we're gonna be doing a beta soon.
Sean
00:30:47 – 00:31:13
And so then we can we're close ish. Right? Like, in the next 2 to 3 months, there will be a version of this that works that we could launch as, like, a beta, which, you know, we could sell at, like, half price or something, get a few people in the door on that, work out the kinks, and then, you know, maybe we have to press pause because you have your baby event that happens, and
Aaron
00:31:13 – 00:31:14
then
Sean
00:31:14 – 00:31:28
we have to slow down on that. But then we can just, like, you know I don't know. Like, if it starts to we just gotta take it one step at a time and see where it goes, and I'm not really gonna worry about when it happens. It's just as fast as we can go. You know?
Sean
00:31:28 – 00:31:29
That's how I feel.
Aaron
00:31:30 – 00:31:39
Yeah. I mean, I guess that's all we can do. Just wanna have something out there, but I don't know if we can at this point.
Sean
00:31:41 – 00:32:03
Well, not not in, like, 2 weeks or anything. No. If I had, like, 2 weeks off from work and I was just doing this, I'd down on this, sure, but not really. I don't know. I get, like maybe I get, like, 2 workdays per week on this.
Sean
00:32:03 – 00:32:08
Would that and it's all, like, mostly spread out except for Fridays. So that's just how it goes.
Aaron
00:32:09 – 00:32:21
Yeah. I think the original plan was to try to get the Laravel stuff out before, and I think that's just changed. I think the client has taken has taken precedence and
Sean
00:32:22 – 00:32:26
Oh, yeah. And I just didn't get it done by then. Like, I got close, but
Aaron
00:32:26 – 00:32:29
it's like Client's obviously priority now.
Sean
00:32:29 – 00:32:46
There's, like, a threshold we have to get over before it's useful to anybody, and we're, like, super close. And then past that, there's still loads of work to do, but, like, it's pointless until we get past that one line of, functionality. It's real close.
Aaron
00:32:47 – 00:32:52
That's what's so frustrating because it feels like it's so close, but it's still so far away.
Sean
00:32:53 – 00:33:07
Yeah. Yeah. But, yeah, I'll get it we'll get it integrated. And then if you could just, you know, give me that list of clauses so I could start working on that. And then the builder's almost, you know, working correctly now.
Sean
00:33:08 – 00:33:31
So and the other thing is, like right. Okay. So the builder. Again, the I'm trying to make it in such a way that you could build another builder with a different view on top of it. So it's like I mean, I'm not I'm, like, just doing that with that end in mind, which then and and also, like, I'm trying to make a, like, the API is a little kludgy now.
Sean
00:33:31 – 00:33:45
And if I was a developer trying to use this, it would be incredibly frustrating. So I'm trying to remove enough kludge that we could do a beta and that it's okay. Right? Like, here here it is. And, like, also for the beta, it could just be query builder.
Sean
00:33:45 – 00:33:46
Just needs to work. That's what I'm thinking.
Aaron
00:33:46 – 00:33:47
Absolutely.
Sean
00:33:48 – 00:33:58
It's query builder just so it's it's basically like a drop in one line. You have 2 properties that you fill in on this component, and that's it. And then it and then it goes.
Aaron
00:33:58 – 00:34:05
Yeah. I mean, I just I still think 90% of the people are just gonna wanna drop in the builder. So, obviously, that would be
Sean
00:34:06 – 00:34:20
Yeah. So to get there, I do really need those clauses from you because that's the main stuff that needs to be finished and ores, which, like I said, I think I need to sit down with you and wrap my head around how that works. So I haven't thought about SQL like that in a long time.
Aaron
00:34:20 – 00:34:33
Yeah. Yeah. It's pretty easy from the front end, so I can I can walk you through that once we get off here? Okay. And I can I mean, I can give you I can give you all the clauses?
Aaron
00:34:33 – 00:34:35
They're all they're all in the repo.
Sean
00:34:37 – 00:34:41
I just need that file generated by you. I'll show you what form what the format is.
Aaron
00:34:41 – 00:34:42
Can
Sean
00:34:42 – 00:34:42
you do that?
Aaron
00:34:44 – 00:35:04
Yeah. We can do that. I wanted I wanted to wait on that until we're integrated because I the only thing that I really care about right now is getting integrated because then both of them will get better. And then it's not like then it's not passing files back and forth. It's like actually using the real thing, if that makes
Sean
00:35:04 – 00:35:15
sense. Do that do that to do whenever you want to. I'm not gonna work on it until I get the, the package done so that you can yarn install it.
Aaron
00:35:17 – 00:35:19
Okay. I didn't saw that. Say that again.
Sean
00:35:19 – 00:35:40
I'm just saying you could do that whenever you want, but once I get the package done, butchers my main priority. Once once I get it, I'll package it up and distributed then, at that point, I'll be working with that stuff. So I could also do the ores first. You know, I could work on that. So I I have time before you need to do that.
Sean
00:35:40 – 00:35:40
But Okay.
Aaron
00:35:41 – 00:35:41
If you if you did
Sean
00:35:41 – 00:35:44
it now before I did those things, it's not gonna, like
Aaron
00:35:44 – 00:36:04
Yeah. I guess what I'm saying is I don't think the reason I was pushing on integration is I don't think I need to give you that file because if we're if it's integrated, then you have access to, like, the real thing. And so you can do it for real instead of working off of some static file that I generate. No.
Sean
00:36:04 – 00:36:04
I need that.
Aaron
00:36:05 – 00:36:06
Thinking about that wrong?
Sean
00:36:06 – 00:36:11
Yeah. Hey. Let's take it off let's take it offline. Let's wrap up our podcast here, and then I'll explain it to you because it's all technical.
Aaron
00:36:11 – 00:36:12
Hi, everyone.
Me

Thanks for reading! My name is Aaron and I write, make videos, and generally try really hard.

If you ever have any questions or want to chat, I'm always on Twitter.

You can find me on YouTube on my personal channel or the Try Hard Studios channel.

If you love podcasts, I got you covered. You can listen to me on Mostly Technical.