Episode

Hammerstone · Nov 30, 2021

React, Vue, Laravel, Rails, and Hotwire. Oh my!

React, Vue, Laravel, Rails, and Hotwire. Oh my!
Show notes

<div>Back from Thanksgiving, we talk about finding an amazing React contractor, integrating the Vue and Laravel libraries, and more.&nbsp;</div>

Transcript
00:00

Colleen

321, go.

00:01

Aaron

321, go. My voice is a little different because I'm sick, so I may be muting and dropping out to cough, but we're back post Thanksgiving. Everyone made it back home. So we got a lot to cover. Where should where should we start?

00:15

Colleen, you're excited, so maybe we start with you.

00:17

Colleen

You just cut out. I didn't hear you.

00:22

Aaron

Oh, no. Did you hear anything I said?

00:24

Sean

You went, Colleen, can

00:26

Aaron

you oh. I said, Colleen, you're excited. So maybe we start with you.

00:30

Colleen

Well, I'm excited because I wanna hear what you 2 have been working on the integration side.

00:36

Aaron

Okay. So maybe we start with us.

00:37

Colleen

So maybe we start with you.

00:40

Aaron

Well, we last night, did a little bit of pairing and got the VUE and Laravel libraries working together.

00:51

Sean

Yeah. So Like without without it being packaged up is

00:54

Colleen

Yeah. Right.

00:55

Aaron

Like

00:55

Sean

we needed to figure out a way that we could actually iterate on the front end and the back end together, without having to go through a whole, like, build step.

01:05

Colleen

Right.

01:06

Aaron

Yeah. Because we don't wanna have to, like, make a release for every minor change while we're still developing. So Sure. What we did was I started a new, just like a vanilla Laravel app in a new, just blank repo. And then symlinked the, PHP package and symlinked, the NPM package, just the Vue library, and then got them both working together in kinda in app land.

01:35

And it works. It drives the front end from the back end, and we already found a couple of spots where things have drifted, and they'll be easy to fix or just things that we talked about a long time ago that I didn't I didn't implement. But, yeah, it totally works. There are, like, 8 different gotchas on getting the NPM stuff set up, and it was really frustrating. But we finally, you know, we finally figured out all the the secret spells, and we got it to work.

02:05

And I think that that'll be that'll be helpful for when it's time to build a package. I mean, some of that stuff some of that stuff is applicable to packaging it up and some of it's not, but I think we we got it. So now I can iterate I can iterate pretty quickly because I have the app, set up on my local machine, and so I can make all the changes I need. And if anything needs to be changed on the Vue side, I can either Sean and I can pair, or he can get it set up on his machine. But, yeah, it was kinda it's kind of exciting to be like

02:42

Colleen

Super exciting.

02:43

Aaron

Man, this thing just works together.

02:46

Colleen

That's awesome. It's great news.

02:48

Aaron

It is great news.

02:53

Sean

Oh, Aaron, you're muted. She's coughing.

02:56

Colleen

It's like a painful cough.

02:58

Aaron

Yeah. It is a painful cough. I'm dying. Sorry.

03:00

Sean

It's not COVID.

03:02

Aaron

Yeah. It's not. I got tested.

03:04

Colleen

That's good.

03:05

Sean

Because I don't know, like, everybody's gonna think that, oh, you're sick. Is it COVID?

03:08

Colleen

Yeah. Oh, yeah. I joke with my kids. I mean, they're not sick. They're perfectly healthy.

03:14

But I'm like, you are not allowed to cough at school. You think you have to cough you, swallow it. Like, do not do it.

03:19

Aaron

Yeah. I know. Yeah. There is there is only COVID now. There's no there's no sinus infections.

03:24

There's no head colds. There's only COVID.

03:27

Colleen

I know. So what's so that's amazing. Congratulations.

03:33

Aaron

Yeah. Thanks.

03:35

Colleen

So what's the next step? You said there's a few things you have to clean up and then

03:39

Aaron

Yeah. So there are a few, just integration points that we knew, you know, we knew there were gonna be a couple.

03:46

Colleen

Yeah.

03:47

Aaron

So there are a few of them that I need to clean up on my side. And then once we do that, I will have to run through every condition and kinda every every clause and every condition. You know, so date equals date does not equal all that stuff. Run through every single one and make sure that it works as expected. And then there I mean, there's there's a ton to do in terms of, like, what do we need to do before someone starts using it.

04:23

Nothing. Like

04:24

Sean

Yeah.

04:25

Aaron

We can like, at some point I wanna talk about this later. But at some point, we can write an integration repo that does automated tests and stuff, and that'll be really cool and really fun. We don't need that right now. So the next steps are I I clean up my side. Sean figures out, proper packaging so it can be NPM installed.

04:47

And, like, literally 2 weeks from now, and one of those weeks, Sean's out of town. So 2 weeks from now, we start onboarding our first users.

05:00

Colleen

Wow.

05:00

Sean

That's amazing. The package thing I mean, we already are building a package. It's just the package is including a dependency that it shouldn't. So it's bigger than it needs to be. I mean, so it'd work if we'd we could even ship it with that.

05:15

It'd it'd just be dumb. But I've you know, for whatever reason you think you just like, hey, say exclude this package from this dependency from your package and that should just work, but it it doesn't. So I've had to sort of, like, one one dependency at a time figure out how I actually get to remove it from the end package. But yeah. So, like, the packaging thing is it's basically it we have a package.

05:40

It's just not optimized.

05:44

Colleen

Nice. Well, this is all great news. So Yeah.

05:47

Aaron

We're there. This is it.

05:49

Colleen

Have you picked of the list of interested parties, the first couple you wanna onboard?

05:54

Aaron

Yeah. The first one is gonna be a guy named Neil. Hi, Neil. And he's just the first one because he's shown interest for a super long time. He's consistently been like, really supportive and been like, Hey, I'll buy it right now and help you finish it.

06:12

It's like, woah. We can't do that right now. But, yeah, he's he's the one that'll be first. And then there are a couple others who have been in Twitter DMs. And then from the tweet the other day that I put out, we have, like, a 130 people on the early access list.

06:33

And so we'll go through I mean, we'll we'll probably just start with 1 or 2.

06:39

Colleen

Right.

06:40

Aaron

And then after that, so sometime in the new year, we'll go through and pick out people that are on Laravel and Vue version 2, and just start saying, hey, do you wanna do do you wanna try to drive this thing out? And then from there, it'll kinda spread out a little bit further. But the first one is a guy named Neil and then maybe a couple others in the DMs. Awesome.

07:05

Colleen

That's great news.

07:06

Aaron

Here.

07:06

Colleen

It's amazing.

07:07

Aaron

Yeah. I know. It's

07:09

Sean

crazy. Yeah. And then we probably have our first, potentially our first react customer as well.

07:17

Aaron

For a library that we don't have. Right? So before we've sold hardly anything, we've got rails and Laravel and YouTube and hot wire and react. Yeah. So kinda great.

07:37

Sean

Yeah. It's a fully fleshed out product. It's amazing. I cannot wait to start getting together the marketing materials and yeah. It's it's pretty amazing.

07:46

Aaron

Yeah. So moving over to React, Sean, do you wanna tell Colleen about this call we had?

07:53

Sean

Yeah. Although so, Aaron, is his name Dave? Dave? I'm so sorry if it is. Okay.

07:58

Awesome.

07:59

Aaron

Dave Calcio. I

08:00

Sean

know also Dave listens to our podcast. He was like, this is weird. I just, like, binge listened to all of your podcasts, and now we're talking. We just talked with him on a video call. And he's, like, now we're talking.

08:10

I feel like I'm, like, in the podcast now. Yeah. So so Dave has a use case at his job at his day job for the query builder, which, you know, it's exactly like what we imagined and makes perfect sense. And so it's he's, like, making the build versus by choice, and he's like, oh, this is he looked at our refine. He's like, oh, this is it.

08:36

I would let's do this. But then realized we didn't have a React front end. So he was like, should I try to get because they don't have Vue on their front end. So he was like, should I try and, like, jam Vue into our, you know, admin panel or which or maybe I could just, like, write it myself. And so he started looking at it, and he just started banging out the React version from reading my code and from listening to the podcast and from reading our docs.

08:57

He was able to figure out, like, how to start, like, building it. And I mean, look, and he's already I mean, he's already made really good headway into doing a React version of the builder. Right? So none of the static stuff, which is totally fine. So yeah, he's already started down that path.

09:15

And then he was like, hey, maybe you guys wanna just pay me to finish this thing? And we're like, yeah.

09:21

Aaron

Yes. Absolutely. We do.

09:24

Sean

Definitely. So yeah. So we got a budget set aside for that, and we've got that squared away. Yeah. I mean, he's ready to he's ready to roll, and he's already working on it.

09:35

I think he's super busy. So anticipate that'll be, like, you know, spread out over some months or whatever. But it's not like we do not need that imminently. And this is pretty great because, like, he can also if they end up buying it because he has to convince his boss to buy it. But assuming that happens, then, he'll actually be using it at his job and integrating it at his job so then he can get that all set up and fix everything so that it's working there.

10:02

Yeah. It's it's awesome.

10:05

Colleen

Nice. He's so he's using Laravel in React?

10:08

Aaron

Yeah. He is. Okay.

10:10

Sean

Yeah. Well, I mean, this is so cool. Like, you could just we could just mix and match, you know, whatever.

10:15

Colleen

It's amazing.

10:17

Sean

Because you could use the view version with rails. Like, I really wanna just do that just to, like, you know, proof of concept because I I am good.

10:27

Colleen

Yeah. Well, I can when I pull out, our stuff for that our now second, I guess, rails client, you can do it in that repo. Could just branch off of that repo so you're not messing with our first client stuff.

10:39

Sean

Yeah. Yeah. Yeah.

10:39

Colleen

Follow that? Yes.

10:40

Aaron

Yeah. It's gonna get confusing.

10:42

Colleen

What are we talking about? Yeah. So once I pull that out, you can just you can just branch off of there and do it. So that'd be cool. It'd be really neat to see.

10:50

Sean

Yeah. Yeah. So we also there's like some small stuff that we got to we got to get a Slack set up for our company. We're going to need that. Slack or Discord, actually.

10:59

Colleen

Slack, please. I hate Discord.

11:02

Aaron

I don't like it

11:03

Sean

either. Yeah.

11:04

Aaron

I feel the same way. I know. I don't know how old Dave is, but he was like, some of these other dev communities use Discord. And in my head, I was thinking, oh, no. I'm an old I'm an old person now.

11:22

And he he to his credit, he was like, yeah. I actually like Slack. But I was thinking, man, am I am I 1000 years old now? But, yeah, we need to get one set up so we can hang out, the 3 of us and Dave, and then any, you know, future customers that

11:40

Colleen

wanna pop up

11:41

Aaron

and help each other out, that kind of thing.

11:43

Colleen

Yeah. I think that's a good idea.

11:45

Sean

And then Dave had this other awesome idea of combining back end and front end into one mono repo, he called it.

11:54

Colleen

Okay.

11:55

Sean

I think because I'll explain. The idea is basically, like, we got React front end, we got a Vue front end, put them all in one repository. And even the back ends too. Except our problem is we're gonna open source the the front ends. So we can't just have one big repo.

12:10

Instead, we'll probably have 2. So we'll have the front end repo, which will have all the versions, and then back end repo, which will have rails and Laravel and whatever else. That way, on the front end, it makes a lot of sense. I don't know how much sense it makes on the back end, but on the front end, it makes a ton of sense because it's just so much easier to wrap my head around. When I'm making changes to 1, I'll probably wanna make changes to the other, And then I can just do one PR Mhmm.

12:44

For that. Right? So it'll be all sort of consolidated. There's probably opportunities. Like, he's gonna use TypeScript, and so say we ups upgrade the Vue and to to use TypeScript.

12:56

Well, there's a possibility of sharing types, and then it's just a lot easier. This is all possible with multiple repositories, but, like, way easier just logistically to figure out.

13:06

Aaron

Coordination costs go way up across multiple repositories.

13:11

Sean

Yeah. Yeah. And I just he he said that idea, and I was like, oh, it's an awesome idea because we could spend less time, like, figuring out like, what Aaron and I just did. You know, if we'd had everything in one repository, which well, like I said, we're not gonna be able to do that. But if we had, this would have been, you know, not a problem.

13:28

It would have been trivial for us to get that set up. So I'm gonna I'm gonna do that for the front end for sure, and you guys can think about it on the back end.

13:37

Aaron

Yeah. I think it would be great. Yeah. Dave, Dave strikes me as imminently reasonable. He seems like one of us.

13:46

He's like, I could aim for a 100% test coverage, but I'm just not gonna do that. I'm gonna just test to make sure that I can make changes in the future without fear. Like, great. That sounds awesome. Nice.

14:01

Yeah. Yeah. Huge, huge, huge win. Super

14:05

Colleen

Yeah. That's great.

14:06

Aaron

Super grateful. He reached out, And he was like, you know, I could have reached out and just been like, hey, what if I do this? But I decided, well, I'm gonna see how far I can get and then reach out with, like, the stuff of the stuff I've already done is kinda like proof of expertise. It's like, well, it worked, man.

14:27

Colleen

Right. That makes total sense because you guys were able to review it. Like, oh, yeah. This is exactly what we need. Yeah.

14:32

Sean

Yeah.

14:34

Aaron

And he said something interesting about their current, the current the way that he's currently solve this problem at work is a bunch of people have read only access to the database, and they just have to learn SQL. That's

14:49

Colleen

Yeah. Really? Yeah. Wow.

14:52

Aaron

Yeah. Wow. I know. And he was like, and we've gone so far down this road that, like, we can't just give them, like, a a very fixed plain query builder because they've had, you know, this infinite flexibility for so long that we would be taking away.

15:12

Colleen

Right. That makes sense.

15:13

Aaron

Yeah. So I thought that was really interesting that, you know, it's like, yeah, we just let them you know, we forced them to learn SQL. It's like, good grief.

15:23

Colleen

What's their timeline? Or do they not you said he you he was pretty busy, so you weren't sure?

15:29

Aaron

Yeah. I think he, I think he has been like, he's known for a while he's gonna have to build this. I don't think he's on a super strict timeline. The really like Sean said, the really good thing about this setup is he's he needs it for work, and so, like, he's incentivized to to push the React version forward, so that he can solve his own problem at work.

15:57

Colleen

So did you already sell him the back end? Does he already have possession of that or not yet?

16:02

Aaron

No. So he will have to go to his decision maker

16:05

Colleen

Got it.

16:06

Aaron

And pitch it. And I told him, like, hey. When you do that, keep keep mental notes about, like, how the conversation goes, and what did they say, and what did you say, and was there any pushback? And because that kind of insider info is gonna be super helpful for us.

16:22

Colleen

Definitely.

16:24

Aaron

Especially, you know, we don't have any marketing materials basically at all right now. So, like, what does that conversation look like in in the void before we have a bunch of stuff?

16:36

Sean

Yeah. Same thing with you and and and client 2.

16:39

Colleen

Yes. Yes. I'm really excited to talk to them.

16:43

Sean

They're literally making that evaluation.

16:46

Aaron

Mhmm. Yep. Wait. Is client 2 client 2 is Jesse. Right?

16:53

Colleen

Yes.

16:54

Aaron

Okay. We've talked about we've said his name on air, and everything happened publicly on Twitter. So we're Oh. There.

17:02

Colleen

Okay. Yeah. Yeah. So Jesse is client too. Yes.

17:05

Aaron

Okay. Yeah. So, Colleen, do you wanna kind of give a quick recap on that conversation we had with him the other night?

17:15

Colleen

Yeah. So we had a great call with him where he showed us some of the way they're trying to use query building and kinda told us they're basically in this situation where they're moving to a new database because they're having scaling problems. And so they're just trying to do all the things. Right? They wanna figure out what they're gonna use as a database, how they're gonna use it, and how they're gonna query it.

17:42

And they're they wanna move fast. Like like, I got that impression that they wanna move quickly. Mhmm. So they don't wanna wait for me to finish it. They actually asked.

17:51

They said, hey, can we just have what you have now and see if we can build upon that? So that's what we're gonna do. We're gonna pull that out.

18:01

Sean

Telling you, what they should do is have 2 separate databases.

18:05

Aaron

One Postgres and one MySQL.

18:07

Colleen

So it was interesting when we got off that call because Aaron and I debriefed a little bit. And one of the things, I guess, I didn't really realize going into this, building this product, is that we are gonna need to be database experts. And I think that will also include knowing, although I don't think it's obviously not our job to recommend database providers. It would be incredibly helpful if we had working knowledge of what is available and what the limitations are of the available third party solutions because there were a lot of questions like, hey. I don't do you remember how much data it was, Aaron?

18:45

Aaron

Yeah. I think they were at a terabyte and were considering moving off of Heroku because they were reaching postgres limitations on Heroku at a terabyte.

18:57

Colleen

So and fortunately, Aaron had you know, has a lot of that knowledge about different database providers, but I also think I need to get that knowledge because there were a lot of questions about what's out there. What can we use? Do you have any recommendations? And so I just think having a better this is more of a personal thing, like, just being more aware of ways to handle big data. And we're learning a lot with client 1, obviously.

19:20

It's gonna help as we kind of do this productized consulting as it first rolls out as we start onboarding soft onboarding these people.

19:28

Sean

Content marketing.

19:30

Colleen

Yeah. Exactly. Absolutely. Great content marketing. Call.

19:34

Yeah. Absolutely.

19:35

Sean

I mean, if this really if you guys are learning it now Yeah. It always equals better content if you're Yeah. Doing it while you're learning.

19:42

Aaron

Yeah. Because there were questions like, okay. Well, what if we use PlanetScale versus single store? I was like, oh, man. And fortunately, I have had, demos with SingleStore, and I've, self onboarded at PlanetScale.

19:58

So I knew enough to, like, speak intelligently about it. But, yeah, there's and okay. So first, there's a lot. Like, there's a lot of hosted stuff there and a lot of, trade offs with each of them. But I also wonder how representative these two Rails clients are to, like, what our future will hold.

20:25

Do you know what I mean? Like, are these we're talking about 2 clients that have multiple billions of records. I just don't think that's normal. Like, I don't think that that is the meaty part of the curve. I feel like those they have to be outliers.

20:42

Right?

20:43

Sean

That's where the productized consulting comes in, though. Yeah. I mean, there's a consulting side of this business if we want it.

20:50

Aaron

Yes. For sure. As we've already discovered. Yeah.

20:54

Sean

Yeah.

20:54

Aaron

But then, like, that DM that I screenshotted y'all the other day where this guy is like, hey. We've got 10,000 different products, and our marketing team is having a hard time, you know, building filters for them. I feel like that is the middle like, that's the middle of the curve. That's where most people live. Like, under a 1000000 records across, you know, 10 different columns or, you know, 5 relationships or whatever.

21:21

Colleen

In the same database.

21:24

Aaron

Yeah. In the same little bitty database that's, like, 2 gigabytes.

21:28

Colleen

Yeah. Yes. And those are the

21:31

Aaron

we're exploring the edges before we ever even get to the middle of the pie.

21:36

Colleen

I know. And I think and those clients will presumably not need a lot of onboarding handholding, whereas you're absolutely right. The 2 that we're working with now, I mean, that's definitely productized.

21:50

Aaron

3. Keith concluded.

21:51

Colleen

Keith. Yeah. That's all productized.

21:52

Aaron

Same way. Yeah.

21:53

Colleen

Yep.

21:54

Aaron

He's also an analytics company. So Yeah. We're learning. It makes sense

22:00

Sean

that we would get the most interest from them right away because that's, like, core part of their business is jewelry builders.

22:06

Colleen

Right. Right. That's your point.

22:07

Sean

I mean, that makes sense to me because they're they're thinking about that a lot and this is a problem that they have and they're always probably trying to solve it better. So makes sense that they would end up, you know, being drawn to us. But it also makes sense that then those would be the most complicated because that's they have more data. This is like a major feature of their system. So, yeah, that we have to figure out how to get one step back or maybe we won't have to figure it out.

22:38

Maybe it'll just, you know, be word-of-mouth. But, like but that that's the key, though. I really think I like the less, like, high touch clients. Though, I mean, I don't know. It's like the the consulting thing is certainly legitimate.

22:57

It's a it's a business there too. And we're learning so much from this.

23:03

Aaron

Yeah. We're learning a ton.

23:05

Colleen

Yeah. I'll be so I started what is today? Tuesday? Yeah. So I started pulling out everything from all of our stuff into its own repo to give to Jesse.

23:16

But they aren't using it occurred to me as I'm doing this, they're not using any of the turbo stuff. That's what he told us. They're not hot wire. They're not turbo. So I should ask him.

23:25

I wonder what he's using on the front end if it's just vanilla rails. Did he he didn't mention that, did he, Aaron? He did not. No. Yeah.

23:32

Because I don't know if that's gonna turn him off or he could just pull obviously not use the front end part and build his own. But, Yeah.

23:37

Aaron

He could. And I know that he already has he already has a pretty solid front end built out, so he might just want the back end driver.

23:45

Sean

Yeah.

23:46

Colleen

I'll ask him.

23:47

Aaron

Yeah. I think a lot of these, middle of the road, like, sweet spot clients, I think many of those could come from the, integration. Yeah. Like the Laravel Nova. And Bullet Train.

24:07

Like, I feel like a lot of the vanilla cred apps are gonna use those, and they'll just, like, they'll just buy it off the shelf and it'll work.

24:16

Sean

Mhmm. Yeah. Absolutely. I forget what I was gonna say. But, yeah, if like, integrations are the most, like, obvious channel that I've that I've thought of for that.

24:36

Aaron's coughing.

24:38

Aaron

Man, I am dying. Goodness gracious. Okay. What else? What else we need to talk about?

24:48

Colleen

Client work is going good. Client 1

24:50

Aaron

Yeah.

24:50

Colleen

It's all I feel like all the hard things have been figured out. And okay. Let I mean, that's a little Wow. I tend to be overly or not ambitious, overly optimistic. But I feel like all the hard things have been figured out, and now it's just executing.

25:07

And there's a lot to execute on. Like, there's a lot that has to be done, especially with the multiple database stuff. But I've at least proof of concept shown that we can do the roll ups to IDs that we were talking about. So there's a lot there. The hardest part for me is gonna be the front end stuff, but that's still a ways away.

25:30

So I'll ping you, Sean, once I get to that. But, yeah, it's it's it's going well. They were as an interim solution, they were okay with the save a filter on one model and then access that filter on the other model instead of the you know, ultimately, we want The

25:49

Aaron

fly in.

25:50

Colleen

The fly in situation. But as an interim solution, like, they're okay with that. So, I'm getting there. That doesn't quite work yet. But, yeah, we can we can build the filters they want and, I think we're making a lot of progress there.

26:04

Aaron

That's great.

26:05

Colleen

Mhmm.

26:07

Sean

Yeah. Man, when this thing is running and people are running queries from our query builder for the site with billions of records, like, that's gonna feel amazing.

26:19

Colleen

Yeah. It's gonna be really cool.

26:22

Aaron

Yeah. Yeah. I tweeted screenshots of it. I actually, tweeted the exact same screenshots I tweeted 2 years ago. I just downloaded them and uploaded them again.

26:39

But I tweeted the screenshots, and somebody was like, well, how is this gonna, you know, how is this gonna be performant? And I was like, man, we have put so much freaking effort into making it performant because, weirdly, our first client has billions of rows. And, like, obviously, you can't know ahead of time everything that needs to be indexed because in the end, it's left up to the user what is being queried, not even the developer, but we've, like, I swear we've done our best and it it's gonna work pretty well. But, yeah, that's gonna be real fun to see.

27:17

Sean

Yeah. For non billions of rows user, it's gonna work great. Yeah. It's gonna be easy peasy.

27:23

Colleen

Yeah.

27:30

Aaron

What else? What else? Oh, Colleen. I added 2 new and and Sean, but 2 new clauses. Is that right?

27:39

Yeah. Two new clauses to the text condition for Keith. I added a where in and where not in. So, like, for text conditions, we've always had, like, starts with, ends with, equals, doesn't equal. But I added one that's like a multiple.

27:57

So you can say, you know, where name is one of Aaron comma Colleen comma Sean, and then it converts it to a wherein. So I added that for Keith. I think that's probably gonna be useful for other people. So you can put in a list, like a multiple equality or a multiple inequality list, and we can explode it or call it in PHP. We can separate it by, you know, commas, new lines, semicolons, whatever.

28:27

But should client number 1 need something like that, I've just added that

28:32

Colleen

for Keith. Great.

28:33

Aaron

Yeah. Because he's doing a thing he's doing a thing where it's like it's like an option condition, except it's actually text. But on the front end, he provides a few options, but then you can, like, manually type in your own. And because we do option validation, you know, if those options weren't there in the back end, it would fail. And so the multiple equality on a text condition solves for that.

28:59

Colleen

Okay. Sounds good. Speaking of yeah. Do we do we have a shared document, guys, where we're keeping track of all these ideas? I don't think so.

29:12

Aaron

Shared? No.

29:13

Colleen

Oh, we don't I've just you mentioned that, and I'm gonna forget what's gonna happen is, you know, I'll be like, oh, I'm just wondering.

29:18

Sean

Yeah. We should start a Notion or whatever.

29:21

Colleen

Yeah. I was thinking about that.

29:22

Sean

Because you're gonna be recording videos, we should put them in there. We should have so we have yeah. Sometimes I hear you guys talking about features and you're, like, I'm adding this and there. It's, like, I'm adding that. And I'm, like, do we know what's in what?

29:36

And, you know Right.

29:38

Colleen

That's my point. We are far enough along now. Maybe it's time to get a little organized is what I'm thinking.

29:44

Aaron

Okay. Totally correct.

29:46

Colleen

I have I mean, I have my own hammer stone Notion document, so I'll take a look at it and see if we can expand that to become a team.

29:54

Aaron

Am I gonna have to learn Notion finally?

29:57

Sean

Yeah. Yeah? Or I mean, I think we should just use Notion because well, we are, you know, in the same Slack room with, like, the world's Notion expert. So we should probably do that.

30:07

Aaron

I'm only gonna have to confess to Marie that I've never used Notion.

30:13

Sean

And then okay. And other things that we need to do as we grow up a little bit, I'm gonna put YNAB I'm gonna get our stuff into YNAB because we're spending money now. So I wanna make sure we don't screw up the cash flow.

30:27

Colleen

Nice. Okay. Great idea. Yeah. Give me a week or so to look at because I got obviously, it's 1st week back from Thanksgiving, so I'm trying to get up to speed.

30:36

Make sure but give me a week or so, and I'll share that with you guys, and we'll try and get a little bit organized in terms of just like because we have a lot of content ideas too, I know. Yeah. Like what you just said, Sean, we're like, oh, yeah. As you learn about x, y, and z, write it down.

30:51

Sean

And speaking of content, I that's the that's that'll be the next thing I'm gonna do. I mean, so, like, I'll be around to fix up integration stuff and add new features, etcetera. But, I'm gonna start working on the marketing site, And I'm gonna use the, the new React thing that I was talking about last time. Remix, I think it's in the house.

31:11

Colleen

Oh, yes. You mentioned that. Mhmm.

31:12

Sean

Yeah. I did look at the docs that's finally open source and I was looking at it and it's like, it's yes. It's perfect for this. It's exactly what I want. So Wonderful.

31:20

Colleen

Okay.

31:21

Sean

So I'll do that. I'll get our marketing site set up. And again, question of mono repo or not, like, we could have the marketing site in one repo. Maybe we should start with that. I don't I don't know how to how that's gonna work with, like I got a whole React app in one folder and then a Laravel app in another folder.

31:41

It's kinda I don't know how that works, but maybe I'll try to figure that out.

31:47

Aaron

What, what would be in the monorepo with the marketing site?

31:53

Sean

Well, especially the docs. Like, I I think that that there's opportunities to, like, reuse pieces of like, the docs and the marketing kinda go potentially hand in hand even. So and I know our docs were using our own special system, so we're not gonna, like, reinvent the wheel there. But

32:16

Aaron

Yeah. Our docs currently live alongside each library, each package, and we pull them in from they're just markdown files, and we pull them in from GitHub and then render them.

32:31

Sean

So that's exactly how Remix will work as well. Like, I'm thinking I'm just gonna have markdown files in a file structure somewhere, which we could just create an ad. We do it with a GitHub repo or something, and then Remix can pull them in from there.

32:45

Aaron

Mhmm.

32:46

Sean

And then load them. So maybe maybe there's a way to actually just pull the docs into Remix and have them rendered that way.

32:52

Aaron

Cool. That would be great. And then I'm sure that this is the case, but you have the ability to pop out to native stuff and design something fancy, right, for, like, the home page and stuff like that? It's not all just marketing. I'm not

33:05

Sean

actually I'm not sure what you mean. Oh, yeah. Yeah. Absolutely. Yeah.

33:09

Aaron

I'm not familiar with remix. I was just making sure.

33:13

Sean

Yeah. It's pretty neat. It's like a little it's just a little framework for the common patterns that you find yourself implementing when you're building primarily content driven React website.

33:32

Colleen

Nice.

33:33

Sean

So it does, it does a whole bunch of stuff for you out of the box. And so it's all server side framework.

33:39

Aaron

Is this? Is this Vercel? No. It's just totally independent.

33:46

Sean

Yeah. It's Kent Dodd is now the new developer relation relations guy. And then it's also the guys that did React router, which I am blanking on their names. But, yeah, the React router guys did this. And it was something where it was like us, like you could buy it and then, they got enough interest and then they got actually an investor.

34:08

So they decided to open source it. I don't know what their new model is, but that's Interesting. That's what happened.

34:15

Aaron

And for the record, if anyone wants to give us, like, like, $10,000,000, we'll open source everything we've ever written. Just wanna put that out there. Yeah. If you wanna get that set up, I would happily hand over marketing site to you.

34:32

Sean

Yeah. That's, I think I'm gonna I'm gonna I'm definitely gonna do that. Like, but the marketing side is, like, kind of my next thing because I gotta get that lined up before we, you know, start opening this up to more and more people.

34:45

Colleen

Yeah. Sounds good.

34:48

Sean

Because, like, I think Jesse's a customer because he knows us otherwise. There's no way. You know what is this? I don't know what this is. Yeah.

34:56

Colleen

Agree.

34:57

Aaron

Yeah. And that I mean, the only reason we have a site was because Mike kept saying you have to have a site. And so I don't want to, I don't want us to worry too much that the site is bad. We do in fact have a site, so that's worth something.

35:16

Sean

Like, yeah, we have a site. Probably we didn't even need a site. We've essentially made 100 of 1,000 of dollars in revenue without a website.

35:26

Aaron

So Yes. I guarantee you client 1 has never visited our website. No. If they did, they'd be like, why does your website not say exactly what you're doing? You gotta talk to Buckbee.

35:39

He told us to make a website.

35:48

Sean

Okay. I got nothing else.

35:50

Colleen

Yeah, that's all I got.

35:52

Aaron

The only other thing I have is there's a game on the Oculus called Superhot. And if you guys haven't seen it, you have to look it up. It's the most fun game. This this to me is the killer use case for Oculus. So it's called Superhot.

36:10

It is a it's like a strategy shooter or, like, a puzzle shooter, And the whole premise is you remember original Matrix, the bullet time thing, where he's dodging the bullets in slow mo?

36:24

Colleen

Yes.

36:25

Aaron

The whole premise of Superhot is the game time. So, like, time within the game moves as quickly as you physically move. So if you move very slowly, game time moves very slowly, and you can dodge bullets and shoot back and block bullets and punch and stuff. But if you move fast, then the game moves real fast, and, basically, you get shot and lose. And it is the most fun game that I I think I think I have ever played.

36:58

It is a freaking blast. Last night after our call, Sean, I I went inside, and Jennifer was already in bed. And so I got out the oculus and played super hot for, like, 40 minutes at like 11 o'clock at night. I'm sick and I'm tired and I'm like, I gotta play super hot. It's so freaking fun.

37:21

And it is a shooter. So like, you, you know, you grab, like you reach down with the little hand controls and you pick up guns and then you point and shoot and you're dodging bullets and, man, it's a freaking blast. So Does

37:34

Sean

it kind of feel like makes you feel like you're a superhero or whatever?

37:37

Aaron

It does. And it makes you feel like you're you're Neo because you can, like, you can pick up you know, you're in different scenes all the time. You can, like, pick up a frying pan and block bullets and pick up a gun. While you're while you're blocking this guy's bullets, you can shoot this guy, and then you can throw the gun when you run out of ammo, and it'll hit the other guy. And it's just like, oh, so freaking fun.

38:00

Colleen

Nice. That's awesome.

38:03

Aaron

Alright. We'll end it there.

Details
Show
Hammerstone
Date
Nov 30, 2021
Role
Host
All podcasts
Podcasts
Newsletter

Every week: the best things I've found and what I've been thinking about.