IRC: archaic tool or hidden treasure?
In this episode, we talk about the history of IRC and the evolution of other community building tools with Sara Chipps, co-founder of Jewelbots and director of public Q&A at Stack Overflow, and Jason C McDonald, CEO and Lead Developer at MousePaw Media.
Jess Lee is co-founder of DEV.
Ben Halpern is co-founder and webmaster of DEV/Forem.
Jason C. McDonald is an author, speaker, and software developer with a passion for communication. He's the author of the popular "Dead Simple Python" article series on DEV, soon to be a book from No Starch Press.
[00:00:01] JL: This season of DevDiscuss is sponsored by Heroku. Heroku is a platform that enables developers to build, run, and operate applications entirely in the cloud. It streamlines development, allowing you to focus on your code, not your infrastructure. Also, you’re not locked into the service. So why not start building your apps today with Heroku?
[00:00:19] BH: Fastly is today’s leading edge cloud platform. It’s way more than a content delivery network. It provides image optimization, cloud security features, and low latency video streaming. Test run the platform for free today.
[00:00:31] JL: Triplebyte is a job search platform that allows you to take a coding quiz for a variety of tracks to identify your strengths, improve your skills, and help you find your dream job. The service is free for engineers and Triplebyte will even cover your flights and hotels for final interviews. So go to triplebyte.com/devdiscuss today.
[00:00:47] BH: Smallstep is an open-source security company offering single sign-on SSH. Want to learn more about zero-trust security and perimeter-less user access? Head over to the Smallstep organization page on DEV to read a series about zero trust SSH access using certificates. Learn more and follow Smallstep at dev dot to slash Smallstep.
[00:01:19] JM: I think it’s just like with languages, nothing really dies. It just becomes less trendy. And I think we make a lot of mistakes as programmers when we look at what’s popular versus what works.
[00:01:42] BH: Welcome to DevDiscuss, the show where we cover the burning topics that impact all our lives as developers. I’m Ben Halpern, co-founder of Dev.
[00:01:49] JL: And I’m Jess Lee, also a co-founder of Dev. Today we’re talking about IRC and other community building tools with Sara Chipps, co-founder of Jewelbots, and Director of Public Q&A at Stack Overflow, and Jason C. McDonald, CEO and Lead Developer at MousePaw Media. Thank you both so much for joining us.
[00:02:06] JM: Yeah. It’s very exciting. Thanks.
[00:02:08] SC: Great to be here.
[00:02:09] JL: So before we dive into IRC and other community building tools, I’d love to learn a bit about both of you. Sara, can you tell us a little bit about your dev background and your role at Stack Overflow?
[00:03:32] BH: And Jason, outside of being a big contributor on dev, tell us about your background as a software developer.
[00:03:39] JM: My story actually goes back to my traumatic brain injury when I was 16. And in the process of relearning pretty much everything, I discovered that my interests had changed and I no longer wanted to go into the medical field. I now had a propensity for math that I didn’t have before. And so I started coding, which is something I had tried when I was younger and had actually hated. Now I found I loved it and I wanted to make educational games because those have been so instrumental, not only in my own education as a kid, but in my recovery from the head injury. I had used a lot of educational games, things like Carmen Sandiego and ClueFinders and Reader Rabbit. These were games that I had grown up with and I used them again to rebuild my skills. And I was distressed to see that very few games existed. And what did exist at the time wasn’t anywhere near the caliber of what The Learning Company and Broderbund had put out in their heyday. So I decided that I wanted to make educational games and I started MousePaw Media out of high school, basically as a personal project, with a fancy name attached to it. And over time, it turned into a full-blown organization where I’ve actually had the privilege of helping train interns in the industry. It’s been a lot of fun helping them learn how to work on a team and build the communication skills they need to thrive in the industry and in the process be building an open source game engine so that anyone can build educational games again and games in general.
[00:05:16] BH: So we are here today to talk about IRC, which is definitely not at its height of popularity, in terms of the percentage of programmers who are on it, programming communities have become ever present, also scattered across various different platforms, social media, Stack Overflow, Dev. But this question kind of gets into the history of programming community, the evolutions and the broader context. So definitely looking forward to talking about IRC and then kind of what’s evolved from there.
[00:05:51] JL: Yeah. So Jason, we invited you to talk on this topic because we heard that you’re a really big into IRC. I’m not sure if everyone who’s listening knows what IRC is. So could you tell us what IRC is and how it came to be?
[00:06:05] JM: Well, IRC stands for Instant Relay Chat. To provide a little context to my own personal history with it is IRC is where I first learned Python. So coming in from just learning Visual Basic .NET from a book and wanting to learn the Python language and I saw on the Python website that said, “Hey, join our IRC channels.” So I figured out how to do it, stumbled in there, and I’ve been hooked ever since. IRC is one of what I consider to be the three pillars of hacker communication, going back quite a long ways. And I say three because all three have some things in common that contributed to their success. You have the ham radio operators from once we get hacker community at all. Modern programming goes back to the radio club at MIT and them getting into using computers to do different whimsical things, and that was the genesis of modern programming. Off of that, you have Usenet, which is a kind of a decentralized bulletin board system, which is another protocol we’ve all forgotten about, and then IRC, which was actually created as kind of a spinoff of bulletin board systems, because someone specifically wanted to replicate the chat feature on some bulletin board software that his little group had been using. And so he wound up building what later became the first IRC server and was later made a protocol. So the reason that these three are so similar is that there’s no one ruling entity. You have something like say Discord or Slack or even something like Dev or you have one organization that controls what goes on in that platform and makes these decisions. And when you have something like IRC, it is a protocol that is baptized in by the same committee that formalized HTTP and HTTPS. It’s just a standardized way of communicating, but anybody can run an IRC server. Anybody can connect to an IRC server. Anybody can build a client to connect to it. The client being like the web browser. As a result, you get all these different servers. They congregate together into networks. So there’s not one single ruling entity. If you don’t like the way one channel or one server or one network runs things, then you can move to a different one or you can make your own. I think this is what’s lent to the perennial use of all three of these things, ham radio, Usenet and IRC because they have this idea that we’re using this shared protocol, but we only discuss how we use it, but what you ultimately do with it is kind of within the purview of the individual.
[00:09:08] BH: What’s it like to use IRC from a user perspective?
[00:09:11] SC: I think the development community gravitated towards IRC because there’s not a lot of bells and whistles. It’s no Slack. It’s not a platform that you’re seeing a lot of diversity in the content. That’s a very sterile environment that is text-based.
[00:09:26] JM: And everyone I’ve talked to who is a recurring IRC user will usually say that some of the deepest or longest lasting online relationships that they have either started or persist over IRC. And I think it’s because of this whole idea of just keeping all of this noise and all of this extra stuff that we get on the other platforms out of the way. You’re just communicating with plain text. I think it lends itself to a certain degree of initial anonymity. It’s just a nickname on a server where you’re typing text into a room and you can be anything you want to be. But because there’s that level of safety, then people can gradually get to know each other over time and feel safe and giving that relational trust bit by bit until they actually feel like they know the person. And some of my closest friends in real life I actually met over IRC. I think that’s exactly it. The simplicity of the platform lends itself to being able to interact in a much more organic way.
[00:10:31] SC: I think what you said was really interesting with providing safety. I think that in my experience, it’s created safety in some ways. But like many things online, whenever there’s anonymity, it’s an unsafe environment for other things. My personal IRC experience in the developer community wasn’t super positive. I found that jumping in with a female presenting name led to some very awkward conversations often and had the best luck when I made sure to do something gender neutral. So I think that there are parts of that that are really true and there are parts of it that allow for a great congregation and discussion, but there are also parts that lend to less friendly situations.
[00:11:22] JM: Definitely. Anonymity and mob mentality can certainly be an issue there. But part of that too is a matter of, again, it’s a decentralized platform. Your mileage may vary. It really depends on what channel you jump into, what network you’re on because there’s no one ruling entity setting the rules. It’s going to vary from one place to the next. And you can get really lucky and wind up in a room like Python on the Freenode IRC channel where you’re going to have some very high quality interactions or you can wind up in one of these rooms that shall remain unnamed where it is the exact opposite and it’s just a septic dump of the worst of human behavior. The best rooms I am in are rooms that are not advertised. They’re almost like these speakeasies where you only know about them because you’re a friend of someone who knows you going way back. Once you’re in there, it’s only about a dozen people, but there are a dozen people that you can trust. So there’s a layer of discovery that only takes place with time.
[00:12:27] JL: Just to speak to your experience, Sara, like presenting more gender neutral, I think that that like goes beyond just IRC and it really just speaks to how the developer community has evolved throughout the years and like us recognizing that it’s been very male dominated. So it might be easier for other people to find the spaces and feel welcomed and it’s just, I think, inherently more difficult for women.
[00:12:57] SC: That makes sense. I think the one thing that has been built into newer platforms, it’s not something that was really thought about when it came to IRC is when it comes to a lot of social media, there’s like a reporting structure, like a blocking structure of reporting, as well as a lot of things are linked to people’s identities, which makes it a little easier to know where the animosity is coming from or at least there’s a clear escalation path. So I think that’s one thing that we’ve definitely built into newer platforms and it’s definitely made it a little easier, but definitely I think remains a problem.
[00:13:37] JM: That escalation path can be present on IRC as well. But it really, again, depends on the channel on the network because there are some where there is none. Like you said, Sara, there’s no escalation path and your only recourse is to leave. And then there’s other places where you can contact an operator and say, “Hey, I’m feeling harassed,” and they can deal with it. I think if that is a concern, it’s also helpful to stick to the networks, like Freenode that have registration because nick registration does remove some of that anonymity. You associate your nickname with your email address and with a password and no one else can use that nickname on that platform and that provides operators with a way of dealing with recurring problems from individuals. It also makes it a lot easier for you to use the forward slash ignore to block people because then you can block on the nickname. And it doesn’t matter what IP they come in over. The very fact they’re using that nickname drops them into your end.
[00:14:53] JL: Over nine million apps have been created and ran on Heroku’s cloud service. It scales and grows with you from free apps to enterprise apps, supporting things at enterprise scale. It also manages over two million data stores and makes over 175 add-on services available. Not only that. It allows you to use the most popular open source languages to build web apps. And while you’re checking out their services, make sure to check out their podcast, Code[ish], which explores code, technologies, tools, tips, and the life of the developer. Find it at heroku.com/podcast.
[00:15:26] BH: Empower your developers, connect with your customers, and grow your business with Fastly. We use Fastly over here at Dev and have been super happy with the service. It’s the most performant and reliable edge cloud platform. Fastly CDN moves content, data, and applications closer to your users at the edge of the network to help your websites and apps perform faster, safer, and at a global scale. Test run your platform for free today.
[00:15:51] BH: I think it’s safe to say that IRC, it’s a protocol, but there’s a lot of culture attached to it and there’s a lot of history and it’s kind of impossible for IRC to entirely break out of the notion that it did not traditionally solve for some of these use cases inherently. There’s a lot of toxicity on IRC, but I think you can say the same thing about the other two technologies, Jason, you mentioned as sort of the building blocks of the internet. Most of these tended to value openness over personal security, at least in terms of harassment, abuse, and things like that. And that’s probably the most important paradigm that people are trying to kind of solve for in the “modern internet” to varying degrees of success where IRC was sort of just part of an internet that didn’t care about some of these things as much, at least originally.
[00:16:57] JM: And interestingly, this very topic has been a historic one in IRC because it was the foundation of what is referred to as “The Great Split”. So The Great Split was when IRC net broke off of DALnet, which were two different networks. And this was originating because IRC net wanted to put into place some regulations on what an operator could do to cut down on abuses of power and DALnet didn’t want this. So they wound up splitting off into two different networks over this and over some other debates, some of which were technical, which again, really does come down to that whole topic of decentralization. I think the IRC protocol was never intended to solve these problems any more than the HTTP protocol was. Ultimately the solution to these problems is always going to be people. The same could be said of HTTP, which is just as much of a protocol as IRC. We have all these websites, but how each individual website and each community on that website is run comes down to the people that are in it. So is there a lot more hostility on IRC? Ironically, yes and no, because it really does come down to the community, just like, “Is there more or less hostility on HTTP?” No, it depends on the website. Dev is a lot friendlier, a lot safer than Reddit. I think anybody can agree that’s probably the case. But before dev was a thing, the safest community I knew of was the Python room on IRC only because it came down to how they were running it. The protocol doesn’t answer any of these issues of how do we deal with these problems. That’s only handled by individuals deciding, “No, we’re not going to accept this sort of behavior and we’re going to take the appropriate actions against it.” So I think that’s an important factor.
[00:18:57] JL: I’m glad that you described Dev as one of the safer communities. Thank you. We try really hard to create a community that is welcoming, and we’re able to accomplish that through taking our code of conduct very seriously. And Sara, you mentioned how there are other platforms forms now that have ways to escalate bad actors, being on Q&A at Stack Overflow. I’m sure you’ve thought a lot about code of conducts and just how in like community building and how people communicate. So do you want to speak to that a bit?
[00:19:31] SC: Between Stack Overflow and the open source communities I’ve been involved with and things like Dev and conferences, I think that over the past, like, oh, man, how long has it been? Maybe eight years. The code of conduct, the concept, it’s been a real evolution because when they were first introduced, the general reaction was there’s a lot of anger. It was like, “Why do I need to say ‘I’m not going to be a jerk. I’m not going to be a jerk. You need to trust me”? And there was a lot of positivity too. There’s a lot of people that were like, “This is great. I’m so excited that we’re committing publicly to this stuff.” But the one thing we all missed in the beginning was an escalation path. So it’s one thing to say, “Hey, everyone, we’re going to be kind and these are the rules we’re going to abide by.” But in the beginning, no one really thought about, “Well, what do we do if someone’s not kind?” So that’s been the second iteration I’ve watched over the past few years is both primary and secondary escalation paths for a code of conduct violations. And I think we’ll continue to see those things evolve, but I definitely have seen over time a gradual positive change to the extent where now I remember thinking of open source as a place that was terrifying. Now all the work I do in open source, it’s amazing and I have great conversations and could get great feedback, and it’s been really awesome. So I imagine that may have also happened in the IRC community, I haven’t been in the past few years. I’d be interested to find out.
[00:21:09] JM: It definitely has. I think the Python Foundation was kind of towards the front line of that because they have the PSF Code of Conduct back when I started. Longer than that, and I know that they have done what they could to create a clear escalation path in their community. And that has done a lot. Ubuntu is a similar situation. It’s another room I’m frequently in, and definitely issues of harassment are taken very seriously, Freenode especially. Some of the more egregious trolls on that platform who just enjoy tormenting the living daylights out of each other can be K-lined. And K-lining is where your critical login information is put on a kill list where you cannot connect to the entire network anymore. You’re actually blockaded from the entire network, either temporarily or permanently, depending on the violation. I have definitely seen that being taken more seriously and the tone of some rooms that historically maybe weren’t even all that friendly, like the Linux room on Freenode has improved with time because there are those escalation pathways and there are the higher expectations to behavior, whether codified in a code of conduct or just the social contract that’s even starting to spill over on Twitter where you flame someone for being a gender or race or whatever that you don’t like will, at this point on Twitter, not really end well for you.
[00:22:49] BH: Sara, being in the developer community for about 20 years and not feeling especially welcome on IRC, what were your outlets? Were there any channels you ever found that were particularly welcoming?
[00:23:02] SC: I really love the in-person community that I found. It’s funny because I’d had that experience on IRC. So I was going to an in-person event and waiting for someone to throw batteries or something. I didn’t know what to expect I was like, “Oh, these people are now here at this imprisonment. It’s going to be terrifying.” And everyone there was so warm and welcoming and kind. I felt great about asking questions or answering questions. And I get to talk to people about my favorite things, which like at the time, my girlfriends, none of them were coders. My guy friends, none of them were coders. So like I had no one to talk about coding with really and it was a very solitary experience. And then when I found that in-person community was amazing because I could talk for hours about the things that I love the most. So that was when I found community.
[00:23:54] BH: Jess, what was your experience in your first year or so hanging around software, getting into it? Because you’re the newest developer in the room.
[00:24:05] JL: I did not have the best experience, just like on the internet as a newer developer and also as a woman. I think that that in itself is like why Dev exists is that we were like trying to build an inclusive place where people felt welcome where they could ask the questions and didn’t feel like they needed to anonymize themselves because I’ve had to do that on some platforms. But it sounds like IRC seems to be moving in the right direction. I’m amazed by how much information you have to share about it, Jason, and one of the questions I had for you today was whether or not IRC is kind of an archaic tool because like I’ve never joined one, I’ve never even like seen where I could join one and it’s largely invisible to me. And Sara, it sounds like you haven’t been on one for a few years now, too. So I’m just curious, like what you all think the future of IRC is?
[00:24:58] JM: I don’t think that we’re in any danger of IRC going away because IRC’s primary strength was that most of the people who were there regularly are the people who put the effort into being there. Before the internet, before the worldwide web is this big thing and we were still on smaller networks run primarily by the universities who had access to use net bulletin board systems and IRC was considerably more limited. And as the internet gained this ubiquitously adoption, more and more people came on. The dawn of the generically available internet is forever immortalized in history as the Eternal September. In September on Usenet, all the people who were new to campus, getting on for the first time, didn’t know any of the netiquette would be on for the first time and generally stumbling around and you’d have to guide them and explain, “Here’s how things work around here.” But once the worldwide web became a thing, then you had to do that with everybody. You had to onboard everybody every day constantly. So it felt almost like too many of the alumni of Usenet and IRC almost like something a bit lost that that quality of interaction went down. And I think with IRC sliding more into the obscurity, that’s actually more of a benefit than I think sometimes we even realize because it means that aside from the obvious trolls, the chances of having a good quality interaction are higher because there are people who are on there or the people who take it seriously.
[00:26:36] JL: It’s clear that IRC played a big role in community building. We’ve mentioned that it’s evolved. So what are other ways the developer community is coming together? What are some of the available tools right now?
[00:26:51] SC: It’s happening everywhere. It’s happening on Dev. It’s happening on Stack Overflow. It’s happening on GitHub. There are so many different platforms that people are coming together on. Yeah, I think it’s been really fascinating to watch all the different evolutions of communication and what the dev world takes. I was just looking at Cloud Foundry’s page of their projects. And underneath each project, you’ll see about 10 icons, anywhere from 4 to 10 icons of the different places that you can find them online. So it’s really interesting.
[00:27:22] JM: As interesting as that is, I think there’s one major downside and that is it becomes very difficult to participate in all these communities, because I think I speak for most developers when I say I get overwhelmed seeing 14 different notification icons in my notification area. I’m on all these different platforms. There was an XKCD comic a while back showed a guy floating out in space and said everyone’s merged with the singularity, except that one guy who insists on joining via his IRC client. And the guy says, “Hey, I just have it configured the way I like.” I think one of the strengths of IRC is the fact it is one place, one thing, one tool. And it can be linked to everything else. It is so easy to spin up an IRC bot and to make that bot work on literally any other communication platform. There are many rooms today that have a bot that’s relaying messages between that room and their Gitter and their Discord. I think I’ve seen a four-way relay before because IRC provides this common place where everything can just sit in one client that you can figure to do what you need and you don’t have to have all of these notifications demanding your attention. You don’t have to manage 30 different accounts. You have one place where you can work from and it gets out of the way when you want it to be out of the way. And I think that’s one of the things we’ve lost with all of these services is it’s just too much noises, overstimulation.
[00:28:56] BH: Stack Overflow and IRC both seem like technology’s… very different. Stack Overflow is very centralized and IRC is very decentralized, but they both seem like technologies, which appeal to power users a lot. And within such a centralized and important online destination, Sara, how do you speak to power users and balance that against new users or casual users?
[00:29:22] SC: Something that’s really helpful is finding shared goals between those two groups. I think it’s important to find a shared language and address both folks at the same time. Often people ask, “Why not start a new Stack Overflow, but only for the new people who are in it experienced?” Whenever someone says that to me, I always kind of make a joke in my head about Stack Overflow for dummies. It’s like we put the new people in the corner until they can figure it out and then they can hang with us. I don’t think that’s an inclusive environment. I don’t think that’s a place that people like being a part of because every new user is a potential power user, right? Every member of our audience is a potential curator at one point. So looking towards language that incorporates needs that bridges both groups I think is helpful. I think that all of our users want the best content. All of our users want right answers. So focusing on the things the two groups have in common, I think, we found that to be really beneficial.
[00:30:28] BH: Sara, if you could bring into existence the perfect online community, what would it look like based on your lived experience?
[00:30:38] SC: What a good question. I don’t know, but you know what? I really hope that Tracy Chou is doing it. So Tracy Chou has been working on a startup for a little while now. I think one thing we’ve observed, and if I could say, is that what we’ve learned in the past 20 years, anything I’ve learned in the past 20 years is you build products for people like you. So when you have a group of people that are all very similar to each other and they build products, they build products that work for people like them and don’t work for others. We’ve seen a lot of cases of that, whether it’s harassment on Twitter or Facebook or just think about 4chan and the nightmare that was or is. All those things were designed and built by people that looked alike and came from similar backgrounds. So to kind of comment to your question, I don’t think I alone could come up with the ideal environment. I think getting together that diverse group of folks, I’m really hoping will have a difference. So Tracy’s building a project called Block Party app and my fingers are crossed.
[00:32:05] JL: Join over 200,000 top engineers who have used Triplebyte to find their dream job. Triplebyte shows your potential based on proven technical skills by having you take a coding quiz from a variety of tracks and helping you identify high growth opportunities and getting your foot in the door with their recommendation. It’s also free for engineers, since companies pay Triplebyte to make their hiring process more efficient. Go to triplebyte.com/devdiscuss to sign up today.
[00:32:30] BH: Another message from our friends at Smallstep. They’ve published a series called: “If you’re not using SSH certificates you’re doing SSH wrong” on their DEV organization page. It’s a great overview of zero trust SSH user access and includes a number of links and examples to get started right away. Head over to dev dot to slash Smallstep to follow their posts and to learn more.
[00:33:01] JL: Now we’re moving into a segment where we look at responses that you, the audience, have given us in relation to a question we asked in relation to this episode’s topic.
[00:33:10] BH: The thing we asked this week was share your experiences in IRC and other communication tools as a developer.
[00:33:17] JL: So Vincent wrote in, “Y’all ever remember or ever heard of Winamp way, way, way back in the day? Yeah. They hosted some IRC channels for various aspects of things they worked on. As a teen in the late ’90s and early 2000s, their devs taught me C++ absolutely for free with no expectation of contributions back through their IRC channels. There are so many tools nowadays, though, about development and communication that is honestly overwhelming and sometimes hard to jump into new things. Back then, things were significantly simpler because we didn’t have the resources to build these massive web communities.” The comment goes on a little bit longer, but I just want to note that Jason, it sounds like a pretty similar experience that you had. Vincent is saying that some people in IRC taught them C++ and I think that was similar to your Python experience.
[00:34:04] JM: That was almost all my Python experience. The book I’m writing right now, Dead Simple Python, which is also an article series on Dev, that all came out of the conversations I had on IRC. And the interesting thing about asking an IRC versus, hopefully I don’t step on any toes here, Sara, versus asking on Stack Overflow is that on IRC, the instant communication results in a lot of discussion and debate about, “Is this the right way? Is this technically accurate? Is it awful little bit?” And the expectations are slightly different in terms of at least in the Python realm, in terms of technical accuracy. And so you wind up learning a lot from just the conversation surrounding, you know, you ask Question X and then someone gives you an answer and then 40 other people just weigh in in this free form conversation that then crops up around it and you wind up learning so much more than just this one thing you asked about. You learn all of these related topics, which is an incredible way to pick up a language.
[00:35:14] JL: Ben, do you want to read Jonas?
[00:35:16] BH: “When I learned to code, I never communicated with other devs apart from a friend a few times. I recently started using Twitter as a way to hopefully find some devs to talk to. I found Google to be a good enough source of information if I needed. I think Dev.to is my first dev community.”
[00:35:32] JL: Well, this sounds like very similar to Sara’s experience. Like you said, you were pretty isolated during the first few years of your career and that like in-person meetings was really where you were able to connect with people. This person is saying using Google to get the information they need. I’m curious how you were getting the information that you needed back then.
[00:35:53] SC: Books and people that I worked with and sometimes blog posts. Like after a little while, you would go online and find a blog post, and that was really great. I always joke around that before Stack Overflow, like finding an answer to a coding question was a lot like finding a recipe where like right now like Google a recipe for apple pie and then you have to read someone’s life story until you like find out that their grandmother’s little apples and their grandmother was from a town named after an apple and what color apples they were and then you get to find your recipe and then you read to see if this is the recipe you want. That’s kind of what it was like back then. You had to read this whole blog post, and sometimes it was a solution, but sometimes it wasn’t and you kept going.
[00:36:33] JL: You can’t imagine a world without Stack Overflow.
[00:36:35] BH: Yeah. And when Jonas says, “I found Google to be a good enough source of information,” they’re probably talking about Stack Overflow and a few other sites that come up a lot.
[00:36:43] JL: Yeah.
[00:36:44] JM: The only danger to that is, again, like I was mentioning earlier, having an actual person to talk to is so important because there’s so much misinformation that’s just printed on online in various places, even by well-meaning individuals. It’s not necessarily even wrong in its original context, but in your context, it can be completely off base or it can be outdated, any number of things. So that relationship is so important because it’s how we ensure that we’re not just getting some answer. We’re getting the right answer. We’re getting the answer that’s the most suitable for our situation and what’s further that we’re being challenged to understand why are we asking this question in the first place. What are we really getting at? And you really have to look for that community. It’s not going to come to you. You have to go out and find it wherever it’s going to be. Sara found an in-person, group. I found IRC. Many people have found Dev, but you have to go out and look for that community that can help support you in that. I actually think that that’s something that Stack Overflow has been working on is surfacing the right answer. Whenever I search for a question on Stack Overflow, I always look for the answer with the checkmark. Sara, I’m wondering how that checkmark appears next to a question or an answer.
[00:38:00] SC: Yeah. So when you ask a question, if one of the answers is the correct answer, you can use that green check bar for indicating that. So the next person that Googles it and finds your question knows which one to follow.
[00:38:15] JM: Which of course then relates to the running dev meme about copying and pasting from Stack Overflow. The tricky part is not finding the answer to the question. The tricky part is actually understanding what the question is. It’s not hard to get to 42, but it’s figuring out what the question that goes with it is, is a lot harder because that person may have a slightly different idea in mind. When I first was in Python, it would sometimes drive me crazy that if I would ask a question, “How do I do X?” The first question I would get in response is, “Why do you want to do X?” And it’s not that they were trying to pick on me or make me feel inferior, but they wanted to challenge my assumptions about why I needed to go that particular route. And oftentimes I’ve found that I was actually going the wrong way all together. And the answer by itself would not have actually solved my problem. It would have led to more problems because while 42 was the answer, I had completely missed the question.
[00:39:11] JL: So K wrote in, “IRC, those were the days. I was on euIRC and Animexx from 2001 to 2005 and I found many friends there. I wrote my first software with mIRC-Script. Almost all of my code was just copy and pasted from somewhere. I wrote some card games and a web crawler that got the newest anime news and spammed them into a channel. I really don’t know how I managed to write all that copied code without even understanding it loops or arrays, let alone functions, but it worked. I think I might’ve been 16 years old at the time. Well, my first job was as a PHP dev in 2006. So way after my IRC time has already ended.” So it’s funny that we’re talking about the copy and pasting thing and how you have to like dynamically actually understand how it applies to what you’re doing. K seemed to have managed to make that work with their copy pasted code. But it also sounds like IRC is in the past for them.
[00:40:10] JM: I think, again, it’s because people make the assumption that, “Well, no one is on IRC anymore. Everyone’s on Slack or Discord or whatever.” And actually, I find it interesting because there is a very, very active PHP room. I guess it’s not surprising when PHP developers are considered to be a species of Mesozoic era dinosaur anyway that they’re all going to congregate on a platform that’s considered antiquated. But there’s a very active PHP community. So I feel like it only has to be in the past if you let it be. I mean, shoot, there are still people using forums, not for-M.
[00:40:48] JL: Forum with a U.
[00:40:50] JM: Yeah, the F-O-R-U-M. People are still using those surprisingly enough. There’s still some active forums out there. Communities are going to crop up on whatever tools are handy and whatever tools people like. And I think it’s just like with languages, nothing really dies. It just becomes less trendy. And I think we make a lot of mistakes as programmers when we look at what’s popular versus what works.
[00:41:14] BH: Yeah. And Slack sort of represents a real shame in a lot of ways in its approach, not really building on old ideas, but sort of starting from scratch in a lot of ways that don’t bring a lot of good old ideas with it. A piece of software that’s highly commercialized relatively expensive for everything you’re getting and maybe it has a lot of bells and whistles that IRC traditionally didn’t provide. But in a perfect universe, it probably is built on IRC instead of just replacing it for a lot of people.
[00:41:44] JL: Anything that either of you want to leave the audience off with?
[00:41:49] JM: The only thing I would say is try out IRC, try out these different communities. But ultimately, what you should be doing is looking to get outside of your echo chamber. Whatever community you’re in, if you are not continuously challenged by what you’re seeing in that community, you’re in the wrong community. So get outside of the echo chamber of your own worldview and challenge yourself. And I think IRC does provide a good opportunity for that.
[00:42:23] JL: All right. Thank you both so much for being here and sharing everything that you know about IRC and the community tools for developers.
[00:42:31] BH: Yeah. Thanks a lot, you two.
[00:42:32] SC: Yeah. Great. Thanks for having us.
[00:42:33] JM: Thank you so much.
[00:42:43] JL: I want to thank everyone who sent in responses. For all of you listening, please be on the lookout for our next question. We’d especially love it if you would dial into our Google Voice. The number is +1 (929) 500-1513 or you can email us a voice memo so we can hear your responses in your own beautiful voices. This show is produced and mixed by Levi Sharpe. Editorial oversight by Peter Frank and Saron Yitbarek. Our theme song is by Slow Biz. If you have any questions or comments, please email [email protected] and make sure to join our DevDiscuss Twitter chats on Tuesdays at 9:00 PM Eastern, or if you want to start your own discussion, write a post on Dev using the #discuss. Please rate and subscribe to this show on Apple Podcasts.