Ian & Aaron discuss the joy of Diet Coke, Ian's deep dive into DTOs, Inertia vs. Livewire, & more.
Sponsored by LaraJobs & Screencasting.com.
Sent questions or feedback to mostlytechnicalpodcast@gmail.com.
Aaron
00:00:04 – 00:00:06
What's going on?
Oh, the usual, you know, this is the only, this is I think the only time in the past, like 3 or 4 weeks that I get on the computer is to talk to you.
That's it.
Aaron
00:00:19 – 00:00:22
That's crazy.
That's awesome.
Yeah.
I'm glad I
Aaron
00:00:23 – 00:00:23
in the loop.
Yeah.
It is so weird.
I spent a lot of time, you know, on my phone, of course, but I like rarely ever do anything on the computer right now in my efforts to to rest.
And it's just it feels so weird.
Aaron
00:00:39 – 00:00:51
Yeah, it's it's hard to be off the computer.
Like, it's just so natural instinct to go to it.
So it's kind of, amazing that you've managed to stay off it in your effort to rest.
The bad thing is there are things that I feel like I can only do on my computer, which is like, you know, process emails and respond to people.
And so I'm just having, you know, just not really doing that, which is not great.
But I'm like, I'll do that when I get on my computer.
And then all week, I don't get on my computer.
So
Aaron
00:01:07 – 00:01:08
I think it's understandable.
Waiting on a response from me.
Sorry about that.
Aaron
00:01:12 – 00:01:14
You you got a lot going on.
Aaron
00:01:15 – 00:01:23
There was a picture on the on Twitter the other day of you with 2 babies crashed out.
So they were in that zone.
Yeah.
That they were both they were both crying.
Sunday afternoon, They were both crying.
Aaron
00:01:29 – 00:01:29
Both crying.
Jennifer was napping.
The big kids were napping.
And so I just, like, I had to scoop them both up.
So you pick 1 up, take them to the other baby's crib, and then you kind of like scoop them both up together, kind of like press them into each other and scoop them up.
And then you sit down in the chair and, yeah, fell asleep.
So still firmly in it for sure.
Aaron
00:01:53 – 00:01:56
Were they, still crying when you fell asleep or you managed to get them to stops?
No.
Aaron
00:01:56 – 00:01:57
stop crying.
To stop crying.
Yeah.
The rocking and the holding managed to get them to stop crying.
So, you know, you don't want to train them to, like, only fall asleep when you hold them.
Aaron
00:02:06 – 00:02:07
But
some days it's like, y'all just gotta y'all need to nap.
Aaron
00:02:11 – 00:02:25
I know.
We went through a bunch of different phases that we were, like, on the let them cried out with the oldest for a while.
Mhmm.
I don't think that was the best advice we got in the end.
Like, by the third one, we were like, nah, that's stupid.
Aaron
00:02:25 – 00:02:43
Like, let's just, like, keep this kid happy because I mean, it's like I don't know.
I just don't know if it really works in the way of the promise of it all.
Like, in reality, like, the baby wants you because, like, the baby needs you and Yeah.
Like, pretending the baby doesn't need you, I don't know if that really works out so well, really.
So
So the best thing the best thing we ever did, and if anyone is about to have a kid, you should do this too, is a course called taking care of babies.
And the woman's name is Cara, c a r a.
So it's taking care of babies.
And it, like, it is it is a lifesaver.
It just teaches you basically, like, how to soothe the baby, how to help them learn how to fall back asleep on their own, like a system for, when you go in, like, what you should do and how long you should suit them and that sort of thing.
It's just amazing.
So taking care of babies, look it up.
It's it's wonderful.
And I found out somebody messaged me because I talked about it on Twitter, and some guy messaged me and was like, hey, thanks for your lyric on talk.
I really appreciated it.
By the way, I'm a Laravel dev and my I work at a place called Taking Care of Babies.
And so if you need free access and I was like, no.
I I used to take care I already bought it.
It's amazing.
This is wild.
Aaron
00:03:43 – 00:03:44
It's unbelievable.
I know.
I was it's super small world.
The the Laravel dev messaged me on LinkedIn about it, so thought that was kinda cool.
Aaron
00:03:51 – 00:03:56
Man, I love small world stuff.
That's, like, some of my favorite, like, just things in the whole world, the small world stuff.
Aaron
00:03:57 – 00:04:01
haven't had one of those moments in quite some time.
I need a small world moment to hit me here
soon.
Somebody reach out to Ian with a small world moment.
He's he's in desperate need.
Aaron
00:04:06 – 00:04:08
Just artificially run into me somewhere.
Aaron
00:04:09 – 00:04:17
By the Poughkeepsie and bump into me by accident.
Yeah.
Exactly.
But I'm really not we're we're doing alright.
Good.
Aaron
00:04:17 – 00:04:21
That's what I like to hear.
Yeah.
You're surviving.
You got 4 kids.
Aaron
00:04:23 – 00:04:25
So many kids.
Rough for a little while.
Everyone's a little bit sick right now, myself included.
So yeah.
Just keeps the the hits just keep coming, man.
Aaron
00:04:35 – 00:04:37
Oh, man.
Well
Alright.
So I got I got a fun one at the top before we get into before we get into real topics.
Aaron
00:04:42 – 00:04:42
Okay.
Good.
Do it.
So I was thinking, I we always, you know, we always start the show with, like, hey, how's it going?
Hey.
How's it going?
There's a greeting there's a greeting that I don't use as much anymore, but I used to use it all the time.
And half the time, it would, like, really confuse people, and half the time, it was totally fine.
And the greeting is, what's the good word?
Aaron
00:05:06 – 00:05:06
Okay.
Have you ever used this have you ever used this as a greeting?
No.
That's it.
That's the whole greeting.
I
Aaron
00:05:12 – 00:05:15
was like, that's it.
Something upbringing thing there or something like
Somebody walks in and you say, what's a good word?
And, you know, some people treat it as, like, what's what's going on?
Or, like, how's how's
Aaron
00:05:23 – 00:05:24
it going?
I did have I did have some friends that would just look at me and say, I don't know how to respond
Aaron
00:05:29 – 00:05:37
to that.
So I think in New York, I have you, but I've definitely heard, like, what's the word?
Aaron
00:05:38 – 00:05:42
What's the word?
The good has, like, a whole different connotation to me.
No.
Aaron
00:05:43 – 00:05:43
Yeah.
That's
totally that's totally the same thing.
Aaron
00:05:44 – 00:05:46
Okay.
Then that happens.
I'm not the word, and how do you respond?
When somebody said what what's the word?
How do you respond?
Aaron
00:05:50 – 00:06:01
I mean, I think it's a similar because it's just like it is like I treat it like what's going on.
Like, you know, what's the word on the street.
Like that's how it would really be.
Like what's the word on the street?
You know, what are you hearing out there?
Aaron
00:06:01 – 00:06:11
What's, you know, what's going on in the streets?
So now people don't go in the streets, but in the seventies, like, you went in the streets.
Yeah.
So it's like a very seventies phrase to me of, like, you know, you're out there in
Aaron
00:06:12 – 00:06:13
It does have a good vibe.
The other one the other one, and this I learned from my grandpa, he would always when we would go over there, he would always say, what do you say, little a?
Because I was the youngest.
You know, my name's Aaron.
He would always say, what do you say, little a?
And I never, like you know, what do you say?
I don't know.
My response was always, I say it, grandpa, And that was it.
What do you say?
Little a.
I say it, grandpa.
And so I, you know, that's that's often a greeting I will use as well.
Somebody walk in and say, hey, what do you say?
Like, what what do you mean?
What do I say?
What do you say?
Aaron
00:06:48 – 00:06:52
I think that there's a line in, heat.
I don't know if you're watching movie heat.
Aaron
00:06:53 – 00:06:58
Heat.
No.
You gotta watch it, like, at least another a 100 times.
Great movie.
One of my favorites, top 5.
Aaron
00:06:58 – 00:07:13
But there is a line where Al Pacino is like I think he says, like, he's like, what do you say?
What do you say?
Or something like that at one point.
So, yeah, I'm I'm down with what do you say.
Those I I am also down with the whole idea of, like, when I'm a grandpa just saying crazy shit to the kid Oh,
Aaron
00:07:14 – 00:07:27
Crab babies, like, and because what do you have to say to them anyway?
Like, I don't I can't relate to you, so I'm just gonna say weird shit to you.
Like, now I understand why weird they should have weird shit to us because it's like Yes.
I could barely relate to my own kids.
Like, the next generation album, we have no idea what
Aaron
00:07:28 – 00:07:32
Right?
And so it's just like, I'm just gonna say crazy shit and give them $5 and, like,
Aaron
00:07:32 – 00:07:33
stuff like that.
Say, what do you say?
Little a.
Like, yeah.
Yeah.
So I still it's endearing.
Aaron
00:07:38 – 00:07:41
Yeah.
Exactly.
That's the kind of stuff you remember.
There is a show there's a show that we used to watch a lot called The Prophet, and it was with Marcus Lemonis, and it was like a business show.
And one time, he walked into a a business, and he said, what's the good word?
And I freaked out.
I freaked out.
I paused, and I rewound it.
I recorded it on Snapchat, sent all my friends.
It's like, look.
This is normal.
People say this.
Aaron
00:08:03 – 00:08:03
Wow.
Aaron
00:08:05 – 00:08:08
Area as you?
Maybe he's from Texas.
Are you from are you actually from Texas?
I am from Texas.
Yeah.
I don't think he is.
I think he's
Aaron
00:08:11 – 00:08:13
Mhmm.
I think he's picked it up somewhere.
Yeah.
The northeast, I think.
But, yeah, I I was like, that's the first person I've actually there's proof.
What's the good word is real?
Aaron
00:08:21 – 00:08:23
Not just your own made up weird thing.
No.
Not just my own my own made up stuff.
So there you go.
There's my random there's my random top of the show.
Aaron
00:08:31 – 00:08:48
I like it.
I think one of the it's like one of those, we didn't we just take, like, one of those tests recently where it was like, I think it was you and me doing this.
Maybe it was another person, but, whereas, like, you know, you, like, get a read a bunch of questions and, like, you know, they figure out where you're from based on your answers to, like, do
you know the phrasing or whatever?
Yeah.
Aaron
00:08:50 – 00:08:54
Yeah.
Yeah.
Yeah.
Stuff like that.
Like, I'll add what's a good word in there.
Aaron
00:08:54 – 00:08:54
So I would like to see a map
of I just don't know.
I just don't know how to triangulate it.
I I don't know if anyone else on
Aaron
00:08:59 – 00:09:02
a personal level.
You're gonna have we need the experts on this one.
But
Yeah.
I know.
It's not me.
Sounds fun, though.
Sounds like a blast.
Aaron
00:09:06 – 00:09:06
Wish Yeah.
Wish I
could have been there.
Yeah.
Aaron
00:09:08 – 00:09:09
Yeah.
I should dig it up.
Aaron
00:09:09 – 00:09:16
it was, like, from New York Times quiz thing or something.
It was one of those sites that was, like Yeah.
And answer 20 questions.
And
those always go around at Thanksgiving when they're like, what do you call the the stuff inside the turkey?
And it's like stuffing cornbread dressing.
Exactly.
What's
Aaron
00:09:26 – 00:09:29
Those things.
Yeah.
Yeah.
Yeah.
Alright.
Aaron
00:09:29 – 00:09:30
We got a little feedback.
Aaron
00:09:32 – 00:09:37
Thomas Weber sent us an email.
Loves the podcast.
Thank you, Thomas.
Aaron
00:09:38 – 00:10:01
But it's 2 questions.
So what kind of methodology and tools do you use in your respective work for software development?
So how do you plan which features or aspects the team works on, sprints and cycles, and, like, Trello based camp or similar.
So I don't know.
What do you do you have, like, your go to tools when you're building something?
Yeah.
So I'm not in a I'm not in that kind of position at PlanetScale anymore.
But I was, you know, for many, many years at the property tax company, and we relied heavily on base camp.
Mhmm.
And, I mean, that that's basically it.
We were all in Slack.
There were maybe only including me, 4 or 5 developers, so it wasn't a very big team.
And I was the one that, like, took all of the requirements from the business and, like, translated them into actual, you know, solutions that we would build.
Because the the CEO would love to come with me come to me with solutions.
And I'm like, what is the problem you're trying to solve here?
I'm like, oh, there's this is no.
There's a 10 times easier way to do that.
So we used we used base camp and found it extremely easy to use and helpful.
Personally, I don't really keep track of that stuff.
I don't have any really big ongoing projects right now, where I need active development.
But I have used Trello in the past, but, you know, we use Trello for this podcast, and it's perfect for that.
And then my other tools are just PHP storm heard all the standard right down the middle Laravel stuff.
I'm not a big, like, I think we've talked about this before.
I'm not a big, like, you know, customize my setup dot files, neo.
I'm pretty vanilla.
I'm pretty, like, right down the middle.
Just kinda get stuff done.
So Yeah.
You've got a big team.
What what's your setup?
Aaron
00:11:34 – 00:12:01
I mean, I don't actually have a big team, but I have a team, but, Yeah, so I mean we've done all different things.
I don't even have a structure I like right now to be honest with you like we've done Trello which was fine, but something's always often about Trello.
Like, for what we use at 4th grade, there's, like, 2 columns, and I can deal with it, and it's fine.
But when you get into, like, there's a bunch of columns and storing lots of stuff, and it's I don't know.
Like, Dave, the producer of this podcast, he he loves the Trello.
Aaron
00:12:01 – 00:12:05
But for me, I find that I wanna like it more than I actually like it.
Aaron
00:12:06 – 00:12:23
But and then right now, I'm in linear, but I'm not really using it.
Like, I've logged some stuff in linear for the kind of big next gen help spot stuff.
It's more a place I dump some ideas because, like, maybe I wanna use this, but then I don't think I wanna use it.
So there's just ideas there there.
Aaron
00:12:24 – 00:12:33
It is cool.
I don't know.
Then they had that database issue recently and they didn't have backups.
So I'm like, how do you not backups to this big tool?
So that was weird.
Aaron
00:12:35 – 00:12:54
So and then, like, what the core thing right now, I use just GitHub issues, like Yeah.
Write it up and GitHub issues, and then, like, you can close it out from there and all that stuff.
But I don't know.
I'm also in the in terms of the big project I'm actually on right now.
I'm still kind of in the I don't like I'm a, like, we we have the 2 types of writers.
Aaron
00:12:54 – 00:13:05
Right?
You have the, like, the outliner and the gardener or whatever.
I'm the gardener when it comes to software.
Like, I can't preplan a big project.
Like, how interesting I need to like feel it out.
Aaron
00:13:05 – 00:13:16
I need to see the UI.
I need to like rip it all out, do it again.
This is not the efficient way to do things for sure, but just like how I like to operate.
So I'm not quite there yet.
We're getting there.
Aaron
00:13:16 – 00:13:39
As when it gets a little bit farther along, I'll be ready to like, be like, okay, like I got delayed land and now I could probably like structure more of it and outline more of it and put things.
Whether it's in GitHub Issues or Trello or some other tool, like, I could write up, like, what each thing is supposed to do.
But at the earlier stages, I can't really do that.
Where where does
this outline outline Gardener thing come from?
I like this.
Aaron
00:13:43 – 00:13:56
This is, like, a really known thing.
Actually, if you look it up, it's like, bro, like novel writers.
There's, like, the outliners.
Like, so one of my favorite writers, Brandon Sanderson, he's a fantasy writer and he, is a huge outliner.
So he's like, everything's outlined.
Aaron
00:13:57 – 00:14:10
And then he's just like, you know, so all the major plot beats and everything that happens and it's all structured.
And then he just, you know, he's obviously, like, writing the actual sort of interactions and, you know,
Aaron
00:14:13 – 00:14:21
with the actual words dialogue and whatnot.
Yes.
There you go.
But but he knows everything that's gonna happen.
Basically, I'm sure there's whatever as he gets in there.
Aaron
00:14:21 – 00:14:44
I think he does change stuff, but he's got got it very planned out and you have like, the Gardner, like George R Martin, if you're familiar with game of Thrones, like he's also a fantasy writer and he writes, the Gardner style where he's, like, just kinda going out there.
And I think he does, of course, have, you know, some rough outline of where things are going, but he's also, like, goes with it when he gets taken another direction and things like that.
Aaron
00:14:46 – 00:15:02
Yeah.
It's kind of a useful thing to think about yourself in different ways.
Like, and to me, software is very much like being a novelist or any type of artistic pursuit.
I find it very artistically oriented.
So, yeah.
Aaron
00:15:03 – 00:15:21
I have one other question here.
Touching on the subject of once.
So I guess it's more for me.
How do you handle on prem installations of your customers at HubSpot?
How is it implemented at technical architectural level, and what percentage of customers are on prem and, tricks and experiences of that?
Aaron
00:15:21 – 00:15:38
So, yeah.
So HubSpot is the on prem version of HubSpot is kind of a standard PHP app.
You just download it, install it.
There's a little installer that runs.
It's not quite as fancy as the once app, where there's, like, a one command to install it.
Aaron
00:15:39 – 00:15:48
That is something kind of interesting time wise.
I don't really have the time to kinda get into that right now, but we have thought about some things along those lines.
I hope so.
Download it?
Do you download a a zip of, like, the whole project?
Aaron
00:15:52 – 00:16:09
Yeah.
Like, well, yeah, you actually download, like, a zip of the files, and then you put them in a spot, and then there's instructions.
And it's kind of a little more older school than, than all automated.
But also because, you know, once as we talked about is, like, taking a ultra narrow focus
Aaron
00:16:11 – 00:16:42
Where HubSpot isn't that.
So, like, HubSpot can run on Windows, or it can run on Linux, or it can run on and it can run on, you know, MySQL, or it can run on Microsoft SQL Server.
So there's, like, just more setup and involved in that than, you know, and some of it could be automated.
But also sometimes people need to install the components, which some of that especially on Windows, like, can't be as automated, or if they have to do stuff in IIS and whatever.
So we actually did for a long time have a Windows installer that would automate a lot of that stuff for people.
Aaron
00:16:43 – 00:16:48
But in the, like, actually just in the last year or so, we got rid of that because it's actually more hassle than it's worth.
And then
you can pull this out.
Far outside of anything I've ever done
Aaron
00:16:51 – 00:16:52
to build a windows
Aaron
00:16:53 – 00:17:06
That's sort of grim.
Wild.
But for a while, it was fine because, like, the Windows people didn't know anything about PHP.
And so it was like, we'll handle the PHP Right.
Stuff for you, so you don't really have to think about that.
Aaron
00:17:06 – 00:17:30
But now, like, window you know, Microsoft has embraced PHP more, and so the there's more experience out there in general with it.
And so it's like and it's just gotten easier to install in general.
So it's like, let's just, like, do the old school.
It's like a list of stuff you have to do.
If you don't have these things set up, like, you have to set them up, but then you do, and you manage it because you're an IT server administrator, and that's what you do, which is also one of the problems we had.
Aaron
00:17:30 – 00:17:49
Like, when it was just in our installer and we're, like, configuring your IS and installing PHP.
You know, if there's, like, a security release of PHP, like, now we have to, like, make sure we're, like, instantly have a new installer and things like that.
Or people just wanna make a change to the configuration, but now it's not clear how they would do that because, like, we've set it up.
So this way, they can just set it up
Aaron
00:17:49 – 00:18:15
And they can control it on their end, and they can do whatever they want.
Or if they wanna not upgrade PHP, and they wanna run an older version for a while, then they can, like, whatever.
They're fully in control.
So that's where that kinda works, for us.
But it helps a lot is, you know, very enterprise y, and it's, at this point, the on premise version is only gonna be for people, as we talked about many times, who have real IT administrators and want to do that for some actual reason.
Aaron
00:18:16 – 00:18:38
So again, like asking them to do a couple steps there is not unreasonable.
There's it's never a reason, like, why somebody does or doesn't buy help swap.
Mhmm.
Yeah.
And, percentage of on prem for us is like, I don't know, percentage of new sales is, you know, maybe like 20% or less than 20%, probably less at this point.
Aaron
00:18:38 – 00:18:53
Overall, it's higher just because we have customers who've been on prem for a long time, but it's still probably now more like 30% and stuff like that.
So, thanks, Thomas, for the feedback.
We do read all your emails.
See that?
So Yes.
Aaron
00:18:53 – 00:18:54
Email us.
We the 2 of us do.
Definitely.
Aaron
00:18:57 – 00:19:01
Well, Justin told us our tool to Yeah.
Organize this
So other other feedback I forgot about, Ben Ornstein, friend of the pod, replied on Twitter and said, this is the worst idea I've ever heard about our amazing idea that we gave away to the people.
Aaron
00:19:14 – 00:19:15
What's up with that?
We're giving, like, free
cookies, man.
Benevolent gators giving away bread and circuses, and he's like, this is a terrible idea.
Aaron
00:19:22 – 00:19:23
He didn't like our idea.
Aaron
00:19:24 – 00:19:25
He did.
So he had some, you know, he had some good points.
Yeah.
And he's a smart guy, so I'm inclined to to believe him.
But, yeah, there were some there were some there was some feedback about the idea, which is like project management built into transistor, basically.
What what was his main what was his main beef?
Aaron
00:19:46 – 00:19:54
I think it was just like that.
He didn't think it was something people would pay for.
It was kinda like the main beef.
And I don't actually disagree.
I mean, to me, it's more like the type of thing.
Aaron
00:19:54 – 00:19:58
It's like the Steve Jobs ism of, like, is it a feature or is it a product?
Like, I don't think
Aaron
00:19:58 – 00:20:01
I mean, I was coming from the, like, I want this in transistor
Aaron
00:20:01 – 00:20:22
Aspect even if I didn't I might not have actually said that.
But, but, yeah, I did a freestanding app again, like everybody's bars are different too.
Like, you know, in America, where we're thinking of is, like, can I make this into, like, a $1,000,000 a year business?
Right?
Like, that's kinda like a bar you're trying to get to, or or maybe it's, like, half a1000000 or whatever.
Aaron
00:20:22 – 00:20:37
Like, enough where I could hire someone maybe and, like, things like that.
Like, can I get to a certain self sustaining level?
But, you know, there's other countries where that you don't need that much money.
And so there are there are some variables in there, but, but I like it more as a feature of some other type of product, like
Aaron
00:20:38 – 00:20:51
You know, where you podcast host, and you're kinda locked in there, which is always a great business feature.
And then but, hey.
There's other things we need to run this podcast besides just hosting, and maybe they could do some of those things.
But I don't know if it's actually Yeah.
Whatever.
Aaron
00:20:51 – 00:20:57
Obviously, they're the experts.
I've given this 10 seconds of thought, but I do think it would be handy to have some more features
where You get what you pay for here on the pod.
So, yeah, the ideas the ideas are worth what you pay for.
Aaron
00:21:03 – 00:21:15
I don't know if you should just run out and build things we say you should build.
Like, we might tell you to build something, but you shouldn't necessarily do it.
It's like how we play doctors on here too.
Like, we might tell you some doctor things, but you shouldn't necessarily go out and inject yourself with something that they were injected.
Probably shouldn't listen to us at all.
Don't don't do don't do anything we say honestly.
Aaron
00:21:20 – 00:21:22
Let's turn this off right now.
Like, that shouldn't be your best bet.
If you start telling your friends what's the good word, like, I'm not responsible for that.
If if they make money, that is not my fault, honestly.
Aaron
00:21:30 – 00:21:34
An outcast freak after this listening to the show.
Like, that's that's on you.
The other, the other person that chimed in was Arvid Call, and he was like, oh, this makes sense to add into pod line.
And I was like, yeah, that makes a lot of sense because he's doing the call in thing.
But, like, I don't I don't wanna do a call in.
Like, I don't I don't wanna do a call in thing for this show because then you gotta figure out how to splice him the audio and, like, give me, like, like you said, an inbox to manage it, and it's it makes a lot of sense for him to be like, you can call in or you can email in.
And while we're here, let's do some other features, but who knows who knows what he's up to?
Aaron
00:22:07 – 00:22:10
Yeah.
I think there's been a few of those podcast call in things.
Aaron
00:22:10 – 00:22:23
I don't know.
It's kinda weird though.
I guess, I guess for randos, the call in is kinda interesting versus, like, in Riverside, like, we could send a link to somebody and have them join us as we've done, but I guess Yeah.
Like, a true call in show is a little bit different.
Yeah.
Starts for the rest of us has call in questions.
Aaron
00:22:27 – 00:22:33
Yeah.
Calling questions.
Like, oh, it's like they just they they listen to it.
It's recorded, I think.
Yeah.
It's like a voice mail.
Aaron
00:22:34 – 00:22:41
Yeah.
Yeah.
Okay.
See, that business seems a little that's like a very narrow scope thing.
Aaron
00:22:42 – 00:22:53
agree.
I like his other thing, which is, like, the podcast Super cool.
Yeah, AI, you know, looking for your brand, mentioning the other ones and Yeah.
Yeah, pod scan.
Like, that that seems to me like that's got some potential there.
So, for for the edification of the listener, Arvid is working on he started with pod line, which is this, like, call in show, and then he's, like, kinda half pivoted to pod scan, maybe pod scan dotfm.
Who knows, Dave?
You can find that for the show notes.
Good luck.
And this one, like, ingests every single podcast that is published and transcribes it and allows you to scan for, like, brand mentions or competitor mentions or your name or something like that, like, minutes after the podcast is released, and it'll, like, send you an email.
So there are tools like this, you know, for Reddit and for Hacker News and stuff, but this is the first I've heard of it for podcasting, which is really interesting.
And it sounds like a ton of data, but he's making it work.
Aaron
00:23:39 – 00:23:52
Don't you think this is to me always this is one of my very first businesses that I started and half built and never finished.
But I love these idea of businesses that are like data.
Like, there's some pile
Aaron
00:23:52 – 00:23:55
There's a pile of government data.
There's a website.
There's
Aaron
00:23:56 – 00:24:01
of podcasts.
Right?
Yes.
It's like somebody's done all the hard work, and I could just put this thin veneer over top
Aaron
00:24:02 – 00:24:05
it and make it into something useful and awesome.
Like
Government data is a freaking gold mine.
So I don't I don't want to I don't want to make it reductive.
But Geo Codeo, which is a friend of the Laravel community, Michelle and Matthias Hanson, Geocodio, this is very reductive, is just a layer over public data.
Like, it's a geocoding service, and they do a ton of work, of course, but it's just a layer over public data.
Aaron
00:24:31 – 00:24:39
Cleaning and, like, organize that in multiple countries and all that stuff.
It's like but that's all the the the terrible part.
Right?
Like, they're doing the terrible part.
Like Exactly.
Aaron
00:24:39 – 00:24:43
go to the USPS website and run, address lookup,
Aaron
00:24:44 – 00:24:48
Right.
But now there's all these other terrible parts of it that they handle.
Yeah.
And they combine, like, congressional districts and stuff like that.
Yeah.
When when we so back at the property tax company, we would buy data from one of these providers.
Because in Texas, there are 254 counties, and we would buy normalized data.
Each county is responsible for releasing their own property and property tax data, and it's all different.
Of course.
Of course, it's all different.
It all sucks.
And so there was a company there were actually 2 or 3 companies that would sit on top of all of that and take the the public dumps that you can just download from DCAD, which is Dallas County Central Appraisal District, and they would normalize them and resell them to us for, like, 500 to a $1,000 a county.
Yep.
Aaron
00:25:31 – 00:25:32
a county?
Wow.
A county.
We would pay them Wow.
You know, we have 5 or 10 major counties, and we would we would pay them $10,000 twice a year.
Mhmm.
Wow.
And one of these companies just, you know, in the past few years got bought by Ryan, LLC, which is a a big state and local, accounting firm.
So they just, like Mhmm.
They sold out, and they made it.
But, yeah, there's freaking and it's just it's just so, like, it's so tempting to be like, I'm gonna download this, you know, 6 gigabyte CSV and turn it into something usable.
Yep.
There's a guy there's actually a guy oh, shoot.
What is his name?
I forget.
There's a guy in tiny seed that does this for, like, like, foreclosures, and he, like, sells the the foreclosure data, to somebody, and I forget who.
But, yeah, this is such a great, like, archetype.
Aaron
00:26:20 – 00:26:27
So it's yeah.
Just always.
Yeah.
Tingles me.
I'm like, oh, that's a business where it's just like there's all this data out there and I'm just gonna do something with it.
Aaron
00:26:27 – 00:26:39
And it is hard because, like, if you don't if it's not if the data is too good already, like, that's, like, not a very defensible business.
And then Yep.
So you need something hard enough, but at the same time, if it's too hard, now you're just collecting data, and that's a whole
Aaron
00:26:40 – 00:26:54
You wanna use the raw data, but, like like, GeoCody is, like, a perfect example.
Like, they there's a lot of raw data, but it's all kinda crappy, so they unclapify it.
And that's a lot of work, and so now that's valuable.
Yep.
So, yeah, that's that's all
And often, you you end up selling to normies.
Most of the time, you sell to, like, normal businesses.
Like, who wants to buy property tax data?
Mostly Right.
You know, real estate agents and banks and insurance people and stuff like that.
Aaron
00:27:06 – 00:27:34
Well, we have a thing I mean, we do this ourselves.
It's very it's interesting.
So all our, like, back office systems that run the store for HelpSpot are, like, predate Stripe and all this stuff, and they've been updated.
And, actually, Eric, who, still works a little parts of lateral news, Eric, still manages our back office store that just got rebuilt last year again, for the, like, the 3rd or 4th iteration.
But so we have to collect sales tax in like 3 or 4 states, whatever it is.
Aaron
00:27:34 – 00:28:01
And we just download a county sales tax.
We we buy a, you know, aggregation of all the sales tax rates in every county and some cities in the country.
And we just feed that into this back office system, and that's how we do sales tax.
And so every year, I feel like probably supposed to do it more than every year, but every year or so, I just buy this again and update it with the latest sales tax info.
Yeah.
Aaron
00:28:01 – 00:28:13
And it is, like, interesting because it's like, well, I pay these people, like, 3 or $400 or whatever.
It's like, yeah, Stripe does that now.
But Stripe wants, like, you know, a half a percent.
So now it's, like, way more than $400.
So For sure.
Aaron
00:28:13 – 00:28:23
Am I gonna pay Stripe?
Like, for the convenience, is the convenience worth 1,000 of dollars here?
I don't know.
So, like, on the old school set up for now.
I did.
I did one of these.
I tried one of these businesses.
Also, it was, licensing data.
So for like electricians and plumbers and dentists and CPAs, all of that data, at least in Texas, is publicly available.
And it tells you when the license needs to be renewed.
For some of them, it tells you, if the continuing education has been completed or not.
And so I, you know, ingested it all and made it all searchable and cleaned it all up.
And then I started like, I did the whole thing.
I, like, cold emailed a bunch of plumbing companies and was like, Hey, I've got all of, you know, I can monitor your licenses for you so you don't get in legal trouble.
And I think I got like 2 customers at $50 a month, and it was like a freaking slog.
And and then I just was like, this is this is not worth it.
But
Aaron
00:29:17 – 00:29:21
it's so tempting.
Yeah, it is.
I thought, like, I do love this business.
It was fun.
It would just like every night it would check the the Texas website, download it, parse it, send an email, and I was like, that's it.
That's the whole business.
I don't even need a website.
Aaron
00:29:31 – 00:29:41
Yeah.
Just runs itself.
Now if you could have automated the, like, outreach part and really got that, then it doesn't matter.
Like, even if you're just adding a couple a month, though, who who cares?
Like, over time, it just builds up.
Aaron
00:29:41 – 00:29:48
But, yeah, it's hard to reach those kind of businesses.
Like, they're not they're not used to deal with.
And some of them were just like, yeah.
We don't really care.
Like, the license is expired, and we don't really care.
I'm like, what?
Aaron
00:29:54 – 00:29:54
Do too.
Aaron
00:29:55 – 00:30:00
Every couple years, we just, like, figure out who's expired and Exactly.
Deal with it.
It's like, oh, dang it.
This isn't gonna work.
Aaron
00:30:02 – 00:30:06
Yep.
Oh, man.
Alright.
What do I wanna do here?
Aaron
00:30:07 – 00:30:17
For real topics.
I guess, let's just do this one one quick one.
Laracon US tickets, on sale now.
So On sale now?
Laracon US tickets.
Aaron
00:30:18 – 00:30:24
Hopefully, I will be there.
My oldest might be going to college.
In which case, I won't be there.
But, I'm glad
Aaron
00:30:25 – 00:30:28
That would be a travesty.
I bought tickets.
Gap year
or something?
Make them do a gap year.
Aaron
00:30:29 – 00:30:32
Go take yourself to college.
Whatever.
Yeah.
Aaron
00:30:32 – 00:30:34
It's $200 to buy a ticket.
Walk around Europe or something.
Whatever people do in gap years.
What do I know?
Aaron
00:30:37 – 00:30:39
You should do a gap year.
So what's the likelihood?
Not of a gap year of you being there.
Aaron
00:30:43 – 00:31:00
I think it's high, but Okay.
You know, it's August 27th 28th.
The few of the schools he's applied to last year did have their birthdays, their drop off days on those dates.
So we'll see.
But obviously, it's all it changes every year because it's like when the weekend falls and whatever.
Aaron
00:31:00 – 00:31:12
Right.
Sometimes they just randomly change it.
So and there's huge, huge variance.
Like, some of the schools were, like, August 15th, and some of the schools are, like, September, you know, 4th or whatever.
So it's not, like, standardized or anything.
Aaron
00:31:12 – 00:31:25
So but my plan is to be there.
The user escape crew will be there for sure, and I'll be there 90% to be there.
Even if I could just fly in fine, like, if I if it's not on the 1st day, I could always fly in and make the 2nd day.
Aaron
00:31:26 – 00:31:27
We will see.
Oh.
Aaron
00:31:29 – 00:31:43
I hope so too.
Alright.
Caleb, Porzio just released some bleed videos as part of the, LiveWire, kind of training video series, which I love.
Definitely, you should all go buy that.
It's super good.
Aaron
00:31:43 – 00:32:04
If you're gonna do LiveWire, just, like, mandatory purchase because it's gonna save you so much time.
But, but yeah, just recently when it's not not really Livewire at all, it's just about bleed.
But, I think it's super useful.
Because again, I think there is refusing live wire deeply, like blade and live wire.
There's a lot you have to kind of understand there.
Aaron
00:32:04 – 00:32:15
Yeah.
Yeah.
That of how they overlap and where you should use 1 and the other.
And, the vast majority of the time, like we think you need a live wire component, like very often just use a blade component.
Mhmm.
Aaron
00:32:15 – 00:32:52
And that's what you should do because it just makes the mental model of everything much simpler if you're not thinking about, like, you have 20 nested Livewire components and the data they're passing around and all that stuff, even though that stuff has gotten much better in live wire 3.
So it is much better if you have to do that, but you should generally avoid doing that if you can.
So I think that's obviously why he's doing this is, like, to really highlight how you use components well and, to avoid needing to use them, use Livewire components instead of just a regular old vanilla blade component.
But, yeah, there's already some cool things there, and, I've only watched You
Aaron
00:32:53 – 00:32:56
I watched, like, half of it.
Yeah.
What?
This morning, I watched, like, half
Aaron
00:32:56 – 00:32:56
But,
Aaron
00:32:58 – 00:32:59
Yeah.
Yeah.
I'm right on it.
Aaron
00:33:01 – 00:33:04
a super fan over here.
Big business thing and just sitting
Aaron
00:33:05 – 00:33:06
cigars.
No.
I mean
cigars wearing a top hat.
That's amazing.
Aaron
00:33:09 – 00:33:23
Oh, I'd love a top hat, man.
Top hat is high on my list of things I would really enjoy.
Get a top hat.
What's not happening?
Me and my son, my oldest son, who over the weekend, we watched a a documentary from PBS on the building of the Eiffel Tower.
Aaron
00:33:23 – 00:33:41
And at one point, there was this old photo in there and everybody had a top hat.
It was and they're all, like, basically the same hot top hat except I mean, it's like a 100 people.
They all top hats.
You know, men, obviously.
And one guy's a bowler hat, and one guy has a top hat that's like tan or white.
Aaron
00:33:41 – 00:33:45
But everybody else just has a black top hat.
It is awesome.
Alright.
So here's the deal.
You fly out to Lyricon.
We do a live recording of the mostly technical podcasts on stage, and we'll both wear top hats and smoke cigars.
Aaron
00:33:55 – 00:34:00
Top hats.
Wow.
What if we get away with it's Texas.
We could probably get away with smoking cigars.
Texas, we can do whatever we want.
We can do it each other's face on stage, and it would be fine.
Aaron
00:34:05 – 00:34:07
Oh, it's Texas, baby.
Whoo.
Aaron
00:34:10 – 00:34:15
Alright.
That's a deal.
I like that plan.
Top hats.
Top hats for the, for the pod.
So the videos are good.
I think that's that's what happened.
Aaron
00:34:19 – 00:34:20
Videos are good.
Sidetracked.
Yeah.
The videos are good.
Aaron
00:34:22 – 00:34:44
Nothing much else to say really there, but videos are good.
I love it.
And then the next series he's doing is the one on SPAs, which I'm super excited for because everything I'm building is a live buyer SPA.
And I'm sure, you know, I'm there there are a few little quirks I already found and you gotta deal with, which is not too bad, but I'm sure he'll have some big insights there from the inside.
So I'm very, like,
super excited.
Him out, man.
Aaron
00:34:46 – 00:34:52
He is.
Yeah.
He's working working hard.
Stuff's happening over there in LiveWire Land.
So, yeah, that's really cool.
Aaron
00:34:52 – 00:34:59
I need to send an email about it too, which is nice.
Like, I feel like he's in the zone.
He's like making the content, letting people know about it.
Marketing guy.
Marketing.
Aaron
00:34:59 – 00:35:00
Good.
Yeah.
I think Good job, Kayla.
Aaron
00:35:02 – 00:35:10
Email newsletter.
I don't I don't I've tried, like, 5 times to build up an email list, but it just doesn't stick for me.
I don't know.
You you'll be honest?
No.
I mean, yes.
But I don't think I've ever sent an email.
Yeah.
So, but, yeah, I feel I feel that way too.
I feel like, you know, with the platform wars and the algorithms, email is still the last safe haven.
And I just feel like I really need to do that as I embrace my, you know, my creator era.
But no, I haven't I haven't quite cracked that nut yet, but I think I think I'm I think I'm gonna put some energy towards that because it does seem like the the right thing to do.
Aaron
00:35:43 – 00:35:56
Yeah.
I feel like you especially have some stuff I feel like you could hang it off of.
Although you have number of things, which is also then that that is always one of my problems.
Like, that's kinda tricky because, like, if you have a number of things, that's sort of weird too.
It's not just like the ultra focused.
Aaron
00:35:56 – 00:36:06
I'm only talking about this and Right.
We're all in on this one topic, and everybody's on board, and the train's going this way.
It's like, I don't have to do this stuff.
I do the other thing.
And Yeah.
Aaron
00:36:07 – 00:36:14
Yeah.
It's the me newsletter, which then that's kinda like what the podcast is.
So I don't know.
It's like I would like to have some, I don't know.
It's like about help spots.
Aaron
00:36:14 – 00:36:17
Like, b to b apps, not like a great thing to build out around below.
That doesn't move me.
Yeah.
Aaron
00:36:19 – 00:36:22
Yeah.
Exactly.
Like, you're not signed up for that.
So might have.
I don't know.
Aaron
00:36:23 – 00:36:26
So another thing I will never properly accomplish.
I'm sorry.
Yeah.
You've got a lot you've got a lot you've accomplished.
Aaron
00:36:30 – 00:36:31
Yeah.
More to do.
Alright.
Let's go from there to, inertia versus LiveWire.
So Mhmm.
Taylor recently tweeted again, just as a just as a reminder was his text, and then it was a quote tweet of himself, which is just total power move, quote, tweet of himself that was like reminder, it's not inertia versus LiveWire.
And like, they're not enemies.
They're friends.
Right.
So, to set the stage, LiveWire is, you know, live view, rails, turbo, HTMX, that's that kind of technology.
Inertia is for more JavaScript centric.
You can have an SPA without having to go full SPA, and you still have back end routes that sends data to the front end SPA.
So you would pair it with something like Vue or React.
So that's that's the context.
My question my first question for you is, did something happen recently where Taylor felt like he needed to remind everyone?
Aaron
00:37:28 – 00:37:37
I was wondering that when I saw that tweet.
I don't I I mean, I don't I I get I would guess yes.
Right?
Because he's tweeting it.
So presume so presumably, yes.
Aaron
00:37:37 – 00:37:58
But I'd have to say, I didn't, like, really see anything in particular where I'm just like, oh, like people are throwing down in the streets over, inertia or live wire or anything like that.
So I haven't seen anything, but I'm not always a 100% on top of that stuff.
So, yeah.
But it is a good reminder regardless that they kind of work together.
Yeah.
Aaron
00:37:58 – 00:38:09
I mean, the inertia is fine.
Like, I don't like it nearly as much as LiveWire, but, but if you're if you're all the I'd see.
I think it is full SPA.
It's still full SPA.
If you're using inertia, you are all in on SPA.
Aaron
00:38:09 – 00:38:19
It's just that, like, it's simpler.
So you have the connector and it knows some stuff about Laravel.
But even even though it's Laravel agnostic, I think.
It is.
But yeah.
But it's our protocol.
Yeah.
Aaron
00:38:21 – 00:38:42
Yeah.
For the different frameworks.
So, so, yeah, if you're in JavaScript land and then, you want to go that route, which I mean has its benefits as we've talked about before.
I mean, the the component story, especially of, that end of the world is far superior to Livewire still.
So, but there are some stuff out there.
Aaron
00:38:42 – 00:38:44
I was just playing the other day with the Mary UI,
Aaron
00:38:45 – 00:39:14
kind of an interesting little Livewire, component library and has some cool stuff.
It's, like, still definitely, like, in heavy development, and it is one of these challenges, all these component libraries have, which is, like, how much do you, like, design it or not design it?
And if it is designed, like, how do you customize that and all those things?
Are are they individual components you can just suck in 2 of them?
Or is it you gotta take the whole thing because there's, interconnectedness and stuff like that.
Aaron
00:39:14 – 00:39:32
So there was a couple little quirks to it, but it is kinda interesting if you're in that world.
And then, I, you know, I don't I don't think it's like a super top secret that, like, Caleb's working on some component stuff also.
So, so I think all that story over the next year is gonna get a lot better in LiveWire, as well.
Aaron
00:39:34 – 00:39:51
Sam.
I would like to see people do more commercial components too, hopefully, as it builds out.
Because, like, even if you have, like, an official library of components from Caleb and you have some open source ones and whatever, like, there's still just gonna be weird stuff that is more complicated than normal people wanna build.
Yeah.
Aaron
00:39:52 – 00:40:04
So having some more of those, like, as it expands into heavier use cases and where people are willing to pay money for solutions, I'd like to see more of that.
I think, like, Belo has one.
Aaron
00:40:05 – 00:40:11
Yeah.
Well, it does a couple things along those lines.
Like, it does, like, a command k type menu.
Uh-huh.
Yep.
Aaron
00:40:11 – 00:40:24
Things like that.
Far.
Where maybe he was, like, almost a little ahead of the curve.
So I think hopefully, he stays with that because I think if, like like, the curve is gonna catch up to him on Mhmm.
On that, and then, could could be good.
Yeah.
I want Filo to get rich.
He's a good guy.
Yeah.
Okay.
So here's my here's my take.
I used to be Yeah.
I used to be big Inertia.
Mhmm.
And now I'm big Livewire.
Aaron
00:40:38 – 00:40:40
Got him.
We got him in.
You got me.
It's just it's easier in my opinion.
Yep.
It's I don't know.
It's less it's less complicated, and I know that I know that the, so inertia has been, like, somewhat adopted by Laravel, you know, LLC, the company.
Right.
I don't know if there's inertia.laravel.com.
Like, there's livewire.laravel.com.
I think
Aaron
00:41:09 – 00:41:10
it's still its own
Aaron
00:41:12 – 00:41:14
site.
Yeah.
Yeah.
It's all in there.
JS.
Here's here's my here's my take on inertia.
I think inertia is awesome.
If if you wanna stay in JavaScript land, like, if you need a linear style app where everything is, like, a JavaScript component Right.
You're gonna use inertia for that.
I wish I wish inertia was a little bit more Laravel specific.
Yeah.
Because the, you know, the party line is inertia is complete.
Like, inertia is complete.
We're not working on it.
We don't need to work on it because inertia is complete.
But then you go and you look at the issues, and it's like, I've opened a few issues about, like, inertia with, Vue JS.
And it's like, I mean, it is complete, but there are still things, like, I don't think modals I don't think modals exist in inertia.
Aaron
00:42:03 – 00:42:07
Yeah.
That you can't do modals, or not.
It it's tricky anyway.
Yeah.
Like, modal routes don't exist.
And that was promised, you know, years ago.
And there's another one about, like, named slots.
I was when I was building something, I was trying to use named slots with inertia, and it's like, ah, we don't support that.
And so I feel a little bit like, oh, man.
This is, you know, while respecting that the protocol is is feature complete, I feel a little bit like, oh, this is kinda it's over.
Like, I wanna see somebody push it on the view side or the Laravel side or something.
I don't I can't speak to, like, the rails or the react side, what they've got going on there.
But But I just felt like the Laravel view story was a little bit, stagnating.
Aaron
00:42:47 – 00:42:48
I do feel like,
hey.
Should should I help that out?
Is that mean
Aaron
00:42:50 – 00:43:07
I mean, that's the I started using it.
I've the next generation HubSpot was an inertia app, and then, like, it's like, nah.
It's just not like this.
It's just too many of those, like, problems.
And then it's hard to, like, build such a foundational element on something that you know is never gonna be worked on again.
Aaron
00:43:07 – 00:43:17
Yeah.
So, like, it's hard.
Like, I feel like there's just I mean, there are issues, open issues in the repo.
Right?
And, like, so presumably, even if half of them are bogus, like, half of them are probably not bogus.
Aaron
00:43:17 – 00:43:24
And I'm gonna hit those things someday, and I'm gonna know that there is no fix ever coming.
Right.
Aaron
00:43:25 – 00:43:27
And, yes, I can fork it, whatever, blah, blah, blah.
But, like I'm
Aaron
00:43:30 – 00:43:43
Deeply core thing too.
It's like for that?
Yeah.
So, I mean, and then the whole rest of the ecosystem, like it's like, I think it's an unfortunate place for it to have that set up because it's like Vue, there's stuff going on.
In React, there's tons of stuff going on.
Aaron
00:43:43 – 00:43:49
In Laravel, there's tons of stuff going on.
So, like, on the front and the back, it's like, oh, man.
It's like full steam ahead.
But then the thing that talks between them
Aaron
00:43:51 – 00:43:57
Is never gonna get updated ever again.
And it's like Right.
Oh, man.
Like, I don't know.
Like, is that how realistic is that?
Aaron
00:43:57 – 00:44:18
Like, is that it doesn't seem realistic to me that that's possible.
So, I mean, again, like, maybe it won't be possible, and then they'll be like, yeah.
We're gonna fix it and make it better and put some resources into it.
And I know Laravel's, like, expanding here lately, and so maybe they'll have more people to even do that.
But still, it does feel like a bit of a weird spot to depend on something that you know is at least the stated position is they're not gonna work on anymore.
Aaron
00:44:18 – 00:44:31
So Right.
To me, definitely, like, a pretty big downside.
And then, yeah, I do find LiveWire much simpler overall.
There are definitely some gotchas, but I mean, that's true with all this stuff.
So it's hard to be like, that's not like a huge ding on it.
Aaron
00:44:32 – 00:44:56
And I I also think it's gonna be an area I think we talked about before, but where it's gonna get better over the coming year where, like, there'll be more dev tools around it and more Yes.
You know, Caleb wants to do some stuff where maybe it's a little easier to see exactly what's going on without having to try to, like, manually, like, look at the messages going back and forth and Right.
Figure out what's up, in that way, visualize it a bit more.
So I think especially when we're doing that
stuff livewire is just is just cooking, man.
Yeah.
That that was the big turning point for me.
It was LiveWire 3.
Aaron
00:45:03 – 00:45:04
3 is huge.
Yep.
Aaron
00:45:05 – 00:45:21
Yeah.
And so much stuff change.
And like all this stuff when you do have to do weird stuff, like how the livewire components talk to each other and be nested and stuff, like all that stuff got a lot better.
All the networking ever got a lot better, you know, for, like, these real world uses where you actually do have a lot of data.
It is a big app.
Aaron
00:45:21 – 00:45:44
And, it's not just like you know, I think it started out a little more like, hey, 1 you have this one widget on your screen that's, like Right.
Needs to do something reactive, and so just use LiveWire and you drop it in there.
It's just that one thing and it's simple.
But when you have, like, the whole app is those things, like, obviously it's much more complicated.
So, yeah, so I think that's really, they put a ton of work into improving that and Yeah.
Aaron
00:45:44 – 00:46:01
Of course, especially.
And, so, yeah, I think it's, like, really paid off.
And the SPA mode, I mean, if you haven't tried SPA mode or you haven't tried LiveWire since they added that, it's actually humongous change, that really kind of revolutionized it.
I mean, it is just as fast as React now.
It's like instant crazy.
Aaron
00:46:01 – 00:46:13
And Wild.
Our boy DHH, he's stealing stuff from LiveWire.
I know.
They just added to turbo.
They're like, oh, let's let's do this mode where when you hover and it goes and gets it.
Aaron
00:46:13 – 00:46:22
I don't even use the hover mode currently in the live wire, setup, but but yeah.
So, yeah, LiveWire.
Great.
Well I'm not a hater.
Sorry, Taylor.
I'm not a versus.
I'm not a hater.
Aaron
00:46:26 – 00:46:41
No.
No.
I don't hate inertia, but I think it's just, you know, what you like.
I mean, obviously, I think both of us are not, like, super JavaScript oriented people to be in with.
So that's also, like, inertia is obviously forcing you down the, like, yes, the entire front of your application is going to be JavaScript.
Aaron
00:46:41 – 00:46:50
Like, that's what it is.
So, so I think that's also we are it's not it's our default state to prefer LiveWire, I think, especially now that we got you in there a little bit.
Yeah.
You got me.
It's crazy.
Aaron
00:46:52 – 00:47:05
I I can't wait now.
We get these babies settled down.
We get all the other stuff settled down.
We get you some time to do some real hacking when you can get back on the computer then then we're gonna have some hot Livewire takes, some feisty Over
Aaron
00:47:07 – 00:47:10
When he gets back in the ring, forget about it.
You're all a joke.
Aaron
00:47:11 – 00:47:16
Oh, man.
Alright.
What else?
We wanna do this?
D DTOs?
Aaron
00:47:16 – 00:47:19
I don't know.
Is this gonna be too is this too heavy for you?
Yeah.
I don't have much on DTOs.
Do you have a lot on DTOs?
Aaron
00:47:23 – 00:47:27
I mean, I I've been in them a lot lately, so I have a little bit a little bit
on Alright.
Tell tell me We could save that.
Your DTOs.
No.
Tell me.
What what are we what are we at right now?
We're
Aaron
00:47:33 – 00:47:53
Well, it's it's sort of interesting because it's coming around a little bit too because, the other thing Caleb talked about today, I think I think he put a video out on it or maybe just talked about newsletter.
I didn't get that far with it.
But he's talking about, basically, he added DTOs to LiveWire with what he calls them the form objects.
Give us give us that 101 on on DTOs for the uninitiated.
Aaron
00:47:58 – 00:48:32
So it's a data transfer object, and so it's basically just a way to have this object that's like a plain p p object in theory, although there's the the spot c one is a little different than that.
But, where it lets, so you just have a way to like transfer data around your app in a safer and cleaner, way.
So like whether it's coming in from a form that turns into one of these DTOs and then your internal code.
Expects the DTO and then can operate off that data.
And the DTO maybe transforms the data if it needs to.
Aaron
00:48:32 – 00:49:00
It validates the data, things like that.
So you kinda have this layer between the users and your internal code.
Or and then it also works the other direction, where you have stuff internally, like maybe a API.
Right?
And you wanna send something out of the app, like you're gonna transform your eloquent model into a DTO, and then you're going to have a nicer, easily JSON able, object that you can send back out.
Aaron
00:49:00 – 00:49:02
So instead of
passing around arrays with all these magic keys that you just kinda have to, like, as the developer, just, like, know that these keys are going to exist or not.
You pass the magic array into a DTO.
The DTO validates bunch of stuff and turns them into, like, class properties that then your IDE can, like, actually use and get auto complete and that kind of stuff.
Aaron
00:49:24 – 00:49:40
Yeah.
You get that kind of stuff too.
Yep.
The things I really like about it, it is a different way of thinking, and it has tripped me up a little bit from just like, oh, because obviously Laravel do a bunch bunch of stuff for you.
Like, you can just return the model and, like, it'll do something reasonable with it and stuff like that.
Aaron
00:49:41 – 00:50:09
But I do really like, that you always know exactly what's in the DTO.
So, like, I'm never gonna send something out of the app that I don't want to be exposed because like, there just simply is no password in the DTO.
Like, I don't have to worry about it if I like remember the guarded or billable or whatever way you wanna handle that stuff.
Like doesn't matter because I'm never sending anything out of the app from the model directly.
It's always gonna be turned to a DTO first, and then that's clean.
Aaron
00:50:09 – 00:50:26
And then the reverse too, like, I'm never being sent something in where somebody's gonna send in something tricky or pass something I don't expect that gets past my security because it's always going to be a detail first.
So I know what I'm getting in and I will only ever contain those things.
And then
also push all the push all the unknowns to the boundary, and then once it's in your app, you're you're safe.
Aaron
00:50:31 – 00:50:48
Right.
Exactly.
Okay.
And then the other part that's super annoying to me in app development is just, like, validation rules because it's like you have all these different places.
Like, you can use form request, but then sometimes you have to validate things other places and like the form request doesn't really.
Aaron
00:50:48 – 00:51:01
I don't know.
Maybe there's some way to hockey make it work there, but it's not, like, designed to work there.
Right?
And so it's like, well, maybe I'll put the validation rules, like, in the models.
And then I guess that's okay, but that's kinda weird in its own way and, like Yep.
Aaron
00:51:01 – 00:51:26
So this also gives, like, the nice place for the validation rules.
It's like the DTO is has all the validation rules, And so it's validating everything.
And then I'm using this in all different places.
So everywhere I would need validation, like, the DTO is handling it.
So I I find that super nice because, like, just the one spot to look for validation rules always instead of having it in multiple spots or coming up with weird convoluted, things like that.
Aaron
00:51:28 – 00:51:45
So, yeah, so the what I've been using is Laravel beta, which is the spot c.
I haven't said that name wrong, but I think it's spot c package.
Spot c.
And, which is really awesome package.
It is sort of insane, because it just is,
Aaron
00:51:47 – 00:51:56
Does a lot of tons of magic.
There's tons of like, it does way more than what I just described.
Yeah.
Like, it can make type TypeScript definitions for
your if you're into that.
Aaron
00:51:58 – 00:52:00
If you're inside of this course.
Aaron
00:52:01 – 00:52:29
Which is like, again, like, once you have to find the data coming in and out of your app, like, you can do other magical sort of things because it's like, well, now I have this information very structured, and I I can create types of definitions or I can, you know, transform it in different ways and things like that.
So it does a lot, because it does so much like the docs are a little bit tricky.
It's a little, it's some heavy reading when you read.
It's definitely one you wanna read front to back.
You want the Aaron model.
Aaron
00:52:29 – 00:52:48
You gotta don't just need the 2 pages you think you need because, like, the you need more than the 2 pages.
So it's a little bit of heavy lifting there, but, like, once you're in there, it is very nice, and it does do a lot of things for you that you will ultimately want to do.
So, yeah, it's pretty cool.
I don't know.
I just wanted to mostly bring it up.
Aaron
00:52:48 – 00:53:24
There are some tricky bits when you're using it for, like, forms and with LiveWire, which it does handle with LiveWire, but it's like you get past IDs for things, but then you have to kind of transform those into the actual items and whatever.
It's gonna be too hard to talk about on a podcast, but, there there it does takes a little bit of work on your mental model and some trickery.
Trickery is not the right word, but just there's some steps you have to take to make it work, I think, for for you.
A little bit of time in there, but so far, I'm really digging it.
So I wanted to give a shout out to the DTOs and, like, a feels like such a real programming thing.
Aaron
00:53:24 – 00:53:25
So I don't get a lot
Aaron
00:53:26 – 00:53:28
real programming with power
Aaron
00:53:29 – 00:53:29
Things like that.
Aaron
00:53:29 – 00:53:36
Yeah.
I I don't I don't know.
Patterns.
Like, I couldn't name you another pattern probably, but, there we go.
I got a pattern, and I kinda Got
a pattern.
So Get your program card.
Yeah.
You're you're you're you're big proper programmer these days, and I'm I'm here for it.
I get
Aaron
00:53:44 – 00:53:45
no idea.
Yeah.
It's like, this this DTO thing is interesting.
It's like a whole another it's like a whole another entity.
You know, you've got models, you've got controllers, you've got, you know, migrations, and now you've got DTOs.
Aaron
00:53:58 – 00:53:59
Yeah.
It's
like, it's interesting.
It's not something I I have done a lot of.
Aaron
00:54:03 – 00:54:25
It is this weird world now too where, like, I don't really have controllers, in a sense because I'm using Livewire full page components.
And so it all just gets passed into Livewire.
So it's like it is obviously, like, sort of a controller, but it's not like I have a controller where I'm then calling stuff directly in the control.
I'm doing stuff in the Livewire component.
So there is, like, this bit of a weird world there.
Aaron
00:54:26 – 00:54:49
And, yeah, this is also partially because I got again, like, I do know this domain really well.
It's like I know the security stuff around it pretty well.
So it's like pretty straightforward in theory to kind of model it.
Although it is it is does get interesting when you have, like, the the bigger data objects where it's, like, a more central part of your app.
And, like, there's these other data objects that make up your bigger data object and how that all works together.
Just turtles all the way down.
Yeah.
A little bit turtles all
Aaron
00:54:51 – 00:55:22
the way down, but then it's, like, kinda awesome because, like, well, this here's the thing where I know every piece in this has been validated.
I know every piece in this is in the format that, and a safe format to send back to the user.
So it is super awesome that way, to just have that there, just to use in that way.
And then when you're using it with these front end frameworks, whether even with LiveWire, it's like, I don't wanna pass stuff back in the LiveWire, calls that would expose things I don't wanna expose.
And so it's like, yep.
Aaron
00:55:22 – 00:55:29
I just, like, pass the DTO around.
It's got all the data.
I know it's all safe and nice and wrapped up.
So Yep.
Pretty cool.
I think everybody runs into this at some point when you have, like, a a model or an action or a request or something where the user can initiate it from a form.
The user can initiate it from an API request.
You can run it from a job or the CLI command, or the user can bulk import it.
And you're like, alright.
This this thing this thing can enter my application or separate places.
Yep.
Where am I gonna put the validation for all of this?
And you end up making up I think I've done a poor man's DTO and made made up stuff like that Right.
Because it's like Right.
I gotta centralize it.
I can't have the importer using its own set of validation rules versus
Aaron
00:56:08 – 00:56:09
the You know you're gonna mess that up, like, at
some point.
You know?
Like, that's a deep
Aaron
00:56:11 – 00:56:18
bug in the future.
So you you hate that when you do those things that's like, I know for sure this is gonna be a bug in a year.
Like And I'm
just not gonna remember this thing.
Aaron
00:56:20 – 00:56:23
Ahead, baby.
I just gotta do it, though.
I am I am actively writing legacy code right now.
Aaron
00:56:27 – 00:56:40
Exactly.
Exactly.
That is what's crazy with, like, how I'm approaching this like next generation help spot stuff.
Cause it's like, I'm just super taking my time and it's just gonna take forever and I'm just okay with that.
And it's like, I'm gonna figure out DTOs.
Aaron
00:56:40 – 00:56:43
I'm I'm just gonna spend the time to do it, and that's just gonna be
Aaron
00:56:44 – 00:56:49
it is.
Awesome.
And it'll be fine or it won't be, but it'll probably be fine.
And, if you can do it that way.
Yeah.
Aaron
00:56:49 – 00:56:59
Probably be fine.
We still have customers buying the current HubSpot.
So it's not like a mega rush, and there's 8,000,000 competitors already.
So we're not gonna beat anybody to anything.
Like, it's just gonna do in our vision.
Aaron
00:57:01 – 00:57:05
Doesn't feel quite like life of leisure, but, yeah, I'm trying to prove you like a
Aaron
00:57:06 – 00:57:16
I'm trying to make because, like, my instinct is to, like, of course, like, anybody be like, I wanna get this out.
I don't wanna work on it forever.
You get bored of working on it.
You get annoyed at working on whatever.
It's It's like, just chill.
Aaron
00:57:16 – 00:57:20
It's gonna be alright.
I gotta get this light on me.
I know.
You gotta control your environment, man.
Aaron
00:57:22 – 00:57:30
I know.
I didn't put I didn't think the sun was gonna be it's weird.
Alright.
Anyway, what else you got?
I got I got one more.
I got, I got nontechnical.
Good.
I am on I am on 2 cups max of half calf coffee.
Aaron
00:57:41 – 00:57:44
Oh, he's going.
And I gave up
I gave up Diet Cokes weeks ago.
Aaron
00:57:46 – 00:57:50
You gotta give up the thought.
Yeah.
That's that's just good.
It's gone.
That's just horrible.
Aaron
00:57:50 – 00:57:52
That's terrible for you just in every way.
So that's good.
The tiny the tiny light of joy in my life has gone out since giving up that.
So it's I don't
Aaron
00:57:57 – 00:58:00
feel like that when you give these things up.
Yeah.
That's true.
Yeah.
It's just so man, Diet Cokes, they're so cold, and they're so bubbly.
Jeez.
They're just great.
Aaron
00:58:06 – 00:58:07
Tried, seltzer?
Aaron
00:58:09 – 00:58:14
You can do seltzer as a replacement.
Squeeze some juice in it.
Keep it cold.
Oh, that's the lamest thing I've ever heard.
Squeeze some juice in
Aaron
00:58:18 – 00:58:23
it.
Woah.
Oh, my gosh.
Diet Coke is especially bad.
Diet version.
Aaron
00:58:23 – 00:58:24
Come on.
If you have a Coke
Diet Coke is great.
Diet Coke is the best the best soda possible.
Aaron
00:58:30 – 00:58:31
I I don't know about that.
Unless you unless you have a functioning pancreas, in which case, Doctor Pepper.
Ice cold Doctor Pepper.
In fact, the pure cane sugar.
So it's like the Mexican Coke, but the Doctor Pepper version.
I mean,
Aaron
00:58:43 – 00:58:49
I haven't had Doctor Pepper in 20 years.
I should I should get a Doctor Pepper.
Aaron
00:58:52 – 00:58:54
I was just reading this very no.
Go ahead.
So, anyway, diet Cokes are gone, have been for a few weeks.
I had been cutting off coffee around, you know, noon or 1, but but I was still having, you know, a giant latte A lot of coffee.
Yeah.
Along with, you know, 2 or 3 cups of half caf.
We brew half caf at home just because we like to drink coffee.
Yeah.
So now I'm now I've cut out the latte altogether.
It's a decaf latte fully.
If I get one, it's fully decaf, and I'm limited to to 2 2 cups of half calf here at the house.
Because the sleep, man, the sleep is not great.
Aaron
00:59:30 – 00:59:31
Sleep is so key.
Everything's not great.
I'm waking up I'm waking up 2 or 3 times a night just, like, wide awake.
Aaron
00:59:38 – 00:59:48
Yeah.
I mean, you gotta watch that stuff, man.
The sleep, the other thing would be sleep apnea too if you wanna go down that Yeah.
Path.
But I would definitely start with the caffeine cut now.
Aaron
00:59:48 – 00:59:50
I wanna have sleep apnea,
so I'm not gonna look into it.
Aaron
00:59:51 – 00:59:53
Alright.
No.
One more thing.
Aaron
00:59:53 – 01:00:14
yeah, that's the thing.
If you the sleep is like the foundation of everything.
As soon as the sleep goes, everything else is shit.
Like, that's just the way it is because, like, even the things you have, you're so much less resilient to them because, like, when you're tired, you just get overwhelmed so much easier and all that stuff.
And then obviously, this stuff is actually worse because you're tired and things don't function in your body properly when you're, you know, when you have, like, that deep tire.
Aaron
01:00:14 – 01:00:21
And you don't even necessarily know it.
It's like you think you're operating fine until, like, you really realize, no.
I'm not actually operating fine.
I don't think I'm operating fine.
I've come home from, like, wherever I've been and or I've been at home already and, like, crashed from 1 o'clock to, like, 3:30 most days.
I'm just like, I cannot keep my eyes open.
It's Yeah.
Aaron
01:00:36 – 01:00:41
It's terrible.
2 hour naps.
You know that it's probably not possible sleeping bad.
Aaron
01:00:42 – 01:00:49
I mean, you obviously have other factors, but, but still, like, you you saw the night nurse?
Is the night nurse still there or
no?
Ian, this is the last week.
Aaron
01:00:51 – 01:00:53
Oh, so yeah.
That's
like We don't have her tonight, but then we have her Wednesday, Thursday, Friday, and that's it.
Aaron
01:00:57 – 01:01:05
Yeah.
That's a bummer.
It's a bummer.
I was gonna say it'd be good to optimize those nights if you're getting full nights at least no nights, but you won't actually have her.
Aaron
01:01:07 – 01:01:07
out I
ran ran out of money, and so can't can't pay her,
Aaron
01:01:10 – 01:01:14
you know, $1,000,000 every night to come over to the house.
Yeah.
Yeah.
She has another family coming up too, actually.
So that's that's the real reason.
Aaron
01:01:22 – 01:01:26
Well, how's it going so far with that?
Have you noticed any changes or not yet?
No.
Not yet.
And I started, you know, a few days ago.
Aaron
01:01:29 – 01:01:30
Yeah.
I think so, but
gotten there.
I think, you know, I think, honestly, the goal is to go full decaf at some point.
Aaron
01:01:37 – 01:01:42
Yeah.
I mean, I don't know if we talked about this, but, you know, the decaf has calf.
Like, I hate to tell you that, but.
Yeah.
What's that?
It's supposed to it's in the name.
Aaron
01:01:45 – 01:01:55
It's all lies, man.
The decaf has calf.
No.
The decaf is full of calf.
Like, it's less caff than full caffeen, but there's still a permanent caffeine.
Caff does a decaf have?
If a decaf could have caff.
Aaron
01:01:59 – 01:02:16
No.
It's got more than you would want.
It also just depends, like, how they're doing it.
It was, like, the different ways.
The one that's, like, less toxic to remove the caffeine, let's do more caffeine if I recall, you know, obviously, the one that's like kind of more toxic does do a better job removing caffeine.
What what do you mean toxic?
Are they using, like, mercury to remove it, or what's going on here?
Aaron
01:02:20 – 01:02:30
It's, like, really, actually, horrible stuff to remove the caffeine from coffee.
If you, you know, you probably don't wanna look into that if you're thinking about drinking decaf coffee.
But right now.
Benzene, I think they use.
Something like that.
Isn't that like an industrial cleaner?
Aaron
01:02:34 – 01:02:36
Yeah.
That's that's it.
That's the stuff.
Hey.
Hey.
If it's good if it's good enough for, if it's good enough for manufacturing equipment, it's good enough for me.
Aaron
01:02:43 – 01:02:44
It's good enough for my liver.
Okay.
How much caffeine is in decaf coffee?
Decaffeination.
This is this is from Google Snippets, so I have a 0% confidence in this.
Aaron
01:02:56 – 01:02:56
Sure.
Decaffeination removes about 97% of the caffeine and coffee beans.
A typical cup of decaf has about 2 milligrams of caffeine compared to regular, which has 95.
Aaron
01:03:11 – 01:03:19
Yeah.
So still some, but also depends again, like, you know, where you get it.
Are they testing?
Yeah.
This is like they test it once and, like, who know the process?
Aaron
01:03:19 – 01:03:21
You know?
I don't know.
All that stuff
very fuzzy.
Is is it more for me?
Sacred, decaf coffee, that's the fact
Aaron
01:03:25 – 01:03:37
that you gave it up.
I gave I gave up I had to give it up all decaf, caff, the whole thing for it to, like for my sleep to get.
Right.
But that's not true of everybody.
I mean, there's definitely people who drink lots of caffeine and they sleep fine or whatever.
Aaron
01:03:37 – 01:03:56
But, Yeah, I I think it's also one of those things where like combined with stress and stuff like that, it it's extra bad, you know, because it's like, you get a little awake.
You're not you're you're not sleeping as deeply to begin with because the caffeine just takes that off a little bit.
And then if you're super stressed, like, when you do, you know, get woken up, you, like, then stay awake
Aaron
01:03:56 – 01:04:04
thinking about stuff or whatever.
Like Yeah.
So it kind of builds there too.
But, yeah, caffeine, man.
It's bad stuff.
Aaron
01:04:04 – 01:04:06
I try to tell everybody nobody listens to me, though.
But Man, everywhere you turn, everywhere you turn, they're trying to catch
Aaron
01:04:10 – 01:04:11
up.
Anything.
You can't have
anything anymore.
You can't have anything.
Aaron
01:04:13 – 01:04:13
I know.
When I was a kid when I was a kid, I used to drink, like, 6 sodas
Aaron
01:04:16 – 01:04:17
you want.
Run-in a circle for an hour and then fall asleep
Aaron
01:04:19 – 01:04:19
for, like, 12 hours.
Aaron
01:04:20 – 01:04:21
Sleep right there.
Aaron
01:04:22 – 01:04:37
I know.
It's terrible.
This is all all part of the horribleness of discovering that, like, you're the same person as a kid that you are as an adult, but, like, the adult body you're in now is, like, doesn't perform the way the kid body did.
So now it's like that's like the
Aaron
01:04:38 – 01:04:43
asymmetry there.
Yeah.
It's a disaster.
It's not good.
Like, when you were 10, you were invincible.
I was invincible.
One time one time, I fell off the roof, and I was totally fine.
Aaron
01:04:49 – 01:04:50
Oh my gosh.
I was I was invincible.
I was out on the roof.
Just
Aaron
01:04:53 – 01:04:54
bounced up.
Yeah.
I did.
I walked in the back door.
It was like, hey, guys.
I fell off the roof.
I was, I we had a 2 story house, and I lived, you know, my room is on the 2nd story, and I saw icicles out the window.
So I climbed out the window, obviously, with a hockey stick, obviously.
That.
And I was, like, scooting along under the eave where it wasn't iced, and I was hitting I was hitting the icicles and watching them slide down the frozen roof and hearing them land on
Aaron
01:05:17 – 01:05:17
Sounds awesome.
Below.
It's totally awesome.
I I can't do that today.
It was totally awesome.
And I got one foot outside of the the safe zone and slipped on the ice.
So I'm sliding down the ice in in my underwear holding a hockey stick, and I'm like, I'm about I'm about to fall on the porch upon which the ice
Aaron
01:05:37 – 01:05:39
Holy shit.
Shattering.
And I think, you know what?
The porch isn't that big.
I bet if I just push off at the end, I could clear the porch.
And so I I reached the end of the 1st story roof, and I push off, and I go Oh my god.
Move right over the porch into the grass, do a little tuck and roll, and literally walk in the back door where my parents are sitting on a Saturday morning in my underwear, and I'm like, hey, guys.
I just fell off the roof.
I'm gonna go put some clothes on.
Aaron
01:06:05 – 01:06:08
This is the craziest story I've ever heard.
That's unbelievable.
Aaron
01:06:11 – 01:06:14
You're indestructible.
You're super cute.
I was.
I was.
Now now if you look at me sideways, I'll die.
Aaron
01:06:19 – 01:06:26
Just the, like, speed of thought there.
Your mind can't work that quick now.
Like, how how fast your mind works there?
You know?
Yeah.
Aaron
01:06:26 – 01:06:31
probably you probably, like, had, like, 30 minutes of time.
It was, like, all slow motion.
You're like, okay.
Aaron
01:06:33 – 01:06:38
Yeah.
Bullet time.
I'm just gonna give a nice solid push as I leave.
I'm gonna fly through the air.
It's gonna be no problem.
Aaron
01:06:38 – 01:06:41
Like, now you'd already be on you'd be on the concrete broken
Aaron
01:06:42 – 01:06:43
thought that I'm sliding.
Aaron
01:06:44 – 01:06:47
Oh, I'm sliding.
Cool.
I'm dead.
I'm dead.
Percent.
Aaron
01:06:47 – 01:06:51
Yeah.
Yeah.
Woah.
Wow.
Not not what we used to be.
Aaron
01:06:53 – 01:07:00
Man, you were brave.
I used to just, throw a baseball at the, bicycles and watch football, but, I never got off down the road.
Kid thing in the world.
Like, there's some high schools.
I'm gonna get a hockey stick and knock them off.
Aaron
01:07:06 – 01:07:08
Just think you have 4 kids who are gonna
Aaron
01:07:08 – 01:07:13
Is that you have to have to, be worried about climbing out on your roof.
Yeah.
Yeah.
4 kids that are gonna fall off the roof
Aaron
01:07:15 – 01:07:16
and walk in and be like,
hey, dad.
I just fell off the roof.
Oh my god.
What?
Aaron
01:07:19 – 01:07:21
That's what you did as a kid.
Aaron
01:07:24 – 01:07:25
That's a good close look.
Aaron
01:07:26 – 01:07:31
I think that's it.
I don't think we could top that.
We gotta we gotta leave them there.
Oh, man.
Alright.
Aaron
01:07:31 – 01:07:40
Thanks, everybody.
Mostly technical.com.
Make sure you subscribe, like, go to the YouTube.
You can see this light on my face for the whole episode.
Very cool.
Aaron
01:07:41 – 01:07:57
Mostly tech pod.
Give us feedback on Twitter there as well as mostly technical podcast atgmail.com for, feedback via email, and I slash we, the royal we, will read them.
Have a good week.