Texas Weather, Hotwire Success, and Refinements

February 22, 2021

Aaron gets pushed out of his house for a week thanks to the freak storm. Sean makes some great progress on Hotwire.

Transcript

Sean
00:00:03 – 00:00:07
What's up, Aaron Francis? How's your,
Aaron
00:00:08 – 00:00:29
That's not the intro we talked about. Well, first sexist. What's up with me is I am sitting in my house for the first time in 5 days. So I do live in Texas in Dallas. We woke up on Monday morning to a, like, 50 degree house, and so we bailed.
Aaron
00:00:29 – 00:00:44
And fortunately, our friend, the one person we've been quarantining with has not lost power, so we went and stayed with her, all week. So we've been there today's Friday. We've been there all week. And then
Sean
00:00:44 – 00:00:46
attic or something. Right?
Aaron
00:00:46 – 00:01:10
Yeah. So she lives it's like a duplex, and then the landlord converted the attic above both units into a 3rd unit. And so, the deal when they moved in was they don't have to pay for utilities because it's so poorly insulated. So even, even in her, even in her attic, it's been like 58, 59 all week. So it's been, it's been kind of a rough week.
Aaron
00:01:11 – 00:01:35
I came home on Wednesday to check the house, found a burst pipe, which I successfully repaired, despite getting sprayed in the face with water one time. I did repair it. So I fixed that and then the shower wouldn't turn on. And so I just left it because I thought, there's a pipe that's frozen that'll fall out. And my neighbor came over that night and checked on it for me.
Aaron
00:01:35 – 00:01:56
And the water was spewing from behind, like behind the handle. So that was bad news. So shut it all down. And then I was able to get a plumber out this morning, Friday morning, and it was the it was the handle itself, not a burst pipe in the wall. So we don't have to do a bathroom remodel right now,
Sean
00:01:56 – 00:01:57
which is
Aaron
00:01:57 – 00:01:58
the last thing I need.
Sean
00:01:58 – 00:02:02
So I mean, it's not awesome, but, you know, tons of outcomes for how that could have gone.
Aaron
00:02:02 – 00:02:12
Seriously. So my wife is still over at the friend's house. Once we finish up here, I'll go over back over there, pick her up, pack everything up, and then we'll be home.
Sean
00:02:12 – 00:02:14
Is it warm in your house now?
Aaron
00:02:14 – 00:02:30
It is. Yeah. So we got consistent power maybe, like, Wednesday evening. So we were totally powerless for, like, 48 to 60 hours. Just no power at all.
Aaron
00:02:30 – 00:02:30
I haven't And
Sean
00:02:30 – 00:02:32
it was, like, 2 degrees out.
Aaron
00:02:32 – 00:02:48
Yeah. So the inside of the house hit 38, inside. And so I think that's what caused the valve in the shower to just freeze up. It's on an exterior wall and then the inside of the house is 39. I just it didn't stand a chance.
Aaron
00:02:50 – 00:02:59
So, yeah, we finally got consistent power Wednesday evening, and now the house is warm. So just a huge disaster.
Sean
00:03:00 – 00:03:11
Yeah. It seems like I mean, it's huge pain in the ass for you guys, but it also sounds like, based on what I'm hearing from other places, it could have even been worse.
Aaron
00:03:11 – 00:03:24
Oh, yeah. It was it was a huge pain for us, but it was that's all it was, was just inconvenient. It could have been, it could have been so much worse. So we're grateful for that.
Sean
00:03:24 – 00:03:35
Even Those are absolutely dangerous temperatures. People having no heat Yeah. You know, in the middle of a pandemic. People trying to decide if it's, you know, okay. I guess we're all gonna huddle up together.
Aaron
00:03:36 – 00:03:58
Yeah. And, I mean, with our Crazy. Our COVID restrictions, we're lucky that like, we're lucky that the one person we've been quarantining with that follows our same rules. We're lucky that she had power because if not, I don't know, like, we would have gone to a family's house, but that would have been uncomfortable. Plus we have our dog, and we don't know, like, they would have been uncomfortable with our dog inside their house.
Aaron
00:03:58 – 00:04:02
And so it just it worked out well.
Sean
00:04:04 – 00:04:05
Pretty nuts.
Aaron
00:04:05 – 00:04:09
Yeah. So how was your week?
Sean
00:04:11 – 00:04:16
But less dramatic. Yeah. Yeah. I mean, we did. So that's the thing.
Sean
00:04:16 – 00:04:45
I think Chicago would have been the weather news headline normally of the week, except, you know, Texas took that one away from us. Because we've had we've had the, equivalent of an entire winter's worth of snow, like, an average winter's worth of snow in the last 11 days. Woah. It snowed every day for, I think, 12 consecutive days, and which is a record that's never happened before in recorded history. Woah.
Sean
00:04:46 – 00:05:04
That meant that means now that I just every time I walk out to my garage, I feel like I'm walking through the rebel, like, snow tunnels on the planet hot. I mean, it's it's insane. It's up to my shoulder. There's sheer, like, cliffs of snow. The whole backyard is buried.
Sean
00:05:05 – 00:05:25
There's, like, a chain link fence in one of my neighbor's yards, and you can't even see it anymore. That's just like the whole yard is filled with snow. It's it's nuts. But there's hardly any spots, you know, to park and took me after the last dump. I've been shove shoveling snow every day for, like, 2 weeks is what it feels like.
Aaron
00:05:25 – 00:05:25
Dude.
Sean
00:05:27 – 00:05:45
So, yeah, it's been it's been pretty crazy. And then yeah. And so it was almost a little bit validating to hear that that this indeed was a record amount of snow because I've certainly I've been here for a long time. And I've we had a blizzard which dumped about this much snow in one day.
Aaron
00:05:46 – 00:05:51
And I think I remember that. I think I think we were friends when that happened, and I remember seeing pictures of that.
Sean
00:05:52 – 00:05:54
Oh, no. It was before. It was, like, about
Aaron
00:05:54 – 00:05:54
10 yeah.
Sean
00:05:54 – 00:06:10
It was about 10 years ago. So we called it snowpocalypse. There's if you Google it, you'll just see pictures of cars stuck on Lakeshore Drive. It just looks like an actual apocalypse. Like, there's just people had to abandon their cars, thousands of them, on the on Lakeshore Drive.
Sean
00:06:10 – 00:06:23
They got carried. Yeah. It was it was about this amount of snow, though. Because I remember looking around, and, yeah, it felt like about this much snow. So but that's like a once in a lifetime kind of event, and then
Aaron
00:06:23 – 00:06:24
So they say.
Sean
00:06:24 – 00:06:26
Yeah. Hopefully.
Aaron
00:06:26 – 00:06:26
Hopefully.
Sean
00:06:27 – 00:06:28
I've had enough of those
Aaron
00:06:28 – 00:06:29
I have 2.
Sean
00:06:29 – 00:06:36
For one lifetime. That's Seriously. Yeah. But, anyway alright. Enough about the weather.
Sean
00:06:36 – 00:06:39
It's been been fun dealing with that and trying to still make progress and stuff.
Aaron
00:06:39 – 00:06:40
Yeah.
Sean
00:06:42 – 00:06:52
But we did we did make some really good progress this week. The I got the Hotwire version of the query builder working Which is huge
Aaron
00:06:52 – 00:06:53
in itself.
Sean
00:06:53 – 00:07:23
Done, but it, you know, it's it works. Like, we and I just have to, like, add all the different conditions and input types and things like that. But, yeah, the the fact that I figured out how to get the basic concept to work with the Hotwire technology stack is is a big win. Yeah. And I got that, put together quick little demo for a client and then like, a little, like, video demo and then dropped that off and then dropped off our invoice, which they paid immediately.
Aaron
00:07:23 – 00:07:23
Immediately.
Sean
00:07:24 – 00:07:27
So, yeah, that that's the big win this week.
Aaron
00:07:27 – 00:07:43
It's awesome. That's a huge win. Yeah. It seems like I saw in the slack, it seems like they were pretty stoked about it. And it's, it's so funny because there's so much going on in that, in that slack and in that project that like, you drop that in there.
Aaron
00:07:43 – 00:07:57
And obviously that's our whole world and they're like, wow, that looks really great. And then somebody else starts another thread. It's like, oh, like this is nobody's thinking about this as much as we are. So that was encouraging to be like, nobody's freaking out like we are. Well, that's,
Sean
00:07:57 – 00:08:19
I think, that that's, I think, why they hired us because I've been I've been in a process like this before where you're like, nobody's talking to me. It feels sort of weird. I mean, it's in in some ways, it's a little bit broken. But on the other hand, we're the query builder experts, so wait, guys. We just need a query builder.
Sean
00:08:19 – 00:08:22
Here's some mock ups that we're hoping for. Yep. Please build us that feature.
Aaron
00:08:22 – 00:08:24
Throw it over the wall when you're done.
Sean
00:08:24 – 00:08:42
Yeah. Like, it's not that important of a feature that it needs to be having their full attention on it all the time. And they've seen that we can build 1, and so we'll just do 1, you know, in rails. That's kinda what I that's what I'm thinking is going on. And, also, the main person is on vacation too.
Sean
00:08:42 – 00:08:42
So
Aaron
00:08:42 – 00:08:43
Yeah. That helps.
Sean
00:08:43 – 00:08:45
We haven't heard much.
Aaron
00:08:45 – 00:08:50
So you kinda you kinda killed yourself this weekend or this week working. Right?
Sean
00:08:51 – 00:09:05
Yeah. And I think it's gonna be like that probably for the next until the end of March. I mean, hopefully, not that much. That was that was a bit intense. But I really wanted to get I really wanted to say, okay.
Sean
00:09:05 – 00:09:17
Yes. The Hotwire thing works. We can do this. We don't need to, like, fall back on a React version or anything like that. I felt like and I also really wanted to show progress before we invoice them.
Sean
00:09:17 – 00:09:47
Like, here's the thing. So I just committed to the whole weekend. Just I, you know, with the obvious, you know, cooperation, encouragement, you know, teamwork with my wife, we worked that out, you know, because she knows what the goal is here and that it's temporary, and we're on the same page. So I was basically like, alright. You and Isaac, all you know?
Sean
00:09:47 – 00:09:54
You guys are on your own this weekend. I'll see you guys in, like, 4 days. Yeah. Yeah. Which, of course, I saw him the whole weekend because we're all stuck in our house
Aaron
00:09:54 – 00:09:55
together, and
Sean
00:09:55 – 00:10:08
I don't have anywhere to go. But, you know but, no, it's it's fine. It was, yeah, I just worked 12 hour days and just slammed. I probably put in 70 or 80 hours working last week. Not on Hammerstone.
Sean
00:10:08 – 00:10:15
Like, probably Hammerstone. I think Hammerstone was, like, 40 Yeah. 40 hours. But I also have a job, so I still did that.
Aaron
00:10:15 – 00:10:23
That little thing. Yeah. Yeah. That's, obviously, that sucks, but that's it sucks less when you know it's temporary and when you have buy in
Sean
00:10:23 – 00:10:24
Yeah. Exactly.
Aaron
00:10:24 – 00:10:26
From your spouse or partner. So
Sean
00:10:27 – 00:10:34
And it's such a big win for us. All that money. Yeah. It's a lot of money Yeah. Billing good rates.
Aaron
00:10:35 – 00:10:42
Yeah. Better than I've ever built before. It's great. I love it. That's why that's why I let you set the rates.
Aaron
00:10:44 – 00:10:44
And then So of
Sean
00:10:44 – 00:10:45
course you were
Aaron
00:10:45 – 00:10:48
able to turn around and pay Colleen immediately too, which feels good.
Sean
00:10:49 – 00:10:57
Awesome. Yeah. Totally awesome. Yeah. And then she's gonna be able to start cranking next week, like, 4 days a week, which is which is great.
Sean
00:10:57 – 00:11:01
And we all sort of have end of March as as our timeline
Aaron
00:11:01 – 00:11:01
for
Sean
00:11:01 – 00:11:15
getting this done. So we should start making really good progress, soon. I mean, not that we aren't already, but it's it's gonna start cruising Yeah. Pretty fast. Yeah.
Sean
00:11:15 – 00:11:22
We'll get to those, like, kind of remaining hard problems that we have to solve soon, I think.
Aaron
00:11:22 – 00:11:32
Yeah. I think so. Yeah. That's the thing that I've been so, obviously, you know this, but I don't I don't do rails. That's why we have Colleen.
Aaron
00:11:32 – 00:12:10
And so my involvement on this side is a little bit less, but the thing, the thing that I've been working on this week is that they have those really complicated queries where it's like, this thing happened this number of times between these dates, and they want all of that to be on one line. And that's just not something we supported on the Laravel side out of the box. It's a reasonable thing to, like, to ask for. It's just not something we supported. So while Colleen is, you know, porting over all of the basic stuff, I'm trying to think through how would we how do we even do that on the Laravel side?
Aaron
00:12:10 – 00:12:46
Because once I can crack that, then, like, then she doesn't have to crack it conceptually and can just kind of port it over. So I think I'm pretty close and I think the key thing is going to be, reusing reusing a lot of our logic on both the front end, but especially the back end. Because when they say, like, you know, this event happened exactly 5 times between these two dates. Like, we have a lot of those primitives already. Like, we have number conditions.
Aaron
00:12:46 – 00:13:03
We have date conditions. We have, you know, the option condition where they can select what event it is. And so I think I'm pretty close to a model that would be able to combine some of those for certain types of conditions. Cool. Yeah.
Aaron
00:13:03 – 00:13:22
Because those, like, if you think about those from a from a database standpoint, I'll try to stay high level. But if you think about those from a database standpoint, those are like, like has many relationships. Right? Like a user has many events that have happened or clicks Mhmm. On a link or emails that were opened or whatever.
Sean
00:13:23 – 00:13:23
Yes.
Aaron
00:13:23 – 00:13:42
And we can already we can already query against has many relationships. It's just very basic. So we can say, like, a user has clicked on, you know, a link with this name or whatever. So we can already do that. The part that we can't do yet is the refinement.
Aaron
00:13:42 – 00:14:16
So that's what I'm calling those, extra things at the end is refinements. So I think what we can do is basically refine some of the one some of our conditions that operate on relationships. We can refine them and say, like, this is the name of the link, which we do out of the box, and they did it this many times and between these dates. And we can just kinda wrap all of that up together. So we get to leverage everything we've already done and let them build like queries that are 5 times as powerful.
Aaron
00:14:16 – 00:14:25
So Good. Gonna be great. Yeah. Like this is a real good forcing function because now we'll have this in Laravel. Also, it's Wouldn't have
Sean
00:14:26 – 00:14:32
Real common in Rails to have queries like that. They have this thing called scopes, which you put on models, and that's
Aaron
00:14:32 – 00:14:33
Same.
Sean
00:14:33 – 00:14:36
Yep. Essentially what they are. And I guess, yeah, Laravel probably has the same concept.
Aaron
00:14:36 – 00:14:37
Mhmm.
Sean
00:14:37 – 00:14:46
So it's kinda nice. Like, from a developer's perspective, it maps well to scopes, and then we'll still have a pretty easy to understand user interface on the front end.
Aaron
00:14:46 – 00:15:18
Yeah. The difference, like so, fundamentally, we've been mostly querying against columns. So we'll say, like, name is or name starts with or whatever, and that's like a column in a row. These are querying against rows in a table. So it's like, you know, this row like, the user has clicked on this link, and the links table is obviously a table full of 1,000,000 maybe of rows.
Aaron
00:15:18 – 00:15:40
And so we have to be able to query against the the rows instead of the attributes. And so that's where it gets, like, that's where the philosophical difference comes in, and that's gonna be a huge, like, a huge, breakthrough and unlocking of what you can do with the query builder in general. Just gotta crack the nut, but I'm I think I'm pretty close.
Sean
00:15:41 – 00:15:50
So, you know, you're gonna be one of very few of the world's foremost experts on web based query builders by the time
Aaron
00:15:50 – 00:15:55
we're done. Yeah. Seriously. I know. I know.
Aaron
00:15:56 – 00:16:18
I think I may I think I may have thought more deeply about this than anyone at this point, because building something that's like building something that's general is way harder than building something that's specific. Yes. Everyone that's done it has built it to meet their own needs and nothing more. Yes. That is easier.
Aaron
00:16:20 – 00:16:30
But I feel good about it. I, like, I had a kind of a breakthrough last night as I was just thinking about it, and I think that's gonna be the solution. And so Just
Sean
00:16:30 – 00:16:32
laying in your 55 degree attic.
Aaron
00:16:32 – 00:16:33
Yeah. Exactly.
Sean
00:16:33 – 00:16:34
About hammer stuff.
Aaron
00:16:34 – 00:16:45
Yeah. Exactly. I was actually watching the US women's national team play soccer last night. And then I thought, wait, these are just has many relationships. I was like, oh, wow.
Aaron
00:16:45 – 00:16:57
This is great. And then we won and we beat Canada. So turned out to be a good night. But this weekend, I'm gonna try to I'm gonna try to put it together on on the Laravel side.
Sean
00:16:59 – 00:16:59
Cool.
Aaron
00:16:59 – 00:17:12
Yep. And I'm gonna move home. So I gotta go over right when we're done. Gotta go over and pack everything up, pick up pick up Oh, man. The wife, and then move home and get everything situated again here.
Aaron
00:17:12 – 00:17:16
Buy more groceries because our refrigerator was out for 60 hours.
Sean
00:17:17 – 00:17:21
Oh, you think it's toast? Yeah. Probably. It was cool to your house, though.
Aaron
00:17:22 – 00:17:30
It was, but it wasn't like the refrigerator went off and the house stayed warm enough for long enough that so, like,
Sean
00:17:31 – 00:17:32
it's not worth it.
Aaron
00:17:32 – 00:17:51
It's not worth it. And I I went out and packed 5 gallon, ziplock bags full of snow. And I was like, okay. I'm gonna open the fridge, grab 2 things that I need to take over to our friend's house, and then throw 5 gallons of snow in there as fast as I can. And I opened the fridge and grabbed the first thing and it was like warm.
Aaron
00:17:51 – 00:18:00
And I thought, alright. Well, there goes that. So I grabbed the raw chicken and the yogurt and all that stuff and threw it away.
Sean
00:18:01 – 00:18:03
Yeah. For the best.
Aaron
00:18:04 – 00:18:05
Yeah. So
Sean
00:18:07 – 00:18:09
Oh, man. Texas, what a mess. What an absolute disaster.
Aaron
00:18:10 – 00:18:23
What an absolute disaster. What an unmitigated disaster. Texas is the best state in the whole country, but man, do we suck at everything. Jeez. Yeah.
Aaron
00:18:23 – 00:18:30
We don't need to get into it, but from Yeah. One text and tell you listeners out there, we really screwed up on this one.
Sean
00:18:31 – 00:18:44
Yeah. It's absolutely crazy. I'm just picturing all these places with water coming back on and just water just spraying everywhere all across the entire state of Texas. Just absolutely crazy.
Aaron
00:18:44 – 00:19:09
The plumbers that I I finally coerced I have a friend who has a plumbing company, and I didn't wanna call him and be like, hey. Do me a favor. But after I called literally 30 plumbers and couldn't get one, I called him. And so his guys were here this morning, and I said, how bad is it out there? And he said, well, we've already since I think yesterday, we've already done 50 houses, and we have 250 more on the list.
Aaron
00:19:10 – 00:19:14
And that's just one company. One company was booked until March 15th.
Sean
00:19:15 – 00:19:16
So I have a question.
Aaron
00:19:16 – 00:19:17
Yeah. Are
Sean
00:19:17 – 00:19:18
you gonna add solar panels now?
Aaron
00:19:19 – 00:19:29
We can't. We're in a historic district. Oh. Yeah. We could, however, get, a natural gas generator, a whole house generator.
Sean
00:19:30 – 00:19:31
Mhmm.
Aaron
00:19:32 – 00:19:33
But I was really
Sean
00:19:33 – 00:19:45
to doing that. Our electricity has been real stable here in Chicago, but, you know, I don't know. Something like that happens and you realize, like, oh, it's nice to have the the backup, you know, just in case.
Aaron
00:19:45 – 00:20:04
We'll probably be gone from this house in 2 years or so. But I think at the next house, we'll we'll get one day 1 because we've lost power now, For more than 3 days, we've lost power 2 times since we've lived here,
Sean
00:20:04 – 00:20:06
which is like That's terrible.
Aaron
00:20:06 – 00:20:11
2 and a half years in this neighborhood. So yeah. Yeah. We'll we'll get one next time.
Sean
00:20:11 – 00:20:13
Are there are they above ground wires?
Aaron
00:20:15 – 00:20:33
Yeah. So one time we lost one time we lost power when we had a freak wind storm, and it just took out 100 and 100 of houses, took out power and we didn't have power for 3 days. And then obviously this time the whole ERCOT disaster. See.
Sean
00:20:33 – 00:20:56
And then so my my disasters are a little bit different in Chicago. We had we had civil unrest. That was fun. That was what prompted me to to, like, start doing work on getting a bug out bag, which I've never had before, and I I felt a little ridiculous, like, which I never did it before because it felt kind of, like, prepping a little bit, you know, like, a little bit over the top. Mhmm.
Sean
00:20:57 – 00:21:14
But then because, you know, I live in this major metro area. It's kind of difficult for me to imagine, and then, yeah, we had we had some times this summer where I thought, I kinda wish I had that sort of preparation. And so it made me realize, like, stuff happens like that.
Aaron
00:21:15 – 00:21:15
Yeah. Makes us to
Sean
00:21:15 – 00:21:18
be a little bit a little bit prepared.
Aaron
00:21:18 – 00:21:27
Yeah. I don't know I don't know what we would have done had we already had the babies. That would have been a whole different a whole different ballgame. So Just
Sean
00:21:27 – 00:21:32
because of the cold and, like, having to share that much space with people. Mhmm. Oh, yeah. Totally. Yeah.
Sean
00:21:33 – 00:21:35
So But where the roads must have been super bad too.
Aaron
00:21:35 – 00:21:50
The roads were bad. Yeah. Because we have no equipment. Fortunately, like, 2 years ago, I bought a 4 runner because I thought it looks really cool and it has 4 wheel drive. So that paid off my vanity paid off.
Aaron
00:21:50 – 00:22:03
So I got lucky there. So we've been driving, we've been driving my car around. Yeah. Alright. Well, I gotta go pick her up and move back home.
Sean
00:22:04 – 00:22:07
Alright. Cool. Yeah. Let's just we'll wrap it right there.
Aaron
00:22:07 – 00:22:07
Alright.
Me

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

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

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

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