All Episodes

August 22, 2024 • 52 mins

In this episode, Jake and Michael discuss (inadvertently) bathing keyboards, pairing with remote colleagues and friends, using rational numbers to deal with rounding errors (sort of), and running code style fixers in CI or as a pre-commit hook.

Show links

Mark as Played
Transcript

Episode Transcript

Available transcripts are automatically generated. Complete accuracy is not guaranteed.
Michael (00:00):
Hey. This is Michael Dyrynda.

Jake (00:02):
And this is Jake Bennett.

Michael (00:04):
And welcome to episode 161 of the North Meet South Web
Podcast.

Jake (00:13):
Your camera's looking extra spicy today. Looking good.
Spicy is not the right wordmaybe, but extra clear, clean,
crisp.

Michael (00:23):
That's good. It's always good for it to be clean
and crisp. But the downside, asI have just just noticed, is
that because it is crisp, itpicks up everything. Like, stray
hairs, dust, and lint, and like,you know,

Jake (00:42):
you spend 30 seconds. Yeah.

Michael (00:44):
Gotta spend 30 seconds before every recording, like,
scrubbing all the lint off thebrim of my cap because it's been
cold.

Jake (00:50):
So I haven't worn

Michael (00:51):
it for ages. It's just collecting dust.

Jake (00:53):
We need, like, a makeup artist, you know. Do you think
the podcast could afford that,makeup artists for us on Tuesday
nights? No. Not even. Oh, well.
Maybe we need to get more moremore sponsors or something. I
don't know. Any sponsorsprobably. Probably be Any
sponsors.

Michael (01:08):
We just do it. We do it for the love. We do it for the
Mhmm. Sake of catching up and

Jake (01:13):
It's true.

Michael (01:13):
Sharing Very true. Amusing stories. Like, my laptop
earlier today locked up, and Ithought, oh, while it's
rebooting, I will go and fill upmy water bottle my water over
here. And I picked it up, notrealizing that I had not
remembering that I had justfilled it up. So it was full.

(01:33):
And you know when you picksomething up and you're
expecting it to be light andit's and it's heavy, or you're
expecting it

Jake (01:38):
to be

Michael (01:39):
heavy and it's light, and you just missed it? So it
slipped out of my hand, dropped,water went, and it all over my
keyboard.

Jake (01:45):
Oh my gosh.

Michael (01:46):
Oh my gosh. So I'm like, oh, boy. So I had to pull
apart the keyboard. I had totake all the keys off, cleaned
it all off because there's,like, water in there. It's and,
like, it was due a cleaning.

Jake (01:57):
You didn't fry it though?

Michael (01:59):
Blew it all out. Well, I thought it was fine. I put it
all back together, put all thekeys back on, turned it on, and
everything seemed fine until Ityped, like, c, and then c and v
pressed together, and v and bpressed together, and then b
would double press. Like, oh,no. So there's obviously water
that's got into the keyboard,into the PCB that's causing it

(02:21):
to, like, register across both.
So I had to take all the keysoff again. I had to unscrew the
case so I could get in there,

Jake (02:29):
but the

Michael (02:29):
PCB is is glued to the top of the case, so I couldn't
separate it to, like, clean itout. You

Jake (02:37):
couldn't separate it till I cleaned it. Yeah.

Michael (02:38):
Not to press air maybe or something? Yeah. I tried
blowing air through. It didn'twork. So what I did was I got
Ray's Dyson hair dryer and justblasted that for a couple of
minutes with warm air, hopingthat it would cause it to
evaporate.
And fortunately, it did. So

Jake (02:53):
Nice. Good call. Yeah.

Michael (02:55):
It's, it's clean. I was

Jake (02:56):
gonna say pop it in the oven for a few minutes and

Michael (02:59):
Yeah. Something like that. I don't have a bag big
enough to put it in a bag withrice. So

Jake (03:04):
Yeah.

Michael (03:05):
It's, yeah. Just just hit it with a bit of hot air for
a couple of minutes, enough tokind of dry it out without
without melting anything. And,it's been fine. And it looks
good as new now, which is nicebecause, you know, you get it is
it is disgusting how many crumbsand things get into

Jake (03:22):
your keyboard. Don't even wanna know. I I know. It's like
I see my keyboard at work, andnow now that you're saying it,
I'm probably gonna have to go inand pull all my keys off
tomorrow and just go although, Imean, like, what am I gonna do?
I'll hit it with spray.
I'll hit it with canned air. Ineed to probably be good enough
good enough. I need to see,like, just underneath my
keycaps. Because, like, I've gotone of the charges.

Michael (03:41):
Air blower things?

Jake (03:42):
Yes. Oh, nice. Does it work pretty good?

Michael (03:45):
The yeah. Well, it did, except it it went flat.

Jake (03:48):
Wow. I couldn't

Michael (03:49):
I couldn't use it while it was charging. So I'm, like,
charge it a little bit, blowsome air. Oh, it's flat again.
Charge it a bit more, which iswhy I went and got the license
again. So

Jake (03:58):
Yeah. Yeah. I need something. So, like, my keyboard
is so I got a Keychron k 11 proRGB and white backlit. Got 2
different ones.
1 at my north location office, 1at my south location office.
And, the keyboard itself is likean aluminum frame and then the

(04:18):
the keys, like, sit above it.You know what I mean? They're
like floating. So it's not likeit's inside there.
And so you can kinda get underthe keys, which is nice, because
they're low profile caps. Yeah.And so I feel like I could get
under them pretty easily if Ihad a little tool or something
that I could use to kinda just,like, get under the under the
keys. So that might be maybe Idon't even have to get them on.

Michael (04:36):
It's the same one?

Jake (04:37):
It's exact exactly. That's the same one. Do it with the
same keyword?

Michael (04:41):
I think you got it because I got it.

Jake (04:43):
Oh, I probably did. I probably did. Well, I think
Hempel also recommended itbecause it was the Alice layout.
Mhmm. Yeah.
So I got my I got one of myother developers a k 15 pro,
which is like a 75 percenter.Mhmm. So it doesn't have the
numpad or anything like thatbecause I figured, like, he
won't have to go through all thepain of, like, remapping escape
and things like that. Like, he'snot up for that probably. I

(05:05):
don't I don't think so.
It still has the, you know, thefunction keys, I think, and the
number keys and all that stuff.And so he should it should feel
pretty familiar, pretty close tohome. Yeah. But he had a, Apple
magic keyboard, like, full one,you know, the full size one. It
was a black one.
It was really nice, but the 4key wouldn't work. And as luck
would have it, 4 is the dollarsign. And in PHP, that's pretty

(05:25):
important. And so it was he hadto push, like, really hard on it
in order to get that one towork. So I'm like, all right.
I'll just buy another keyboard.So so anyway, yeah, we'll see
how that one goes for him, but,I'm still loving my keyboard.
It's still it's still kicking,and I really love the
customizations. This caps capslock for escape is the best
thing ever. Mhmm.

Michael (05:44):
It

Jake (05:44):
is. It took me a while to get used to it, but it is really
nice. Escape and super key. Andso, loving that.

Michael (05:49):
I don't

Jake (05:50):
Really still like that. I don't

Michael (05:51):
have to do it often, but any anytime I have to use,
like, someone else's keyboard ordo something on someone, I'm
like, why is why is this notworking? What

Jake (06:01):
Yep. What kind of Caps lock. I hit caps lock so many
times, like, literally. And I'mlike, oh, that's right. It
doesn't do anything.
And so, anyway, it's, it's fine.It's fine. But it does it does
take a little bit of, like,adjustment when you get on
somebody else's machine andYeah. Start messing with it.
And, so, anyway hey.
You know what we've been usingrecently is we've been using

(06:23):
Tupelo a lot, actually.

Michael (06:24):
Right. Yes. Good.

Jake (06:26):
Yeah. Use it all the time now. And so the guys had
convinced me. They're like,Slack sucks for screen sharing.
They said the resolution isalways absolutely horrible.
Yeah. And they complained enoughthat I was finally like, okay.
Fine. Let's do try let's tryTupelo. I said, if we don't
absolutely love it in a month,I'm canceling.
I was like, you guys are gonnahave to convince me it's really
worth it because, you know, it'snot the it's not the least

(06:46):
expensive thing, I'll say. It'snot the most expensive because
it's certainly not the leastexpensive thing. And so I
freaking love it. It's awesome,And I am a believer. So I think
the drawing on the screen is thebiggest.
Like, it's number 1, theresolution is really good, but
the drawing on the screen isreally, really nice. It's so
fluid, and

Michael (07:05):
I use it all

Jake (07:06):
the time.

Michael (07:07):
When you sit next to someone, you can point at their
screen and say, oh, you knowYes. This thing here. But it's
not I think I think SlackHuddles has it now, but it's not
quite as good. And you'refighting, like, the quality

Jake (07:19):
Sounds good.

Michael (07:19):
Yeah. And and it and the audio never works the first
time, and you've got to, like,oh, the the screen share didn't
work. I've got to stop it andstart it again. All kinds of,
like, just weird little papercuts. But Tupelo just always
works.
It's always high quality, soundsgreat, video works, screen
sharing works. I like that youcan, like because I'm on an
ultra wide screen. So when Ihave to share stuff at work,

(07:40):
when we're using Slack or GoogleMeet, it's like I can share a
window, but then you wanna swapwindows. We gotta stop sharing,
and then you gotta share theother window. Whereas

Jake (07:48):
I know exactly what you're saying. You got it. It's one of

Michael (07:50):
my favorite things. I just wanna here's my my 16 by 9
section of the screen and gofrom there. For for any of the

Jake (07:57):
stuff that I have

Michael (07:58):
to do for work using Google Meet, I've got better
display, and I and I have, like,a picture in picture virtual
display that is a 16 by 9 that Ijust, like, drag what I whatever
I need to in there. But it'sjust and it's fine now that it's
set up. It's just a pain to todo that kind of stuff.

Jake (08:15):
Yeah. So, like, on Tupelo yeah. That's honestly, like, 22
of my favorite features. Okay.Okay.
So let's just talk base featuresreal quick here. And this is not
a paid ad Tupelo, but if youwanted to pay us, we would take
it. We got makeup artists to payfor after all. So the yes. Video
quality is great.
Being able to draw on thescreen, awesome. I love the
little animations they have,like ship it or like the little

(08:38):
dog in the fire. You've seenthat before? Like, you kinda
like have you ever seen those?No.
Like, they're like reactions.They're reactions. So, like, you
know, like, a big hand will comeacross the page and, like, stamp
the screen and it says ship it.That's pretty funny. So they
have those little things.
Those those are fun too. But,yes, sharing the screen I'm on
the ultra wide as well, and sosharing half my screen is the

(08:58):
only thing I ever share. Andit's, like you said, it's so
nice to not have to share yourwhole screen, but to be able to
share, like, half your screenand just drag things in and out
of there. It's so nice. And thenI can have, like, my
documentation or whatever I'mlooking at over on the right
hand side of my screen, which issuper, super handy.
And I can draw on my own screen.I think that's the other thing.
With Slack, I don't think youcan draw on your own screen, but

(09:18):
with this one you can, which isreally great. So the only one
paper cut complaint I have aboutthis is you can't there's no
easy way to start a meetingwith, like, sharing half the
screen. There's a shortcut toshare your screen, but there's
not a shortcut to share partialscreen.
It says p, but I don't think itworks like that. So anyway, that
I wrote that in actually as oneof the things. What was oh, and

(09:42):
then the other thing is AppVeil.Have you used that before on
Twopel?

Michael (09:46):
Haven't used it, but I have I'm

Jake (09:47):
familiar with it. Yeah. My gosh. Game changer. Huge.
Okay. So for instance, it's themost embarrassing thing if you
are sharing your screen and thenall of a sudden you have, like,
a private message Slack channelthing that you were messaging
somebody about that's not reallyanybody else's information. Not
that it's like anything superprivate, but, like, there's just

(10:09):
things that you wouldn'tnecessarily want the whole team
to see that you've been it couldeven be something as innocent
as, like, PTO. Like or, like,oh, sorry to hear that's
happening. Like, yeah.
Like, no problem if you're offon Friday. You know, it's just
it's nobody else's business. Andso or Yeah. Or, you know, you
have, like, messages, likeImessage, like a personal
message from, like, hey. Can youpick Graham up from soccer
practice or whatever today?

(10:30):
You know, that sort of stuff.It's like nobody else needs to
be able to see that. And withAppVille, you don't ever have to
worry about that being a thing.Like you set up AppVail, then
you can say, these are all thethings that should never be
shown on my screen ever. So Ihave messages.
I have Outlook. I have Slack,even my Notion Notion. But and
then what you can do is you canthrow it onto the screen. It'll

(10:50):
show it with a, little thingthat says like, hey, this is
being hidden. This is being,veiled on your screen.
And then the bottom right cornerhas a little eye and you can say
reveal. And so you can reveal itjust for that session. It's
huge. I can't tell you how manytimes that has saved me from
just like an awkward, annoyinginteraction that I don't I don't

(11:11):
have to be I don't I used tohave, like, anxiety about that.
Like, oh, I'm gonna get somenotification that's gonna pop up
that somebody's gonna it's likenever does that happen anymore
because Appvail also will veilany notifications or any windows
that belong to that that thing.

Michael (11:25):
Yeah.

Jake (11:25):
It's huge. And I don't think anything else has that.

Michael (11:29):
Very thoughtfully introduced feature. Like, it
didn't always exist. And I thinkI think that part of the
catalyst was, like, maybe AdamWylen complaining to to Ben
about it at some stage. Like, Ijust wish I could hide stuff.
And they found a a a really goodway of implementing it where it
has a bunch of sensibledefaults.

(11:49):
And and it makes it really easyto and obvious, you know, when
something is veiled as well. So,you know, 1 password and
messages and all that couldprobably be nice

Jake (11:58):
if there was this kind of

Michael (11:59):
functionality if for for people that are streaming.
Like, the amount of times thatthat I have seen someone's
streaming video that has, like,revealed a secret or something
that they shouldn't have andthings

Jake (12:09):
like that. So Totally. I mean, honestly, it it is sort of
mind blowing that nobody elsehas done this. I haven't seen
anybody else do this ever. Yeah.
It is such a huge problem, andnobody else is doing it. So,
big, big, big key differentiatorthere. And like you said, it
really is super well done. Theway that they've decided to so

(12:29):
when somebody else is looking atit, it just says this app is
veiled. That's all it says.
And then the fact that it showsme that it's veiled and then
gives me an option to reveal it,like, it's just really well
done. And the thing is, like, asa designer, as a developer, you
know how hard it is, how manyiterations you have to go
through to get to that, like,perfect, like, oh, that's it.
That's what it should be. And itjust feels right. It just feels

(12:50):
exactly like how it should be.
And so I'm sure they wentthrough a ton of iterations on
that, but they nailed it.Freaking nailed it. And so I
love that. So, anyway, I'm a 2people convert, probably never
going back to anything else, butit's really great.

Michael (13:02):
Yeah. I think by default I mean, obviously, it's
only gonna avail the apps thatare installed on your computer.
But by default, it has a list ofthings, obviously, that it knows
that it should be hiding. So 1password, keychain access,
messages, signal, telegram,like, all of those things

Jake (13:17):
Yeah.

Michael (13:18):
Are always always set by default. So yeah. Very, very
good. And, So

Jake (13:25):
do you guys use that at work then? You guys use Tuple at
work?

Michael (13:28):
Yeah. I mean, sometimes it's easier, unfortunately, just
to use Slack.

Jake (13:34):
Whatever it is. Yeah.

Michael (13:35):
We're all already in Slack. And sometimes it's just
like a quick 5 minute thing. Sowe won't triple. But, I I I do
use it on occasion, especiallyif there's gonna be, like, some
more in-depth or a longersession or we're actually doing
some pairing that that we needto, you know, go back and forth
on things. It just makes it mucheasier, especially because,
like, I'm on an ultrawide andand ultrawide's at work and

(13:57):
things like that.
So you'd think it would be okay,but you don't necessarily wanna
share your whole screen, which,it's like doesn't allow you to
do. It's like you can do awindow or you can do a or a
screen, and and that's basicallyit. You can't do a portion of
the screen. So, you know, theultrawide is good because you
can put stuff to the side andhave reference elsewhere that,

(14:17):
you know, no one else sees. Butif you can't can't share it

Jake (14:21):
Well, it's okay. Well, you're halfway. It doesn't
matter.

Michael (14:23):
Yeah.

Jake (14:23):
Yeah.

Michael (14:23):
Like, I need my editor up, and I need my browser up.
And I can't can't do both. So,yeah, we do more in-depth stuff.

Jake (14:33):
Yeah. Yeah. So, for us, we use Slack too at work, but we
just have the pairing roomthat's kind of always open in 2
pools. So you can have, like,rooms that are set up. Right?
And so we've got, like, apairing lounge, a stand up.
Let's see here. Yeah. Pairinglounge, stand up, and then water
cooler. I'm actually in I'mactually in the pairing lounge

(14:56):
right now.
I just left. I was in it thatwhole time. But, so then if
anybody's in the pairing lounge,they're just like, hey. They're
working on something. Everybodywants to jump in, kinda jump in
here.
But, like, what I'll do is inSlack, I'll start the I'll I'll
go to the, to the stand up room,and then I'll copy the link. And
then in the main channel, justdo at here, and then paste the
tuple link, and then everybodycan jump in that way. So that

(15:17):
works that works well.

Michael (15:20):
Yeah. We're kind of skirting it because I I have
had, like, a personal license.

Jake (15:25):
Paying for it probably is the deal. Right? So, like Yeah.
Right. That's that's the issue.
Yeah. And that was our issue. Itwas like someone else had it,
but most of us didn't.

Michael (15:33):
Yeah. I've I've always had a personal license, and I
pay, like, once a year, whateverthat is, plus the exchange rate
is terrible now. But, you know,I use it often enough that it's
worthwhile. And so the people atwork, if we do need to do some
more in-depth stuff, I've justadded them as, like, a guest.
And so they don't

Jake (15:52):
have to

Michael (15:52):
pay for it. Kind of like Screen Hero, which was the
spiritual predecessor of Tuborg.

Jake (15:57):
Yes. I remember that.

Michael (15:58):
Like, it had that as well, where one person would pay
and you could have as manyguests as you want and invite
them into your sessions andthings like that. So, but we
don't yeah. We don't it it's nota work thing. It's just it's
it's a much more convenient toolfor that kind of thing. And I
know that, Mitchell is doingwork with, like, Laramates and
and trying to make, otherLaravel developers more

(16:22):
discoverable, you know, and andputting open slots.
Like, I am I'm free to pair. Iyou know, I have experience with
these packages and things likethat. So you can reach out to
people and and connect and dothe screen shares and things
like that. So it's it's a reallyconvenient way, like, just to
jump on a video chat. We useRiverside for the the podcast

(16:46):
for this one for Laravel News.
I use it for ripples. And it andit just makes it easy to get
anyone on without having toinstall any software or remember
to, like, open QuickTime andrecord things like that. Like,
it all just works. But in termsof software that just sits there
and you can just jump into apairing session with anyone,
Drupal is is certainly the thepreferred. Because you don't

(17:09):
have to worry about I mean,other than sending them the
invite and having them installthe client on their computer,
it's not like you have to invitethem into a Slack or, you know,
set up a Google Meet or, youknow, do a a Telegram video or
whatever.
It's it's all just, like, thereto go.

Jake (17:25):
Yep. Okay. One more thing for those of you who are dealing
with teams and are, you know,doing screen share things.
Here's a huge culture tip foryou. If you do not play a game
daily with your team, youshould.
May I recommend 1? The onlyreason I say this is because we

(17:47):
play this game every day, andit's so freaking fun. And it is
a great team spirit sort ofthing. It sounds so dumb. It
takes probably 5 minutes everyday.

Michael (17:57):
Yeah.

Jake (17:57):
But we are so competitive in this game, and it is a blast.
It's like one of those culturethings. You know what I'm
saying? Yeah. Like, it's justfunny.
Like, different teams havedifferent things that they do. I
know, like, the Laravel team,like, it is, you know, morning.
I think it's, like, one of thethings, like, Taylor puts out,
like or maybe it's just like asunrise or something or, like,
you know, just the differentemojis you have throughout the
day or that you've kind of, youknow, those inside jokes sort of

(18:19):
things. This is one of thosethings. And we were using this,
this application before we usedTuple.
So it's called Around. Have youever used that before?

Michael (18:31):
I've heard of it. I think you mentioned it before.

Jake (18:33):
It's screen sharing app called Around, and it's okay. It
it works fine. Like, we used itfor a long time, but one of the
things they have in there isthey have games that you can
play. And the game that we playevery day is called Boom Party,
and it is so fun. So it'sBomberman.
It's like old school Bombermanwhere you kind of there's a
bunch of boxes on a screen, andthere's this little, like, map

(18:54):
with, like, a maze sort ofconfiguration, and everybody
starts in, like, a differentcorner. And then you start with
1 bomb, and that's it. And soyou blow up boxes as you thanks,
Apple. Give me a thumbs up,reaction there. You blow up
boxes and get additional powerups, and then you kind of go and
try and take out the otherplayers.
Right? And so we play 3 rounds,and at the end of each day, at

(19:17):
the end of each game, after weplayed 3 rounds, we will put
emojis into the main channel.Everybody everybody's face every
every person has their own emojiwith their face on it. So we'll
put their face and then we'llput how many rounds they won.
And if somebody happens to winall 3 rounds in one day, which
is very rare because everybodyknows that by the time they've

(19:38):
won 2 of them, everybody's outfor blood on 3rd round.
Right? And, if everybody happensto win that 3rd round, you get a
crown, you get the crown, andthen your face underneath it. So
you, like, you win the crown forthe day. It is a coveted
possession, that crown, and itis a big, big deal. And it is so
fun.
I love playing that game. It'sliterally I look forward to it
every day, and all the guys onthe team say the same thing.

(20:00):
They're like, it's like one ofmy favorite parts of the day.
It's so fun. And so you shouldtry it.
It's free. Around is free totry, and, just try the game with
your team. Try it for a week.And I promise you, once you
start doing it, everybody wannakeep doing it. It's so fun.
And I know Wilbur Powrie, hesuggested it to his team at

(20:21):
Givebutter, I think, and theyplay it every day now, I think.
Or not every day. They don'thave a stand up every day. They
have, you know, every time theydo have a stand up though, a big
stand up, they they all playtogether. And so it's super fun.
If you happen to have a dailystand up, great. If you don't,
maybe you should have one justfor the sake of having Boom
Party. But any case, it's ablast. You should try it
sometime. A lot of fun.

Michael (20:40):
We'll, we'll have to check that out. Yes. I'll I'll
be rolling in the, over there.

Jake (20:49):
I have

Michael (20:50):
no idea why. I've lost my voice again.

Jake (20:54):
Gotta eat that water, dude. Oh, my gosh. You got a
frog in your throat. Got akangaroo in your throat. It's
still there.
Holy cow.

Michael (21:01):
Back. Alright. Oh, my word. Something went the wrong
way.

Jake (21:05):
Oh, that's so

Michael (21:06):
yeah. I'll put a link in the show notes. It looks
looks good. Looks like they'vebeen, I don't know how recently,
but they have been recentlyacquired by, Miro.

Jake (21:16):
Yeah. They were acquired a while ago.

Michael (21:18):
Yeah. Okay.

Jake (21:19):
And so it's probably over a year ago. And so but I still
have a free tier. Yeah. It'sstill a free tier. It works it
works fine.
We use it for, you know,

Michael (21:26):
like, this business. Whiteboarding. Whiteboarding.

Jake (21:28):
Yeah. That's right.

Michael (21:29):
Calabrio's whiteboarding. Yeah. Yeah.

Jake (21:30):
Yep. Absolutely.

Michael (21:32):
We'll check that out.

Jake (21:33):
Very good.

Michael (21:34):
Hey. Good.

Jake (21:35):
So now that we've, covered kind of like our intro here, I
was going to say that I had oneother thing we could talk about.
But if you have anything on yourdocket, I would love to hear
about it before I startjabbering.

Michael (21:53):
I've just been in, like, rounding error hell for
the last 3 weeks, which I thinkmaybe I mentioned last time, and
I don't really wanna talk aboutit. But if anyone has to deal
with, like, currency androunding and any of that stuff,
it's all awful, especially whenyou're trying to compare, like,
the output of what you have donewith an Excel spreadsheet. And

(22:16):
if you'd ever looked closely atwhat an Excel spreadsheet does,
it is kind of grim because ithides all of the decimal places
when you're working withcurrency.

Jake (22:24):
Yes. Oh, gosh.

Michael (22:24):
And it shows you, like, 2. And sometimes the actual
value that has been obfuscatedhas got 5 decimal places, and
sometimes it will have 3, andsometimes it will have 4. And so
just trying to get anything to

Jake (22:37):
match that. Is there, like, any sort of standard
agreement on how many decimalplaces are significant, like,
when you're dealing with bankingand and numbers? Like,

Michael (22:46):
I mean, we a a long time ago, we we worked with,
like, 4 decimal places so thatany of the rounding would happen
on the 3rd decimal place. And soany of it would be insignificant
in the context of a system of,you know, dollars and cents,
where it's typically 2 decimalplaces.

Jake (23:00):
Sure. Sure.

Michael (23:01):
The problem is when you're trying to match with 3rd
party systems, and they say,like Mhmm. They show you the
rounded value, but you don'tknow how many decimal places
they've worked with to arrive atthat

Jake (23:12):
Yeah. Yeah.

Michael (23:13):
Situation. It's just a meh. So but no. That that has
been a lot of my last 2, 3,probably even close to 4 weeks,
which I'm but I don't like it.The solution is not to work in
cents in this scenario becausethere's, like, multiplication
and we're calculating interest.
So it doesn't even matter if youstart with cents because

(23:35):
eventually you end up withdecimal places. We've tried
with, like, rational numbers aswell. There is the brick math
library and the brick moneylibrary that works with, you
know, rational money andrational

Jake (23:48):
Define for me. What do you mean by rational numbers,
rational money?

Michael (23:50):
What what is like, you don't have those

Jake (23:52):
rational values?

Michael (23:54):
Yeah. So essentially, it it doesn't have how am I
gonna explain this? It doesn'twork in dollars and cents. It it
basically takes integer valuesand says, like, this is, a 100.
Right?
So a $100 becomes 10,000¢.Right?

Jake (24:12):
And then

Michael (24:13):
is that right?

Jake (24:14):
Or is it

Michael (24:14):
a 1,000?

Jake (24:14):
Yeah. That's right. That's right. 10,000¢.

Michael (24:16):
Yep. They have 10,000¢, and then it's got, like, a an
order I think it's called anordinal. I don't know. And it's
like slash 1,000 or slash 100.So you know that this is, like,
actually a $100.
So all of these totalcalculations are done with,
like, whole values to, like,maintain that precision. And
then at the

Jake (24:33):
end, you do Okay. Rational numbers. Yeah. So, like,
rational meaning ratio. Right?
So, like, number over a number.Right?

Michael (24:39):
That's a

Jake (24:40):
rational number, I suppose. Right? Yeah. Okay.
Sorry.
Go ahead.

Michael (24:43):
So we use those rather than floats or anything like
that in order to kind of

Jake (24:47):
Yeah.

Michael (24:47):
Maintain the precision until the very end

Jake (24:49):
of it,

Michael (24:50):
then round that for display. Which is fine, except
when you've got, like, aschedule of of payment amounts.
And so everything is fine. Butthen for presentation,
obviously, you need to round it

Jake (25:00):
to 2 decimal places.

Michael (25:01):
And then if you add all those columns up, they don't
balance from top to bottom.Yeah. Because the because the
because the the fractionalvalues are different. So if you
say, like, if you start with I'msorry. Jesus.
Financial calculation. So ifyou're saying Jesus. Like, I've
borrowed $50,000 and youcalculate your principal
repayments and your interestrepayments and all that kind of

(25:22):
stuff, like, the the the totalof all of those individual
principal amounts should notexceed $50,000 But because of
rounding and presentation andstuff, if you take all that
stuff, throw it into Excel, andthen you do a sum on the
columns, you might find, like,it's a few cents more than
50,000 or a few cents less than50,000. But it but it has to be
exactly 50,000. If you do thesame thing in Excel, because

(25:43):
it's showing you to 2 decimalplaces, but it's actually doing
it in 4 or 5 or 6.
You add all those things up, andyes, it does match up. And so
you're trying to compare andyou're going crazy. And it took
me, like, a few days to realizethat this was happening, that,
you know, Excel is showing 2decimal places, but it's working
in multiple.

Jake (25:59):
And Right. Yep.

Michael (26:00):
Then, you know, all of those fractions of a cent do add
up to the very round number

Jake (26:07):
Actual cents.

Michael (26:08):
A1000. Yes.

Jake (26:09):
Yeah. Right.

Michael (26:09):
So, you know, where we've arrived is and this as
best as Did you arrive

Jake (26:14):
at, like, putting a disclaimer on it, which says,
like, don't throw this in anExcel spreadsheet and add them
up?

Michael (26:19):
Well, I said, like, why don't we just put a disclaimer
on here that says these areindicative values only or
whatever? But that thatapparently is not good enough.
The I think what we have arrivedat is the generally accepted
practice is to take is tobalance, basically, the final
payment. So make sure that thesum of all of your payments add
up to

Jake (26:38):
whatever it is,

Michael (26:39):
and then take any overage and apply it to the
interest. And so it's theinterest the interest amount
will be, you know, plus or minus3¢ of the calculated value. But
the principal, which is theamount that you have borrowed,
will never exceed. Like, youwill always be exactly correct.
And you just take that, extraand move move it to the interest

(26:59):
payment.

Jake (27:00):
Dude, that's hilarious. I wonder how many board meetings
that took to determine that. Youknow what I mean? That's a
really interesting way. So it'slike a final number, like the
final check sum.
It's like, okay. This one willjust make up for all the other
odd pieces.

Michael (27:13):
Yeah. Generally speaking, in my experience with
that kind of stuff, like, whencalculating sales tax and things
like that, the the generalexpect accepted, behavior is
that you can expect valuesacross a row to match up. So,
like, the the the tax exclusiveamount, the tax the tax amount

(27:37):
will add up to the total. Like,that left to right will add up.

Jake (27:42):
Yeah. Sure. Yeah.

Michael (27:43):
Or top to bottom, you can expect things to add up, but
they will never go in bothdirections. Mhmm. You will get a
rounding error one way or theother. So there's there's yeah.
It's it's it's just it's all funand games.
And and, like, so the acceptedpractice generally from an and

(28:04):
I'm not an accountant, but myunderstanding is that the
generally accepted practice froman accounting point of view is
to be consistent with whateverdecision you make. Like, if you
choose to make sure that thingsadd up correctly this way

Jake (28:15):
That makes sense.

Michael (28:16):
Then make sure everywhere, everything always
adds up this way. If you chooseto make sure it adds up this
way, make sure it always adds upthis way. And and that's If it's

Jake (28:23):
not on a convention, then stick with it. Yeah.

Michael (28:25):
Yep. And, you know, the the the tricky thing is because
we're, like, putting theseschedule payment schedules
together and comparing itagainst external systems. Like,
different lenders will do itdifferent ways. And so it's very
hard to kind of marry up,because there's no consensus.
Like, one lender might round up,one might round down, one might
just chop the value and notround at all.

Jake (28:47):
Truncate. Yeah.

Michael (28:48):
Yeah. So they just truncate, you know, 0.556
instead of making it 0.56 ormaking it 0.5 that they'll just,
like, chop that 6 off and makeit 0.55 and leave it at that. So
yeah. It's Yeah. It's probablydependent

Jake (29:02):
on where trade's going. Right? Yeah. Yeah. So it's like
Yeah.

Michael (29:04):
And is it like and and and in some situations, you
would round in the favor of theperson receiving the payment,
and sometimes you round in favorof the person making the
payment.

Jake (29:13):
Correct. Yes. Like, which way is the payment going? Yeah.
Exactly.
Yeah. Boy, that is some freakingtough problems to deal with. The
rational stuff sounds reallyinteresting. That sounds really
cool actually. And that's I'venever thought of using that as a
way to preserve the, you know,actual values until the last
second, which is really smart.
The other thing that I readrecently is some guy was talking

(29:35):
about comparing float values,and he was like, you don't ever
compare equality with floats.He's you subtract them, and then
you look at the difference anddetermine if it's within an
acceptable range to be equal.Like so he's like, I'll subtract
the 2 floats. If they're if thedifference between the two
floats is less than 0.0001, theyare the same. You know?

(29:57):
So he never compares equality.He's, like, because there's just
these weird errors where you'regonna end up with them not being
exactly equal. And he's, like,that's okay. Sometimes that's
fine. Sometimes it doesn'tmatter.
He's, like, you have to, youknow, you have to determine what
sig what a significant decimalplace is and then compare the 2
the difference between the 2 ofthem and see if it's less than
that difference. And if it is,they are equal. So I was like,

(30:17):
oh, that's smart. That's a coolway to do that.

Michael (30:19):
Yeah. Where Wes Boss has been talking about this on
on Twitter recently

Jake (30:23):
as well.

Michael (30:24):
And he's like, you know, if you do 0.1 plus 0.2, it
may or may not equal 0.3,depending on what language
you're working in. Like, in PHP,I think it's 0.000 no. 0 point 0
three zero zero zero zero zerozero zero zero zero four. So

Jake (30:41):
Oh, gosh. Seriously? That's crazy. Yeah. So, I mean,
that's that's, I think, thereason.
Right? So that's why you do thedifference and then and then
calculate is because it's, youknow, you can't guarantee that
they're gonna be exactly equal.So, anyway, fun times. Fun
times. Okay.
I will keep this part brief. Iwill launch into my quick little

(31:02):
discovery today of what wediscovered when we were trying
to use Pint, Laravel Pint

Michael (31:09):
Mhmm.

Jake (31:09):
Or Pint, depending on how you want to call it, but I'm
pretty sure it's Pint, for yourcode linting. So we have a new
project, and we are setting upnew tests and CI stuff. So we
have our PES tests, and then wehave PHP sorry. LaravelPaint for
our code style, and then we havePHP, Stan, sorry, for our static

(31:35):
analysis stuff. Okay.
Great. So all fine and good.Whatever. Well, in the if you go
to Laravel Pine's documentation,at the very end, they have a
GitHub that you can copy andpaste into your into your, you
know, your YAML file. And andwhat it'll do is it will run on
your pull request commits.
And if the text changes thatneed to be made, it will auto

(31:56):
commit those changes to a newcommit on that pull request.
Mhmm. Cool. That works great.However, the action that is
being used to commit thosechanges to the pull request has
a known thing on the readmewhere it says, if you use this

(32:17):
action to make a commit, commitscreated by GitHub actions will
not invoke a new workflow, a newGitHub workflow.
And the reason why is because itwould be possible for you to
accidentally create a loop whereyou are committing and then
making a change and then runninga new workflow, and then it is

(32:37):
committing and making a changeand running a new work and you
get into this infinite loop andyou eat up all your GitHub
minutes in a matter of a day.Right? And so it does not allow
it to kick off a new workflow onpurpose. However, the way around
that is to create a personalaccess token and then store that
in a your repository as a secretan action secret. And then you

(33:02):
reference that secret when youare doing the checkout action,
the checkout step at the verytop of your flow.
You have to say token and thenyou have to use the secrets dot
personal access token. And thenif you do that, when it does the
commit, it will allow the committo invoke a new workflow. Okay.

(33:24):
So that was the first discovery.So that was interesting.
And, then I was like, well, it'skind of annoying to do that
anyway, honestly. I don't reallylike that. It it happens on a
very regular basis where youpush code and then there's a new
commit upstream, and you don'trealize it. And so you make a

(33:44):
bunch of changes on your local,and you go to push it again, and
you have to rebase. Happens allthe time.
All the time. And not just onthis project, a lot of projects
where we're using style CI andthings like that. So the the
auto commit thing up on the themaster or sorry, up on your pull
request that just auto commitsit, it just is really annoying,
honestly. So what's the solutionto this? Well, you can do like a

(34:07):
pre commit hook, like a githook.
Right? But those are always abit unreliable because how do
you sync those across your team.Right? You can't like you you
can't do like dot git slashhooks. You can't commit that
into your repository.
So what's the what's the guy todo? Couple options. You could
use Husky, which is a nodedependent, package that will

(34:31):
allow you to sort of sync thoseGit hooks across your teams, by
committing it to the repository.Or you can use Whiskey, which is
Lynn Woodward's implementationof it using PHP. So you don't
have to have a node dependencyfor a strictly PHP project,
although that's almost not evergoing to be a thing anymore,

(34:53):
especially if you're usingLaravel.
You're always gonna have somesort of node dependencies, but,
Whiskey works really cool. So itcreates a Whiskey dot JSON file,
where you can define all thedifferent, you know, Git,
events, I think is what they'dbe called. Right?

Michael (35:10):
Mhmm.

Jake (35:10):
And then you can specify particular scripts that should
run when, one of those thingshappens. Okay. So so far we've
got figured out how to GitPineauto committing. Sort of said,
don't really like that, but howwould I get around that? Okay.
Well, let's run some stufflocally. You know, let's run
let's run pint locally. When,when somebody does a pre it does

(35:34):
a pre commit hook. Right? It'lldo it'll do pint.
Okay. So what we're gonna do iswe're gonna continue to leave
that, styles that that CI actionin there, but now instead of it
committing anything, it's justgoing to fail. So instead of
using PHP sorry. Instead ofusing pint repair or whatever it

(35:55):
is, we're just gonna use pinttest. And pint test will just
return a non zero error in thecase that it doesn't work.
And so, it's up to the developerthen to fix that problem. And so
yeah, that's that's how itworks. Now what I will say is
there's there's 2 things.There's 2 ways that you can run
there's a lot of different waysyou can run Python. One of them

(36:16):
will fix the error, but it willreturn a 0 from the action.
So it just shows you, like, agreen thumbs up. Everything
worked, and we changed madethese changes. The only issue
with that is if you do that as apre commit hook, you make your
you know, so, like, I'm gettingready to make a commit and push
this. Blah blah blah blah.Here's my changes.
Git add all git commit. It runsits pre commit hook and changes

(36:40):
2 files. And then I guess saygit push. Right? Because I don't
realize that there's 2 files outthere that it just changed that
I need to also commit.

Michael (36:47):
Yeah.

Jake (36:47):
Right? Yeah. So if I do that, I get push it and what
happens? Well, it fails inproduction again. Dang it all.
That's not what I wanted. Like,so what I'm doing now is instead
of having the pre commit hook belike, hey, just repair it and
return it with a 0, I'm gonna dothe non zero based thing. So if
there is a change, it won'tactually commit. It'll wait.
It'll say, nope.

(37:07):
You gotta add these 2, and thenyou can commit. So it's a little
more obvious that there wasfiles that changed, like failed.
You know what I mean? Yeah. Soyou have to add them and then,
and then you can commit and pushthem.
So that's it. But what I willsay is Whiskey is pretty sweet.
So because, because you installit with Composer and because any

(37:28):
of your developers when theymerge in the main branch are
gonna have to run composerinstall, you have the, composer
stuff that after you have a, youknow, update or you have a after
an install, you just run whiskeyupdate. And when you run whiskey
update, it runs the whiskeystuff and then uses that whiskey
dot JSON to update their githooks. So anybody who's in who

(37:51):
installs automatically getsthose things updated on their
git hooks, and so it's easy tomanage those things across the
team.
So it works really well, and,we're gonna try it out. We'll
see how it goes Yeah. And I willreport back if we have any
issues, but that's been that'sbeen cool. I was, that was
really kind of a fun little sidequest today. Got that all
figured out.
Mhmm.

Michael (38:11):
Yeah. Like, I mean, we we would just fail CI, like, the
whole whole thing if there is,static analysis failures or if
there is PINT failures. And andthen it's up to the developer
to, you know, run that stuff. I,in theory, like the idea of a
pre commit thing, but I commit alot. And I it would be agitating

(38:36):
to to have Pint run on everycommit.
And and I also like the idea ofrunning tests because we often
will forget to run tests or wewill change some code here and
it will affect something overthere unrelated in some
unexpected way. And so the onlytime that you will see that is
when it fails in CI.

Jake (38:56):
Yeah.

Michael (38:57):
But it in CI, it takes, you know, 10 minutes, 12 minutes
for the test to run. Locally, inparallel, it still takes 5
minutes. So you can't reallyhave a pre commit hook that is
running tests in this code baseevery time you commit. Because
Yeah. It's it's just there aretrade offs to be made at any and

(39:20):
every junction of of, you know,what you're willing to to do.
And, like, if I'm changing somesignificant stuff, I will, you
know, make all of those changesand then run the full test suite
and then, you know, just go geta drink of water, whatever else,
for for 5 minutes and come backand and see how it's all gone.
But, yeah, it's it's it's funnyhow many times you get someone

(39:44):
open a pull request, say this isgood for review while CI is
still running. And then by thetime you get to looking at it,
you're like, is it is it goodfor review? Did you run the test
that you wrote? Because there isa failure here that is part of
the code that you have justintroduced.

Jake (40:01):
Yeah. So I have 3 other trade offs that we actually made
that that helped with some ofthose. So the first one is
conditional job running. So wehave a conditional at the very
top of our job that says, like,if this PR is in draft status
still, do not run this job.Right?
So we do that. That helps. So,like, we're not actually running
our CI stuff on every singlecommit and wasting all those

(40:24):
minutes. It's, like, only whenthey say it's ready to go are we
running that. And so that saves,you know, they'll probably have
20 commits before they actuallyend up hitting any of those.
So that's one. The second thingis on the pre commit hook. We
are running pint, only on thedirty files. So you do dash dash
dirty, and that does save a lotof time because it doesn't run
it across your entire code base.It just says you have 3 files

(40:46):
that changed and it's lightningfast, super, super fast.
And so, that's helpful. And thenthe last thing that we do is in
the do in the case you do have alot of commits that you're kind
of pushing and, you're maybeyou're in a status where, like,
you're not in a draft statusanymore. And and, you know, you
have a a test that's or, youknow, one of your CI things

(41:08):
that's failing. So this happenedto me today. 1 of my CI things
failed.
The one that returned thefastest failed, Pint, and then I
pushed up another commit. Well,I noticed the old jobs were
still running. The jobs for theprevious commit were still
running even though I had a newcommit on after that. And so
there was one other thing Idiscovered today. It was on

(41:28):
GitHub actions, you have a thingcalled concurrency.
And so you can define like aworkflow key that will say if
there's any other workflow keysthat look like this, then you
can cancel. You can cancel anyprevious workflows. And so, what
that does is it it turns alittle like, next to your
commit, you'll have either acheckbox or a yellow if it's

(41:48):
currently running or you'll havean x if they were canceled. And
so if you make a new commitwhile the other ones are
running, it will cancel outthose previous workflows and,
that saves you your GitHubminutes and, stops you from
running multiple tests, youknow, chewing up your, your
concurrency limits as well,because you can only run so many
types at the same time, youknow? So you, you can hit that

(42:09):
pretty quick if you have a bunchof developers working on a bunch
of different things across yourorganization.

Michael (42:14):
That was a good that was

Jake (42:16):
a good deep dive today. I should write something up about
that. There's a lot of stuff Ilearned today. I should write
that up. Yeah.
Make a video. Something.

Michael (42:23):
Do something. Put some put some content into the world.

Jake (42:27):
Absolutely. Abso freaking lutely. Alright, dude. That's
all I got today.

Michael (42:32):
Excellent. Well, we should you're off to Laracon,
what, Sunday?

Jake (42:37):
You're in Monday? Indeed. Yeah. So I'm getting in Monday.
I'm leaving Monday morning,bright and early.
I'll get down there about 9o'clock in the morning. Mhmm.
And then, I'll be there Monday,Tuesday, Wednesday, and then
heading out Thursday afternoon.So should get a little bit of
pre Laracon time, a little bitof post Laracon time, hoping to

(43:00):
get to hang out with the homiesa bit. It should be should be
fun.
And, I need to get one of those,like, cutouts of, like, your
head. You know what I mean? Howthey put, like, the end you
know, at the games, you know,like, the basketball games and
stuff

Michael (43:10):
like that. In the crowd?

Jake (43:12):
Yep. Exactly. I just need to get a cutout of your head on
one of those. Just take it withme. Be like, Michael's here in
spirit.

Michael (43:18):
I'll send you a photo. You can do it do it.

Jake (43:20):
Dude, that would be hilarious. I literally should.
That would be awesome. It'd beso funny. People would lose
their minds.

Michael (43:26):
Hang on. Here we go.

Jake (43:29):
You're gonna send it to me? Nice. I love it. Good good
idea, though. Right?
I mean, come on. We should dothat. I mean, I could flat pack
it. Just put it in the back,but, you know, put it in the
suitcase. No big deal.
I'm trying to get pictures withyou I can get pictures with you
and me and and other people.Like, the whole cash money co
work or whatever, I could get,like, a picture with all of us.

(43:49):
That'd be great. That would beso funny.

Michael (43:52):
That would be that would be amusing.

Jake (43:54):
Yes.

Michael (43:55):
I wanna see photos from from Laragon with just

Jake (43:58):
Yeah. With Michael.

Michael (43:59):
A dumb head of mine.

Jake (44:00):
Eric, you mean Eric. I mean, Eric Barnes, that'd be
great. The lyric at the lowerlevel.

Michael (44:05):
I'm sure Yaz will will take some photos for us.

Jake (44:08):
Yeah. That'll be fun. So he's gonna be there this year
again, He wasn't there lastyear.

Michael (44:11):
He's coming. I don't

Jake (44:12):
think so.

Michael (44:13):
Yeah. He's he's coming. He's taking photos as as far as
I as far as I know. So

Jake (44:18):
Yeah. Beau Kondo was there last year.

Michael (44:20):
Running around? Yeah.

Jake (44:22):
That'd be good.

Michael (44:23):
Yeah. Yeah.

Jake (44:25):
That will be good.

Michael (44:26):
That's good value. Well, enjoy. Looking like it's
going to be a very big event,you know, not just the number of
people, but also the the hypearound everything that is gonna
be announced and released and

Jake (44:39):
and competitions

Michael (44:40):
and and the basketball game, you know, I'll probably
catch

Jake (44:43):
Okay. So tell me about this basketball game, because
I've heard things. I don't knowwhat is going on with the
basketball game. So if there's abasketball game going on, I'm
taking my shoes.

Michael (44:52):
So I I think you've you've missed you've missed the
I think I think you've missedthe Yeah. Right. The trial.

Jake (44:58):
Like, somebody's not gonna show up and, like, not need a
sub or something. I guaranteeit.

Michael (45:04):
Alright. So Century is, like, running this thing now.
It's like this this big thing.It is the terminal terminal
coffee lads said, you know, wewe should have a open source
basketball game. And so, Adam Idon't I don't know his last
name, but Adam, who's, like,runs stat or created statmuse
and and things like that.

(45:24):
Like, he does a lot of contentthese days. He he used to play,
like, varsity hoops. So there's,like, some serious serious,
chops in in this game. It's notjust, I don't know what they're
playing for, but it but it'sgonna be on at, like, 4:30 AM my

(45:44):
time. So hopefully, I can stoptalking.

Jake (45:46):
It's like it's like a so so you're saying it's not like
just a bunch of guys playingpickup basketball. This is,
like, serious people playingbasketball.

Michael (45:55):
Serious people. It's like, there's tickets for it.
Wes Bos and, Scott's team Whatthe heck?

Jake (46:00):
Where is this at? Where am I have I been missing this on
Twitter? Yeah. Yeah. Yeah.
Yeah. Or is this like Hang on.

Michael (46:05):
We'll include a link in the show notes. Twitter,
Century, alexis.Twitter.com/century.
X.com/century. No.
Century IO, maybe? What arethey? No? Oh, my god. I might be
able to find it now.
Here you go. Sentry. It'sthey've got, like, this branding
for all of it. It's presented bySentry. It's called Put

Jake (46:27):
me in Telegram.

Michael (46:28):
Star 2024. I'll send you this link. But, yeah. Wes
and

Jake (46:32):
Sorry. People who are watching the livestream, my my
screen is, like, jumping allover the place because my
keyboard is on my, you know,monitor and it's going wild.

Michael (46:41):
So, yeah. There is. Where is it at? They're hosting
this, like, on a call. It'sgonna be refer like, it's gonna
be refereeing.

Jake (46:48):
Oh, okay. So they challenged Laravel PHP, like the
actual well, is that thecommunity or the actual team?

Michael (46:56):
I I don't I don't know who the team is, to be honest. I
haven't I don't like, there'sbeen talk about different people
saying they're involved, but I Idon't think they've put the
actual lineup in. But they'relike, they've got a court. It's
a community basketball event, sothere's gonna be, like, a 3
point shootout. There's aninflatable dunk competition.
They have an open court. The thethey're streaming it. Like,

(47:19):
there's there's a whole wholething. We'll put the link to all
of this stuff in the in the shownotes. Yeah.
I'm I'm sad. It's I I plantedthe seed with with Ray. I'm
like, next year, this would be abusiness expense for me to go to
Laracon US.

Jake (47:36):
Mhmm.

Michael (47:36):
I should definitely go to learn how to run a conference
before I run any moreconferences kind of things. But
but the Liv will have juststarted school around, you know,
Laracon time, July, August nextyear. So may not may not be
practical, but, I'm hoping thatwho knows what will happen next

(47:57):
year? Like, it's gonna be acompletely different thing. But,
yeah.
It's just crazy. There's all ofthis

Jake (48:01):
stuff going on. Because there's not a lot of, like,
advertisement around this. Like,it got a 151 likes and 45
retweets, but there's only 13replies and there's

Michael (48:10):
Hey. But that's just Twitter being Twitter these
days. Like, the algorithmalgorithm's busted. It doesn't
show anything to anyone. Youmiss things all the time.
So anyway, I'm on the I'm on theinvite list. I'm on

Jake (48:22):
the invite list for for it. So

Michael (48:25):
there will be a link in the show notes. You can check it
out.

Jake (48:28):
It says there's 75 people going. Okay. Well, should be
fun. Should be a freaking greattime. So I'm putting it on my
calendar here.

Michael (48:39):
Hopefully, no one gets injured. Everyone would
definitely warm up and and havea great time and, you know, you
know the deal.

Jake (48:46):
You know, honestly, dude, I you know, I so I was actually
thinking about this. I was, likebecause I had heard, Daniel and
Caleb talking about this on NoPlans to Merge. And I was like,
is there really a basketballgame going on? Like, is this a
thing? Like, I would actuallylove to play.
And then I remembered, like, Iwas playing on Sunday night and,
like, this last, like, what, 2days ago and, like, got slightly

(49:09):
injured. And also, I have a verydifficult time turning off my
competitive, like, bone. And Iand so, like, I'm afraid people
would be like, dude's adouchebag. Like, can't, like
like you know what I mean? Like,you'd hate to, like, body
somebody under the hoop and,like, hurt somebody and then,
like, you're known as the guy.
You know what I mean? So I waslike, man.

Michael (49:28):
And it'll be strange. Like, it'll be seen. Everyone
will know.

Jake (49:31):
Yeah. Probably better than the top of the play.

Michael (49:34):
I'm not play anymore.

Jake (49:36):
Yeah. I I don't it's probably not a good idea anyway.
So but you know how it is. It'sthe FOMO. You know the FOMO.

Michael (49:41):
You know

Jake (49:41):
how it is. It's like if there's anything fun going on,
it's like you wanna be I am.Believe me, dude. I know the
FOMO.

Michael (49:49):
Be a FOMO. I started my own conference. Okay? I know Oh
my gosh. But I can't play.
And and when I like, I went inand I had the scans done, I went
and saw the surgeon, and he'slike, look. Do whatever you
want. If you don't pull up afterit, maybe don't do that again. I
will at some point have to havesurgery. It's just like, will it

(50:10):
be in 3 months or will it be in10 years kind of thing.
So stopping basketball,unfortunately. And I told a
friend of mine this, he goes,you know that there's, like,
walking basketball in here? No.

Jake (50:20):
No. Is it for real?

Michael (50:22):
It's walking basketball. And I'm, like, no.
Absolutely not. Like, I cannot.If you're not gonna play to the,
like, the full extent of yourability, then then, like Yeah.

Jake (50:30):
If you have to change the rules to play, just don't. Just
don't play.

Michael (50:34):
Yeah. Yeah. Nah. None of it. I mean, none of It's

Jake (50:36):
like that Netball. Have you seen that Netball? Not
Basketball, Netball. Have youseen that?

Michael (50:40):
Net yeah. We've got Netball. Netball is is I don't

Jake (50:43):
understand the game.

Michael (50:44):
No. It's a it's a much higher skilled, sometimes more
brutal sport than than whatbasketball is.

Jake (50:51):
Really?

Michael (50:52):
Now our yeah. Our state team actually won the
championship this year, the inthe local, like, Nepal like, the
Australian Nepal competition.So, yeah. Nepal is is apparently
not very popular over there. Ifyou've you're saying it's like
you've just discovered it, butit's like it's a very
competitive sport.
And Australia and New Zealandare 2 of the top teams in the

(51:12):
world. So

Jake (51:14):
Yeah. No. I think everybody sees it as a joke over
here. At least, I've that's sortof how it's been presented. It's
just like, oh, yeah.
It's like No. It's basketball,out of backboard, and absolute,
like, pansy version ofbasketball. Apparently not. Not
much.

Michael (51:26):
Apparently not.

Jake (51:27):
I just need to watch some more videos.

Michael (51:29):
Yeah. There's no there's no safety. There's no
backboard. Like, you miss, youmiss. That's it.

Jake (51:33):
Yeah. Yeah. Gotcha. Okay. I'll have to check that out.

Michael (51:36):
We gotta wrap this up. This is

Jake (51:37):
We do.

Michael (51:37):
This has gone far too long.

Jake (51:38):
What episode are we on? 161. 161. Hey, everybody. Thanks
for hanging out with us.
Northmeet south dot audio slash161. Find show notes there. Hit
us up on Twitter atjacobennett@michaeldurinda@northsouthaudio.
Rate us up and put your podcastof choice. 5 stars would be
amazing.
And if you happen to see me atLaracon US, please say hi, and

(52:00):
you can sign my Michael Dorindaface poster board. That'll be
great. And then I'll send it toyou. Fun. Good times.
Alright, everybody. We will seeyou in 2 weeks. Take it easy.
Bye.
Advertise With Us

Popular Podcasts

Crime Junkie

Crime Junkie

Does hearing about a true crime case always leave you scouring the internet for the truth behind the story? Dive into your next mystery with Crime Junkie. Every Monday, join your host Ashley Flowers as she unravels all the details of infamous and underreported true crime cases with her best friend Brit Prawat. From cold cases to missing persons and heroes in our community who seek justice, Crime Junkie is your destination for theories and stories you won’t hear anywhere else. Whether you're a seasoned true crime enthusiast or new to the genre, you'll find yourself on the edge of your seat awaiting a new episode every Monday. If you can never get enough true crime... Congratulations, you’ve found your people. Follow to join a community of Crime Junkies! Crime Junkie is presented by audiochuck Media Company.

24/7 News: The Latest

24/7 News: The Latest

The latest news in 4 minutes updated every hour, every day.

Stuff You Should Know

Stuff You Should Know

If you've ever wanted to know about champagne, satanism, the Stonewall Uprising, chaos theory, LSD, El Nino, true crime and Rosa Parks, then look no further. Josh and Chuck have you covered.

Music, radio and podcasts, all free. Listen online or download the iHeart App.

Connect

© 2025 iHeartMedia, Inc.