Sumana Harihareswara 0:00 A bunch of us showed up to improve MailMan, and help get MailMan 3.0 out. People had been working for 10 years to try and get the next version of MailMan out. Now, I showed up on day one. And we realized that I didn't need to be writing code. What we needed was someone to help look at the list of what needed to happen, assign stuff, ask who needed help, make decisions, and so on. I looked at everybody around the table, who hadn't yet started the conversation of who's doing what, how are we going to make sure we get 3.0 out this week. And I went and got some paper and a marker, you know, stuck that big post-it note on the wall and wrote down the list of all these blockers between us and 3.0. And then for the next 4 days, I was you know, drafting release notes and making decisions and testing. And by the end of that week, we were one upstream bug in dependency away from release. And I looked at that, and
I thought: "Hmm, I was the catalyst, I wonder if I can charge for that".
Tim Bourguignon 1:02 Hello, and welcome to developer's journey, the podcast, bringing you the making of stories of successful software developers to help you on your upcoming journey. My name is Tim Bourguignon. And on this episode 120, I receive Sumana Harihareswara. Sponsor: but before we get to our guests, did you know that Python was again ranked the top one to language on the 2020 Stack Overflow survey by fellow developers from around the world. In the past few years, Python has become my language of choice, but I still have tons to learn. Is Python on your bucket list as well? Well, Michael Kennedy, who shared his DevJourney with us in Episode 94, and hosts the talk PythonToMe podcast, can certainly help. Among his "Python for absolute beginners", "Python for the dotnet developer", or countless other advanced courses, there's certainly one for you. Go have a look at his catalog and use the link talkpython.fm/journey for a $50 discount. And finally, stick around until the end of the show for a chance to win Michael's "Python for absolute beginners" course. And don't forget to thank him for sponsoring the show. And now on to the episode. Sumana is a project manager and a programmer who helps lighten the load on open source project maintainers. And she has played key roles in helping the Python Software Foundation, Mozilla, the Electronic Frontier Foundation, to name only a few and the list is very long. Sumana, welcome to DevJourney.
Sumana Harihareswara 2:41 Thank you very much, Tim!
Tim Bourguignon 2:42 Let's go back to your beginnings, shall we? Where would you place the start of your developer's journey?
Sumana Harihareswara 2:48 The understanding of the mathematical concept of zero started in the subcontinent that my ancestors, South Asians, were the first people to really reckon with the fact that zero is its own number and that it could be counted. And so... I only wanted to know actually, what's the furthest back anyone has ever suggested?
Tim Bourguignon 3:12 You win!
Sumana Harihareswara 3:19 More seriously, um, I think a lot of this might start with my parents, my parents were born and raised in India, they did not invent zero, they did not invent the concept of zero. Regardless, I think that they are pretty great people and have achieved a lot. We can't all invent zero. I mean, it's gonna have happened once, like, let's just be real. And, um, anyway, they, they both had, my father died about 10 years ago, but they he had and my mom has, you know, some facility with with computers and general interest in engineering and mathematical stuff. And I growing up followed in my dad's footsteps in some ways, and I had a pretty twisty turny path. And I figure I just want to give people a heads up about that before I go too deep into the the details of it that I'm one of the people on this show who does not have a computer science degree, diploma certificate or similar things. And ended up much more in the you know, humanities and social sciences pass through things like you know, college. And right now, yes, I am a programmer in that I have the capability of programming, but that's not what I get paid to do. That's not the majority of what I do, and you have some amount of ability to program is a necessary prerequisite for the things that I do and it's important and interesting at times. But it's not the most interesting thing that I do. So, um, so I just sort of wanted to give that general context before I go back into my my individual story in in more detail.
Tim Bourguignon 5:08 Thank you for that. So if we go back a little bit, maybe not too far.
Sumana Harihareswara 5:12 No, not thousands, not 10s of thousands of years. Yeah.
Tim Bourguignon 5:16 0 has been invented now. Yes!
Sumana Harihareswara 5:19 Uh, wow. You know, you're just you're so generous. Um, my parents arrived in the US in the mid 1970s. My father, he was a civil engineer, he was interested in a lot of different things. My mother, also, my mother had a background, both in economics and also literature. And they were community leaders, they started organizations, they started a magazine, they had a variety of things that they did both, you know, sometimes for money, like civil engineering, and sometimes just on a voluntary basis, like running organizations, and various types, they had to do things that involve organizing stuff, right, it was very reasonable that my father would get a personal computer. And so I grew up, I don't remember, when I was growing up a time before, there was some kind of a computer in the household. And this was in the 1980s. Um, and I learned some basic, that's an all caps. For those who did not run into this. This was a, this was a programming language that was available for personal computers in the 1980s, that ran on MS DOS, I believe, was the only operating system around although I could be wrong, and my father among them, so by, you know, by day, he was a civil engineer, but also he had he had trained himself up and had some additional training for when he was a kid, to be a priest, a Hindu priest. And so people wanted him to cast their charts right to do the astrological predictions of what what they should expect out of their lives based on the specific date and time and latitude longitude that they were born. So my father wrote a star chart program, because, right that it helped a lot to automate some of the more tedious calculations. And you know, he probably, my recollection is that he had to, he'd had to adjust for daylight savings time, which Oh, man, like, I wish I don't know if that program is still around anywhere. I think it's probably on some bit Raja diskette. But my recollection is that I learned enough basic when I was a young kid, that I helped him with the colors, like I made it pretty, you know, this command line program to you. Um, anyway, so as a child, I was a, I could program a little bit in basic, and I was a power user of the computer, my parents saw that I would become an engineer, well, they had a variety of, I was an argumentative child, so lawyer was possible. It was possible path for future seminar. And I sure did like to be on stage. So maybe it was going to be an actress. Um, I, again, the arguing the politics might have been in the future. Yeah, um, there were a few different paths, they might have thought that I would go on, but because I was a person who could fix things around the house, when they broke, and I liked the computer and so on, they thought that perhaps I would become a programmer. And I did not particularly want to do things just because my parents wanted me to do this.
Tim Bourguignon 8:40 And I understand this.
Sumana Harihareswara 8:41 Sure, sure. Um, and when I was going into college, it was not a question in my household that I would go to college that my older sister and I would go to college. My, my sister and I, both girls, my parents said to us, that they had, you know, we have two jobs in this life, you know, the like, sort of while we're alive, for each of you, we have to get you settled, which is to say, make sure that you get married right to good husbands. And we need to make sure that you can stand each of you can stand on your own two feet, which is to say, make sure that you are educated, and on a vector, you know, where you have a career that can support you. And at some point, I thought, Wait, hold on, if I'm going to have one, why do I need the other and then as I got older, and I saw, I mean, you know, you see people have situations where through divorce or death or, you know, really not that great spouse or whatever, like it's important to be able to support yourself even if you get married. So the as is so often the case, right? One gets to a certain age and thinks one's parents Miss something and then you get a little bit older, and perhaps one thinks, Oh, I think I see down a thing that I'd missed 10 years. Anyhow, so, uh, I did not want to major in computer science. Um, and I had, you know, some arguments with my, my father particular about them. And I went to the University of California at Berkeley for undergrad and I arrived in 1998. And I fell in with hippies, I met through basically someone in my dorm, I met someone who was very interested in deeply interested in specifically open source software. And this was at the same time that I took an intro to computer science class, while I was, you know, in my first year at UC Berkeley, and I got the lowest score, I got the lowest grade that I got in any of my classes at Berkeley. And I think it's interesting to see that I was much more interested in open source software than I was in CS. And I think that's an interesting thing to think about, because yet they're completely different. Computer Science is an academic discipline that grows out of mathematics. And in fact, if you look back at, for instance, University of California, Los Angeles, which was one of the other campuses, right, my spouse, got a CS degree there. His father also got a CS degree at UCLA, which I think is amazing, right. And his father was in the first cohort to cut dig for that degree that bachelor's degree was in computer science, and not what I think of as extremely applied math. Um, right. And that is a heritage a really important heritage of computer science. So if you take a class, certainly introductory classes, in most cases in computer science, but certainly the class that I took in 1998, in computer science comes to Berkeley, you know, that's the heritage, it came out of, in contrast, the free and open source software movement, has this extremely social sciences aspect to it. It's about freeing people. It's about empowering everyone, in the same way that democracy is, right, like the gears and levers of the systems that we depend on, that we run on ought to be open to our inspection, and potentially open to us changing them as well. Right? That's the heart of the free and open source software movement to me, or at least it was in 1998, right. And I met Seth Schoen, who later went on to work for the Electronic Frontier Foundation for something like 15 years. And he was my sort of introduction into Linux and the GNU Public License and thinking about these things from this holistic point of view. And I was already interested in activism meant to empower everyone, right, and make sure that structures that govern us are transparent and accountable. So this just felt like, slotted right into that, you know, so 9998 or 99. I installed Linux for the first time. And I realized, yeah, okay, I already know, I already knew going in, I probably didn't want to major in computer science, there was something that my dad wanted, I didn't necessarily want this in a computer. That gets confused because you use too many commas. in something like a heat, I remember specifically sitting in a lab. This is probably one of the basement lab somewhere on the UC Berkeley campus. And Dr. scheme has been out yet another error yet again. Because I'd put in you know, and if you know, these are inscrutable errors, and this is 1998. It's before Google, it's before Wikipedia, it's before StackOverflow, the people I had available to me, were the you know, the people that my left, am I right? Am I not so great ta sorry, pass TA, um, and ah, I remember being incredibly frustrated at this. And I was the kind of kid to whom most things in my schooling had come reasonably easily. So this was I was not as well equipped to deal with frustration as I wished I had been. And yeah, the fact that a human if I was writing an essay would be able to deal with an extra comma, but a computer could not, to me spoke in favor of the human and against the computer. And I think it was either that semester, the next semester that I had a fantastic instructor in political science, which helped me decide that Yeah, okay, I'll major in this. And I took some more classes, the sort of sociology of technology type side while I was UC Berkeley, and I certainly worked in the tech industry. The entire time. I was at UC Berkeley, I always had summer internships or aside from the summer that I want to draw, or I did part time work or something like that, somehow. In tech writing, or web mastering, or this, that and things like that, but that was for money. You know, that wasn't necessarily where I thought my career was gonna take.
Tim Bourguignon 15:09 I would have two questions just just in between if I may. The first one is, you mentioned your parents, were very involved in the community. And do you think it's one of the factors why this this more social part of software? And this, this, you mentioned it yourself activism became one of the choices you could make?
Sumana Harihareswara 15:30 Yeah. Oh, absolutely. For sure, um, I have this idea that I call no big deal theory. And that is, whatever you grow up around, and or whatever you get a chance to experience and be near it in. In a setting where other people are doing it, and it's normal. For them, it feels like no big deal to you, it feels like it could be normal for you to do it. So I grew up with parents who put out a magazine and created organizations and did a lot of public speaking, and so on. And let's say a friend of a friend grows up around parents who are very handy and are always fixing physical things doing carpentry, woodworking, and stuff like that. And somewhere along the way, you know, I get asked, hey, do you want to write an introduction to the kids section of his magazine, and page over there? gets asked, hey, do you want to take these little scraps and build something with them. And you know, I write an introduction, and she maybe builds a little dog house or a dollhouse. And you know, fast forward 1520 years later, I'll be writing things and writing memos and editing magazines and creating anthologies and things like that. And then the next year, maybe pages coming over to build some shelves, because it seems easy to her to saw things and hammer them up and know that Oh, yeah, this is probably gonna be fine. We, and I think one of the greatest gifts that a parent can give a child or a teacher give a student or an employer can give an employee or a volunteer community leader can give to other volunteers is giving people some experience near a thing that might otherwise feel scary, so that people can feel like it's no big deal, and have a very gentle on ramp into that activity. Where at first, the things that they're doing are things that are not on the critical path, but that still contribute in some way. And there's a fancy academic term for this, which is legitimate peripheral participation, in case anybody wants to look it up. But I only found out later, of course, it's not like your parents as generally, unless your parents are psychologists, right? They're not going to say to you, as they are letting you copy, edit some document for a prayer ritual? Well, what we're engaging in right here is called legitimate peripheral participation, and it's gonna pay off real big in 20 years.
Tim Bourguignon 18:15 Yeah, "no big deal theory" sounds better. You if you flip the argument on its head, that would mean that if we as parents are not courageous enough to do things that we might be afraid of just to be a role models for our kids, then we are kind of lowering the the bar for them, lowering the expectation and not helping them reach maybe the heights that they could reach otherwise.
Sumana Harihareswara 18:47 That could be the case, I hesitate to make any particular recommendations, in particular for parents, I do not have any children. And I think it's very easy for people without children to make extremely blinds and glib recommendations. And, and I imagine, you know, look, I have some friends, and some of them have kids. And despite having kids, some of them might even have time to listen to podcasts. And so if even one of them listens to this podcast, and hears me saying, Oh, yeah, parents, I don't know why more of you aren't, you know, going down this checklist that somebody came up with, of things you should be tracking, because otherwise your kids are stunted? in their mental growth, then I just I can sort of play forward how that would go. If you are a parent and you find it helpful to you and motivating to think about how expanding your own horizons then also expands the horizons for your children. Yeah. Hey, great if that works for you, go ahead, but also oh my gosh, you're a parent and write down support. pandemic like you weren't keeping your children. Okay, a plus parenting.
Tim Bourguignon 20:06 Gotcha, gotcha. will be responsible for the parents.
Sumana Harihareswara 20:09 Okay. All right. There was another question or not?
Tim Bourguignon 20:15 Yes, there was another one. When you were talking about this, this activism and social sciences, etc. I was asking myself, why software? You could have gone, maybe 90% of the rest of Social Sciences, which wouldn't have been software, why did software appeal to you? And when you go in this direction more than one other?
Sumana Harihareswara 20:36 That is a really good question. There is a talk by derrius Kazimi for xo, xo. And it's called something like how I won the lottery. It's a talk in two parts, where the first part is just this incredibly bang on note for note parody of all these talks by people who got rich or famous, or whatever, saying, Well, here's all these things I did. But the thing this person did is win the lottery. And they're trying, they're acting like they're giving you all this advice about like, what numbers they played and stuff like that. And somewhere along the way, they mentioned that, you know, they got a bunch of money to buy the lottery tickets with and and then the second half of Cassini's talk is a deconstruction, right saying that, so many of these talks and interviews and so on, boil down to, I was incredibly lucky, here's some thoughts on how you could try to replicate my luck, you know. But it's this means of trying to act as though we have control of these massive, uncontrollable forces that include a lot of luck and privilege and things like that. And when I say control, I mean, I did not control whether or not I ran into this or that circumstance, the fact that I had loving parents who supported me and kept, kept making sure that I had everything that I needed for, you know, to blossom. So I ran into Seth shone in 1998. And he said, here's this thing called free software. And it made sense. And it made sense to me, probably because I could program a little bit. And I was a power user of computers. And I was already on the internet. I had enough knowledge and skill to understand, to grasp, right, how being able to pop the hood on software and being able to pop the hood on all the other forces that control us. Over we're deeply deeply connected.
Tim Bourguignon 22:45 That makes a whole lot of sense.
Sumana Harihareswara 22:46 Yeah. And I, you know, it could be if you, you know, you roll the dice again, right, you run the historical simulation again, and put me in a different dorm in 1998. Yeah, like, maybe you wouldn't be talking to me. And instead, I would have ended up at the United Nations. You know, although Actually, I say that there is a part of the United Nations right now that's focusing on open source software, the digital impact ones, but a different part a different party.
Tim Bourguignon 23:13 That could have been my
next question: where are you heading? So United Nations check!
Sumana Harihareswara 23:20 That's my sister, my sister has actually worked at the UN.
Tim Bourguignon 23:23 Wow. Okay, it runs in the family. That's, that's a perfect example, again, of combining two skills to, to strive in a different context. So reuniting this love for software, the software world, not necessarily coding and love for social sciences and combining the two and finding exactly the right place to to blossom and really make use of the two skills. And this happens really often, maybe not at such a large scale. But when somebody knows the domain, they're working in and knows to talk, how to talk to developers, and managers to bring the product or the customers closer to to the dev teams, and really managed to get both the best of both worlds, for instance, that happens to me almost every every month, so that a different client this is this is always fun to see.
Sumana Harihareswara 24:20 Yeah, it seems to me like I mean, we we actually have in my opinion it okay, if you think about in the entire world, right? Billions of people. There's the set of people where their development skills are that they can put functions and classes together. And then there's the set of people where they can do at least some of that plus some other thing. Of course, the being able to do that plus some other thing is going to generally provide more value, right in any group context.
Tim Bourguignon 24:55 Absolutely. It is hard to to market at first but once You Oh, there, it's it's a big, big, big, big plus.
Sumana Harihareswara 25:03 I guess that's why when I mean, I wouldn't start, like, I recognize that there are many people who start as, quote, junior developers, I was never only a junior developer. Oh, and let me let me explain why. So, right. So I had some basic from when I was a kid, I had a semester of scheme, which is a lisp, you know, when I was in college, I learned some bash scripting and stuff like that along the way, just to, you know, to make certain things happen on the on the command line, I emerged from undergrad with some ideas that do not work out about teaching and doing some contracting and this or that, oh, boy, I accidentally saw that I had graduated when I had not because I had double counted a requirement. So I had to take a summer school class, and then that through some of these other plans off around three substitute teaching, and setting something. And then once I'm done with that class, and I've actually finished garments for a bachelor's, I need some money. And I go and get a, an entry level retail job at a bookstore. And I just sort of decompress for a year from academia. And then I find out that there is a gig at available at a, an online magazine salon.com, that I've been reading for years. And I go and take that gig. And that's where just along the way, as I'm doing customer support, I also learned a little SQL. And you know, I've been a Linux user at this point for years. But I'm pretty sure programming is not really that interested in. And I find out that there is a software management training program at a company that I've heard of in New York City whose blog like and I've been reading the founders blog for years, this is a guy named Joel spolsky. And the company at the time was called Fog Creek software. So I put in an application, I ended up interviewing and being accepted. And my then boyfriend, and I move across the country on a month's notice, actually, he's never even visited New York City before, right. And he decides to move with me. And I for a year and a half, I was in this training program, where I did some, a little bit of programming and ASP, mostly a lot of customer support, QA and a little bit so you know, a lot of sales and things like that. And I started my, I started my master's at Columbia. And that time, which I finished them, it was a two years masters and masters in technology management. And there's actually a story on that I need to get back to. But all this time, you know, I didn't think I was particularly interested in being a programmer, I thought, well, I'd liked somewhere in there, I thought, you know, I'd like to learn a little bit of Python. And so I started contributing to open source software specifically as a way to get better as a programmer. And I looked at Miro, which was an open source video podcast catcher, which was written in Python. And that's the reason I started contributing as a tester. They had great how to do manual testing, documentation. And that's why I started I was like, Okay, now I absolutely know how to do this, and how to test and how to find bugs. And they clearly really appreciated what I was doing, I got a T shirt. And they thanked me, you know, it was clear, like what I was doing, I knew what to do, there were really clear directions, I knew that I was being able to, I knew that I was able to make a great, useful contribution. And they showed appreciation and I've taken that experience with me, you know, through all the rest of the times that I've helped volunteers learn, you know, break it down, the really non condescending, and really hospitable with clear, specific directions on how people can do things, and thank them and make it clear that they are making a difference. And people, so many people want to be part of a high functioning team, you know, and that's so in 2006 as part of doing this management training program with Fog Creek software, I did a master's in tech management with Columbia. So I made the diploma and my mole says, master and Master's in technology management from Columbia University. This was the first time by the way I had ever been to a privately run educational institution not just the ivy League's but just anything that wasn't government run, right. And so that's it, you know, that's a switch. Um, but one of the things about it is, I was Yes, I was one of the very few women I was what one of four women in a class of let's say, 30. But more than that, actually, the thing that really was the the big culture shock was there was this big Line assumption most of the time that well, of course, you want to work in or and or you already work in a large for profit company that is publicly traded. The idea that perhaps what you want to concentrate on is startups at a very early stage, or nonprofits, or government institutions, or things that might be in some completely other format, like a co op. No, that was just not on the agenda. You see what I mean? And so that was, that was sort of this alienating experience. Um, there was this moment where, for instance, in a class, someone brought up something of you doing salaries, and I mentioned the possibility of salary transparency within an organization. And I remember that one of my classmates said, but but that's against policy, as though you know, as though the policy at you know, Bear Stearns, or whatever, was some kind of law that had been handed down on stone tablet.
Tim Bourguignon 31:04 Yeah, wasn't it?
Sumana Harihareswara 31:08 And so I think I, you know, I learned some things absolutely, in that master's program. And I actually summarize them in a talk that I gave called learn tech management in 45 minutes, where I sum up what I learned, I learned some valuable things. And I use those things now. But also, I recognized something about how I'm an outlier in what I care about, compared to a bunch of management centric, you know, the management coaching industry, or the training people for management industry or things like that. And that's, you know, it's just good to know where you stand, isn't it? Why don't I very briefly talk about the, you know, the actual bit where I become a developer and so, so I got a little bit interested in Python, open source, I did a little bit of learning on my own, I went to a great open hatch. And Boston women's was the Boston women's workshop in Python for the Boston Python workshop for women and their friends. I think it was run by Jessica McKellar. And that helped me, you know, bump my skills up. And I applied for the recurse center in 2013. And I got into that, and on my way, and I burnished my skills, some and then being an RC definitely improved my skills a lot. I wanted to keep abilities, you know, late, late 2013, I was recovering as so many of us were from Aaron Swartz his death. And I thought that, you know, if you don't have the political mind that he did, but and I don't have the CS mind, engineering mind that he did, but but a lot of us need to step up. Um, and I came out of that thinking, Oh, do I want to be an individual contributor? Do I want to be a programmer, and I did some tech writing, I left Wikimedia Foundation, which is where I was at the time as a community manager, because in the intervening time between Fog Creek and which means, you know, I'd gotten into doing open source work, project management, stuff like that as my paid job. Um, and, yeah, so I, you know, I improved my skills, especially in 2013, and 2014, especially through the recurse center, as a programmer, but really the, you know, the direction that I've gone is, the thing that needs doing is stuff like project management, tech writing, release management, and so on. And so that's what I was saying, you know, I was never just a junior Dev, where that was the thing I brought, I was even in, let's say, 2014, maybe on the level of, can I pump out functions and classes? Sure. Okay, I was a more of a junior Dev, or an intermediate dev level person. But I was already a really experienced technologist. Because I've been working in the tech industry as project manager, release manager, community manager, tech writer, tester sales, all these other things for so long. So I already knew a bunch of really important software engineering stuff. I, I am a better software engineer than I am a developer. And given how many developers are out there who kind of only want to be developers, I think it's totally reasonable for me to leverage that and say, Okay, well, I'll do these things that I am good at that are rare, and I'll manage other people who are less rare who are doing the things they want to do.
Tim Bourguignon 34:34 Absolutely. And that's exactly the skills that we need. Most often than not, so you found the perfect niche niche for yourself. Definitely. And that's actually exactly the segue I wanted to get into. Which is how did you manage to combine these two worlds of project management and and doing the the, with big air quotes the other tasks that you don't see, when you think about open source software?
Sumana Harihareswara 35:03 Well, when you say "you" in open source, I think probably there's a lot of people who don't think about what I think about.
Tim Bourguignon 35:09 Yeah, I wasn't mentioning you it was meant to me.
Sumana Harihareswara 35:12 Yeah.
Tim Bourguignon 35:14 That one Don't think about and and combine this with your skills and make it your day job. Because when we talk about analogy, not you and me, but usually when we talk about open source software, it's this this industry that doesn't pay that doesn't pay the bill. And that is, I'm missing the the English word for that. It's not a rewarding is contributors at the correct level. And so how did you manage to, to combine two, three phases of the same problem
Sumana Harihareswara 35:46 in late 2014, I left the Wikimedia Foundation, I was figuring out what to do next. And I started contributing to an open source project called mailman, which is a mailing list manager. And I thought, well, you know, I'll improve my individual contributor skills. But my friends, Terry Oda, who had been the one to introduce me to this project said, you know, we really need a lot of help with release management. And I did some individual contributing, and I did some bug fixing and stuff like that. But then I came to the PI con Sprint's in early 2015. This was probably Montreal. So pi con is a set of different conferences. Pi con North America happens most years in the Northern Hemisphere spring in the US or Canada. And right after the three days of talks, there'll be four days of sprints where people get together and work on open source projects together in person. And so a bunch of us showed up for the Sprint's to improve mailman and help get mailman three Dotto out because we had been working for 10 years. Well, you know, I'd only been working for several months, but people have been working for 10 years to try and get the next version of mailman out. And I showed up on day one. And we realized that I didn't need to be writing code, what we needed was someone to help look at the list of what needed to happen, assign stuff, ask who needed help make decisions, and so on. Right I came in on day one thinking I was going to write code. And I looked at everybody around the table who hadn't yet started the conversation of who's doing what how are we going to make sure we get three Dotto out this week. And I went and got some butcher paper and a marker. You know, stuck that big post it note on the wall and wrote down the list of all these blockers between us and three Dotto started the conversation was able to cross off a few of them in just the first few minutes, and then went around the table. Okay, who's doing okay, let's go. And then for the next four days, I was you know, drafting release notes and making your decisions and testing and getting people from other tables to test and so on and so on. And by the end of that week, we were one upstream bug in dependency away from releasing, and I think it was maybe a week or two later that we finally released that Oh, and I looked at that, and I thought, Hmm, okay, so I was the catalyst there, I wonder if I can charge for that. And that was really the inspiration for change that consulting, which is the business that I run now, where I provide short term targeted work, to expedite releases and break bottlenecks and level up open source projects. So I've done that for HTTPS Everywhere to help them improve their maintainership. That's a from the Electronic Frontier Foundation. Right now, I'm doing a lot of stuff with the Python Software Foundation, there's a big change coming to Pip, the package installer, next month in October, and there will be something in the show notes about how you can test that and make sure that the migration will go fine for you before the new release comes out in October, which is pretty important. And I volunteered and recently did some stuff with PIP ends and broke a bottleneck for them. So they got their first release out in something like 18 months. And I'm currently doing some work with another project that I need to talk with the funders before I talk about it on social media. But it's another one of those, oh, wow, that hasn't had a release out in several years. And you helped break the bottleneck text, but I have to release open source projects, which there is not any particular lack of I Hate Waste. I really there's a part of me that just viscerally hates waste, and software where there's a bunch of stuff in Git master that hasn't had a release out so no one gets to make use of it. And therefore there's frustrated people who are trying to figure out Should I fork Should I switch to a less good competitor What's happening? All that confusion is a kind of waste and I hate waste. And I have a bunch of open source skills that I have the ability to talk to maintainers and volunteers and ask them, Hey, are you alright? Would you like me to clean up the code review queue, and clean out all those non reproducible bugs and the bug tracker and update the docs and update the release process and suggest a draft roadmap that might make sense. And most of the time people want some help with all that. Hmm. So it works. Well,
Tim Bourguignon 40:28 In which ways did this conversation change during the last six years, you've been doing this?
Sumana Harihareswara 40:34 I think the conversation has changed. As I have accumulated more and more past case studies, projects that I've done that I've run that went well, so that, okay, I ran this, I was able to use such and such a budget to overhaul this or get this out the door. And then that leads to more credibility, right, and people hear about it. So then maybe more people come to me instead of me having to do as much outreach. But I think, also, I've learned a lot of things that I am working on a book, it's been very delayed, because this year has been what I think nobody expected, right as of January 1. But I am working on the first draft of a book about some things I know about maintaining Brownfield projects, let's say right, Karl Fogel wrote a fantastic book called producing open source software. And I think that's great for Greenfield when you're starting a project from scratch, but I do not think that book exists about how to come into a project that already exists, and level it up and improve things that are currently stagnating how to help Brownfield project? So that's something that I'm working on.
Tim Bourguignon 41:48 And I'm looking forward to it. When when do you expect a when do you want to be not one to one is probably in the past? When would you expect it to be to be in a readable form,
Sumana Harihareswara 42:00 I want there to be a public thing that is an early draft that people can read by the end of this year by December 2020. And then that would be an early draft. And then, based on that, it could be that I might choose to go self publication and might be that I choose to coordinate with some other effort like the Mozilla leadership training, or the open source way stuff that Carson Wade is leading, or I might try and work with a traditional publisher, right, like no starch. And so I don't necessarily know what 2021 will hold on that front or any other. But I would like for there to be something out at the end of this year that some people can enjoy.
Tim Bourguignon 42:44 about the future. Nobody knows. 2020 has been so much of a curveball. I'm not sure which 2021 is prepared as preparing for us. So we'll see. This has been a very, very interesting. And I would like to for this last question that I always ask my guests. I would like to extend this open source world, how would you advise someone to get or to to do their first steps into open source and start on this journey that has been has been so important for you,
Sumana Harihareswara 43:17 I want to advise listeners who are interested in getting involved in open source and contributing to open source to think about why you're interested, because there's a bunch of different reasons, which are valid, right, all of which are valid, that you might want to get involved. And if you are interested, because of sheer intellectual curiosity, then searching, right searching on the web, searching on Git lab and GitHub, and source has for names of languages and frameworks and topics that you're interested in. We'll go ahead and get started. If you're interested, because you want to contribute to liberation in some way, then I would advise that you look up the liberatory technology movement, which focuses on how we can use technology to liberate everyone. Maybe you're interested, for some other set of reasons, but the world of what you might want to do next. There's a lot of different options. And there's a fantastic anthology called Open advice that was originally edited by Lydia pintscher. That's free to read online that has guidance from a lot of people who have taken a lot of different paths. And so that might be useful for you to take a look at next.
Tim Bourguignon 44:50 Awesome. Thank you very much. And where could the listeners continue this fantastic discussion with you?
Sumana Harihareswara 44:57 It's flattering to think that anyone would like to Hear more had to say. hearing us, um, if you search for my name, then you will find me on various platforms often, my username is @brainwane, I am on mastodon.social, I have a website, and you can get to it brainwayne.net. And I also have my business website at changeset.nyc. And I have a blog, which you can get to also at brainwane.net. And it has a syndication feed, which is one of the better ways to keep up with absolutely,
Tim Bourguignon 45:48 I am still following so many websites with RSS and this is so important. I was Yeah, when Google closed off their their reader. But
Sumana Harihareswara 45:58 I use dream width as my feed reader. So that's like bandwidth, but for dreams, Dream wins. And that's what I use for feed reading. And that way, I you know, I keep up with quite a number of blogs and news sources and things like that.
Tim Bourguignon 46:13 Just realize the mentioning Google after talking so much about open source and freedom was necessarily the right, the right mention, but it's out there.
Sumana Harihareswara 46:24 And look, Google exists and has a tremendous amount of power and effect on how people act and what our capabilities are. And I think I'm not going to act like the people in the Harry Potter World where they don't allow themselves to say the name Voldemort. And not naming a powerful thing that is, you know, poses a lot of dangers doesn't actually make the danger go away. And I say that Google also contributes to open source in various ways. through Google Summer of Code, people season of docs, and through paying some people who work in some cases on genuinely open source projects that are very heavy there, they pay some people who contribute to for instance, Python packaging and things like that. So right, very mixed bag,
Tim Bourguignon 47:09 very mixed bag. Indeed, indeed. And you mentioned some timely things you mentioned Pip, and maybe something else. Do you want to plug some some some timely events or happenings toward you?
Sumana Harihareswara 47:23 Sure. So we'll have a link in the show notes about this. The if you use Python at all, if you install and use Python tools, applications libraries in any way, you probably use Pip. And I am currently project managing a big change a big improvement to Pip. Currently, the old version of PIP is really inconsistent in how it handles dependencies and complicated. Oh, you want to install x. So that means that it depends on why. So you need, you know why? And you do all these other things together. And so Oh, wait, this one's why version less than one this other thing wants? Why version more than one? What do I do? So the current version of PIP is very much fragile and inconsistent, and how it deals with that. And so if people have developed a lot of workarounds, we hope to make those workarounds completely unnecessary, with the new version of PIP 20.3 coming in October, but because PIP is going to be interpreting requirements more strictly and more consistently, that means there are some people's workflows that have those kinds of workarounds, maybe not even realizing there are workarounds, that are going to break. And so that's why we're running this beta right now is the currently available version of PIP 20.2, where you can try out the new behavior of the resolve the new resolver, the robust dependency resolver, on your environment, you can check is anything going to break, especially if you use PIP in a continuous integration environment or some other kind of automated system where it's going to be hard for me to dig in through the logs and figure out if stuff starts acting weird, now's a really, really good time to check. Try the new Pip, tell your friends tell, especially upstreams of yours, right? If you depend on something from a vendor, including an open source maintainer, and there is something that conflicts because of the way they've set up requirements. It would be great for them to have a heads up as soon as possible. This is a nonprofit effort that's funded by some, you know, grants and similar funding from Mozilla and the Chan Zuckerberg initiative. So we don't exactly have a huge marketing budget, we can't put up billboards and get ads on YouTube and things like that. So we are hard pressed to try and get the word out to everybody who's going to be affected. So please go to the link in the show notes and Try it out and spread the word.
Tim Bourguignon 50:02 Awesome. Yeah, then I'm glad that we can help spread the spread the word. Thanks. Thank you so much any other link you want to plug in?
Sumana Harihareswara 50:10 When I first started getting interested in programming, I was, you know, I was right. Um, and I also was starting time when I was a kid, I read a lot of science fiction. I read and I still read a lot of sense fiction. And my spouse, Leonard Richardson, is a programmer who also writes science fiction. He is a Python programmer. He wrote beautifulsoup, which is a screen scraping library that possibly some of these listeners, some of you have used. And he also wrote a game called robot finds kitten, some of you might have played. But also he is a writer of science fiction. He has a novel out called constellation games. And you can read the first two chapters for free online. And that is about a programmer who writes video games and then gets to meet aliens and wants to review their video games. And it's pretty funny. And he has another book coming out this December called situation normal, and it's a military sci fi satire, about to two entities going to war that really don't want to. And he's, he's got a great touch for the comic. And and he's also, you know, a programmer who's made a lot of people's lives easier. He's pretty great. So if you want to take a look at all those levels,
Tim Bourguignon 51:33 We'll do we'll do. Sumana, thank you very much. It's been a blast listening to your story. And thank you very much for opening up and telling us this whole this whole journey of yours. Thank you.
Sumana Harihareswara 51:43 Thank you very much for having me.
Tim Bourguignon 51:45 And this has been another episode of developer's journey. And we'll see each other next week. Bye bye. Sponsor: Even though we developers learn all year long, I still think about September as the back to school time. This time, I am focusing on my Python skills dev journey guest number 94 Michael Kennedy is gifting five of you dear listeners he's "Python for absolute beginners" course. To enter the raffle and maybe win one of these five keys. Subscribe to the dev journey newsletter at dev journey dot info slash news during September 2020. And we will pick a winner each week. Good luck. Outro: This is Tim from a different time and space with a few comments to make. First, get the most of these developers journeys by subscribing to the podcast with the app of your choice, and get the new episodes out to magically right on the air. The podcast is available on all major platforms. Then, visit our website to find the show notes with all the links mentioned by our guests, the advices they gave us their book references and so on. And while you're there, use the comments to continue the discussion with our guests and with me for reach out on Twitter or LinkedIn. And a big, big thanks to the generous Patreon donors that helps me pay the hosting bills. If you can spare a few coins, please consider a small monthly donation. Every pledge however small helps. Finally please do someone a favor and tell them about the show today and help them on their journey.