Remote work and building a developer's toolkit

TJ Miller (00:00)
Hey, welcome back to the slightly caffeinated podcast. I'm TJ. Chris, man, what is, what's new in your world?

Chris Gmyr (00:04)
And I'm Chris Gmyr.

Yeah, what's new in my world? I'm still wringling back to school. I have a little bit of a cold, so kids are starting to get sick in school and bringing it home. So feeling a little bit of that pain myself. On a more positive note, just been spending a little bit of time on the side trying to refactor some artisan commands that I have for some tools and side projects and converting them to Go.

So it's been a pretty interesting journey of trying to find the mix of like tinkering with it myself and then jumping into AI assistance. Like I've started to use like Claude more for that and even the GitHub copilot chat inside of the IDE of like, Hey, how do I do this in Go or pasting in

TJ Miller (00:37)
Ooh.

Chris Gmyr (01:02)
like the PHP code that I have and Laravel code that I have into a code comment. And then like it kind of sniffs that out and fills in the gaps for me. So that's been pretty helpful. So it's been a little bit of a mind shift because like in PHP and even in Laravel, like I've been in it for so long and just know it like the back of my hand and just how to do things and how to do them well.

TJ Miller (01:25)
Yeah.

Chris Gmyr (01:28)
and go to a relatively new language and differently typed language and different mechanisms and the whole thing and starting over. And that has definitely stuck out in my mind as like such a big pain point for a lot of devs and engineers, either like getting into the space or jumping into a new stack and to kind of go full circle, a lot of the Laracon

stuff that was talked about is like how to make the developer experience as easy as possible from setup to deploy to production. And it makes me not that I didn't appreciate that before. It just makes me appreciate it even more now, especially with trying to get set up with Go. And I've been tinkering with getting Ruby on Rails setup as well. So like those stories are very different than

Laravel and PHP world. Go has been pretty good but Rails give me a little bit of a problem getting set up.

TJ Miller (02:29)
Yeah, go is an interesting one too. like, you know, I just love the whole AI piece to it all too. Like, go is interesting because there are frameworks for go, like both for building command line applications and for building like web applications and APIs. But there's just this like ethos with go of really like running bare bones and you...

like not using frameworks and just kind of like really building minimally from scratch. That's, it's definitely like a paradigm shift from building like I'm going to throw together an artisan command inside of a layer of an application. There's a ton of affordances you get that when you shift over to go, if you're not using your framework, something like Cobra or Bubble Tea, like you're really left to your own own devices to like build everything from scratch. And one of the things that

Chris Gmyr (03:23)
Yeah, totally.

TJ Miller (03:23)
It sounds like you're already onto you is like when I started learning go and I'm by no means any sort of expert, but when I started learning it, the main thing I was doing and like, did this when I learned Python at the beginning of like my AI journey too was, well, here's how I'm wanting to do this in PHP and even just write out some like pseudo code, like not even anything that like may work or not. And then just asking the AI to like translate that like, well, how do I do this thing in go?

And it sounds like you're already kind of like stumbling onto that, but it's like such a powerful way to like kind of translate the knowledge that you already have from, you know, like Laravel and PHP into this new paradigm, rather than like having to sit there and just bash your head up against your editor to figure out like how to do these things or even just like how the concepts translate. Like you can even just go in and say, all right, as a

very experienced PHP developer, like explain Go to me. And it'll really kind of like sprinkle in a lot of that translation layer, which is fantastic. But yeah, it's fun, fun getting to like really see how polished the layer of all experiences.

Chris Gmyr (04:39)
Yeah, totally. And then like you said, it's nice to match up what you know to what you don't know or what's new to you. It's like, you know, spitting out the PHP code into Go. And then now it's like, well, what is this structure or mechanism that it used or code that it added? And now you have something else to look into and expand your own knowledge base either through traditional means, you know, more research or, you know,

Google searches or reusing AI to tell me more about this or that or why did you put this in here. So yeah, it's been a really interesting experience for sure.

TJ Miller (05:14)
Yeah, it's like, hey, translate this and explain it to me. It's such a powerful thing that I feel like my go has gotten a little rusty and that's dead be my first stop is like, yeah, re -explain this go code to me and make it make sense. I think it's super powerful.

Chris Gmyr (05:32)
Yeah. Yeah, totally. So yeah, what's new on your end?

TJ Miller (05:37)
man, it's been a whirlwind. I've kind of fallen off of socials the last week or so. I've just been putting all my focus into onboarding and starting to get up to speed on things with Geocodeo. So that's been going great. Today, in fact, I got my first PR merged into the main code base. So feeling super stoked about that.

Chris Gmyr (06:02)
Yeah, nice.

TJ Miller (06:06)
Many more to come, but just like actually getting that first contribution in there. Just, feels so good. Outside of Code World, my wife and I have been repainting our kitchen. We've been in this house for like seven and a half years now, and we really haven't done much with it. And so over the last like six months or so, we've just been kind of going room by room and painting it and redoing things. And we've finally got around to the kitchen and.

my God, kitchens are so tedious compared to everything else, because we're painting the cabinets, we're doing the walls, it's just like extra tape on everything. Doing it all and it's going to turn out so good. I'll definitely put some pictures out on Twitter and in socials when it's done, but we're going with a like really loud mid -century kind of like...

Chris Gmyr (06:39)
Yeah.

No, doing everything.

TJ Miller (07:00)
pink on the cabinets and like this seafoam -ish green teal on the walls. It's awesome. Like you just can't help but look at it and yeah, feel good about it. know, it's, I forget how my wife said it, just like, yeah, I can't remember how she phrased it, but it's really, like the whole vibe we're going for around our house is just like high energy and like feel good.

Chris Gmyr (07:08)
super retro.

Yeah.

TJ Miller (07:25)
You know, so our house has been gray before this house. We were always in rentals. So was like beige or gray walls and just super boring. And it feels awful. Like Michigan winters are long and cold and obnoxious. And like, at least in Southeast Michigan, there's just like, there's not a whole lot to do in the winter. And the last few, we really haven't had like enough snow to go do like fun activities either. So you're just, you're stuck inside.

for like five months and you know staring at gray walls feels bad so we're just we're we're going we're yeah we're going loud with it yeah yeah going super loud

Chris Gmyr (08:01)
Yeah, it's the worst of all worlds. go outside, can't stay inside. Yeah, nice. That's awesome. Well, if you need any help painting, know Jake Bennett definitely loves painting. So, you know, let's call him down.

TJ Miller (08:14)
Yeah, I know he's been going through it too. I think he like recently redid a bathroom and that's, man, that's on our list of projects to get to also. Our tub now has a crack in it and it's not leaking, but it's got a crack in it. So I've got to replace the tub. And then before we moved in, they painted the walls, but not with like bathroom grade paint. So now all of the paint is like chipping and cracking with all the moisture from the shower.

because there also wasn't like a fan in there. it's, this house is just full of, why did you do this? Like, this is not the way you do things. What the heck?

Chris Gmyr (08:42)
That was terrible.

Yeah, I think a lot of houses are like that. Even when I've heard buying new or building new, there's always something that was just put off to the side or just taken the easy way out in a lot of different ways. So I think it's just the majority of houses in general. So yeah, we have lots of those products too.

TJ Miller (09:08)
Yep.

Yeah, I hear just like the woes of home ownership like that too. Like this house was, I discovered it when I was fixing more issues in the garage, but the previous owner was like finger quotes contractor and inspector. And so I think he cut every corner he knew he could get away with in this house. And then prior to us buying it, it was flipped. that was also just a...

good on them for doing a lot of stuff, but boy, did they like, they did it all themselves for the most part. And like they put tile down in the kitchen. I think that may have been their first time doing a big tile job because it's super uneven and white grout on a floor does not turn out well. So like it's now just like splotchy gray and white. So yeah, it's I think there's a level of that in every house, but this one definitely.

Chris Gmyr (09:59)
on you.

TJ Miller (10:08)
is taking things up a notch. So, fun times, but luckily I was super fortunate. My dad was real handy and when I was a kid, dragged me around and made sure I was involved in a lot of the home projects around there. So I turned out fairly handy, but I also know where my limits are. And we've got a few projects where I'm definitely planning on hiring people to come in and do it. Like I got a big drywall project, got a big electrical project.

I'm not trying to do those, like, at all. I hate drywall, and they'll do it in a quarter of the time and way better. So, might as well bring someone in.

Chris Gmyr (10:35)
Yeah. Nope. Well, thank you.

Yeah, 100%.

TJ Miller (10:49)
Cool, dude. Well, I think one of the first topics I would love to touch on is work from home remote. And this is all kind of coming off the heels of Amazon issuing a big return to office. I think they're mandating five days a week back at the office, so not even a hybrid situation starting sometime next year. I've heard a massive amount of upset and, of course, big talks of like,

quiet, soft quitting and all sorts of fun times. I don't know, man, what are your thoughts about Amazon issuing this like return to office? Do you think it's, you know, just a kind of like middle management, everyone needs to come back or do you think this is a little bit more nefarious and like trying to restructure and downsize by, you know, getting people to quit by, you know, making everyone come back to the office?

Chris Gmyr (11:42)
I could see a little bit of both. I'm sure a lot of managers probably feel a little out of control with maybe some of their employees working from home, you know, sometime or most of the time. And I think it gives them an easy out to lay people off if they're not compliant with the new, you know, coming back to the office. Because I think they're at like a three day in office mandate right now. And even some people apparently are getting like,

if they're not abiding to that. So I don't know, I think it's a way that they can possibly, you know, just more easily cut people, unfortunately. And I think it's a big step in the wrong direction with mandating back to office work. I've always worked remote from when I started, I've only had like one job way back in the day, like end of high school, early college until I

TJ Miller (12:13)
Mm -hmm.

Yep.

Chris Gmyr (12:39)
left that, that was in office. it was like a small company, like local IT, type situation where like I was the only IT person for this like small business and was just there. And, know, that was fine, but all of my work contracting and my own agency work, and even since going full time, and even like full time contracting has all been remote. And at this point, I can't imagine going back to the office full time.

I think hybrid might be cool, but it would be like minimal hybrid for me. Like if I could come in like once every couple of weeks or, you know, three days a month for, you know, the same week or something like that, you know, I'd be open for that. But generally like just not like I'm not not open for in office work. It's it's too much of a strain just personally, like just commuting and dealing with all that extra.

TJ Miller (13:14)
Mm -hmm.

Chris Gmyr (13:37)
maintenance and clothes and just, you know, all the day to day out of the house, you know, type stuff. And with like little kids and trying to get them, you know, dinner and, you know, to bed at a decent time, it just would not work out, especially like around here, like the traffic is pretty bad in, those peak times. So, you know, a lot of people don't get home until six, seven, seven 30, you know, even so like, can't imagine putting more stress on my wife and family.

know if I wasn't around it's just so nice to be like done at five and just walk downstairs and be you know good to go. So you know how about you have you always been remote or has this been like a more recent shift in your work in career history?

TJ Miller (14:20)
No, so I guess like across my career, I think I spent probably about half the time working remote. Maybe, a third of the time. I don't know. It's time. Time is weird. so let's see. I was at Curology for like four and a half -ish years. And so that was all remote, which was great. previous to that, I worked at a company that was local.

and that's, I was there for, think, like three and a half ish years. and that started full time in office. and that was fine. mean, at that point I was, I was used to it because previous to that, all of my other work had all been in office too. so I don't know, I was kind of used to it and acclimated to it. Didn't really like it, but like it just is what it is. But I had spent, I'd say.

about two thirds of my time there, like really advocating for remote work. Just, it was a company that had a call center. Tech was in the like support area for, and like, so people were on phones all the time. Definitely had to like, had to invest in some pretty nice like noise canceling headphones just to even get through my day. And so it was, it was brutal for trying to do any sort of deep work.

And it was like a very professional dress code. And so for me, I had to make a big investment in like nice button up shirts, polos, nice pants. not that I'm opposed to any of that, but to like have an entire wardrobe like of that to wear to work was, it just felt so extra to me. and so I advocated like really, really hard for it. And eventually by the time I had ended things there,

I was down to a day to two days a week in the office. And for me, that was, you know, on a no traffic day, that'd be like a 25, 30 minute commute, but commuting with traffic that was, you know, easily an hour each way. And that would just, it was brutal in my body sitting in the car that long. I've got like a compression injury in my lower back and that would just flare everything up, you know, sitting, sitting in a car like that for so long.

But even more so to that, like my wife is basically disabled. She just had her like disability hearing this, two days ago. And so that's makes things really challenging when she needs me around to help get her to doctor's appointments. she really can't, you know, guaranteed to pick up and drop off for school. So I've got to be around to do that. If my son's got doctor's appointments. So it was like really, really challenging in the summer when he was home from school.

It's a little more manageable when he was in school, but I don't think that I could ever go back to working in an office. It was so unproductive for me. The one or two days that I would go into the office, I basically declared, I'm not being productive these days. There were days where I didn't even open my laptop to write any code. I'm like, if I'm coming in,

then we're going to optimize that time around having any in -person, like any meetings, let's kind of like cram all of our meetings into that day. Anytime we had to do like brainstorming, I love doing brainstorming in person. Like that's the one thing I do kind of miss is like getting everybody into like a conference room, you know, and just having like a big old brainstorming session about stuff like that aspect I do kind of miss.

Chris Gmyr (17:48)
Yeah, that's a lot harder to do online and a lot more challenging.

TJ Miller (17:51)
Yeah. Yeah. And it's just fun being able to riff with everybody. And I do miss lunches with folks too. That was always a nice time, being able to go out to lunch and hang out with people. But that was basically what I deemed that time is that's going to be meetings, brainstorming, let's spend time together. So let's all go out to lunch and just have some team bonding. And so that was the only reason, those are the only things I did in the office.

And all of my coding was, you know, deep work time at home. So kind of balanced it out a little bit, but even in like the most recent job search, you know, that I was, I just went through, I had to start making some considerations around like, what, what, what am I willing to do? Like, am I willing to go back to an office full time or hybrid? And I came to, if I really had to, I'd consider something hybrid. most hybrid things were like a few days a week and.

I was willing to go down that road, but I knew it would be a real stretch and like real hard in the family. So, I'm really glad that I was able to, you know, land at GeoCodeo and they're always remote. They've always been and forever will be a remote company. that's, that's something I'm like really, really proud of and excited to be, you know, be a part of. So, yeah.

Chris Gmyr (18:57)
here.

Yeah. And that's huge. And I think the potential issue with hybrid, know, just like with Amazon, it could, you know, open the door for more mandatory, like in office work in the future. If, cause a lot of people in companies look up to big places like Amazon, like that's why there, you know, was an influx and microservices and, you know, smaller companies that, you know, it didn't really make sense and all this other tech and

just choices. And I think if Amazon is doing this, then a lot more companies could follow suit in the future. So even if you signed up for something that was like one or two days a week hybrid right now, it could be potentially a change in that later if the company wants to prefer like in office work. And then, you know, if that doesn't drive with like whoever got that position, then it's either

Do I go along with this or do I jump ship and find a new job? Finding jobs like you recently know is not the most fun experience. You probably don't want to do that too often. I think remote first and especially remote first companies like GeoKodio and a bunch of other ones that are still remote first, that's still a huge benefit and selling point for me for sure.

TJ Miller (20:22)
No.

Yeah. And I think you can be remote first and still hybrid. I think it all depends on how much you focus on being in person or being remote. And that's a real challenge too, especially at the company that I had really advocated for. I was really the only person working remote at that point. And so it was really tough when all of these conversations were happening between people in person and then I'm not there. That's definitely not.

remote first. And so I was left out of a lot of conversations and then had to get filled back in or, you know, decisions were made and I'm like, you know, like there's X, Y, and Z reason why we shouldn't have made that. And like now we're kind of, you know, just stuck in a poor situation. So I think it's, I don't know, it's a real challenge. Like I think even like hybrid is, it makes it even more.

Chris Gmyr (21:25)
Totally.

TJ Miller (21:33)
More tough. like, what are you doing? Are you like, now you've got a bunch of people in office and everyone's still on zoom calls. Like that's just kind of awkward, you know, like sitting there all next to each other. And then you got like three people. So now you're all on zoom, know, your, your own workstations. Like, I don't know. I think if you're going to do any remote at all, then like, you really gotta kind of got to treat it remote first so that, you know, you're not offering this like really awful experience to the people who are working remote. I don't know.

Chris Gmyr (22:00)
That's a hard balance to find. I think, cause when I joined Curology like we were hybrid or they started building out their remote team. So I was kind of the early stages of that. So the majority of people were still in office, but on every meeting there was always a zoom link. So if anyone was remote that needed to be on there, we were on there and, everyone else got into the same conference room or maybe if

someone else was presenting something differently, they'd jump into like a phone booth or something like that and jump onto the same call. I forgot what exactly it was they had in these conference rooms, but it was like like owl camera or something like that. So it basically like follow people's voices. So whoever was the active speaker, would turn the camera and point that to them. So you could actually see them talking on zoom instead of just like a random laptop.

TJ Miller (22:39)
Mm.

Chris Gmyr (22:54)
you know, set up looking at the ceiling or something like that. So it was a really cool option that we had in some of those conference rooms, like early on.

TJ Miller (22:57)
Yeah.

Yeah, that's like, that's really, mean, that's super cool. I got a nerd out on that from like a tech perspective, but I think that's such a perfect example of, you know, being a hybrid company, but still operating remote first. And that's one of things I really appreciated about Curology is they did a really good job catering to remote and that everything was async -able for the most part, very slack and notion centric. So even

when there was, you know, people in office or, you know, and everyone else was like spread out, it always felt like very remote friendly regardless. and think that's what you have to do when you have any level of remote employees is like, you really kind of have to lean into everything being like, for the most part, async and, you know, using a ton of different tools to like make that feel and feel good and work well.

Chris Gmyr (23:57)
Yeah, totally. And like we've worked remotely for a while now. So like, what are some of the tools that you use on a daily basis or even like, what are some of these like mechanisms that you have, that help you work at home when it could be, you know, so easy to just, you know, play a game or watch TV or do some laundry or do some painting or, know, just life kind of creeps in because we're in the same space, right?

So yeah, what are some of the things that help you on that side?

TJ Miller (24:31)
I mean, I do all of that too. mean, there's, there's, there's balance in it all. think, you know, like the other day I, instead of taking a lunch, went and, you know, painted a wall in the kitchen. I did, did a coat of paint so I could, you know, do a second coat later on in the evening. or, you know, I'll, I'll go change the laundry and stuff, you know, while I'm waiting for CI to build, you know, it's, you, you can do all of that stuff and still be productive.

I think that's like one of the wonderful things about remote work. You know, for the most part, as long as you're getting the things done, you need to get done and you're available for the meetings you need to be available for. You're kind of flexible with what you want to do. But there's definitely some stuff that I've, especially habits that I've developed over the years to like make it a lot more effective. I think one of the number one things is definitely having like a dedicated space to work.

that's, I think, huge for just setting the mindset of, you know, I'm in my office area, I'm at my desk, I'm in work mode now, and just kind of, like, setting that context for yourself. And then at the end of the day, like, when you're done, you're getting up and you're walking away from that, that kind of gives you that separation to, not necessarily bring work from home home with you still, you know, if that makes sense.

So definitely having a dedicated workspace is huge. And tool -wise, I know. For me, guess having a good camera is something that's important to me. I just use my iPhone at this point. But really having a good space that's set up with the right equipment to be able to do high quality video calls and

you know, be able to like be presentable in that space, think is, at least that's important to me. And then like tool wise, like I live and die inside of like Slack, know, notions pretty heavy, like it gets pretty heavy usage. I've kind of shifted a lot of my notes to Vim, but having that like collaborative space for being able to like share that documentation, working on different stuff together, just like a lot of collaboration tools, of course, like

Zoom. You one of the tools that I haven't had a ton of exposure to, but I'm really looking forward to getting some solid usage out of is Loom. And that's kind of like a, you've got like up to five minute like screen, like little screen casts or just like video messages that you can save and send around. think that's like, I've not had a lot of experience with it, but that's a tool that we use at Geocodeo and I'm, I'm actually putting one together.

later today is like a kind of brief on a PR review. So it's like, here, let's walk through the PR together. And we'll have like a nice little video of that. And I can share that asynchronously with the rest of the team. And they can use that as part of their like PR review instead of having to do it synchronously over a Zoom call or something. So just kind of like finding tools like that. I know Chris, like what about you,

Chris Gmyr (27:38)
Yeah, mean, second to everything that you said, at least with the home environment, separate space. I have a space that's like up again, up above the garage and like a bonus room, but it's all, you know, set up and just kind of separated away from the house through a hallway and a stairway. So I don't really get a lot of sound from the rest of the house unless they're like downstairs, like entering the house or leaving. But typically it's been pretty quiet, good set of

noise canceling headphones just to get rid of all the little noises that you hear outside, you know, like garbage trucks and people, you know, mow their lawns and stuff like that. That just kind of seeps through a little bit here and there. One thing that kind of helps with those like entry points to the office space is I've had for a while, it's called Luxa 4 and they have a couple of different products. they have like a Luxa 4 flag and then like a Bluetooth wireless one.

And it's basically like an LED light that goes outside some doors. So I have two of those on two of the entry points that connects to my computer. So when I go on a meeting, I just turn those to red and then everyone knows except for the little one, the toddler, she just kind of comes in whenever. Yep. And then turns back to green, like if I'm not in a meeting or a call or even if I'm just on like a listen only, like all hands call that like they could come in if they needed something.

TJ Miller (28:54)
Yeah, you can't stop toddlers,

Chris Gmyr (29:07)
just set it to green. But I have a little workflow that I set up between Alfred and a few little scripts locally that if I type in like the keyword meeting, it will automatically turn on the red light in those two spots. It'll automatically set my Slack away message saying like I'm in a meeting and it'll pause notifications for like, I think I just have it set to two hours or something like that. So I don't get.

a lot of notifications flowing in. And then I have a different command for back, which basically reverts that. It turns the lights to green. It resets my Slack status so that people and all those notifications can come back in and if you like little tools like that. But I think any of those like little workflows that you can build in are pretty helpful too, because that's like a whole bunch of button clicks and mouse clicks that

I don't have to do now or worry about turning things on or turning things off or I'll turn red light on and they actually need something from me or something like that. But yeah, all those little things have just been tweaked over time. But I've been super helpful.

TJ Miller (30:08)
Yeah.

man, that's super cool. That's like having a, you know, like on air sign. Like that's really dope. I think that's something I was like thinking of. I didn't know there was a product like that already existing. Like I was going to, you know, at the time I really wanted to do it. You couldn't get any Raspberry Pi, anything. I think inventory is back to, you can actually get stuff now. So I was going to try to snag a Pi Zero and...

Chris Gmyr (30:23)
Yeah, exactly.

TJ Miller (30:45)
build something just like that, that I can, know, like my office is in the basement. so over the top of the stairs, I kind of wanted to throw something up there just so there's like some awareness to like, yeah, like maybe, maybe don't, don't interrupt me. it's, it's a lot, I will say it's a much harder in the summer when my son's, you know, home from school, cause he's, he always wants to do stuff together and I love to, you know,

take a break and go do stuff with him too. But you know, at the end of the day, there's stuff that's got to get done. one of the things I bought for like when I moved back down here to the basement was I bought a, a light, like a light for like sits on the back of my monitor, just to kind of like light my camera up a little better. And that's, that's been great kind of serving for that. You know, if my, my son comes downstairs and sees that I've got that light on and it's like, he's doing something, you know, got to, got to come back later. so that's been.

That's been helpful, but I'd love to be able to kind of cut that off coming down the stairs even. So I'll have to check that out. That sounds pretty cool.

Chris Gmyr (31:44)
Yeah.

Yeah, totally. And then just ergonomics -wise, I have a motorized standing desk. So I have a couple of preset locations to stand. And then I recently got a mini under desk treadmill. So I've been doing some walking during the day. So I've been able to get some steps in with that and then have a little monitor stand on top of the desk that elevates.

TJ Miller (31:55)
yeah.

Ooh.

Chris Gmyr (32:11)
everything up and have some other tech and some spaces to organize there and then some nice speakers when I don't have my headphones in and some overhead lights and stuff like that. just making the space a little bit nicer and as ergonomic as I can because sitting here for hours a day is a lot. So be able to change it

TJ Miller (32:31)
Yeah, definitely find myself at, it's great call out, like the ergo side of things. There's, I definitely find, you know, when I was working in an office, like I was up and about a lot more often, especially like with all the distractions and everything there. And I find that, you know, working from home, I'm definitely planted at my desk for a lot longer periods of time than, than I think I normally was, you know, like I said, at the office. So like I've,

Got the motorized standing desk also. Highly recommend a really good chair. That makes a big difference too. Don't have a treadmill yet, but that's, I don't know, man, that might be coming. That sounds pretty nice.

Chris Gmyr (33:13)
Yeah, it's been pretty nice. It's a little bit to get used to. I'm able to type a little bit if I'm just doing some documentation or some research or even light Slack messages. I can do pretty easily even some emails. But not really a lot of hardcore coding or especially knowing what I'm doing or the direction that I'm going. I typically want to stand or sit down for that, at least at this point. But it's still relatively new within the last month.

We'll get there, but it's just a nice little additive to get some steps when I'm having to be connected to the desk anyway. But also I try to, I have an alarm on the 55 minute mark on every hour on my Apple watch. I'm like, sometimes I ignore it, but usually I try to like get up and move around or.

TJ Miller (33:58)
Ooh, nice.

Chris Gmyr (34:04)
you know, run downstairs. And if I have like laundry that day, like I'll, you know, flip that over and then run back upstairs or like get something to drink or something like that, or do some air squats just to get some like blood flowing and then transition into like a different level, like on the desk and do something like a little bit different, you know, after that, but just about kind of switching it up throughout the day, which I think is pretty helpful.

TJ Miller (34:25)
Yeah. Yeah, I try to pair it up with like context shifting too. Like if I'm, you know, been sitting down and doing like PR review for a while, then yep, get up, like move around a little bit, maybe switch from like sitting to standing. And then, then I go into like doing some code or if I'm like going into like block of meetings and I'll do the same thing, just kind of like every time I'm switching context, try to like switch up the environment a little bit too.

Chris Gmyr (34:50)
yeah, totally.

TJ Miller (34:51)
Another thing I'd love to touch on is something that I've been dealing with quite a bit over the last two weeks of transitioning from Curology. It was really cool. They let me keep the laptop, which was nice. that's something that I was needing an upgrade anyway, so that worked out really well. And then coming on to Geocodeo, I got a laptop from them as well.

laptop setup and like managing dot files and all of that, you know, I've got a pretty decent system together, which has made it really nice, you know, especially doing it, you know, twice in three weeks. I think I was able to get like the newest laptop set up in, you know, like half an hour and it was like ready to rip with like everything that I needed, which was awesome. No, no, that was, I think that's maybe the fastest it's ever been for me.

Chris Gmyr (35:39)
That's not too bad at all.

TJ Miller (35:45)
you know, I've been trying to get my dot files repo cleaned up. Like I talked about it at the PHP round table last week. I said on there that I'd have my dot files like out for people, by the weekend and, I got into painting the kitchen. So that didn't happen. but I've been trying to get them all cleaned up. So luckily like I've been in there like fresh kind of grooming it and making sure like my tool chains actually still work.

Love to hear it, What are your strategies or tools that you use to manage .files? Do you have any? Or do you just yolo with them? Or do you have a strategy and a game plan with it?

Chris Gmyr (36:20)
Now, unfortunately, it's pretty lackluster right now. A while ago, I tried to set up the .files repo and have some other sync tools like Macup, and I tried a few other things like...

but they never really seemed to work out. And the two systems that I was syncing, it was between the series MacBook and the Intel MacBook, and it just does things differently. And also some of the directory structures were slightly different between the two systems because I had like a really kind of set in stone way to do things in one computer and then just like a very newer way to do it in another one. So

just the different like sim links and the aliases and stuff like that didn't always really work out. So I would have to pull it down, make some manual changes or force in another more local file to that computer. And it just got everything out of sync really quickly. So I think when I got this new computer, I basically looked at the .files repo that I had.

pulled everything down manually and that gave me like the 90 % know press start and where I wanted to go and then just kind of tweaking things from there because there's a lot of things that I like didn't really want or wanted to do like more manually because I only have to do them once so yeah really not like a great strategy with someone with like similar systems and relatively new laptops you know for you I can see that as like a much more worthwhile

TJ Miller (37:47)
Yeah.

Chris Gmyr (37:58)
journey for you to take on. There's probably some things that I can do to clean that up and get it moving, but also not a huge priority for me right now because I got this computer not too long ago and hopefully not going to be having to do it anytime soon.

TJ Miller (38:14)
Yeah, yeah, think for me it was not just like the setup, but as a pretty hardcore like NeoVim user, you know, especially moving between all these machines, like I've got to, you know, it's not just set up, but I got to keep them in sync and like that's because that's, know, if I've changed a key bind or add a key bind on one computer and then go to the next one and like that's not there or tweaks and packages or something like I've got to kind of make sure I can sync everything between all of them. And that's that's a big challenge.

Chris Gmyr (38:40)
Yeah, that's right.

TJ Miller (38:42)
So for my end, I'm pretty kitted out with tools. Some of the most notable stuff. mean, big shout out to Michael Dorinda and Jess Archer. I stole a whole heap of stuff from their .files repos. And I've got it pretty dialed in with the main piece to all of it is a little app called DotBot. And that's kind of like the main.

the main way of issuing all the symlinks, so all my .files and everything are stored in a repo. And then .bot is what handles creating all the symlinks between where this repository lives and all the system files and configurations and everything. The other piece to a good chunk of it is secret management. And I use a thing from a little tool from Charm called Skate.

And that allows you to kind of like, it's a little local key store, like key value store, that you can like put all your secrets in. And then I wrote like a little handy script to hoist any of those up to environment variables if I need them. but the nice thing is it allows you for any of your like aliases or scripts. If you like need to include a secret in those, you can just kind of shell out to the skate CLI and be able to pull those secrets in. so that's like a huge, huge piece to you.

like my latest tool chain is like, how do I, you know, have a dot files repo that I can make public or feel comfortable putting on GitHub and still have like secrets kind of littered it and throughout my workflows. so that's been like a big, big piece of the tool. it's kind of cloned that in, you run the dot bot script and you know, for the most part you're up and running. and from Michael Dorinda's repo, there's like a whole bunch of like Mac default setting scripts.

that he runs. It's one script, but it goes through and sets a bunch of default values for Mac configuration. And that is, I took that and hacked on that a bit and kind of fine -tuned it to the things that I like. But that was another big piece of, well, now how do I bring in and manage beyond just my editor or application configurations, how do I keep consistency at the level of my operating system?

And that was a huge, that, I don't know, made, made a huge, difference in my workflows. Like that was going to be a big pain of like, you know, setting hotspots and corners or, know, I like, prefer a finder to like list files out in a certain way by default. So that was a good little nugget, but yeah.

Chris Gmyr (41:07)
Yeah.

Yeah, that's awesome. Try and codify anything. dot bot, so I'm going to have to check that out.

TJ Miller (41:26)
Yeah, dude.

Yeah, I had used Mac up previously. And I think one of the reasons I drove away from that was something happened with Dropbox. Like they changed the location of their folder on Mac OS, and that broke everything. And so I just said, you know what, that's fine. I'll go to something completely different anyways. And that worked out real well.

Chris Gmyr (41:53)
Yeah, totally. Awesome. Well, do wrap up TJ.

TJ Miller (41:57)
Cool, man. Yeah, I think it's a good time to wrap up. So thank you all for listening to another episode of the Slightly Caffeinated podcast. Show notes, mentions, all of our mentioned links and everything, as well as the rest of our episodes, can be found at slightlycaffeinated .fm. You can find us on Twitter over at Slightly Caff Pod. And if you have any feedback or topic ideas for us, give us a shout at hey at slightlycaffeinated .fm for email or

Hit us on socials, either us, know, individually or, or the podcast Twitter itself. So yeah, thanks Chris. Another great episode, All right. Yeah. See y 'all next week.

Chris Gmyr (42:33)
Yeah, thanks, TJ, and we'll see everyone next week.

Creators and Guests

Chris Gmyr
Host
Chris Gmyr
Husband, dad, & grilling aficionado. Loves Laravel & coffee. Staff Engineer @ Curology | TrianglePHP Co-Organizer
TJ Miller
Host
TJ Miller
Dreamer ⋅ ADHD advocate ⋅ Laravel astronaut ⋅ Building Prism ⋅ Principal at Geocodio ⋅ Thoughts are mine!
Remote work and building a developer's toolkit
Broadcast by