What does it take to build a community? And once you've built one, how do you sustain it? Michael shares his story of how he built the People of Color in Tech community and how he balances community and entrepreneurship.
[00:00:00] SY: If you haven’t yet gotten your tickets for Codeland, you totally should. It’s our annual conference about all the wonderful things you can do with code. And besides great food, great talks, and great people, this year we’re offering complimentary on-site childcare. So bring your babies with you and see you there. For tickets, go to codelandconf.com.
[00:00:29] (Music) Welcome to the CodeNewbie Podcast where we talk to people on their coding journey in hopes of helping you on yours. I’m your host, Saron, and today, we’re talking about building community and getting a CS degree. A few years ago, Michael created People of Color in Tech.
[00:00:46] MB: I’m Michael Berhane. I’m the co-founder of peopleofcolorintech.com and the co-host of the Techish Podcast.
[00:00:51] SY: It’s part media company, part product and a lot of community.
[00:00:55] MB: We tell and create the stories of People of Color in Tech. We help people find jobs and we tell really interesting stories, media articles, podcasts all around People of Color in Tech basically.
[00:01:05] SY: And it was also an accident. Michael always wanted to be an entrepreneur, but when he started People of Color in Tech or POCIT for short, he didn’t intend for it to be a business. We talk about how he ended up creating a business out of his side project, how he balances serving that community with paying the bills and why he decided to go back to school to get his Master’s in Computer Science after this.
[00:01:30] Actualize Online Live is an online bootcamp created and taught by expert educators. What’s unique about this program is that it’s 100% live. They use video conferencing, so you get to actually see and talk to your instructors and classmates in real time. That means you have live interaction and feedback not just during instruction, but during all your exercises and projects as well. You get the experience of an in-person course while learning from wherever you are. Learn more at actualize.co/codenewbie.
[00:02:08] If you’ve got a personal project, a small business or a big business with lots of data, Linode offers you secure hosting for all your infrastructure needs. They are a Linux Cloud hosting provider where you can get a new server up and running in under a minute. Plans start at one gigabytes of RAM for just five bucks a month. And with the promo code CodeNewbie2019, you can get a $20 credit. So go to linode.com/codenewbie and give it a try. Also, they’re hiring. Check out their jobs at linode.com/careers. Links are in your show notes.
[00:02:43] As you know, I’m a podcaster and I love talking to people and hearing their stories and I love it so much I actually host another podcast called Command Line Heroes. It’s produced by Red Hat and in that show, I get to talk to tons of people doing incredible work in open source, but besides awesome interviews, it’s also got sound effects, background music, you know, creative audio stuff. So if you’re looking for some more awesome tech podcasts to fill your feed, check out Command Line Heroes. Go to redhat.com/commandlineheroes.
[00:03:18] One of the best parts of being a coder is finally being able to bring your passions to life. You have the skills to design, to code, to create the thing you’re excited about and share that passion with the world. And Hover can help you with that first step of sharing your passion with the world, getting your domain name. They’ve got a really beautiful and easy to use interface where you can find and register your new domain name in just a few steps. And to give you full control, they separate your domain name from your hosting so you’re never stuck with one service. They keep your domain name safe while giving you the flexibility to use whatever hosting service is best for you. They also give you free Whois privacy so your personal information is safe too. To get started, go over to hover.com/newbie to save 10% off your first purchase. Link is in your show notes.
[00:04:12] So you basically run kind of a media company/a community that is focused on telling the stories of People of Color in Tech. Why did you decide to create this?
[00:04:23] MB: There isn’t actually any real intellectual story behind it. I was in New York a few years ago and I met a wonderful person called Ruth, who ended up being the co-founder, and we stayed in touch, and then we were WhatsApp-ing every now and then while I was back in London, and she was like, “Why don’t we start a blog and just interview People of Color in Tech?” and I was like, “Great idea.” So we interviewed our friends at first then we reached out to other people. And it just snowballed from there really. That’s pretty much where we started. We added a recruitment component much later, but that was the initial seed of the idea.
[00:04:53] SY: So you’ve been doing it for a few years now. At what point did you decide, “Okay, this is going to be a business, business or was it always intended to be a business, business?
[00:05:03] MB: Absolutely, it was never intended to be a business business. I actually had left my day job as a software engineer at a startup in London and I was like, “I’m going to find my real startup idea.” This was kind of like just a cool side hobby. It was one of those things where it was like, the only thing that was driving it was “Wouldn’t it be cool if? Wouldn’t it be cool if?” and that’s literally how it snowballed literally from that. At the same time, I was working on Uber for X. I was looking for my Uber excited. That was the hot thing at the time. People of Color in Tech was a side hobby that eventually just snowballed. I think eventually companies started reaching out to us saying, “Can we collaborate with you guys for recruitment?” So once we realized there was some kind of revenue model and it wasn’t something that was going to kind of compromise the community, we said, “Let’s go and see how far we can take it really.”
[00:05:47] SY: It’s interesting because I know a lot of people get into code and decide to level up and become more technical because they have an idea, an itch they’re trying to scratch and they want to do something just for themselves just for a side project and want to build it themselves. So when you were initially thinking about POCIT and doing it as a side thing then eventually, it turned into a business, where were your technical skills?
[00:06:58] What was needed at the time is what I built. I started off with no codes and then eventually now I’ve got quite a sophisticated product that has got a whole bunch of lines of code in there that I try to maintain. I just did it based on what was needed at the time and if I didn’t need software and if I could just use something off the shelf then I would use that.
[00:07:17] SY: Were you always that disciplined? Because I feel like when I learned to code, I was thinking, “Ah, everything I do must have code in it.” I felt this urge to implement everything and to use the skills that I learned. I was so proud. I was so excited by what I could do that I wanted everything to… What’s that saying? When you have a camera everything’s a nail.
[00:07:41] MB: Yeah, there we go, right. That’s a bit so much for a phrase. Yeah. I’ve been there with you. I was once that way, but I think the beauty of it was that I had such limited time for this side project that the limitations help me. The limitations just forced me to say, “What’s the smallest thing that I can do that can have impact?” And instead of re-writing a blog engine, let’s just use WordPress, just the guest side, and it’s like cool. So limitations can actually be your friend. It’s a really counterintuitive way of thinking about it, but it really did force us to just do what was absolutely necessary at the time. But generally speaking, you’re right. When I first started to learn to code, I was doing everything that was not even necessary to do. There were so many things I could have just gotten off the shelf. I was like, “No, let’s make our own.”
[00:08:22] SY: Yeah, I could do it better.
[00:08:24] MB: Yeah, I can do it better. And this is, like, no, you really can’t, but anyways, it’s good for a learning exercise. This was actually just what can we get done in the shortest period of time? That was it.
[00:08:32] SY: I really like that. That’s really smart. Okay. So when you were beginning, when you first launched POCIT, it seemed like the smallest thing with the biggest impact was the WordPress site. Tell us a little bit more about that. What kinds of stuff did that blog do?
[00:08:47] MB: What kind of stuff did it do? Literally, just the blog, you could post articles, write articles. It’s just a generic WordPress blog. I think it’s ThemeForest.
[00:08:55] SY: Yeah, yeah. ThemeForest is great.
[00:08:57] MB: Yeah, you can just go there. A great part of doing an internet business is that you can stand on the shoulders of giants. There are so many developers that have open source code or things that they’ve already built that you can just plug into your platform. That’s what the initial iteration was. Later on, I redesigned it and rejected it to be more fitting for our purposes and our vision, but that was enough to get us started. It was a very simple venture at first. If you’ve had any experience with WordPress, then you know what I’m talking about and it’s very intuitive and it was enough for us to get started.
[00:09:24] SY: You mentioned earlier that the moment you decided, “Okay, maybe I need to build my own thing,” was when the recruitment part came in. Is that right? So essentially, what happened is we had an email newsletter and I said, “Why don’t we put some jobs here and just have a link saying, ‘If you want to post your own job, get in contact with us’?” The jobs that I had sourced, we had not been paid to place those jobs in our newsletter, for example. I just found the best jobs that I thought were relevant for our community and that’s how it started. Essentially, sometimes, you have to fill the demand and then in order to create the demand, if that makes any sense, once that happened then I built a website. I was like, “Okay, cool. We’ve got something here. Someone’s paid us actual real money to post the position.” I’ve had projects before I couldn’t get any of these pay for anything. So I was like, “Whoa, this is actually something here now.” So I spun out a little subdomain and had a really simple website and then, later on, I built profiles, messaging, and it was all just bit by bit.
[00:10:20] SY: So when you did that, when you did the subdomain, you didn’t take down your WordPress site and replace it.
[00:10:26] MB: No, not at all.
[00:10:27] SY: You just built, again, the smallest thing that you had to build to fulfill this new thing.
[00:10:30] MB: Absolutely.
[00:10:31] SY: That’s awesome.
[00:10:32] MB: Yes, so the WordPress site is still up there. If you go to peopleofcolorintech.com, that’s still WordPress. We moved away from a subdomain and pushed it to pocitjobs.com. It has its own separate domain, but for the longest period of time, jobs.peopleofcolorintech.com, if you’re following was app stored on Heroku versus the WordPress, which is on the main domain name. I mean, if it’s not broken, why fix it? So I didn’t see the point.
[00:10:53] SY: I think it’s brilliant. I think it’s amazing. I’m definitely not that disciplined. I wish I was, but I’m definitely not.
[00:11:00] MB: It’s all about the time constraints.
[00:11:01] SY: Yeah, but you’re absolutely right.
[00:11:02] MB: It’s all about the time constraints, like, yeah, I just didn’t have the time. If I have the time, I probably would have outdone myself and tried to prove how great and smart I was and probably wouldn’t have gotten as far.
[00:11:11] SY: So the parts of the app that you actually built and coded yourself, how did you learn how to do those things? Is that something that you picked up along the way? Was that what you were doing at your old startup job? Where did those skills come from?
[00:11:25] MB: I only ever had one job as a developer actually in that one year. I was working as the first engineering hire under a startup based out here in London, and I worked side-by-side by the CTO. It was the biggest time of my growth really as a coder because standing next to somebody every day who knows exactly what they’re doing, has many years of experience, you can kind of just leapfrog and use their knowledge. They just teach you so much and then they will throw things at me and say, “Okay, React is new, learn it and then see how you can integrate it.” So I was constantly having to learn these new frameworks and get my feet wet and not be afraid to learn something new that I had no competence beforehand.
[00:12:05] So once I had left, I just leveraged what I knew in that one year and from that one year as a developer. It was all that one year after uni that where everything I learnt and I’ve used came from basically.
[00:12:21] SY: Interesting. Okay. So you’ve been working professionally as a developer for one year before you did all the POCIT stuff. When you think about the stack or the tech stack of a POCIT today, do you think of the company as a technical product? Do you see it as a media company? Is it a community? How do you frame your business in your mind?
[00:12:44] MB: I don’t really. I don’t really frame it in that sense. I just do what has to be done. And if I need to code to do something, then I’d do something. The end goal was how do we serve our community? That’s the end goal. The way that we get there is the way that we get there. If anybody from outside the company wants to say, “You’re a media company,” or, “You’re a tech company,” or, “You’re a hybrid,” then so be it. I almost feel like those kinds of terms are put on you so that you can raise money. Investors don’t like media companies. They just don’t.
[00:13:11] SY: That’s true.
[00:13:12] MB: But in terms of how I define the company, I tend not to. We have parts of our company that wouldn’t be out of place at a tech company and parts that wouldn’t be out of place at a media company, but it’s not something that I spend too much time thinking about, to be honest.
[00:13:24] SY: When you think about, I guess, the main value of what you do of your business, when I think about CodeNewbie for example, we do a bunch of stuff. We do have a website. We have a rails app. We’re working on our product. We have a bunch of different parts of things, right, but the real, I guess, value of what we do is having a consistent brand message and calling out to people, broadcasting to people, and bringing them together under that message. So in the same way, I don’t know what we are. We’re not really media. We’re not really tech. We’re kind of somewhere. So when you think about the value, the one thing that really shines about POCIT and about what you do, what is that thing?
[00:14:08] MB: The one thing I would say is that we just tell the stories of People of Color in Tech and we let people know that “Hey, you’re not alone. The journey that you’re going through is quite similar to what others have gone through,” and we shine a spotlight on people that haven’t necessarily been at the forefront of what people consider to be tech. I actually think of it as a technologist. Historically, you’re not going to think of a young black woman, for example, and we try to rally against that and show there are plenty, and there will be even more in the future. So it’s about shifting image. It’s about also comforting people who are already in the industry and juggling both of those things where you’re encouraging the current generation and you’re kind of helping the next generation come through, if that makes sense, through the power of storytelling.
[00:14:50] SY: Yeah, yeah, absolutely. So when you think about the future of POCIT and where you want it to grow, and go, and become, what does that future look like?
[00:15:00] MB: I just want us to do more of the same and just double down on what we’re doing really. I don’t tend to plan out too far into the future. I never plan for more than six months to a year.
[00:15:09] SY: Same.
[00:15:09] MB: So I haven’t a lot of roadmaps. Yeah, because when you’re a bootstrap founder…
[00:15:13] SY: You just never know.
[00:15:15] MB: Yeah. You never know. You just got to be practical. Let’s keep it at 100. You just don’t know what the future may hold. Yes. I plan for the year, the next year and a lot of it is just more features to help people find jobs, more features to help companies search, more features to help produce great content, expand our audience with our podcast and that’s it really. Just more of the same people seem to like what we’re doing, so I just want to give them more and more of that really. I’m not going to over intellectualize it and say, “We’re going to be this in five years’ time. We’re going to be 100 million profiles.” I can’t go there right now.
[00:15:46] SY: Yeah, yeah.
[00:15:46] MB: One year max.
[00:15:48] SY: What’s really interesting about what you’re doing is that it’s a little bit of everything, but it’s also very much around community or at least it’s about making people feel like they’re a part of a community, an existing community. That’s something that I think a lot of people do who don’t do it within the construct of a business. We might organize our local meetup groups or do lunch-and-learns at work or go to hackathons. I think in our own way, we try to either find our community or we try to organize a community for people who need it. What I personally found interesting over the years is that there is a pretty big difference between running a community and then also having to think about revenue. It’s just different.
[00:16:35] MB: Completely.
[00:16:35] SY: It’s very different. And I’m wondering what was most surprising to you about that, about saying, “I want to do this People of Color in Tech and I want to help them but also have to pay bills.” How do you how do you manage that?
[00:16:47] MB: It’s hard to explain. You kind of almost feel a bit guilty. You start thinking to yourself, “Am I compromising my community by generating revenue?” That’s a struggle. As much as you love your community and the community loves you, they will hold you to a very high standard more so than your friends will hold you to a standard. If you do anything that is compromising their trust, you will hear about it. That’s a constant struggle and we just go over it slowly. We just monitor and see if there’s a backlash and we try to keep everyone’s best interest at heart. That’s how we operate really day by day.
[00:17:20] SY: Yeah, I love that, this idea that the community is not your friend because I think I came to a similar realization pretty early on where I started CodeNewbie with the intention of creating something that I needed, but by being the organizer of it, I kind of realized that, frankly, I don’t get to benefit from it.
[00:17:40] MB: Completely, yeah.
[00:17:40] SY: Like, I’m busy taking care of people and making sure everyone else is… You’re just like when you’re a host of a party, you don’t really get to eat.
[00:17:47] MB: That’s it. Yeah, you’re there to facilitate the fun. You’re not there to have the fun.
[00:17:51] SY: Exactly and if you and that party wiped out and tired and hungry, you’ve done a great job.
[00:17:57] MB: Literally right, literally.
[00:17:59] SY: Yeah. So that’s kind of how I feel about the CodeNewbie community, was it’s kind of like I’m responsible for it, but I don’t really get to partake in it the way I initially thought. So how do you manage that? How do you manage the responsibility of doing right by your people and your community, and making sure you’re taking care of them and you’re taking that responsibility seriously, but also paying the bills? How do you balance that?
[00:18:23] MB: It’s more of an internal dialogue really. If it doesn’t feel right, then I won’t do it. Whenever a company wants to use our platform, they go through an approval process, so we can make sure that this is a serious company because what they do reflects badly on us and we would hate to give them candidates and the candidates come back and say, “Well, I wasn’t really treated correctly,” or, “I don’t think they gave me a fair shake of things,” or, “I felt there was some kind of discrimination.” That hasn’t happened, but we try to make sure that that doesn’t happen and people can flag up as well if there are jobs in the platform where they’re like, “Yeah, this isn’t really a company that aligns with your values,” but it’s a constant battle.
[00:19:00] It’s also an internal dialogue that I have all the time where we have people submit articles as well. Sometimes, the articles, I’m like, “I don’t necessarily know if this necessarily aligns with what we believe in.”
[00:19:10] SY: Those are always so awkward.
[00:19:12] MB: Right, yeah. You mustn’t hate and more be like, “I’m sorry, fam. This isn’t the one. We can’t re-host this. I don’t know, you have platforms, maybe, but this isn’t us.” Yeah, so I’m the judge of it and then I find out and she courses it on Twitter or my email, my inbox if I’ve done something wrong or we’re not going in the right direction, Touch wood, thankfully everything’s been all right so far. The revenue thing is difficult because, essentially, when you have a community, essentially, you charge for access to that community. I mean, there are other models of doing things, but so far, that’s the main way that I see it. You always want to make sure people that are having access to your community are stellar and are up to scratch, and are not going to jeopardize your community. That’s the main struggle really.
[00:19:53] SY: Absolutely. I spent a lot of time thinking about business models and revenue streams for CodeNewbie and then the context of having a community, and there’s really just not that many. That’s the conclusion I came into. There’s really just not that many because you’re either charging for access or you’re charging the community. And if you’re trying to serve people who need help and need support, you don’t really want to charge them. It’s tough. It’s tough. Yeah, then it really is just about judgment call.
[00:20:24] MB: I envy people that have a community of millionaires. They can just be like, “Yeah. It’s a $500 subscription.”
[00:20:30] SY: Done. No, monthly.
[00:20:30] MB: Like, “Hit me up.” Nailed it. One problem, I guess, I’ve seen in the world of community organizing is this expectation that you need to sacrifice everything for your community. I see this a ton. I see this a ton especially with people who just don’t think about the sustainability part or they just don’t think about the paying the bills part of things. Oh, my God. I’ve heard so many stories of people who have gone into debt for their community, who’ve mortgaged their homes for their community.
[00:21:06] MB: Are you serious?
[00:21:07] SY: Yes, like real financial issues because they pay out of pocket for things and frankly, they’re not really comfortable or maybe they just haven’t had a lot of success doing sponsorships. Whatever the reason may be, just loving and caring so much for their community that they hurt themselves very objectively. They hurt their pockets. What are your thoughts on that? How can people who are running communities, who want to be a great community organizer and don’t necessarily need to make it a business, what are some things that they can do or should think about when it comes to not burning out and making sure what they’re doing is sustainable?
[00:21:45] MB: I recommend trying to find a model that makes it sustainable whether that’s patron or whether that’s advertisement and whether that’s sponsorship, something, whether that’s even like free location space. You’ve got to hustle really and try to find the resources and don’t do that to yourself because you burning out or going financially broke isn’t helping anybody.
[00:22:02] SY: That’s true.
[00:22:43] SY: That’s a red flag.
[00:22:44] MB: That’s a red flag. Yeah, to me, I’m trying to be really politically correct and polite but I’ll be like, “Yo, you got to bounce.” Just stop it. Look after yourself and fall back until you can figure out a way to make it work.
[00:22:53] SY: Yeah, absolutely. The other component of doing community work is the emotional burden because I hear tons of stories from people who are not really in a great place in life, in their careers who are getting into code because they want to make a change, they want to make improvements. It could be tough to kind of absorb people’s energies and people’s stories and that’s something that, if you don’t watch yourself, can take a toll. I imagine you might have experienced something similar with People of Color in Tech of hearing unfortunate stories or sad stories and when you care so much about people and you want them to do well, you can end up being an emotional sponge for that, too. Is that something that you’ve dealt with?
[00:23:36] MB: From time to time. I’d say like maybe 20% of the emails that we get are people saying, “I want to learn to code. I just can’t afford what’s out there,” so that’s always difficult. I don’t necessarily always know what to say and I wish we had some kind of mentorship component where I could do it in a scalable way but I can’t mentor everybody. That’s the problem, but then the bulk of the emails that we get are people saying, “The content has really inspired me,” or, “I’m going to go into tech,” or, “I’m going to kind of consider going into tech,” and those things keep me going. Thankfully, I haven’t necessarily got too drained or down in the dumps about the negative stories or the stories where I am powerless to help. I do try my utmost, but I really feel for people that maybe run communities where the bulk of the messages, I think, aren’t going all right or things not happening in a nice manner. I don’t even know what to say to people. That must be very difficult.
[00:24:25] (Music) Coming up next, Michael tells us what it was like to go back to school to get his Master’s in Computer Science, whether or not he thought it was worth it and how his new degree has affected his career as a developer and an entrepreneur after this.
[00:24:42] We’ve talked about open source a bunch of times on this podcast, but frankly, open source is so big and complex, and fascinating that it needs its own show, and it has one. It’s called Command Line Heroes. It’s produced by Red Hat and it’s hosted by me. That’s right. I’ve got another tech podcast talking to incredible people about all things open source. We talk about the history of open source, the introduction of DevOps and then DevSecOps, and we even do an interview with the CTO of NASA. And that’s just the beginning. We also dig into cloud and serverless and big data, and all those important tech terms you’ve heard of, and we get to explore. If you’re looking for more tech stories to listen to, check it out at redhat.com/commandlineheroes. Link is in your show notes.
[00:25:32] Learning to code is much more than learning new concepts and syntax. It’s a whole new mindset. To help you learn that mindset, Actualize produces a free weekly video called Think Like a Software Engineer. It teaches you things like how to debug code, how to research problems, how to teach yourself new languages, how to read documentation, and lots more. Learning the mindset of the software engineer is the key to getting past the hurdles that can bog you down as you code. Check out the series at actualize.co/codenewbie.
[00:26:08] When I learned to code, I was so excited to finally bring my passions to life. I could build things I really cared about and share them with the world. And the first step in sharing is getting a great domain name. That’s where Hover comes in. They’ve got a really slick, easy-to-use interface. They’ve got awesome domain names to pick from and they separate your domain from your hosting so you have full control and flexibility over your online identity. So go to hover.com/newbie to save 10% off your first purchase. Link is in your show notes.
[00:26:42] Linode is giving you a chance to try their powerful servers built for all your infrastructure needs. They’ve got nine data centers worldwide with new data centers opening up this year in India and Canada. Getting started with a shiny new server takes less than one minute, so you can get up and running in no time. And you can get a $20 credit by using the promo code, CodeNewbie2019. Just go to linode.com/codenewbie for more info. Link is in your show notes.
[00:27:13] And now it’s time for Tales from the Command Line brought to you by Red Hat. So far, we’ve talked about how to build community almost as an art form. We use our gut and our feelings to figure out what’s best for our community, but what if we used data instead?
[00:27:30] DM: Well, I’m Diane Mueller. I work at Red Hat as the Director of Community Development in their Cloud Platform Group.
[00:27:36] SY: Diane shows us what community management looks like as a science. Here we go.
[00:27:44] So you wrote a very fascinating paper called From Art to Science, Evolution of Community Development. So I want to start by asking you when people think about or hear the term community development, what often comes to mind?
[00:27:59] DM: A few years back, there was a great book that was put out by Jono Bacon called The Art of Community Management and it became sort of like the Bible of things. And so a lot of times when people think of community managers, they think of, I always say, geeks with social skills, so people who have some technology background, but they actually get along with lots of other people. They’ve got a good network of people and they have very good social skills. In the past, it tends to be something that a lot of relationship building, sort of like business development, you go out and you network with people and you try and coerce, coax them into contributing to the project you’re working on and understand their needs, and make sure that it gets put in fed into the roadmaps and stuff. But it was a lot of relationship management.
[00:28:49] SY: So you think about community management and development a little bit differently. How do you think about it?
[00:28:54] DM: Well, I think open source has evolved a lot over the 20-30 years that I’ve been working in computers. What we’ve seen now is there’s a lot more corporate corporations and larger organizations involved, a lot of enterprises depend upon it. So there are a lot of people who are paid to work on projects as opposed to academics and individuals. Those kinds of things take a better, more systematic approach in order to manage because there’s no way you can rely on your gut or an art or interpersonal relationships to really know that. That kind of tooling and systematic approach really hasn’t been applied to community management for open source projects at any sort of scale.
[00:29:40] There are tools out there that other people in other parts of organizations get to use and we use to measure things, but there’s also a lot of AI and ML and data analytic tools that can be applied to things like the GitHub logs of who’s contributed to projects and when new projects get built, you can watch them and there are all kinds of log files. There are log files that you can use for the mailing list, how frequently do people come into the mailing list, when does someone new come onto your mailing list? So, you can see where people are going and when people are leaving projects, whereas before, things were like by your gut or instinct to watch that stuff. You can now map out and use really some really wonderful tools to see how all of the projects are interrelated and that’s kind of the aspect that is the only way I, as an individual, have been able to scale to the phenomenal size of the ecosystem that is around the project that I work on OpenShift and Kubernetes. That’s when I talk about try and tease it out to be a science.
[00:31:00] SY: Yeah, and that’s what I want to dig into a bit because I’ve always thought of community development as an art. I’ve always thought of it as something that’s very touchy-feely, that’s kind of run on your instincts, that is very almost like emotionally driven to an extent. What I found so fascinating about this paper is that you have graphs. You have great data visualizations of what community development looks like. What are some of the specific things that you’re measuring?
[00:31:30] DM: So there’s a couple of things that I do that I think are unique to this approach. One is mapping relationships across projects. So probably what you’re referring to are things like what I call the jellyfish diagrams that have a really wonderful visualization of larger data points are the ones who have done lots of contributions and you can see how they’re connected across projects. So someone might be working on OpenShift, which is our distribution of Kubernetes and they might be working on the larger Kubernetes project and then you can kind of see how these projects are interrelated. The first thing that’s really cool about this is that when I, as a community person or doing community development, want to, say, get someone to speak on my podcast about a specific topic, those people who are the larger dots in the visualizations are actually probably the mavens or the thought leaders. They’re doing a lot. They may not necessarily have great speaking skills, but they would be my first point to click into and drill down on to see if I know them already. If I don’t, to introduce myself or to look across the relationship maps to see who I do know who knows them who can introduce me to them. In some ways, it’s business development taken to community development.
[00:33:02] SY: Interesting.
[00:33:03] DM: One of the things that I love about it is it shows me really quickly where newcomers are coming into the community and on which projects they’re interested in.
[00:33:14] SY: Yeah. Tell me more about that. How are these newcomers generally entering a particular ecosystem? What can we do to make them feel welcome and make them into active contributors? Tell me about that.
[00:33:26] DM: So I sort of have a personal philosophy, even though I obviously talk a lot, of giving away the podium. A couple of the things that I try and do is, first, I want to flag those new entrants. I want them to rise up to the top and if they’re with an organization that’s new especially to this ecosystem, you want to make sure you welcome them and reach out to them and create spaces for them to promote whatever it is they’re interested in. So whenever we flag a newcomer, we always ask them to come to one of our community briefings and share what they’re working on and get them to talk about what they’re doing. I have some little tactics that I use to make them feel welcome to start with. It’s really kind of important for lots of reasons, and diversity being a big flag for me is trying to get different voices to give that feedback to the core contributors, the people who are working on the project already so they can hear these new voices. And so that people see themselves in the room. I think that’s a real big aspect.
[00:34:41] SY: Yeah, that’s a big one.
[00:34:45] DM: The visualizations that I have, that I show really don’t show diversity of culture or race or gender or anything else like that yet, but the people that I’m working with, Bitergia, have done some really interesting work to do that. And so that’s one of the things that I’m very interested in, too, is trying to figure out how we make sure everybody gets seen in the room and welcome to the space. That’s really important for me with newcomers.
[00:35:15] SY: What can those of us who are managing communities outside of Kubernetes, outside of OpenShift who are maybe doing it for nonprofits or startups, or big companies, what lessons can we take from the paper that you wrote? What have you learned? What are some things that we can do to make our communities bigger and stronger?
[00:35:35] DM: So the way that I always approach it, especially with new community managers and people who are just trying to grow maybe stagnant communities, is to take a step back and look at what are their sources of information? We do this a lot for other projects and other things we’re working on, but we don’t often do it on ourselves. So looking at the GitHub logs, looking at the mailing lists, looking at who’s come to your events. Who are the thought leaders? To really spend some time first and identify those, the cast of characters, the known ones, you don’t need fancy software to do it. You can do this by looking at your conferences, who’s coming to your meetups, and aggregate them. Put them in a Google spreadsheet, start tracking them and reaching out to them because for most people, they think, “Oh, I don’t have any one contributing to my open source project,” or, “I don’t have enough people,” but when you expand your world view of who is your community, who is in your ecosystem, not just the code contributors, you begin to realize how big the space is already and who you can invite to take that podium, to share their stories and give feedback to the people who are already contributing.
[00:36:53] DM: The very interesting side effect of that, just that, no tooling, just the fact of looking at that and starting to track that in a very systematic way, over time, it grew. The OpenShift community, when I started four years ago doing this kind of approach, we had about 10 external to Red Hat communities that were contributing directly to OpenShift itself. And then when we pivoted and became embedded with the Kubernetes community, over that time period, we have over 70 organizations that have contributed to OKD, which is our open source project, the name of it, and that was all done without coercion or coaxing or anything. That was just by opening up our view of what the community was and then create programs for engagement. By giving away the podium, you’re doing this. You’re also creating content, just podcasts and special interest groups and blog posts and all these people now, and that just starts getting that momentum that builds real engagement for communities.
[00:38:12] (Music) And now back to the interview.
[00:38:17] SY: Okay, so I want to switch gears a bit and talk a little bit more about how you got into code. So when you first, first, first decided or first even heard “Hey, coding might be this thing that I might want to do,” where were you in your life?
[00:38:32] DM: I was doing my undergraduate degree, so I was studying for a business with law degree. I wanted to be an entrepreneur. I always wanted to be an entrepreneur from the age of like 16, 17. It was always what I wanted to do. I wanted the whole cliché thing. I want the freedom. I want to be able to call the shots and I don’t want to be told what to do, the normal stuff that you hear. This is around the time of the social network that came out through that film and basically the culture was the only way for a young person to be an entrepreneur and have any real success was to be in tech. So I thought let me do my own like startup. I thought it’d be easy. I’d find some developers, I’d pay them, and I realized that paying developers is really expensive, especially if you’re a student.
[00:39:50] I can’t be an engineer without one. So I went in and applied for a computer science Master’s. The funny thing is once I got in there, I was like, “This probably actually wasn’t necessary.”
[00:39:59] SY: Really? Interesting.
[00:40:01] MB: Yeah, what they taught me was helpful, but not necessary, if that makes any sense. We’d done a lot of theoretical CS stuff that for what I wanted to be, I wanted to be an entrepreneur and concepts that I was learning, while helpful and while intellectually stimulating, they weren’t what I needed at the time. It was enjoyable. I met a lot of cool people, don’t get me wrong and I can always say, “Listen, I’ve got this qualification,” but it stemmed from my imposter syndrome. It wasn’t necessarily something that I would recommend to people coming up in my position.
[00:40:33] SY: So what were you doing right after your degree?
[00:40:36] MB: I was trying to make another startup work. It was like an e-commerce business. It never went anywhere. I never actually get to go back.
[00:40:42] SY: So you were working for yourself at that point.
[00:40:45] MB: I mean, working for myself is a very fancy way of putting it. I had a retail job. I went back to retail. Yeah, this is like real struggle time. I went back to retail. That business didn’t succeed. That was quite a low point. That’s when I was like, “Okay, let me go and go do my Master’s degree and just hit refresh.
[00:41:01] SY: At that point, when you were doing the retail job and you’re doing your days, weeknights, weekends on the business, and then you decided to go back and get your Master’s, did you feel like the reason why the business didn’t succeed was because you didn’t have your Masters in Computer Science?
[00:41:18] MB: Yeah, I guess so. It wasn’t because I didn’t have a Master’s. It’s just because I wasn’t as good of a coder as I needed to be. I took the Master’s as an intermediate step between… I wanted to go get a job as an engineer essentially so I could learn and work in a startup and learn how it’s meant to be done. So I took the Master’s degree as the intermediate step. I could have skipped the intermediate step and found a startup that was willing to hire someone who is young, hungry, and cheap essentially, but I didn’t. I didn’t apply because I didn’t even think I was worthy of applying. Knowing what I know now, I know that wasn’t true. I could have just built some side projects, pushed off to GitHub, showed that I was learning. I didn’t know what was possible, if that makes any sense, so I thought this is what I have to do and every example that I saw of a tech founder, they seem to either be a dropout, like a Harvard CS dropout or they completed it.
[00:42:04] So I was like, “Well, there might be some magic in that. Let me go do that.” And there wasn’t. Most of the people that were there weren’t great coders. They weren’t great coders. When they left, they wanted to work in finance. They weren’t really interested in entrepreneurship. I was the only one that kind of really wanted to build those kinds of things that maybe had some commercial application or could be really cool and get a whole bunch of users. So I walked away thinking, “Wow! That was really fun, but probably not what I needed necessarily.” I managed to go work in a startup for about a year and a bit, and then after that year, that’s how I did POCIT, which is the whole timeline, essentially. I think I just finally explained it.
[00:42:38] SY: So when you were doing the Master’s program, even though it’s just a year, was there any point where you thought, “Maybe this isn’t actually that useful”?
[00:42:46] MB: I think I was just in some really arcane CS Theory class where we were learning about architecture and hardware, and I was like, “Damn, this is not what I need. I don’t want to be learning this right now.” This is not what is stimulating me at all. Learning for the sake of learning is amazing and maybe if I had done it for an undergraduate, when I didn’t necessarily know what I was after specifically, I would have been more patient to it, but at the time, I was like, “Wow, this isn’t necessarily what I need or even that relevant.” The people that are excelling at this part of the course can’t even program that well, especially once I got into a full-time role as a developer and I realized I never needed any of it. Yeah, and I think people that don’t have this history will think there’s some kind of magical thing that happens when you’re there and it’s like, “No, trust me.” You did a bootcamp, right?
[00:43:32] SY: Yeah.
[00:43:33] MB: Yeah, I think a bootcamp that was for a year would be much better than what I did, if that makes sense. I won’t compare a 12-week bootcamp to a Computer Science degree for one year, but in terms of the way a bootcamp is structured, where it’s just focused on what does the industry need right now. Okay, Ruby on Rails or React. Yeah, it’s very applicable. It’s very just applicable straight away in the field, let’s call it, but yeah.
[00:43:58] SY: Did it cure your imposter syndrome?
[00:44:00] MB: You know I might have cured it myself. It did actually.
[00:44:02] SY: It did? Okay, there you go.
[00:44:02] MB: Maybe that is the one yes, so maybe that was worth the buying price. Once I had the degree from a top institution, not necessarily the Computer Science one, I was like, I can walk with confidence and be like, “Okay, cool. I am capable.”
[00:44:13] SY: So when you graduate and you kind of realized, “I don’t actually need what I learned but I feel good about myself. I got my I got my degree. I got my Master’s. My mom’s really happy. I have my CS degree,” did having that paper, that degree, did it help open up new opportunities for you that you don’t think you would have had without it?
[00:44:38] MB: The job that I got straight after uni, the CEO slipped into my LinkedIn DM, “We’re looking for engineers.” I had to ask him if he looked at my profile and saw the university and say my CS degree and thought, “Let me hire this guy.” Maybe it was a factor. It probably was. In the UK because we have such kind of a class-based society, the fact that I went to an institution that is quite reputable, maybe that does have an impact in terms of some of the doors I can walk through now.
[00:45:04] SY: Well, I’m really glad. Obviously, I’m really glad to hear that you could have done everything that you’ve done even without your CS degree because I don’t have any CS degree so it makes me feel a little bit better, but I know there are tons of people who are asking themselves that same question, “Should I go back to school?” whether it’s undergrad, whether it’s to get an entirely new degree, get a Master’s in computer science. There’s always this question in our community of “Should I do it? Is it worth it?” It sounds like for you maybe it’s a little bit of a mix, but for people listening who are debating that and trying to figure out what’s the best course of action for them, what are some things that they should ask themselves or consider when making that decision?
[00:45:43] MB: So these are things that people did that I didn’t do. When I graduated, I got a lot of LinkedIn DMs from people that were considering doing the course. They were like, “Yo, what’s it saying? Is it any good? Is it worth it?” I gave them my honest and true opinion. Some went and did it. Some didn’t. That’s one thing. If you’ve got a specific thing that you’re eyeing up, message people that did it and say, “Is it worth it? Has it helped you?” That’s one really beautiful hack. And people are really helpful. That’s the thing. We all grew up being told don’t talk to strangers on the Internet. Well, it’s like strangers on the internet can really save your life, so definitely do that. Yeah, definitely do that.
[00:46:18] Anything else? What else would I recommend? Look at the syllabus also. Look at the syllabus on each course. Most universities will show you the syllabus also and just have a look-through. There’s a woman called Jessica Gaddis and she works on Netflix. I interviewed her for peopleofcolorintech.com. She couldn’t afford a bootcamp so what she did is, and I love this, she just looked at the syllabus and she just studied it independently. She looked at the structure of the syllabus and was like, “Okay. So on this day, on this week, they’re doing this then they do that, then they do that. Therefore, I need to study in that logical order. It probably would make sense to do it that way.
[00:46:49] MB: So there are all kinds of workarounds, but number one, look at the syllabus and two, talk to people that have done it before and, yeah, talk to as many people as you can. Going back to my experience, that’s all it was in my experience. I’m not going to give anybody the hard and fast answer and say you should do this. You should do that. Listen to what I’m saying and learn from it, but your thing might be completely different, what you want to do. You might not want to be an entrepreneur. You might want to look at Google or Facebook. So that’s a whole different paradigm. That’s something that I don’t know. I’ve been comfortable with saying, “I don’t know.” Nothing is clear cut or cut and dry. Everything is a trade-off. So speak to as many people as you can, know what you want out of it specifically. Did those people get what they wanted out of it? Are they similar? Did they align? What’s the syllabus saying? What’s the instructor saying? All of that stuff. I hope that was helpful.
[00:47:34] SY: Yeah, that is very helpful. Those are really great things to think about, especially the talking to other people. People are really open to talking to you, whether it’s DMs, emails, even just public tweets. People DM me all the time. I do my best to get back to everyone. I wrote a blog post also. I’ll put a link in the show notes about my own bootcamp experience and what was great, what was not so great, what I learned and ask a lot of questions figure out, does this apply to my situation? Hopefully, that’ll help you make a good decision.
[00:48:03] MB: Yeah, actually, the reaching out to people, just one last point on it. Whatever you do, though, don’t say, “Can you mentor me?” We had a whole episode dedicated to the kind of etiquette of approaching people and you’re probably better off not using the M word because as soon as you hear “Mentor”, you think time-consuming and it’s long, I don’t have time for this. If you’re going to email somebody with the M word, keep it short, keep it concise. Just be like, “Hey, I noticed that you did this.” Whatever your request is, keep it to two or three lines max. Don’t send like a life story. All of us, our life story is really important, but to that person, they have their own things that they’re going through.
[00:48:37] SY: They have their own life story.
[00:48:39] MB: Right, yeah, and if there’s somebody who is where you want to be, they’re obviously somebody who’s doing things so just keep it short and concise.
[00:48:45] SY: Wonderful. When you think about the future of POCIT and where you want to be as an entrepreneur, as a tech person, do you feel like even though that CS degree didn’t really help you maybe in that first year or even right now, do you feel like there’s a point where maybe it’ll be valuable or do you feel like either way, you’d probably end up in the same place?
[00:49:03] MB: I don’t want to get caught in it where I say it had no value, that’s not true whatsoever. It had value. There were definitely things that I learnt and I met great people, and I got a dedicated portion of time to study. I will just say that it was basically over sold as the one panacea to my goals. It wasn’t the one thing. I don’t want to hear come and be like, “Oh, it’s all rubbish.” No, parts of it were great. It just wasn’t what I thought it would be in its totality. Who knows? Maybe one day I might have to pitch to a VC and they might be like, “Oh, my son went to that school as well.” That might happen. You never know. But that’s what I can think of off the top of the head, to be honest.
[00:49:38] SY: No, I love that. I think that’s fair for most programs, whether it’s a bootcamp, an entire degree, even online courses, it’s all about managing those expectations, going in and thinking, “Okay, I’m going to do this one thing and it’s going to solve all my problems. I’m going to know everything,” versus saying, “Okay, it’ll help me in these ways, but maybe not so much in others.” So yeah, I think it’s where that research and looking at the curriculum and asking people, I think that’s where that comes in, knowing what you’ll actually get out of it if you decide to move forward. I’m curious for the people in your class that you said didn’t really know how to code very much, what ended up happening to them?
[00:50:18] MB: I don’t even know. You know what? To be honest, a lot of them went to work in finance.
[00:50:23] SY: As developers?
[00:50:25] MB: I don’t think they went in as developers. I think they went in as people that are technically capable. I don’t know if that’s the terminology, someone who is not in a technical role or they have an understanding of tech basically and I’m sure they’re making oodles and oodles of money. Yeah, shout out to them like that’s amazing. I always say to people even if you learn to code, it doesn’t mean you have to be a coder as well. You can be a product manager. You can be like the people that I graduated with. You can be a growth hacker. There are so many things that you can do. You can be someone who is a marketer but has a technical mindset and can see what APIs to use and kind of [INAUDIBLE 00:51:01] together and then let the engineers handle it. Whatever career you want to go into, it’s not, not going to be helpful if that makes any sense. It’s going to be helpful regardless. Coding is not an end to itself. It’s a means to get somewhere, if that makes any sense.
[00:51:14] SY: Absolutely. I think with this show, we focus almost exclusively on coders and people where their primary job is being technical in some degree, but I completely agree that there’s very far you can go with not that many technical skills. You can learn just a little bit and use that to get a bump in your existing job, a bump in salary, to transition into, as you said, like almost like a tech adjacent type of role. There’s a lot you can do with just a little bit of coding skills, even if you don’t go as far as to become a developer.
[00:51:53] MB: Absolutely. I’ve got a great example actually. I’ve got really close homie of mine and for a little while, I was helping him learn to code just for a little bit. He was interested and he was curious. At the time, he worked in the charity sector and he hated it. So he was like, “I want to work in the for-profit sector. I want to work in sales maybe or something like that.” He ended up getting a job in cyber security and when he did the interview, they had never met a salesperson who had as much understanding of tech as anybody because he was literally just like, “So does your software do stuff with this API? Does it handle NoSQL databases,” which is a form of database that’s not the SQL database. He said their jaws dropped. They said, “We get salespeople in here who are just a bit of talk. They might have sold other products. They don’t anything about tech,” and it’s enabled him to be an amazing salesperson because now he understands the product. He can talk to the architects in the companies that he’s trying to selling to and they can have a conversation. It might be a surface level one, but it’s a conversation. Now he’s making big money.
[00:52:54] SY: That’s awesome, yeah.
[00:52:55] MB: Dinner’s always on him. Whenever I go out with him, I’m like, “Yeah, see, I told you. There we go.”
[00:52:59] SY: Yeah, exactly. It will give you an edge in the job that you may already be applying for. That’s awesome. That’s a great example. So next, let’s move on to some fill in the blanks. Are you ready?
[00:53:08] MB: Yeah, let’s go.
[00:53:09] SY: Number one, worst advice I’ve ever received is?
[00:53:12] MB: This is a different homie who I care for very deeply, but after I graduated at uni, he said, “Go do a Master’s degree,” and I was like, “In what?” “In anything. It doesn’t make a difference.” I was like, “Are you serious?” He was like, “Yeah, trust me. They love Master’s degrees. Employers love Master’s degrees.” I was like, “Are you sure?” He’s like, “Yeah.” I listened to him, but that was the worst piece of advice I ever got because even though I did a Master’s degree later on, there was a logical conclusion for me to do that Master’s degree. I wasn’t looking to go and get a degree in philosophy. No shades to anybody who have a Master’s degree in philosophy, but it’s just like that kind of investment and time with no real end product, I would have really hated it.
[00:53:47] SY: Oh, yeah. Absolutely. Yeah, my mom has said similar things. So she’s like, “Just get a degree. It will be great.” I’m like, “Mmm.”
[00:53:53] MB: That’s the African mum. Yeah.
[00:53:56] SY: She gets a pass on that. Number two, my first coding project was about?
[00:54:03] MB: I can’t remember the first one, but my first memorable one was a website that might still be up. It was called feelingslikedrake.com. This is at a time when there was a lot of memes about how sensitive Drake was. It was kind of politically incorrect. There’s nothing wrong with being sensitive, but at the time, there were a lot of memes saying [INAUDIBLE 00:54:18] Drake. So it would be a simple questionnaire that asked you five questions and then you’ll be graded on a scale from zero to Drake basically. If it was like 75% Drake, you’d get seven Drake heads. You’d see a face.
[00:54:32] SY: That sounds amazing.
[00:54:34] MB: Yeah, it might still be up. I don’t know. Yeah, I don’t want to offend anybody but there’s nothing wrong with being sensitive, but it was a pretty funny thing at the time.
[00:54:39] SY: That’s really funny. That is very funny. I appreciate that.
[00:54:42] MB: Feelingslikedrake.com.
[00:54:43] SY: Feelingslikedrake.com. Awesome. Okay. Number three, one thing I wish I knew when I first started to code is?
[00:54:50] MB: I wish I knew that learning to code is like learning any skill. It’s like learning an instrument. You don’t go to bed a bad programmer or wake up a great programmer. It’s an everyday process that you have to just invest an hour a day, two hours a day, however many hours you can and one day you’ll look back and say, “Look how far I’ve come,” but there isn’t one specific moment where you’re like, “Now I’m amazing.” It’s just like anything. Trust the process. That’s all you got to do. Trust the process. Put the time in. Put your head down. Do the work and anybody really is capable of learning to code at least at a cursory level and even to a greater level.
[00:55:26] SY: Yes. That’s amazing advice. That’s amazing advice. It’s a great thing to keep in mind. There are moments when I code and I’m like, “That was easier than the first time.” That’s really, I think, the closest I’ve come to feeling like, “Oh, I’m amazing.” The closest is “That did not hurt as much,” but you really don’t, you don’t wake up brand new. I think that that reality is maybe a little bit hard to internalize if you feel like you spend so much time feeling stupid or inadequate.
[00:55:59] MB: Yeah, definitely.
[00:55:59] SY: You know? It’s like the removal of pain is the win and that feels like not a win.
[00:56:05] MB: Yeah, it’s very counterintuitive because you will feel really stupid for a long period of time and you’ll be like, “Why doesn’t this work? Why doesn’t this work? Why doesn’t this work?” You literally have to push through. I swear to you, everybody goes through that. The worst meme out there is the idea of the kid that’s been coding since the age of 13. That really did put me off because I was like, “Wow, that’s what you’ve got to beat because that’s what Mark Zuckerberg did,” and at the time, I was 20, maybe one, two, three. I was Asian. I was like, “Yo, I’m done. I don’t have the capabilities to learn it.” So trust the process. You’re not too old and just keep going.
[00:56:38] SY: Love it, love it. Well thank you so much for sharing your journey and how you got into coding and how you got that CS degree and how you’re building POCIT. You want to say goodbye?
[00:56:47] MB: Yeah. Thanks everybody. Yeah, so everybody, check out peopleofcolorintech.com. We’ve got great stories. If you’re looking for work or you [INAUDIBLE 00:56:54] at a tech company, check us out as well and have a listen to the Techish Podcast. It’s with me and Abadesi. She’s amazing. She’s my co-host and we kind of bring fresh new perspective to the tech game.
[00:57:05] SY: Absolutely. And we’ll have all those links in the show notes as well. Thank you so much.
[00:57:09] MB: No worries. Ciao!
[00:57:10] SY: And that’s the end of the episode. Let me know what you think. Tweet me at CodeNewbies or send me an email, email@example.com. For more info on the podcast, check out www.codenewbie.org/podcast and join us for our weekly Twitter chats. We’ve got our Wednesday chats at 9 P.M. Eastern Time and our weekly coding check-in every Sunday at 2 P.M. Eastern Time. Thanks for listening. See you next week.
Thank you to these sponsors for supporting the show!