Download / Listen: Herding Code 240: Phil Haack on Working from Home https://herdingcode.com/wp-content/uploads/HerdingCode-0240-Phil-Haack.mp3 Jon, Kevin, and Rob talk to Phil Haack about working from home. Links: How To Work From HomeHow to Lead From HomeGeographically Distributed Teams When Remote Work Goes WrongHerding Code Podcast on Twitter: “We’re going to be talking to @haacked today about working from home. Questions or comments for him?” / TwitterAmazon.com : TRX ALL-IN-ONE Suspension Training: Bodyweight Resistance System | Full Body Workouts for Home, Travel, and Outdoors | Build Muscle, Burn Fat, Improve Cardio | Free Workouts Included : Home Gyms : Sports & OutdoorsWork in the Time of Corona – Alice GoldfussBe This Manager Now – Nicole Sanchez – MediumHerding Code 63: Victory in Software Development with K Scott Allen – Herding Code Transcript: Note: We’re new at this. Should we publish an SRT file? WEBVTT? Jon: [00:00:00] Welcome to Herding Code. This episode is being recorded March 24 2020. This is Jon Galloway. Kevin: [00:00:16]This is Kevin Dente. Rob: [00:00:17]This is Rob Conery. Jon: [00:00:19] Hey, and today we’re talking to Phil Haack working from home. So before we jump into that, Scott Allen, when one of our hosts passed away in January, and I, I’m sure most of our listeners have probably already seen that. But, you know, I don’t even know what to say. K Scott was an amazing friend, and, we were just so lucky to have him on the show for so many years. Some, some people recommended one of their favorite episodes was episode 63. Rob, I think you brought that one up. That was Victory in Software Development. Rob: [00:00:52] Ohman that was amazing. Jon: [00:00:54]And he was telling the story of the battle of Antietam and, man, I could listento that show over and over. You know, yeah. Rob: [00:01:02] One thing I was trying to explain to my wife. Cause she, when I told her the news, she, she was like, Oh, right. You knew him. And I started to explain, what, what case Scott was, to me and to everyone. I mean, I’ve never known anyone with such an insane gift for telling a story. And, and just being affable, and kind. Anyway, I started to tell her about just him and she’s like, oh right. We, we met him and went hiking with him in Oslo, and I totally forgot, but it was so cool because it just, all of a sudden, the memory of, of hiking with him, this last June, NDC, Oslo, was just kind of the spur of the moment that he was running downstairs. He and Richard Campbell were going on a hike and they’re like, Hey, come with us. And I said, Oh, sure. And that was the last time I ever saw him. And. I can’t say enough what a great person. he was, and I, I really, I think we’re all the better for knowing him for sure as an industry, but also as people. Jon: [00:02:02] Yeah, I just, looking on Twitter, you know, I always of him as one of my best friends, and he always took time, you know, like when we’re at, at a conference or whatever, he’d say like, Hey, Jon, let’s, you know, let’s go grab a bite and we’re just whatever, and we’d just go hang out. And, It was Phil: [00:02:18]Yeah Jon: [00:02:19]seeing how he was very intentional about doing that with so many people, youknow, like just everyone kind of sharing their stories about, you know,including people that were like, I him a question at a conference and it waskind of a random question and he spent a lot of time just talking it throughwith me and you know, like it just, yeah, just so thoughtful and kind. Phil: [00:02:40]Okay Yeah. I really loved talking to him at conferences. I’d only see him inplaces like London or, or, you know. Oslo or wherever at conferences. Jon, youmight remember that, you mean Atwood and, Barnett wrote a book with, ScottAllen a long time ago Jon: [00:02:58]Yeah. Yep. Phil: [00:02:59]The ASP.NET 2.0 anthology And I don’t mean the MVC I mean like Jon: [00:03:06]2.0 Yup Phil: [00:03:11]Yeah, that’s right. Jon: [00:03:14] Ohman. Yeah. I actually co-wrote several, cause I picked up that, the MVC book,the five heads book, Rob, that you worked on. And then I, you know, K Scottstayed on for several additions of that and I co-wrote with him. So, Phil: [00:03:26]Okay Jon: [00:03:27]and you know, it was always like I was, I for some reason signed myself up aslead author and I was always chasing down other coauthors and K Scott is like,I always knew that his was just going to be like. You know, on time and perfect. And it’s nothing to worryabout. Phil: [00:03:43]Yup. Jon: [00:03:44]Yeah. Oh, man. Well, so, Phil: [00:03:49]On that note. Jon: [00:03:50]yeah. Yeah. Well, so these are, these are times. We’re all, we’re all bunkereddown from, from this coronavirus and, You know, people have been talking aboutworking from home. you know, Microsoft has sent everybody home. A lot of other large companies have. and then after that, alot, a lot of States have gone into and different countries to have gone intosome sort of lockdown as well. so we’ve got, all of us have worked remotely,for a good chunk of our careers. And so Phil: [00:04:22]Okay Jon: [00:04:23]it’s been interesting seeing people trying to adapt to it in different, differentcompanies and stuff. So Phil, you wrote a series of blog posts about how to workfrom home. so for people that don’t know you, which is probably nobody, but forpeople that don’t know, what’s kind of your background on, how did youtransition into working from home. Phil: [00:04:41]Oh, that’s a great question. So probably the first time I did a work from homesignificantly with a long time ago when I started a company with a friend, andJon, you might remember this, called VelocIT that we hired, Jon was our firstemployee. And we all work together using the state of the art of collaborationsoftware back then, groove, by Ray Ozzie. Jon: [00:05:05]that’s right. Phil: [00:05:07]yeah. And, and then we would use a, I forget what the video conference software,but like, we actually, you know, cobbled together.. Jon: [00:05:15]amount Phil: [00:05:16]Yeah, that’s right. It’s Skype was around. Then we use Skype and I think we usesubversion for the version control. And, you know, we made it work. We did a prettygood job as a remote distributed company, but we were only like, you know,three, four employees, you know, at the time. And then I remember we hired a, Steve Harmon came on and,and, so Simone, but anyways, and then, you know, I went after that, I joined.Microsoft, and that was, you know, right back into being in the office all thetime. AI did have this one, coworker who was remote, Scott Hanselman, who, youknow, we would try to set up a computer in my office so that he could just dialin at any time and be like a talking head there. Rob: [00:06:01]Okay Phil: [00:06:02]But it was really interesting to, you know, like when I think about those timesand how difficult. it must’ve been for him to be a remote employee in a companythat just really didn’t get it. And you could tell they didn’t get it becausetheir products didn’t reflect, what it meant to be remote work. so I left Microsoft after about four years and I joinedGitHub and the GitHub was, you know, just night and day, right? This is a companythat really. Started off as sort of a remote distributed company. It had it inits DNA and its tools really reflected that as well. In fact, they were reallygeared towards, you know, teams of open source developers who were all strewnabout all over the world, didn’t know each other. And I worked there for just shy of seven years. I was started off as a developer. And then,this is at a time when GitHub, didn’t even have managers. And then later whenthey introduced managers, I became a manager and then I became a director. SoI’ve had the, you know, I guess good fortune to kind of experience what it’slike to be in a remote and distributed company from a individual contributor,perspective, from a management perspective and from a director perspective. Jon: [00:07:14]Yeah. It’s interesting you mentioned the, you know, Microsoft, and initiallywhen I started at Microsoft as well, you could really tell so many thingsrequired VPN in and any, you know, you want to, would say like, Hey, you know.You want to join our, dog, you know, you want to beta our thing, you know, here’s where to sign up. And it would be an to an internal SharePoint and youwouldn’t have to join a security group. And you know, everything was fileshares and it was just not, and it’s been interesting watching, you know, atransition of that over time. It definitely, it’s, it’s still not perfect, butit’s changed a bit. And I feel like some of that is due to the open source. You know, the needs of open source, kind of pushing things. Kevin: [00:07:58]. It was good. They had always seemed like Okay Hanselman made Phil: [00:08:00]Yeah Kevin: [00:08:01]through sort of force of will. Like he was able to like it and have, you know,impose that onto the company through his own, just sheer, you know, energy. isthat, is that accurate and how has that changed over time? Jon: [00:08:15] . It definitely, from my point of view, it definitely alwaystook some effort to kind of like, there’d be a meeting and then you’d say like,Hey, can you add a team’s invite? And you bug people enough? And they’re like,finally, like, sure, I’ll get you off my back, you know? But, or like, . Rob: [00:08:31] Iremember talking to Scott about this back in 2006 because that’s when, that’swhen I started. So I remember right, Scott Scott started there. I wascontracting for awhile. Then Phil started and then I think I got full time likeright after, right after Phil got in there and yeah, cause Phil and I went to adude, we got to kneel together. Phil: [00:08:51] Ithink, I don’t remember if we went to near together, but I do remember that youstarted not, not long after because you were working on, helper methods forASP.NET MVC. Rob: [00:08:59]That’s right. But I do I remember I remember Scott talking to me about, aboutthe importance of you know, making sure that, you know, here’s all thechecklists and things you have to do. Make sure they know you’re there. in thehallways when you’re Phil: [00:09:14]it was, I Yeah Rob: [00:09:15] itbeing a really big deal. And, And every time I’d go back to, cause I would go backevery other month for about a week. time I to Redmond, I’d have the conversation with somebody, either my manageror something like, so Rob, uh, you thinking about maybe moving to Redmond andI, you know, I just kind of laugh it off and say, you know, we’re not, of good where we’re living. Cause at the time we were living in Hawaii and, So this,this, finally, the conversation stopped one day because I was at a cafe. Ithink it was building 53. I can’t remember, but I was sitting there and my boss, came and sat kind of at this Phil: [00:09:51]okay Rob: [00:09:51]with me. Phil: [00:09:52]Okay Rob: [00:09:52] thennext thing I know, here comes Brad Abrams, who is like a, I think he was a Phil: [00:09:56]Okay Rob: [00:09:56] atthat time. And then Scott goo came and sat right next to me and he’s sitting there looking at me. He’s like, so, Whoa.So Rob, like, Oh boy. Here we go, here we Phil: [00:10:07]That’s a great impression. Yeah. Rob: [00:10:08]feel, you know these, you know these meetings, right? Like Phil: [00:10:11]Hey, Rob. Rob: [00:10:11] atyou like. There you go. So, yeah, you know, I was thinking, we could really useyou on campus here. What do you think about, you know, maybe in the future, yourfuture here with the company? I’m like, Oh, the full press, you know? Jon: [00:10:23]Whoa Rob: [00:10:23]just kind of looked at him and I said, you do know where I live, right? And kind of looked around the table. I’m like, you guys, comeon. Seriously, I’m not, I’m not, I’m not moving here. I’m sorry. Phil: [00:10:35]Hard to balance those. Rob: [00:10:37]Yeah. Anyway, Phil: [00:10:37]Yeah Rob: [00:10:38]laughed. It was pretty funny. But yeah, it’s, it was kind of a big deal backthen because if you weren’t in the you pretty much weren’t there. And like Scott would is you have to demand that they put you on speaker or makesure you’re there and you have to speak up during the meeting and say, I’mhere, I’m still here. You know? Phil: [00:10:55]Yeah. I think the rise of it, there’s two kind of big factors that I see bothone’s cultural and one’s technical on the technical side. if you know who BenThompson is, he writes this newsletter called stratechery.com or strategery atan, I pronounce it, but, he had a really great post and is really focused onthe way information is disseminated in the midst of the Corona pandemic andlike, how. we’re getting good information from social networks comparedto what, you know, the news is given out. But, by analogy, he went into thiswhole digression about a zero trust information as an analogy to zero trustnetworking and zero trust networking. You know, like back in the old day thatMicrosoft, you had this sort of castle and the moat, right? The castle was protected by the great firewall of Microsoft.And then once you’re in through a VPN, you had access to everything. and that’sa castle and moat model, right? You build a big S, Oh, excuse me, a big oldcastle. Big old motor rounding Jon: [00:11:53] Weprefer the, the Queen’s English a big arse. Phil: [00:11:56]and arse. Yeah. So big arse castle and my, yeah. And then, you know, especiallywe’re talking about castles, but a, what we’ve moved to is, you know, sort ofzero trust networking, right. Where you secure. everything like, the, everyuser has sort of the username and password for each service. And you might usea single sign on to make that easier, but you know, you’re validatingcredentials at every point in the thing. And so, that made it so that like, you don’t need a VPN andworking. Style, such as working on GitHub is a really good example of that,right? So like, you know, we can all work on out, we don’t need a VPN in. And Ithink that kind of points to the cultural change, which is, as Microsoftstarted to embrace open source more. and they started to have people actually work on opensource. And thus they’re working with people who are outside their firewall.And you can’t tell these folks, Hey, you know, you need to, we need to find away to give you guests access to our VPN so that we can collaborate in asoftware. No. Microsoft was like, okay, well we’re going to go to whereall the developers are. I mean, it took them a while to reach that conclusion,but they eventually got to the point where like, okay, we’ll just go to get upand work on GitHub, because that’s where all the open source developers liveand breathe every single day. And I think that’s a big cultural change because then, youknow, a group of you being in Redmond. isn’t necessarily this big as big anadvantage. but there is a whole other cultural element of, that I think, youknow, Hanselman had to really fight against, which is. You know, if you have ameeting, and I write about this in my blog series, if you have a meeting inperson, you’re, you’re, you’re excluding the people who aren’t there. Right. And, if one of you is remote, you know, I recommendfor teams to protect, to behave like everyone’s remote. And everyone calls into the zoom chat. which is actually a better experience. Like if you’ve everbeen in a meeting where a group of you’re sitting in a room and one person ison the screen, it’s not a great experience even for the folks in the room, ifthat, you know, when they’re trying to hear that person on the screen. That person on the screen is constantly, you know, tryingto, you know, get into the flow of the conversation. And then if you have lagor anything, it’s just a really bad experience. But if we’re all battled in onsomething like zoom, or if you’re a Microsoft new teams, then you know, you’reall on a level playing field and the meeting can actually go more smoothly thatway. Jon: [00:14:23]Hmm. Yeah. I mean, you pointed out the, the move to open source. I thinkanother thing too is Microsoft just, and it just happened for business reasons,but to move to the cloud first, Azure and you know, Office online and you know,like Microsoft selling all these cloud native products has kind of forced thatto like, you know, where it’s like, Hey, people are there, there’s businessinternal reasons to move and it’s just easier to move stuff instead of hostingyour own SharePoint, whatever weird thing to like, just put it up on, you know,whatever. Like spin up an Azure website or share something with, youknow, in one of the hosted cloud solutions. And like you said, then it’s allsingle sign on and it’s just. You know, Phil: [00:15:10]Yeah. Like the, the cloud services made, like required. what do you call it?Required federated identity into be a priority at Microsoft. And then, like yousaid, I think the, the move to cloud services is also related to the move toopen source. Because you know, once you’re in the cloud, who cares what you,who cares what anyone runs, you just want them to run on your cloud. So like supporting open source makes a lot more sense for,for the business model. Jon: [00:15:38]Well. So I wanted to kind of go through some of the stuff, the recommendationsand stuff that you had in your blog posts. you started off in your, like, how to work from home and, and there’stwo things in here. One is you give, you have several things, you know, wearpants, have ritual, set boundaries, set work hours, got your distractions,focus, communicate, you know, like all the, all these things. And, but at the end, then I think in kind of a counter thingto a lot of that is be flexible. Like in other words, here’s a bunch of thingsto do. But like in other ways, it can also be a bit of a… I guess I’ll stepback to when I started, a lot of these things were things that I had to learn.Like I had a separate office. I actually had my wife like chat me on the whatever, youknow, a chat app. Like instead of like coming in and saying like, Hey, know,need you to, do something or whatever. Right. You know, pretend like I actuallywas at work and we both liked it better that way. You know, I was at work forthe day. But then over time you like realize what you can be flexible. Phil: [00:16:53]Okay Yeah. I think this is the classic path of the expert, right? you know,when you’re learning programming, you’re, you learn these steps, like, Oh, takethese five steps every time you write a method. Oh, don’t forget to write thatunit test before every single method. And then like, write one line of codethat makes, you know, go through the red, green, refactor. And then as youbecome an expert, you know, like, it’s good to ingrain those skills. Kind oflike, you know, in the original karate kid, wax on, wax off, right? But thenover time it, you, you start to learn, Oh wait, you know, I’ve got, I’veinternalized these steps, but now I know. In what nuanced situations, I canrelax a step or two, like, Hey, this method, maybe I don’t need to write a unittest first, but for this one, let me just, you know, write that method becauseit’s relatively small or whatever. And so that’s kinda, you know, the be flexible part ismeant. I meant it as like, once you really internalize these and, once you’veseen what works for you. yeah, don’t go like, don’t go too hard down the road.Like for example, you know, one concern I think a lot of people have right nowis with this pandemic, everyone or a lot of people going remote and thenthey’re not being as productive. And so people are, you know, saying, Oh, this is a, anindictment of remote, distributed work, and it’s like, no, it’s an indictmentof a global pandemic that is being completely mismanaged in our country atleast, and where it’s affecting so many people’s lives. And, a lot of peoplemay die from it. in that circumstance, I don’t care where you work, it’s goingto affect your productivity because you probably have more important things toworry about. And so, you know, one level in terms of being flexible, Irecommend like, you know, allowing yourself to realize that this is a reallyunusual and difficult and challenging time. And if you need to take morebreaks, if you need to step away from the computer, a step away from social, Iwas about to say social security, social networks, you know, do you, so there’sa really great, blog post, by Alice Goldfuss. She’s actually a former GitHub Employee, but I never reallypersonally worked with her. But, she has this great blog post work in the timeof Corona. And a lot of her advice really focuses on sort of how do youpreserve and maintain your mental health while adjusting to this new life, youknow, and it, you know, one of our first points is. It’s okay to feel bad and I’ll send you the link later. But,I think, you know, first and foremost right now, it’s okay to be lessproductive. It’s okay to, you know, take care of your affairs at home andrelax. But you know, when you are ready to work, you know, when you are in theright mindset. You know, I hope that the tips that I’ve wrote are goodguidelines for, you know, how to set yourself up for success. because I’ve seen a lot of people who are like, you know, Ijust can’t focus at work right now because all of this going on. butironically, I’ve had kind of the opposite, reaction where I haven’t beenworking all year pretty much, cause I had been burnt out. and then, you know,this happens and suddenly. I’m a lot more focused that, working on a project. I mean, Iwouldn’t, I’m not working full days, but I’m working on a project because it’sgiving me something to distract me from all the bad news. And it’s a projectthat, hopefully is a boon and a benefit to people doing remote distributedwork. Jon: [00:20:25]Yeah. Rob: [00:20:27]You know, I wanted to echo what you said, Phil. Cause honestly, social mediaand news, used to, my habit, you know, I’d wake up every morning and kinda givemyself a few minutes just to, to, to wake up. And then I had this habit ofgrabbing my iPad and it just kind of. things cause I’m three hours behind theWest coast and like most of the day is already happening. So I kind of feel like I have to catch up the minute I wakeup. But wow. I mean, this last few months I would get up and feel completelydrained because I was reading the news and listening to. And I think it’s important that people stay informed, but Idon’t think you need to stay informed the first 10 minutes of your day. I can’t tell you, I cannot emphasize enough. How that haschanged everything for me. I don’t read anything until noon figure, you know,if something really bad happens, I’ll find out about it somehow. Either throughwork, chat on Slack or whatever. that’s thing one. And the other thing that yousaid, what was it? You made two points. Darn it. I forgot the second one. Phil: [00:21:28]It’s okay to feel bad. Rob: [00:21:31]Oh, you were talking about how you, how you’re now feeling, you’re feelingenlivened. Because you’re helping Phil: [00:21:38]Yeah. Yeah. Rob: [00:21:39]you’re helping people. And I, and I was trying to explain that to my kids,cause you know, they’re down, you know everyone’s down. Right. And, and youknow, and coworkers too. And I was like, if you can reach out and help someoneelse in any way possible, it’s a, it feeling of doing something as opposed tositting there doing nothing, which is the worst. But yeah, I wanted to emphasize that too, because fellthat’s a great point. Reach out and just help in any way you can. Even if it’sjust to say hello on Slack. I mean, a lot of trying to figure out Slack rightnow and in, you know, teams, if you’re using this this weird kind of thing thatthey won’t, they, they have to like ask you, is it okay? Do you have a second to chat? We’ll screw it. Just just chataway, you know, and say hello. And a lot of times you’ll find people really, reallyappreciate you given the Phil: [00:22:26]time. Okay Oh, I totally agree with that. I find that a, a lot ofpeople have a sense of helplessness right now because they can’t influence, youknow, a global or national policy and they’re seeing how. Yeah. I’d only inthat the response has been, to this crisis and they feel like helpless. Right?But there’s always something that you can do within your sphere of influence,you know, even if it’s just helping one person and that, you know, not onlyhelps them, but it also helps you and. the other day, you know, like, I since leaving GitHub, I’vebeen really enjoying going to the gym every day and it’s become my main socialoutlet, you know, going in, cause it’s a regular class. So I see the samepeople every time we work out together. Chat. And, you know, I really missedthat interaction cause I didn’t really, you know, I wasn’t working at a companyso I didn’t have that social network. but, so the other day I, you know, messaged a few of thefolks from the gym, I said, Hey, look, you know, I found this cool workout. I’mgoing to try it on zoom. If you want to join me, call into this channel. And,Let’s do it. And so, yeah, three guys joined me and we did a, a workout and itwas a lot of fun and I had a really good time. I’ve had, in fact, I’ve been telling people I’m probably alot more social now than I was before because, through zoom I’ve had severallike whiskey meetings or, you know, like hang out at happy hour meetings withpeople. And there’s a lot of cool benefits. One, I don’t have to get dressed upto, I don’t have to drive anywhere. Three, I don’t have to call a Lyft to get home after I’vehad too much to drink because I’m already home. When, when our, little hangoutis over and I was like, Oh, this is kinda, it’s kind of a nice way to, youknow, hang out with your friends. Jon: [00:24:20]Yeah. It’s been interesting seeing a lot of different things moving online.gotten into through a Tony Horton doing thse P90 things. And he started doingthese 3 days a week online, Facebook things. And it’s pretty fun, you know, andit’s like a live thing and people are showing up and know, it’s, it is, I mean,we’re adapting. We are, you know, it is nice that we all have internet andwe all, you know, are able to, to connect in that way. Rob: [00:24:50]well I was just really quickly going to interject and say that, I was talkingto a friend about this, cause we have a gym in the building I live in, which isso lucky. And I, you know, you meet people, like you’re saying, Phil, you meetpeople and you talk to them and whatever. So they shut down the gym in thebuilding last night. And, and I was talking to this person that I’ve seen downthere before and he’s like, I need to go to the gym. He’s really built becauseI need to go to the gym at all, I’m going to do. And so I said, well, if you’veever seen these, these things called TRX, TRX suspension bands. They’re notlike the bendy kind, but they’re like the military suspended from a doorframe or your ceiling.The straps that you can adjust, they’re amazing. You can get a full gymworkout. It’s crazy. So anyway, put a link in our chat here, Jon, if you wantto add it on the show people that are at home and they don’t have the equipmentand they can’t get to the sporting goods store, Amazon will deliver these,then, yeah, join Phil for a workout. Why not? Phil: [00:25:45]Right? Rob: [00:25:46]You did Phil: [00:25:46]Yeah. Rob: [00:25:47] Imean what? I heard you say Phil: [00:25:50]Sure I, I, I guess I am now. Rob: [00:25:52]you should. You know what? You should do that. You should Twitch your workoutman, and we should all just join. Let’s do it. Phil: [00:25:57]That’d be fun. You know, and kind of relating back to working from home likethis, you know, . People are social beings. And you know, one of the thingsthat, was really challenging when I was at GitHub was the sense of isolation,loneliness, even as a member of a team, especially the leader. Because you know, a lot of times, like your colleagues, youknow, the people you’re working with, they’re not really your peers, right?They’re the people who report to you in this sort of a different relationshipthere. but it would feel lonely at times. And you know, what we do to try toameliorate that, is to actually have hangout times with , my colleagues thatwasn’t focused on, some work in particular. one thing we would do is we wouldhave, you know, Brown bags, once a week, and then, you know, anyone could callin. I, I may have even blogged about this a while ago. I just can’t find itright now, but we’d have Brown bags once a week, and then we’d all call in anddo the, you know, with that zoom was nice as you can do the gallery view, whichgives you that whole Brady Bunch look, if you have nine people. Yeah. But wewould do these meetings and then, you know, kinda hang out and, and beintentional about the social aspect of working. And I think that’s reallyimportant because, you know, when you’re distributed and remote, it’s reallyeasy to fall into the trap of like, Oh, like. I’m all work all the time. And that’s what it’s all about.But you know, you’re working with human beings and it’s really important toestablish that relationship with each other as human being. And that comes alittle more naturally when you’re in person, because you know, you run intoeach other in the hallway, Hey, let’s go grab lunch. Let’s go grab a coffee. but you know, you’re not runninginto people when you’re home, or at least I hope not. and, you know, you haveto be a little more intentional. Hey, let’s do a hangout where we just hangout. Jon: [00:27:50]Yeah. I think the whole like intentional is a thing that like going through allyour posts as well. There’s a lot of things where you just need to beintentional ways where like. Going to work and being in a building and being inmeeting rooms with other people, like there’s a lot of stuff that just thatwhen you’re from home, you need to be intentional. Like, need to intentionally, you know, communicate. I needto, know, like, being productive and re removing distractions and, you know,setting my work hours, you know, as opposed to like going into a business, youknow, office, your work hours are kind of set for you, you know? And that wholething about intentional communication, I think is so important. And there’s. W w one thing that I’ve seen with that like,really important to intentional with, what am I doing with this communication?For instance, if it’s a meeting, let’s get it done. Like I want an agenda, Iwant to be, I want it to be productive, you know, I wanna, I wanna like focuson that. If it’s a… But then, like you’re also saying, if it’s a social hangout,Hey, be intentional about your social Hangouts as well. And, and you know,like, not mixing the two. I think mixing the two can be frustrating. Like ifyou want to have a stand up, it should be if it’s a social thing, make itsocial. But if it’s a stand up, boom, boom, boom, let’s knock it outand get to work. You know, always weirdwhen it’s like not communicated. Are we hanging out or are we doing work orwhat? You know? Phil: [00:29:26]Yeah. Like when you’re a manager, you learn one of the secrets to, you know,good high functioning teams and good performance is. Having clear expectationsand accountability towards those expectations, right? yet at the same time,you, when you go to a typical workplace, you see that that’s not put inpractice all the time in all aspects of the company where it would really be abig benefit. For example, meetings are a really great example, right?Like how often do you go to a meeting and the agendas and clear, and you haveno idea. Why are there or what, the goal of the meeting is, and you, and youknow, it all comes down to the, there are no clear expectations for thatmeeting. And the meeting is expensive, right? You know, you’re, if you’re, if it’s an hour and you havefive people, you know, you take their hourly rate and that’s a lot. And a lotof times, you know, those meetings could easily be replaced with an email or adiscussion and, you know, some place. And so. Often better to try to replacethat, replace meetings with discussions. Jon: [00:30:30]Yeah. that’s something you called out the asynchronous workflow and the kind ofwriting things down, and then, you know, a common pet peeve is the how peopleuse chat. Like I think. If you know, in a more office center culture, when youchat people, the, the inclination is to just say, like, Hey, you there, likeyou just want to get something, but a much better thing is, Hey, could youclarify what you meant when you said we should close issue one 23 like that’ssomething that works well asynchronously and, and we don’t have to waste thetime with, Oh, Hey, sorry, I missed you. I was getting coffee. Oh, Hey, blah,blah, blah. You know, it’s just like, ask your question. Phil: [00:31:10]Right, right. Embrace the asynchronous nature of chat. Jon: [00:31:14]and then that flows well over you know,open source thing as well too. Like, like just like say your say your thing ina way that that allows us to make a decision and move forward. Phil: [00:31:29]Yeah. You mentioned making decisions and, I think one of the biggest challengesthat I saw, and this is an organizational thing, but it, it, I feel like it’ssemi-related to, Distributed remote workforces. And one thing I want to beclear before I get into it is, a big theme you’ll see is like all thesepractices I talk about are, I think equally good, if not more so for co locatedteams. So if you work in an office together. I think these are goodpractices to have because you never know when someone had to take a sick day untilthey missed out. but I think that they’re compounded when you’re remote anddistributed. If you don’t do these things, the, the impact is far more, it’sfar bad. It’s worse. Excuse me. My English is not working anymore Far batter. Yeah. Yeah, that’s right. so. What was I going withthis? Jon: [00:32:26]Well, you were saying that it’s these, these are practices that are importantfor co like located teams as well. Phil: [00:32:32]Right. But we were talking about something right before that Jon: [00:32:35]decision making. Phil: [00:32:36]decision making. Yes. Okay, so what. Yeah. This is one of the downsides to working alone. Aremote distributor for too long is like your ability to have conversations withadults can start to decline. Rob: [00:32:50]well Phil: [00:32:51]that’s why. Rob: [00:32:51]Washington. It’s legal in Washington, so we’re okay. Phil, you’re amongfriends. Phil: [00:32:59]So what was I saying? Oh, anyway, a lot of times decision making and remote distributedcompanies can be really challenging because conversations can feel open-endedif they’re asynchronous, right? Like I posted this question and then I waitlike three days and the person didn’t respond, and I’m like, well, do I goahead? Or no, I guess I should wait for their response. Whereas ifyou, you know, if you corral a group of decision makers into a room, you canoften, you know, say, Hey, we’re not leaving this room until we come up with aplan of action for X, Y, Z. Although, you know, I’ve seen a lot of companiesstill can’t make decisions even when they did that. And so I do in my series, talk a lot about. How do you makedecisions as a remote distributed company? And again, it comes down to settingclear expectations. Being very intentional. timeboxing is a really importantone, intentionally reaching out to people and making it clear who are thedecision makers and who are just being asked to weigh in and who are, is beingasked to observe. Right. and I mentioned a couple of different frameworks fordoing that that are very popular, RACI and DACI. But I think, you know, makingsure that you have a clear path to making decisions is really important. And asan illustration of that, you know, when that Friedman, took over as CEO ofGitHub, not long after there was sort of this, you know, the pace of get upshipping features sort of, you know, really increased. And from the outward looking in, it seemedlike. Oh, wow. You know, Nat is really like rev the engine. but you know, frommy experience, a lot of that stuff that they were shipping was already beingworked on, but they were being blocked by, you know, indecision, like, Oh,like, you know, this isn’t good enough to ship, or who can make this call? And that I think went in and just said, Hey, look, let memake those decisions, ship it and iterate. And I think that really unblocked alot of stuff that had. Already been worked on for a good while. and sometimesyou just need that person to say, Hey, this, let’s make decisions as make themquickly, but let’s make sure that we have resiliency in the process of that. If we make any mistakes with those, we can fix them quickly. Jon: [00:35:18]Hmm Yeah, yeah. I think focusing on that and as part of communications as well,like very easy, you know. As you mentioned in different, all different kinds ofthings like there’ve been email threads where people, when you see an emailthread you can respond with, here are some thoughts I have about it, but reallywhat’s the point of the email thread? Is it to make a decision? Is it to, you know, like, and ifit is, what are the next steps? So, you know, and, and those sorts of thingswhere, so of just saying, you know, kind of rambling, let’s say like. I, Ipropose this, this is a, you know, or if I don’t hear back by this day, I will,you know, delete all the files or whatever it Right Phil: [00:36:01]Right. Yeah. Time boxing is definitely an important component of that, saying,this group is going to make a decision on this date. You know, you have untilthen to provide your feedback. But you know, making it clear, they are the ones who aremaking the decision. Right. Jon: [00:36:19]And often they’re, if you have a, if people are not responding or not, thenusually the best thing is to propose a very bad idea with the time box. Andthen people will jump out of the woodwork. Gosh, how do you handle things like, you know, time zones.you know, and that’s something too where some people asked about that. How,how. You know, how do you handle just the kind of distributed time zone part tothat? Phil: [00:36:46]Yeah. You know, for a lot of companies right now who are quickly moving intoit, you know, they’re often, they’re moving into it because they’re forced tobuy, like work, work from home decrees. And so they’re already co located. Sothey are fortunate that they don’t have to deal with the distributed times onthings. But when I was at GitHub, I had a team that had, you know.Oh, almost everyone in a different time zone all across the world. And it, it’smore challenging because your throughput on a single th it’s, it’s a lot like aasynchronous programming, right? Or a parallel programming. Your throughput onany single thread at work will slow down. if I write a piece of code and the person in New Zealand isthe one who’s going to review that piece of code. They’re probably sleepingwhen I’m done. So, rather than just sit there and be blocked, you know, thething to do is for me to go on to the next piece of work. Right. and, and then,you know, in the next day, hopefully when I get up, I’ll have a nice codereview that I can look at and address. And so that’s the, you know, one of the main things withbeing distributed across time zone is to embrace the fact that, you know, you.You may slow down, throughput on any individual line of work, but just likewith computers, what you do is you just spin up more processes, right? You spinup more threads of work, you, you distribute, you, Cool. What is it you try to focus onmaking sure that nobody is blocked at any time? You don’t want to blockthreads. Instead, you just move to the next thing. and then the other thing is,you know, making sure that you give people time for feedback. You know, if youpropose something and then, you know, you wait an hour and they start goingthrough with it. Well, the person in the other times and it didn’t get achance to weigh in and they may, they might have some important, importantfeedback. one thing we would often do, especially for really important pollrequests is we would keep them open roughly 24 hours that way before we immersethem that way people could, You know, chime in who might be effected by thepull request. Now for small things, we didn’t do that for everything. Right?Cause like again, be flexible, be smart. You know, like for something reallysmall, we might say, okay, you know, I got someone here to review it in my timezone. We went ahead and merged it. And if you see anything wrong with it, you know, we canalways do a revert. We can always address it after the fact. You want to lookat the cost benefit, right? Like what is the cost of getting this wrong versusthe cost of, all right, getting itright. The first time versus the cost of getting it a little wrong and thenfixing it and sometimes getting it wrong and fixing it is actually cheaperthan, you know, holding something up to get it. Absolutely right. It really depends on like how much damageit would cause if you got it wrong the first time. but overall, like taking on.Asynchronous workflows like that. And, and I think the analogy to asynchronousprogramming is really apt because like, we’ve solved a lot of these thingswhere, you know, Oh, we’re worried about Moore’s law slowing down. So we started to add more processors and we’ve had to comeup with new ways of programming and new way the distributing work across the,and tasks across those processors. Well. It’s not a perfect analogy, but thatactually kind of works when you consider people at a distributed across theplanet. Jon: [00:40:11]Hmm. Yeah, it’s interesting. Some of the things you’re talking about, I’ve beenreading this book Accelerate, and it’s like lean software and dev ops andapplying it to organizations. And, a, it’s a, you know, some of the things likesmall batch size and all the, you know, like focus on small, short turnaroundand those apply very well to the asynchronous work, and if I’m working on asmall thing. That’s done. Pass it to the next person. Move on to somethingelse. Oh yeah we got a few questions over Twitter. so one, I think you kind ofanswered already, but, Khalid says, how do you stay in shape when sweat pantsare so comfortable. Phil: [00:40:53]Well, you, you, you put the sweat and sweat pants, and go, go exercise. But Imean, I think there’s a great question. I think, yeah, organize it with otherpeople. if, some people are really great at. Kind of following their ownschedule and being a solitary, you know, gym rat. And if you are, that’s great,on the kind of person that I sorta need that social pressure to motivatemyself. So, you know, getting people to hold each other accountableis a really great way to keep in shape. Jon: [00:41:28]Cool. Cool. Yeah. I’ve seen people do this different ways. We have, there’s a,I mean, just kind of a, a team check-in thing, like they started this coffee ora, they call it the breakfast club in dev dev, and it’s, people just have, a 15minute coffee and it’s just a quick little chat. But, you know, a lot of thepeople will be saying, checking in on, you know, I just got off my bell Pelitonor whatever it is, you know? Phil: [00:41:50]Yeah. I started a little pandemic survival club. Jon: [00:41:53]there you go. Phil: [00:41:54]Yeah. Jon: [00:41:55]Yup. And I know some friends that have a Twitter, just like a DM chat, and theyjust check in every day and. their workout or whatever. Cool. Andrea says, what’s your go to brand of whiskey forpost remote meeting? Relaxed time. Phil: [00:42:10]Oh wow. We could do a whole nother episode on that. So lately I just got this bottle, a monkey shoulder, whichis a blend of three different scotches. It’s, Glenfiddich Balvenie and, I, andI don’t know if I’m pronouncing right. And then another one that I blanking on,I really like it. I’m a big fan of Yamazaki 12. I like, Nika from the, barrel and Nika coffee mall. and, I, I could go on, but, yeah, right now the monkeyshoulder has been, I’ve been a real fan of that one right now. Jon: [00:42:45]Cool. All right. We’ve got one more question here. so Mathias with a, with a moredifficult question how has the HR done, effectively, efficiently, andinclusively remotely, things like grief health support? Is there a good way?And, also if there’s a good way for someone to give their notice. Phil: [00:43:05]Wow. Yeah, that’s a great question Yeah, so there’s a blog post that I’ll a post toyou called be this manager now. And it’s by, Nicole Sanchez. she, worked at,also worked at GoodHub for a little while and she, kind of implemented thefirst, diversity and inclusion training at GitHub. And now she is a consultantat via consulting. she’s amazing. If you, your company can. afford to hire herfor management training. I highly, highly recommend her. She’s really great.she has a great blog post about the type of manager you want to be in thistumultuous time or in any tumultuous time. She talks about checking in witheveryone one-on-one privately, but, you know, remember like HIPAA, you know,advocate for your employees. Stay informed and take care of yourself, yada, yada. Reallygood advice. I mean, yada, yada is in and so on and so on. Yada, yada can sounddismissive. I didn’t mean it that way. So, and, and so on. so going back to thequestion, I mean, I think as a manager following these guidelines. Is reallyhelpful. how do you be inclusive in review performance reviews? Ihave a whole blog post about, my whole view on performance reviews that, Ithink it’s, yeah, I think it’s worth reading. Of course I wrote it. but I talka lot about how, existing review systems aren’t, equitable, even if you’re inperson. you can see how certain people, certain classes of people,especially underrepresented folks tend to score lower, for the same work. So,You know, one of the things you want to do is try to, as much as possible,create objective measures of performance. So like set clear expectations,measure people against those expectations in terms of giving someone noticethat I assume he means like firing someone as opposed to selling Jon: [00:45:03]else, Or if you want to quit as well. Right. Those are harder Phil: [00:45:06]Oh Jon: [00:45:07]discussions to have remotely like, Yeah, I mean, you know, do it, do it on a, a videoconference, you know, don’t do it over email. video conferences is about theclosest thing you’re going to get to, you know, just being in person and havinga Frank conversation. Yeah. If you’re giving notice, you know? Yeah. I wouldjust, have that conversation and then, you know. Write a letter of resignation and then, and submit that aswell. if you’re on the other end though, and you think you have to firesomeone, I mean, in this particular time, especially in our country wherehealth care is tied to our jobs and all these people are losing their jobs allof a sudden, hopefully, you know, like more and more people recognize that, youknow, having our healthcare tied to employment is a really bad idea whensomething like this comes along. And, you know, I would like hook that companies would delay.That sort of thing as much as possible. But I know that, you know, somecompanies are in a position where they might just go out of business, whichleads to the same result for their employees. So I understand that. Like. Yeah.It’s easy to say, but if you’re a company in a strong position and you canafford not to fire people, you know, I hope that you try to do your best totake the humane stance of not firing them until things have calmed down a bit. You know? other, if you are fired, you know, like, make sureyou understand how COBRA works. C, O, B R A. It is a more expensive than whatyou’re probably paying as an employee. I did a COBRA when I left GitHub. I didCobra for a year. And, you know, that it wasn’t pleasant on the pocket book,but it was better than not having insurance. And then I just recently, my family recently moved toWashington, one of the Washington exchange, healthcare plans, which, you know,they’re cheaper, but not, not by much. but anyways, yeah. I hope that helpedanswer that question. Yeah. Yeah. Well, I think part of the thing, you know, wewere talking about the communications and how do you, You know, how do you havedifficult conversations? And one of the things you mentioned is just, you know,like both as a manager and as a, as an employee is to communicate often and tobuild the trust through regular communications. So I think that is an important thing, like having regular,know, discussion with, with your manager so that you comfortable. You… If youfeel comfortable and you built that trust, then difficult conversations arehopefully easier too. Phil: [00:47:36]Yeah. And I put a lot of the onus on that, on the manager. Although, like ifyou’re a nice individual contributor, IC, a, you obviously don’t have control over your manager, so what can youdo in that position? you know, ask or advocate for a regular weekly one on one.All right? You know, there’s this great podcast, the manager tools podcast, andthey had this episode. And I think it’s a two parter about why one-on-ones are soimportant and how to do them well. And I was so impressed upon me so much thevalue of it, that when I was at getup, I actually wrote our first guidelines toone-on-one. So that became sort of the official internal documentation for, youknow, why we should do one on ones and how to do them. And you know, the. One of their points is that your job,your primary job as a manager is to, build a relationship with, your people asindividuals. And one of the best ways to do that is through one-on-one. Youneed to build the relationship and build up that trust. And so one on onesshould not be like a status update or some sort of a work meeting. It needs to really focus on what is it that. The employeeneeds to talk about and get off their chest or what, what is it that they want?And so they have a whole structure, you know, that they called 10, 10, 10 andwhich I would sometimes just do 15, 15, but it’s basically 10 minutes, whateverthe employee wants to talk about, 10 minutes, whatever the manager wants totalk about. And then 10 minutes. talking about the future, I found inpractice I couldn’t talk about the future. Every single one-on-one, is justwasn’t, you know, we talked about last time and not, not a lot has changed in aweek, but I found that conducting weekly one-on-ones was immense in buildingtrust and, relationship. And you’d basically, it’s, it’s impossible, or very difficult to have adifficult conversation if you haven’t built that foundation of trust. It justdoesn’t go well. Like you can have a difficult conversation, but it’s made moredifficult when you haven’t established that basis of trust. But if you put inthe work to build up trust, then, you know, you come, you can have thatconversation where people are giving each other the benefit of the doubt andI’m assuming good intent. And it’s very difficult. And even then, you know, youhave to understand that when you’re a manager, there’s a power differential inthat conversation and you have to recognize that and, and do your best to. youknow, try to balance that as well as she can. And the power differential comesfrom the fact that, you know, if you want that person fired your opinion, youmight not be able to outright do it, but your opinion weighs heavily. You can, you know, you sort of hold their career in yourhand at that company. And so, and that’s always in the mind of the employee whenthey’re having that conversation with you, whether consciously orsubconsciously. And so it’s really important to recognize those power dynamicsand try to, you know, work to, you know, build up trust so that you can havethis difficult conversation. And when you do have those difficult conversations, youknow, there’s a really, you know, there’s a lot of good books out there. One ofmy favorites is, difficult conversations, you know, apt title I, I know othershave recommended crucial conversations. but they go through a whole, you know,they go through a lot of scenarios about how to have these conversations andmaking sure, for example, that you really understand, the context and theperspective of the other person that you’re not just trying to win theconversation, but that you’re trying to understand their point, you know, aswell as they do, you know, if possible. And then, you know, being honest, upright, and avoiding, youknow, some of the tripe things, like the, the shit. Sandwich approach, youknow, where you’re like, Hey, I have some good news, bad news, good news. Jon: [00:51:29]Yeah. Phil: [00:51:30]Yeah. Like a lot of people feel like, Oh, that’s a good way to soften the blowof bad news. But what it does in practice is, anytime you come to someone withgood feedback, for example, they’re waiting for the hammer to drop and, theother practice, Oh, you can see, I get excited about this. The other practice I highly recommend is make sure you’reconstantly giving feedback. And give feedback early. That’s positive. so forexample, a lot of times, you know, when the mentors like, Hey, I have somefeedback for you. What’s your initial reaction when you just hear that phraselike, Oh shit, what did I do? Right? But, that’s a problem. You know, it shouldn’t belike, Oh, I can’t wait to hear this. You know, like, cause this is probably anopportunity for me to get better or, or an opportunity to reinforce somethingthat I did good. Right? So if your manager is often saying, Hey, you know, Ihave some feedback for you. The way you handled that, that outage was phenomenal. Ireally liked the writeup. Blah, blah, blah. you know, more of that. Thank you.And then like, you know, once in a while when there’s corrective feedback, youknow, you’re in a much better position to take it because you’re like, well,you know this, this manager sees all the good things I’m doing. They see me as an employee. So, you know, if they havesomething that’s going to help me improve, I want to hear that. But if the, ifthe only time you come to feedback is negative feedback or corrective feedback,then you sort of lose your credibility as someone who, is in a position to givethem feedback because they’re like, well, you’ve never seen all the greatthings I do. Jon: [00:53:00]Right, right. Wow. a lot of good stuff. we’ve got a wrap up. Kevin, do you have any, anything else youwant to throw in. Kevin: [00:53:08]Phil, you had mentioned earlier. You had, had experiences of a rote, employee,both at the kind of individual contributor level, the manager level and thedirector level. there, are there things that are kind of unique to each ofthose levels that, people can think about from a Phil: [00:53:26] Uhyeah I would say yeah. So like I sort of pattern my blog posts around thattheme. So the how to work from home, really focused on, individualcontributors. How to lead from home focused on managers. And then I would saylike all of it, like at the director level, there’s a little more, focus onsetting high level goals and a high level objectives. And how you, you create alignment with your team. And so Ithink that I cover some of that in the geographically distributed teams posts.and so, you know, at that level, you know, you’re not, you know, a linemanager. You’re not like looking at every check and what you’re focused on ishow do I make sure that everyone’s pointed in the right general direction, andthen you need to trust them. To do the, you know, what you hired them to do. Like they’reprobably the best developers or best product managers, breasts, qualityassurance folks that you could find and they know their job and they. They wantto do good work. You know, a lot of people ask me like, Hey, how do you makesure everyone’s working? And I was like, you know, you, how do you, how do you knowanyone’s working when you’re in the office? People are really clever at gettingout of work. They don’t want to, but if you have a, a clear, mission that motivatespeople, you know, they’re going to want, to do good work that, you know, peoplearen’t looking for excuses to get out of it for the most part. If you connect, you know, meaning to the work that they’redoing. all, all they need from you is to help them connect meaning to the workand to help them see like what the goal and the objective is. And they will,you know, they will do good work. They will work hard to reach that vision. Andthat’s a, that’s your role as a director and higher. Jon: [00:55:17]Cool. Yeah. Everyone likes to finish a day at work and go like, yeah, I nailedit. You know, I got something great done. Right. Like enabling people to get tothat is, you know, and then like you’re saying, you don’t have watch every stepof the way. You just need to help them get to that spot. Phil: [00:55:35]Right. You don’t need to tell them what to do. You just need to removeobstacles so they can do the great work that they are really wishing that todo. Jon: [00:55:44]Cool. Well this has been great. but we gotta wrap up. So, maybe we should haveyou back on some time soon and talk more about other managing stuff. Causethere’s a lot of good stuff here. Phil: [00:55:57]Yeah. Anytime, anytime. Jon: [00:55:59]All right, that’s all the time we have quite literally this week. Thanks abunch for your time and we’ll talk to you again soon.
GitLab vs. GitHub: With Guests Phil Haack & Will Hall
On this episode of if/else, host Mayuko Inoue looks at two software development version control platforms: GitHub and GitLab.While both platforms offer Git repository hosting, issue tracking, and integrations, there are important differences in cost, popularity, security, and philosophy. The episode begins with a quick backgrounder on these two platforms, and then you’ll hear from several software developers about their experiences with each.You’ll also meet Tim Skaggs. Tim is a VP of Engineering at the hiring management software company ApolloFactor. His team currently uses GitHub, but Tim is considering a move to GitLab to save money and streamline certain processes around continuous integration and continuous delivery (CI/CD). But is this the right move? Will it solve some of the team’s challenges, or will they regret the move?To help Tim make the best choice for his company, we’ve enlisted the help of two experts to debate the pros and cons of each option.Phil Haack is the proprietor of Haacked LLC. He was a director of engineering at GitHub and helped make GitHub friendly to developers on the Microsoft platform.Will Hall is a DevOps Consultant at HeleCloud, and a GitLab Hero with a passion for open source software.Phil and Will join Mayuko to try to surface the most important information that Tim should consider, and to game out the best scenarios for Tim’s team. if/else is an original podcast by CTO.ai, makers of The Ops Platform. The Ops Platform makes it easy for development teams to create and share workflow automations without leaving the command line. Visit cto.ai/platform to join the beta.If you enjoy the show, please leave a ⭐⭐⭐⭐⭐ rating or review on Apple Podcasts.
Reflections on .NET with Pablo Santos and Phil Haack
The .NET Core Podcast
Remember: you can also always follow the show's host on twitter @dotnetcoreshow In this episode of The .NET Core Podcast, we talk to Pablo Santos and Phil Haack about the .NET ecosystem, where it has come from, and where it might be going in the future The full show notes, including links to some of the things we discussed and a full transcription of this episode can be found at: https://dotnetcore.show/episode-30-reflections-on-net-with-pablo-santos-and-phil-haack Remember to rate and review the show on Apple Podcasts, Podchaser, or wherever you find your podcasts, this will help the show's audience grow. Or you can just share the show with a friend. The .NET Core Podcast is a proud member of Jay and Jay Media. If you like this episode, please consider supporting our Podcasting Network. One $3 donation provides a week of hosting for all of our shows. You can support this show, and the others like it, at https://ko-fi.com/jayandjaymedia You can support the show by making a monthly donation one the show's Patreon page at: https://www.patreon.com/TheDotNetCorePodcast
Phil Haack is the founder of Haacked LLC where he coaches software organizations to become the best versions of themselves. To do this, Phil draws upon his over twenty years of experience in the software industry. Most recently, he was a director of engineering at GitHub and helped make GitHub friendly to developers on the Microsoft platform. Prior to GitHub, he was a Senior Program Manager at Microsoft responsible for shipping ASP.NET MVC, NuGet, among other projects. These products had permissive open source licenses and ushered in Microsoft’s Open Source era. Phil is a co-author of GitHub for Dummies as well as the popular Professional ASP.NET MVC series and regularly speaks at conferences around the world. He’s also made several appearances on technology podcasts such as .NET Rocks, Hanselminutes, Herding Code, and The Official jQuery Podcast. You can find him sharing his thoughts at https://haacked.com/ or on Twitter https://twitter.com/haacked. Links https://haacked.com/ https://twitter.com/haacked https://github.com/haacked https://stackoverflow.com/users/598/haacked https://www.linkedin.com/in/haacked/ Resources .NET Foundation Difficult Conversations (book) GitHub for Dummies (book) Creativity Inc (book) Code Complete (book) Refactoring (book) “Tempting Time” by Animals As Leaders used with permissions – All Rights Reserved × Subscribe now! Never miss a post, subscribe to The 6 Figure Developer Podcast! Are you interested in being a guest on The 6 Figure Developer Podcast? Click here to check availability!
Phil Haack joins the podcast to discuss DevOps at GitHub! Phil has an interesting and extensive career background. He started out as a Manager of Software Engineering back in 1997. Since then, he’s done a lot — but some of his recent highlights include: being the main Program Manager at Microsoft from 2007-2011 (responsible for ASP.NET MVC and NuGet), and leading the Client Apps team as Director of Engineering at GitHub. Now, most recently, he has founded his own company, Haacked, which he started to mentor software organizations to be the best version of themselves. In today’s episode, your host, Jeffrey Palermo, and Phil Haack, dive deep into discussing DevOps at GitHub. They talk about his role as Director of Engineering; how GitHub, as a company, grew while Phil worked there; the inner workings of how the GitHub website ran; and details about how various protocols, continuous integration, automated testing, and deployment worked at GitHub. Topics of Discussion: [:48] About today’s episode with Phil Haack. [1:10] Phil talks about how he became the Program Manager at Microsoft in charge of ASP.NET MVC and NuGet, and what the role entailed. [4:00] The transformation Phil helped lead that continues to affect .NET developers today! [5:35] Phil shares the high points of his career at GitHub. [7:56] How Phil’s role at GitHub developed, and how (and why) GitHub went from “no managers and no meetings” to hiring on managers and starting meetings. [12:10] When did GitHub start to distribute regionally? [13:43] How many leased offices did GitHub crop up while Phil worked there? [15:25] What Phil is currently working on since leaving GitHub! [17:27] About the new book Phil is writing about GitHub. [20:07] Major strategic decisions and key aspects that gave GitHub the ability to put out features at a really fast clip for a really long time (with an incredible quality track record to boot!) [24:18] A word from The Azure DevOps Podcast’s sponsor: Clear Measure. [24:44] Architecturally, is GitHub.com one website or essentially two hundred different web applications that make up all the URLs of the website? [26:50] Was there a standard pipeline structure that GitHub maintained (or a common set of steps), or was it moreso a ship-it-however-you-can protocol per service? [27:50] If Phil had multiple services in the client application, did he have a separate Git repository for each one of those, OR, one Git repository for his team with multiple, independent services? [29:52] Did every continuous integration build have its own Git repository? [32:30] What types and quantity of automated testing did Phil pack into the continuous integration (CI) build? [33:48] Phil highlights some significant things that happened in the CI build step. [34:31] Did Phil find any good frameworks that worked out in the UI space? [35:02] What an automated test can’t tell you and why it’s so crucial to have a really good tester! [36:15] When they did have automated deployment between environments, what tools and methods did Phil use for those deployments? [38:04] For the services they were going to deploy to GitHub servers, how many environments did Phil set up in the deployment pipeline ahead of production? [41:07] The major tools on the deployment side when Phil was working at GitHub. [43:44] What Phil recommends listeners to follow-up on to continue their research! Mentioned in this Episode: Azure DevOps Clear Measure (Sponsor) Phil Haack (LinkedIn) Haacked MVC Framework GitHub for Dummies, by Sarah Guthals and Phil Haack Hubot Ruby on Rails Scientist.NET Electron ChatOps Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.
The Importance Of Difficult Conversations with Phil Haack
IT Career Energizer
Phil Haack works at GitHub bringing the power of social coding to .NET and Windows developers. Prior to GitHub Phil worked at Microsoft as a Senior Program Manager shipping software such as ASP.NET MVC and NuGet. Phil is also a co-author of the ASP.NET MVC series of books as well as a regular speaker at conferences around the world. In this episode Phil Haack tells us why we need to be prepared to have difficult conversations and why this can help your career. Phil also talks about the importance of taking care when writing code and why you should test your code carefully. To find out more about this episode, visit the show notes page at www.itcareerenergizer.com/e46
Github’s Phil Haack on Moving from Engineering to Management
Engineering Culture by InfoQ
This is the first in a new series of podcasts from the people behind InfoQ.com and the QCon conferences - the Engineering Culture Podcast. In this podcast, Wes Reisz, chair of the QCon conferences in San Francisco, London and New York talks to Phil Haack, an Engineering Director at GitHub focused on software pushed mostly to the desktop. He’s shipping software like GitHub Desktop, GitHub Extensions for Visual Studio and the Atom text editor. Haack joined GitHub in 2011 and is a prominent member of the .Net community. At Microsoft Phil was core to shipping NewGit and ASP.NET, MVC.NET.Why listen to this podcast: - There is often too much focus on the nitty-gritty details of software development practices but as you scale out to larger projects and teams the challenges are not technological- they are sociological. - Research shows that teams which are more diverse are more effective. - Engineers shifting to management should consider it a discipline like any other technical field; it’s not something that you should “just wing”. - Building an effective team requires trust and that allows candid discussions and healthy debates without disrupting the relationships. One-on-ones can be an effective way to do that. - To be an effective coach for engineers, a manager needs to be seen as a strong technical leader. Someone without technical credibility is generally not received well.Notes and links can be found on InfoQ: https://bit.ly/2L7Irg35m 10s The big problems we have are sociological, and frequently companies and engineers don’t pay enough attention to these problems because they try to focus on the technical practices instead; but the root cause is how people interact with each other and how they are working together.5m 40s The talk covers some personal lessons learned and the research that backs those personal lessons. There is validated research that shows certain things make for more effective teams.More on this: Quick scan our curated show notes on InfoQ https://bit.ly/2L7Irg3You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVqSubscribe: www.youtube.com/infoqLike InfoQ on Facebook: bit.ly/2jmlyG8Follow on Twitter: twitter.com/InfoQFollow on LinkedIn: www.linkedin.com/company/infoqCheck the landing page on InfoQ: https://bit.ly/2L7Irg3Here is Phil Haack's talk on Social Coding for Effective Teams and Products recorded at QCon San Francisco 2016: https://bit.ly/2QPEU9D
Microsoft is open-sourcing an increasing range of software. Phil Haack is a former PM on Microsoft’s ASP.NET MVC Framework, as well as NuGet, an open-source package manager. He currently works on Github Desktop at Github. Questions What is .NET? How is Microsoft’s policy around open-source changing? When Microsoft moved code to open-source at Github, how did communication change? What was your strategy for managing the development of NuGet? How does working at Github differ from working at Microsoft? What are the biggest criticisms of git? Links QCon SF: The Amazing Potential of Microsoft Open-Source Github Flow Aliases Microsoft Open Source Phil Haack’s blog SE Daily: TypeScript with Jon Turner Why You Should Care About the New Open Source .NET The post Microsoft Open-Source with Phil Haack appeared first on Software Engineering Daily.