The Art of Remote Pairing: Avdi Grimm on Ruby Tapas, Wide Teams, and Community

UGtastic Archive
Full Transcript Available
Meet Avdi Grimm, a Ruby developer and educator who has turned remote pair programming into a successful side hustle. Learn about the benefits and challenges of this approach, as well as the positive reception he has received from the Ruby community. #ruby #pairprogramming #remotework #sidehustle #programmingtips
The Interviewer

Mike Hall

Interviewer, UGtastic

The Guest

Avdi Grimm

podcasting and community media

The Conversation


Mike Hall Interviewer, UGtastic
Hi, it's Mike here with UGtastic. I'm sitting down with Avdi Grimm, who runs the Ruby Tapas and the Ruby Rogues and the, excuse me, the Wide Teams blogs and podcasts. He also does this very interesting thing where he'll remote pair with people on open source projects and also some paid projects. Avdi, thank you for taking the time to sit down. Can you tell me a little bit about how you got started doing these remote pairs? And how that's been working out for you?
Avdi Grimm podcasting and community media
Well, thanks for having me. So the remote pairing, just, I don't know, I think it seemed like a natural progression, honestly. I had been working remotely for a long time. That's just been sort of one of my long-term intentions was to work from home because I like being around my family. And I like choosing where I live based on other things besides being in a tech hub or something like that. So I'm out in sort of suburban Pennsylvania here. And so I've been working remotely for a long time for various companies. And I am also a fan of pair programming because I've seen how effective it can be for spreading practices throughout a group. And for keeping everyone on the same page and keeping the bus number down and stuff like that. So, you know, I've been so, you know, the kind of the natural thing was I'd been pairing within companies that I'd worked with or for remotely for a long time. And at one point this summer, I found myself with the opportunity of taking another traditional consulting gig. But I had been really feeling the pressure on my time from the consulting gigs that I had. I felt like I wasn't able to move forward on some projects that I wanted to get going, like Ruby Tapas.
Mike Hall Interviewer, UGtastic
Right.
Avdi Grimm podcasting and community media
And I wanted something that would be more flexible, something that, you know, wouldn't be, you know, hours and hours and hours a day. And also where I didn't have to feel like, like getting a, you know, like getting the product shipped was dependent on me working overtime and stuff like that. I wanted to be able to actually, like, you know, have a good cutoff with the work that I was doing for people. And that can be hard sometimes. Even with consulting, it can be hard to sort of draw that, you know, draw those boundaries. And so I had already been taking some sort of, some ad hoc pair programming appointments and not as an intentional thing, but just some people had gotten in touch with me. You know, people that I knew from other things had just said, hey, can I, could we set up a thing where I pay you and we just do remote pairing from time to time? You know, and usually somebody that wasn't, typically people that didn't have a good, like they weren't in a company that had a lot of other rooms. Maybe they were the only program or maybe they were consulting, like our sole consultant for something like that. And they wanted to work with somebody else, you know, to just both for the company and to hone their skills and stuff like that. And so I've been doing that for a few people. And I thought, you know, they seem to be getting a lot out of it and coming back.
Mike Hall Interviewer, UGtastic
And so what if I just did more of that instead of the traditional consulting?
Avdi Grimm podcasting and community media
And so I, you know, I took some time to like think about like what would that look like, you know, and write up some copy about, you know, the sort of things that I could consult on as a consulting pair programmer. And then I just kind of put my shingle out there and I've been, you know, basically flooded with requests for appointments ever since. Oh, okay. And I mean, do you mostly get open source projects or do you get a lot of paid work through this as well? I think I would say, I think I get more submissions for paid work than I get for open source work. Now, I do have to, I run a backlog for the open source work just because I'm not able to do as many of those appointments. I do those for free. I do free pair programming if it's on open source software. And I'd love to be able to do more than I do. But right now I can only do one a week because it's, you know, it doesn't pay the bills.
Mike Hall Interviewer, UGtastic
Right.
Avdi Grimm podcasting and community media
And I'm kind of curious, you know, Gary Bernhardt, I interviewed him over SCNA. And he's talked about how doing destroy all software, he has people just sending him requests and saying, you know, can you look at this code, can you analyze it? And it's kind of an expectation that he can do all that.
Mike Hall Interviewer, UGtastic
Do you get that with the pair program? Do you ever get people saying, hey, why don't you have time for my project? Or has it been pretty, like, congenial? What has it been your experience?
Avdi Grimm podcasting and community media
You know, it's been extremely genial. Anybody who follows me on Twitter, well, first of all, knows that I tweet way too much. But also knows that, like, somewhere between, like, you know, like once a week or to once a month, I tweet the same line over and over again. I get the nicest emails. Yes. And it's because I do. And I keep tweeting that because it keeps happening. You know, I honestly, the Ruby community is fantastic. And I don't know what it is, but I get, you know, what I get is just the nicest things that people say. And I don't really, I occasionally, I've had people, I've had, you know, I get a lot of requests for, can you give me some advice?
Mike Hall Interviewer, UGtastic
Now, I'd say more often, it's more like career advice than it is, like, can you fix this code? Okay.
Avdi Grimm podcasting and community media
But, you know, I try to get back to everyone. You know, sometimes I'll say, look, I'm sorry. I tried to look at this, but I just didn't have time to really dig into it.
Mike Hall Interviewer, UGtastic
Right.
Avdi Grimm podcasting and community media
But, no, I wouldn't say I get a ton of people being like, can you, you know, please fix my code now.
Mike Hall Interviewer, UGtastic
Okay. Yeah.
Avdi Grimm podcasting and community media
Because that was, that was one thing I had to wonder is, like, how much is a signal to noise do you get on these requests? You know, where somebody, like, you remember, I don't know if you ever looked at old code project or anything like that. Some of the older code sites where people would go in and basically post, or no, it was the guru sites where, can you do my homework for me kind of requests? I just wondered if you got those kind of things. But. Um, the, the, the weird, every now and then I get like somebody. The, the, the most common, the most common sort of like missing request that kind of misses the target is, is I'll get a request that says, for an open source pairing session that says, I, I want some tutoring.
Mike Hall Interviewer, UGtastic
Okay.
Avdi Grimm podcasting and community media
You know, I, I, I, like, I want to pass this test and I'd like some tutoring and I have to say, look, the, the open source pairing sessions are really for putting code back into the community.
Mike Hall Interviewer, UGtastic
Right.
Avdi Grimm podcasting and community media
Uh, so like if you have a project that you own or that you want to, uh, you know, commit, commit to, not commit to, but, you know, make some submissions to, uh, that's open source. You know, that's, that's really what that's for. It's not really about me teaching.
Mike Hall Interviewer, UGtastic
Yeah.
Avdi Grimm podcasting and community media
So it's not, uh, really code one-on-one. It's more of, you kind of have to have some, at least basic, uh, experience with programming and be almost there. It just may be a little bit of guidance or, or something that you need.
Mike Hall Interviewer, UGtastic
Yeah.
Avdi Grimm podcasting and community media
I mean, I do a lot of tutoring, a lot of training and tutoring, but that's pretty much under the, the content in the context of paid sessions.
Mike Hall Interviewer, UGtastic
Okay.
Avdi Grimm podcasting and community media
Uh, because you know, it's, it's, I mean, it's tiring and it's, it takes, um, it takes a lot out, out of someone to, you know, to do that kind of, that kind of work. And I, I kind of look to the open source sessions to be a bit more relaxing, uh, a bit more, you know, a bit more fun because, Hey, it's, you know, it's working open source code and that's, that's awesome. And so going over to, uh, uh, some of the more public stuff that you do, that's the, the Ruby, uh, uh, rogues, that's a pretty popular podcast. I've seen, um, uh, Jim Gray is, is trying to really get it elected to the, to the best podcast of the year. He's been tweeting about that a lot, but it's always a pretty enjoyable interview. And, um, I, matter of fact, I listened to your, uh, most recent interview, at least the first part of it, where, uh, you guys have this kind of, um, um, banter. Uh, and, uh, there was something about jokes that can't be made. Uh, Jim, uh, Jim Gray, I believe, uh, said something about, we can't say these certain types of jokes. And, and then immediately somebody made a joke about, um, back at gym about, you know, the wheelchair or something like that. I was about standing desks and it was, you know, only friends can do that kind of thing. Yes. And, uh, and, and that's really what it sounds like on that podcast.
Mike Hall Interviewer, UGtastic
You know, um, how, how did you guys come to start that cast?
Avdi Grimm podcasting and community media
And, uh... Well, let, let me, let me be clear here. I, I, I'm a latecomer to that podcast. I'm, I'm the most recent addition to that, to that group.
Mike Hall Interviewer, UGtastic
Okay.
Avdi Grimm podcasting and community media
Um, and so as far as I know, so it's, it's Chuck's podcast, you know, he, he put it together initially and, um, I actually don't know the details of the early history. I can't remember who exactly was there at the beginning. I know, I'm pretty sure it was, it was Chuck and, um, and James, um, and I'm not sure who else, um, at the beginning. I'd have to go back and, and look at some of the early episodes to see, and I know that they, you know, they added some, some folks along the way and then, and for a while there, um, before I came on, um, uh, Aaron Patterson was a regular.
Mike Hall Interviewer, UGtastic
Okay.
Avdi Grimm podcasting and community media
And, um, you know, which is awesome. Um, but, um, I, I came on for an episode, um, and then they, you know, I, I didn't, I, I, I guess I didn't insult them enough and, and, and they, they had me back, um, for another episode. And at some point, um, Aaron said, decided that he just didn't have time to devote to that podcast every week. And at that point they, I, I basically took Aaron's slot, which, which, uh, is kind of a big seat to fill.
Mike Hall Interviewer, UGtastic
Yeah.
Avdi Grimm podcasting and community media
It's, it's, it's tender love. So, um, um, well, then I'd like to just jump straight over to the distributed team or the wide team. Excuse me. And so, uh, apparently you, I, or I should say not apparently, but it really seems that you do have a passion for remote, uh, uh, uh, collaboration.
Mike Hall Interviewer, UGtastic
Yeah.
Avdi Grimm podcasting and community media
And, um, I have not yet listened to the wide teams. I saw it, and it was kind of the day I, that I, I decided I had to contact you to talk. Um, I was, I was working on UGtastic, and I was not feeling good about something, and I saw another Ruby Tapas had come out. And then I'm like, hmm, uh, wow, you know, he's got Ruby Tapas and, uh, and Ruby Rogues. And then there was something, you tweeted something about wide teams. I was like, and then I went and looked at your bio. I'm like, this guy is like a, uh, between the, and the books. I didn't even mention the books. Um, what have you learned through the, uh, the, the wide teams, and what kind of was your inspiration for doing that? Well, the inspiration is just, you know, uh, I work remotely, and I probably always will, because I want to live where I want to live with my family. And, and, and I don't, you know, so, you know, my, I, a few years ago, I thought to myself, you know, what is the best way to, to, you know, I felt like, you know, if, if I'm going to make a career out of working remotely with other software developers, it behooves me to become good at it. And I figured the best way to do that would be to talk to a lot of other people who are doing it and, you know, pick their brains. And, you know, and I also just felt like, you know, when I was looking around back then, I, I thought, you know, that didn't seem like there were a lot of good resources out there for, you know, there were a lot of people doing it. There are a lot of people doing different kinds of, of remote work arrangements, whether fully distributed or just like, you know, there's, you know, a main team and then there's some satellite people or whatever. A lot of these things were going on, but there weren't any resources where they were getting together and talking to each other. And so wide teams has always been, you know, the dream for that has always been to build a community around the practice of, of dispersed teams and remote work. So if somebody was going to sit down and grab and, and, and listen to one episode, is there any one particular interview that you got a lot of wisdom from or? Um, I think I would have to get back to you on that one. That's a, that's a really tough one to answer. Um, you know, uh, I know a lot of people really enjoyed the Chad Fowler interview. Um, but, you know, truth be told, there've been so many good ones. It's, it's, it's hard to narrow it down. Here's the question then. Is it one of the things sitting down with user group people and people involved in the technical communities, I've seen certain patterns that have emerged in the way different people approach. Actually community, community, uh, have you seen that with, uh, the wide teams is like, been like, Oh, I've talked to these 20, 30, 50 people. And some patterns have emerged. Has that been something you've, uh, I think a lot of people are, are in fairly similar situations. I mean, you have a lot of startups that, that, you know, they have, they have people in them that wanted to work together. You know, maybe they had all worked together at a previous company, but then they went their separate ways and, you know, different parts of the country or the world, you know, but they still wanted to work together. You've got some groups like that you have, um, more established companies that are just realizing that they don't have enough local talent, uh, to fill the slots, you know, that they want to, you know, to, to do the work that they want to get done. And so they're trying to hire people from wherever the talent is rather than, than, uh, just in their local area. Um, and, uh, you know, and, and various things in between there, but, um, I mean, those are some of the trends that I see.
Mike Hall Interviewer, UGtastic
Okay.
Avdi Grimm podcasting and community media
And, and just kind of to come to an, uh, well, I actually have two more questions. One is I'll just go with the equipment first. Um, I, because I'm, I'm curious as well, and I'm sure other people who are going to be working remotely, I, I'm curious for different reasons. I'm just interested about the setup you use for recording, and I'm sure you use some of this for your remoting work as well. What kind of, uh, microphone and, and stand and setup do you use for, uh, for, uh, for. So for recording, what I'm talking into right now is my, my blue snowball, which is, um, the kind of the, I think it's probably one of the most recommended, you know, podcast recording mics out there for, if you don't want to spend an arm and a leg. Um, you know, it's, it's USB, which is wonderful because you don't have to worry about like, like, uh, interference on the analog cables. And, um, so that's that. My stand is just some cheap stand that I had lying around in my, in my attic. Um, you know, and I've got, I've got a pop filter that I got along with the mic and, um, let's see what else. Um, as far as like remote pairing stuff, um, what do you want to just know about like audio equipment or, or equipment in general?
Mike Hall Interviewer, UGtastic
Um, just, uh, what do you use for communications? Do you, do you have a camera open regularly or do you?
Avdi Grimm podcasting and community media
I try to have video going and here's what I do. Let me, I'm going to try to rotate this and hopefully this won't come tumbling down. Um, if you look over to my right over here, well, one thing you see is a mess, uh, but let's see if we can get this far enough over. Uh, let's see, you can just sort of see the corner. There it is. The corner of my tablet, which is mounted on a, um, a mount, which holds it up in the air.
Mike Hall Interviewer, UGtastic
Okay.
Avdi Grimm podcasting and community media
Uh, to my right. And what I try to do, I try to use my tablet as my primary, um, comms device. Uh, and it's, uh, you know, so I've got Skype and, and, and cheap Google plus and, and, uh, Google talk on it. And so I'll try to have the person that I'm working with on my, like over here, uh, on the tablet and I can look over to them and there's their, their face on video, assuming we've got a decent enough connection. Um, you know, I spring for, for business broadband, but not everyone has, has a good connection and, and sometimes the internet has bad days, but, but, um, you know, I have them over here and then I usually have the screen share that we're working on in front of me on my computer. So it's a little bit more natural than like the, the, the, the, like staring back at each other kind of set up where you're both, um, you know, where you're using the camera on your work laptop.
Mike Hall Interviewer, UGtastic
Right.
Avdi Grimm podcasting and community media
Um, thing. Uh, and I, I kind of like that. It also takes some of the, the hardware load off of the, the PC that I'm working on.
Mike Hall Interviewer, UGtastic
Yeah.
Avdi Grimm podcasting and community media
And then you don't have to worry about a reboot or anything like that.
Mike Hall Interviewer, UGtastic
Right.
Avdi Grimm podcasting and community media
For, um, for that I've been lately, I've been using a, um, a VXI. Uh, uh, Blue Parrot, uh, B250 XT plus, uh, which is a headset. It's a Bluetooth headset that is mainly designed as I understand it for truckers. Um, it's got ridiculously long battery life. It's got like 20 hours of, of talk time and a, uh, and it's got a fairly aggressive, um, noise control, you know, for, for surround, like not picking up on surrounding noises.
Mike Hall Interviewer, UGtastic
Yeah.
Avdi Grimm podcasting and community media
That would, that would be kind of necessary in a truck. They're pretty loud.
Mike Hall Interviewer, UGtastic
Yeah.
Avdi Grimm podcasting and community media
But, you know, it's nice for me because like a lot of the Bluetooth headsets out there are, they're, they're mainly, they're oriented towards people making occasional calls. They're not oriented towards somebody sitting for, you know, two, four, six, eight hours at a time and working with somebody else. And, uh, and so that's why I got that. And that's been working out pretty well. And kind of where I'm going to end, uh, the final question is working from home, working remotely, uh, you're disconnected a little bit from, um, the banter, the, the chat. And, uh, in, in a normal office, uh, you're more of a person who's on the edge of technology. You don't really, I should say, you know, Ruby and, and, and the, and the tools you're using, uh, might not necessarily have to depend on, uh, user groups or anything like that for seeing abreast of what's going on.
Mike Hall Interviewer, UGtastic
Um, but do you ever go to user groups or?
Avdi Grimm podcasting and community media
Oh yeah.
Mike Hall Interviewer, UGtastic
Yeah.
Avdi Grimm podcasting and community media
Um, so my sort of, you know, home user group is, I would say is the Baltimore be more on rails group, which I've been going there since their very first meeting, I believe. Um, and, uh, there's also a group up in Harrisburg. Um, and I try to, I try to get, get to both of those occasionally. I certainly don't get every week, get down there every month, but, uh, occasionally I try to get to those. I have a lot of friends at both and, uh, yeah, I, I love users groups and I, uh, you know, it's people, uh, like I said, a lot of people write to me asking about like career advice for a young programmer. And that's usually one of the very first things that I stress is get yourself involved in a local users group.
Mike Hall Interviewer, UGtastic
Right.
Avdi Grimm podcasting and community media
And I would appreciate if you put us in touch with them because I, I would love to interview them as well. The people who run those groups and, um, and the last, but most important question is, do you have a filter for your voice?
Mike Hall Interviewer, UGtastic
Or is that your own natural baritone?
Avdi Grimm podcasting and community media
Uh, I don't, I don't have anything going on here. I mean, it's just the mic.
Mike Hall Interviewer, UGtastic
Okay.
Avdi Grimm podcasting and community media
Uh, cause I was going to say whatever it is and however much it is, I'm going to buy it because I need that radio voice. Um, I mean, maybe, maybe I have, maybe this basement just happens to have good acoustics. I don't know. Well, okay.
Mike Hall Interviewer, UGtastic
Well, thank you very much for taking the time to sit down with me. I really appreciate it. Sure. Thanks. Thank you. Okay, there's the mark. All right, well, yeah, that was perfect.