Getting Started With Code Live-Streaming - With Suz Hinton
Suz Hinton talks about how she became a successful live-coding streamer.
Suz started streaming because she wanted to show pepole that hardware coding is just like regular everyday coding, it's just for smaller, dumber computers. It's been two and a half years since she started streaming and her reasons have changed since then. Suz has a community of fourteen-thousand that gathers around her stream now. Despite her now much busier schedule these days this community motivates her to keep coming back and getting open source work done.
Suz talks about how you need to be doing it for the right reasons if you want to actually stick with it. Don't expect to make a salary off of your live-coding stream. Make sure that you go into it with a sustainable schedule for you, don't try to push it only to burn out after a month or two. Don't invest a ton of money up front either, it's okay to just have a headset and a webcam for your first streams while you are testing the waters.
Most of the people who watch you are interested in what you are doing and want you to succeed. The people who'd tell you how much you suck aren't going to spend the time to watch your live stream. We tend to be our own biggest critics, don't let the fear of criticism keep you from streaming!
Kent C. Dodds: Hey everyone, welcome to Chats With Kent and Suz. I am here with Suz Hinton, and she is just an extraordinary individual and live streamer on Twitch, she's been doing this for a longtime. So we're going to be talking a little bit about live streaming on Twitch and just about anything else. So Suz, could you give us a quick introduction to yourself and just the things that you think are important and what is exciting to you?
Suz Hinton: So my name's Suz Hinton, as you said I have been a developer for around 14 years professionally now. And around three years ago I started thinking that I should share my process and share the kind of stuff that I work on in my own personal time, which tends to be a lot of opensource. And so that's how I started doing live streaming. And so I don't just code professionally, I do actually code as a hobby as well, and I tend to code mostly IOT or hardware robotics stuff in my spare time. And people find that really interesting.
Suz Hinton: I always think it's way more interesting than any of my day jobs. You know, most people want to talk about work, but I usually want to talk about what I do with code for fun.
Kent C. Dodds: That's interesting. Have you ever considered that maybe this is getting a little ahead of us, but that just made me wonder if you've ever considered making the side stuff your day job? Like is there any opportunity for that, or is that interesting to you at all?
Suz Hinton: Yeah that is really interesting because my latest position, I started working at Microsoft just over two years ago now. And they were particularly interested in the things that I was doing in my personal time, which was hardware and IOT. So I now actually work at Microsoft as an Azure Cloud advocate, and I focus mostly on IOT services that we offer within Azure.
Kent C. Dodds: Very cool, that's kind of the dream there is to get paid for the thing that you enjoy most. So cool, that's awesome. Let's talk a little bit about the stream. I'm curious why it was that you really got into streaming, because we can code on our own. And for lots of people I think the thought of even one person, let alone hundreds of people watching them code is a little nerve wracking. So what was it that got you interested in live streaming?
Suz Hinton: That's always a good question, and I think this sometimes there's a bit of a mistake where people assume that I was one of the first people to actually start live coding at all. And that's actually not true, so I wanted to take this moment to say that. I was actually inspired by a few people that did live coding before me. And this Handmade Hero, who is a developer who is creating a game from scratch and they basically live stream their progress every single day, which is amazing.
Suz Hinton: And there's also a gaming studio called Vlambeer, and they make cool games like Nuclear Throne, Ridiculous Fishing, and as part of their Nuclear Throne development, if you sponsor their game or download the early beta of the game off Steam, you could actually get access to a private live feed and watch them actually coding more features on the game, which I thought was really cool.
Suz Hinton: And then the third person who I was actually who sort of was the straw to the camel for me, you know that cherry on top that got me started which was Nolan Lawson. Where he basically just live streamed to YouTube one day and said, I'm going to work on opensource for three hours. And because I maintain a lot of different repositories and libraries I want you to be a fly on the wall. And so he said that to his Twitter community and I was absolutely fascinated, especially with his stream because I maintain opensource too, but my stuff tends to be not as heavy traffic when it comes to issues and utilization of my code.
Suz Hinton: So I thought it was fascinating to just see how a fellow opensource author works within their context. And so after that I asked him if people would think that hardware live coding would be interesting, and Nolan was like, yes you should absolutely do that. And so that's why I started doing it, but I wanted to just show people that hardware coding is really just regular coding but for smaller dumber computers, that's sort of the simplistic way that I describe it.
Suz Hinton: Where maybe you're using a lower level language, so that tends to scare people. But at the end of the day you're just facing different challenges, but it's still regular programming when it comes down to it.
Kent C. Dodds: I'm glad that you mentioned some of the people who inspired you, that's always good to show gratitude to those people. And I feel like we all stand on shoulders of giants. But you've done some things with your live stream that I think are really cool and like to get into a little bit. But before we get too far into that, I just wanted to try and understand your goals for the live streams. So you mentioned that you want to make the live stream show people that hardware programming isn't some magical thing, but it's actually just a different type of programming.
Kent C. Dodds: Is there anything else that you're really hoping to get out of the live stream for yourself or for the people who are watching?
Suz Hinton: Yeah, there's a lot of different reasons, and I think that that's important because I don't think I would've been able to stream for ... I mean it's been more than 2.5 years now on a very consistent basis. I think that initial reason, you know sort of obviously fell away after about six different streams. You're like, well I showed people, okay. But what made me keep going was that this community started gathering around this stream. And you know it took a long time to build that community, it took a long time, for example, to get to the first 1,000 followers.
Suz Hinton: But as those people came in I found that they were incredibly motivating for me to get opensource work done. And when I switched careers, when I switched from front end development which I'd been doing for like more than a decade, over to dev relations, my schedule changed very dramatically. And if I'm traveling a lot more and sort of having to basically work out of hotel rooms and things like that, it's harder for me to keep up with my opensource.
Suz Hinton: And so having this lovely community that looks forward to joining you every stream means that I'm motivated to actually get work done. Especially when it's more difficult for me to actually work on that stuff. And so I find that it's a really great motivator to get work done. And then on top of that the community is just so nice that I'm very excited to see them now. And I consider that they're not just there to see me, they're actually there to all talk to each other. And I think that that's really awesome as well.
Suz Hinton: And so it's been valuable beyond just that initial helping people. But those people actually do help me too.
Kent C. Dodds: That's very cool. And so I have done a bit of live streaming myself, and I always found that I was able to get so much more done when I was live streaming because I'm not tempted to jump over to Twitter or whatever. So that resonates with me a lot. And that's cool that you've been able to build ... I just was on your Twitch channel, it looked like you had 12,000 followers on Twitch. And that's just incredible that you have been able to build such a good following there. And that they're really friendly and you have moderators and all of that to help you foster a positive and uplifting community.
Kent C. Dodds: So I can see why'd you be excited to interact with them some more. Cool, so let's talk a little bit about what ... Yeah, how you make this happen. So you have a blog post and I'll make sure that this is in the show notes on Medium, my Twitch live stream coding setup. And it is very detailed. So anybody who wants to really get into this will have a very nice resource thanks to you.
Kent C. Dodds: But I was watching your most recent stream and I noticed a few things that I wanted to ask you about specifically. So the first one, and as a live streamer myself there are some things that I've been thinking, oh maybe I should try and get into doing that kind of thing. So specifically, how do you find the music that you play in the background?
Suz Hinton: So the music that I play in the background doesn't tend to be your typical gaming live stream where it's like very heavy fast-paced electronica. It's just not really the vibe, right? Like people come to my stream with a cup of tea, not like a Jager shot I guess. It's sort of the vibe that I'm going for, and it is a Sunday morning, right? So I stream like at least in my timezone it's 9 am. So it's not really party pumping, it's broad daylight, and I'm sort of choking down my first coffee. So I try and find just a nice ambient calm music.
Suz Hinton: And so a lot of the services that tie-in and integrate with live streaming really easily tend to be more on the other genre of music I was talking about with the heavy hitting electronica. And so I basically went on both free music archive, which is a great site. And I also went on band camp. And I think sound cloud as well is another source for me. And I just find music, like I pay for some of it, and some of it I don't pay for. I just find music that is creative commons licensed. I do actually have a chat bot who is able to attribute where the music is actually come from and things like that. And that's what I use to play it.
Suz Hinton: And it's all saved onto my hard drive, and I really just use iTunes. And so just before I start my stream I start playing that special Twitch playlist that I've put together in iTunes and then everybody can actually hear that coming out through the actual stream itself.
Kent C. Dodds: Right. And I saw on your post it looks like you're using loop back to do that, is that how that works?
Suz Hinton: Yeah, that's right. So loop back takes the music from iTunes and routes it to a virtual device so that I can control the volume of the music a little easier than having to use the volume dial I guess on iTunes. And it also separates it from any other sounds that I want to be a bit louder than the music, given that the music has to be a lot quieter in the background.
Kent C. Dodds: Right, yeah. Makes a lot of sense. Cool, I was just curious about that because anytime that I've tried to do music, like it always ends up being YouTube or somebody will say, oh hey we have to monetize your video now because you're using royalty music and so thanks for sharing that.
Kent C. Dodds: Cool. What do you think, let's be a little bit more meta here, what do you think is the ... If somebody came to you and said, hey I've been thinking about live streaming. How would you convince them that it's a good idea and encourage them to do it to ... Because lots of people probably would be a little intimidated by the idea. So why is it a good idea to live stream? Or what benefits can live streaming provide? And how would you encourage somebody to get over their fears of getting into it?
Suz Hinton: Yeah that's a really great question. A lot of the time I do actually ask people ... Hang on, you know what, I'm really afraid that my emails are actually coming out through a different audio source. I don't know if you can hear that coming in through the mic.
Kent C. Dodds: I can hear them coming through.
Suz Hinton: Okay, good. Well I just quit Outlook just in case, just so that you don't hear it, and then I'll start the answer again. Sorry about that.
Kent C. Dodds: Yeah, sure thing.
Suz Hinton: That's actually a really good question because usually the first thing I lead with is, why do you actually want to stream? Because there are some wrong reasons why you would want to stream, and that's usually what I cover first. And so if someone says to me, well I want to be able to quit my job and do full-time streaming and make a salary off that. And there's just no way, especially in the niche of life coding streams that that's going to happen, right? And so that person's going to be super excited and then they're going to burnout very quickly.
Suz Hinton: And so usually I try and make sure that it's not something that could end up unsustainable for them. And then from there we can work on setting some goals at the beginning so that they ease into it. And so if they do want to get started and they're worried about things like, what if I make lots of mistakes? Or what if I get trolled? I usually just tell them, just stream up to five times if you need to. Completely secretly, do not tell anyone. Don't put a lot of tags or descriptions on your stream so that it's not as discoverable on the platform that you're streaming on and things like that.
Suz Hinton: And just get a feel for how it actually feels. And don't buy too much expensive equipment at the beginning either. I put the first four streams that I ever did up on YouTube and just so that people can see it. And they're edited down a little bit. And it was basically me wearing Apple headphones and just talking to myself, right? And so it's not that difficult to get started. But I guess the benefits that come out of it are things like, it's highly motivating to get work done. You can have focused time, you can meet some other really cool developers who can actually help you with your code.
Suz Hinton: I found that I actually became a much faster typer, or typist, and I didn't even expect that to happen. And it's mostly because I wanted to be productive on the stream and I had to talk at the same time and think, and also look at the chat and everything. So in order to stay efficient I just had to learn how to type faster and make less mistakes. And so that was a really weird benefit that came out of it as well.
Suz Hinton: And what they will find too is that people really appreciate seeing how other developers work. Like, even when you pay a programmer, someone in the office, it's not generally how that person naturally works, right? And so being able to see how other developers work just really helps you understand how similar or how different you are from other developers. And it helps to pick up tips and tricks as well. And so for me I got this nice fuzzy feeling from being able to teach people random stuff that I didn't ever expect that I could teach people, such as, oh Suz did this really cool trick with Git. And I didn't even know you could do that, and I'm going to go and try that.
Suz Hinton: And it had nothing to do with the actual work I was doing, it was just such a small little side thing. But that's another benefit that I've found come out of it that makes it more sustainable for people to just keep streaming consistently. Because there's enough good parts about it that makes you want to come back for more. Because that consistency is probably the most important thing is being able to find a schedule that works for you, that other people can rely on.
Kent C. Dodds: Well, that was all really awesome advice. I think that one of the things that really scares people about this whole experience is that, oh my goodness, a bunch of people are going to watch me and judge me on how bad of a coder I am. But I think, at least in my experience and you can confirm or refute this, as most people who want to tell you how bad a coder you are, are not going to sit down and watch you code. They're not going to take the time to just sit down and watch you code and tell you how bad you are at it.
Kent C. Dodds: Most of the people who will watch you are encouraging you and want to ... Yeah, they want you to succeed, they don't want you to waste their time. And so they're rooting for you. Has that been-
Suz Hinton: Yeah that's absolutely been my experience. I would say that the time when I'm most vulnerable on mine, which is actually live coding and people seeing my abilities live, has been the time that I've received the most praise. And I think part of it is, there's a lot of people who would just be too scared to live code at all, so they already think that you're some wizard for being able to do it.
Suz Hinton: But then on top of that I think that we're always our biggest critics, and so a lot of the time we're better coders than we think we are. I mean I really don't think that I'm a particularly clever coder, and not in the writing clever code sense, but just in the, I don't think I'm particularly brilliant at it. But I think that I'm good at putting out good experiences for users, right? And writing clean enough code that gets the job done.
Suz Hinton: I've found that there are other pockets of the internet who have been critical of my code that hasn't been on live streaming. So I think you're 100% correct in that they'll take one look at one of my Git Hub repos, completely misconstrue what the repo is about, start tearing apart, like oh there's like this empty file here right. And they don't even know what the context of that empty file is, right?
Suz Hinton: And they're the most likely to do with that over there. And the people who are actually watching me ... It was so unexpected, but you were completely right about that.
Kent C. Dodds: That's very good. How often do you have to respond to questions like, what font is that? What [crosstalk 00:18:00] is that? What [crosstalk 00:18:00] is that?
Suz Hinton: I think that was one of the first things I did to automate my stream in that I installed a chat bot and then the common way to set up commands for any kind of, I guess live stream, is to have a bang at the beginning and then a word as a command. So I have a command I can write or any of my chat people who are in the chat can type. And it's basically bang.files, and so that will share my dot files with them. And I think there's another one that is like, band editor. And it just has this lovely sentence that says, hi, thanks for interest, I use VIM and I use the Dracula theme for it in my terminal. And I use inconsolatras the font, and here are my VIM.files, right?
Suz Hinton: So there are definitely ways you can shortcut that and anticipate what people are going to ask. And on top of that I do get a lot of questions that are just generally tied to what I'm actually coding. And I think that they are usually the questions that I want to pay most attention to because I can't just automatically answer them.
Kent C. Dodds: Right. Do you sometimes when you're streaming have people come in part way through and you're in the middle of something and they say, what are you working on? Do you have moderators that help with that and you just let the moderators do that? Or how do you deal with those kinds of questions that come in the middle?
Suz Hinton: Yeah that's definitely the most common thing that happen. Someone will drop in and just say, what are you doing? And imagine someone doing that to you in real life. I mean, I guess that would be like a micro managing product manager, right? Where they're like, what you doing? Are you done yet? What feature are you working on? What stage are you at? That kind of thing.
Suz Hinton: So I do actually have a chat command that I change every single week, depending on what I'm working on. And it's called like, bang what am I doing. And it'll usually link to the Git Hub repo and just briefly describe it. So it'll just say something, I'm working on electric IO and here's the Git Hub. And this is the specific feature or issue or pull request that I'm reviewing. And my moderators tend to expand a little bit on that if the person wants to know more, which is really nice of them.
Kent C. Dodds: That's awesome. How do you go about getting people invested enough to be official moderators? Are there people you just see in the chat frequently and you reach out to them and ask them to be a moderator? How does that process work?
Suz Hinton: Yeah that's exactly how it worked at first. I had a few people who were just so positive in the chat, always answering people's questions. Like basically was self selecting into it, so it didn't feel like asking them to take on an extra responsibility. It was just like, keep doing what you're doing, but I'm going to knight you with the sword of moderation. Where you actually get extra powers and I trust you to be able to use them. And so if you see somebody coming in and saying something really nasty, you can just immediately ban them and delete the message.
Suz Hinton: And that's very helpful for me because I just don't always see them in time. And even if that message is there for 30 seconds it's obviously causing upset for a lot of people. And so that's definitely how it started. And then my moderators would start suggesting other moderators to add, which has been what's happened recently. And so I now have a pretty strong team of 15 mods, and at anytime I tend to have between 3-5 of them in the chat. And sometimes even more, which is definitely enough for the coverage that I get for the amount of viewers that I have.
Kent C. Dodds: Mm-hmm (affirmative). Yeah, that makes a lot of sense. Cool. Very good. So I was wondering, there was one time I was live streaming and I think I went to a window that had my Git Hub token up there. You're laughing so I'm hoping that I'm not the only one who's made this mistake before, but has that ever happened to you? Can you tell us a story about if that's ever happened?
Suz Hinton: Yeah that actually happens to me a lot. And I'll tell you why it actually happens a lot. At the beginning I was so terrified of this happening that I limited the projects I worked on and I had all of these plans on, you know, I'm going to work on this project that has a secret and so I will never show this. And I'll be very very aware. But it got really distracting and it limited what I got to work on.
Suz Hinton: And so these days I still limit myself as to what kind of secrets I'm potentially working with. But as long as the secret or the token is easily rotatable, then I won't really worry about it too much. And so, I obviously strive to not show anything private. I even have a Chrome extension called Block Site, and I actually have certain pages, very specific pages blocked. So for example, any Git Hub settings page is blocked. But you can go to regular Git Hub repos and I can go to all of my repos if that makes sense.
Kent C. Dodds: Yeah, that makes a lot of sense, it's very clever. I should probably do that.
Suz Hinton: And then there's actually a really cool Chrome extension also called Azure Mask that I use, which actually one of my team members developed and usually when we're doing demos even in just regular presentations on stage, we're showing the Azure portal which is basically the console where you can do a lot of things with your cloud resources, but you can do it with a gooey instead of on the command line, right?
Suz Hinton: And it basically finds all of the input fields that have all of those secrets and it just blurs them or blocks them out. And so I can be copying and pasting that key around, but no one necessarily sees me actually when I'm navigating to it in order to copy it for something. So that's very helpful because it just happens to be the cloud service that I use and it just happens to have a really cool extension for it. I realized how convenient that is. But that's sort of how I manage things.
Suz Hinton: But I think the funniest thing that happened recently was I was like, hey everybody, I'm going to come back to this project that I've not worked on in forever, and I'm very excited about it. So I CD into the directory on the terminal and I was like, huh, I kind of have my Git status stuff baked into the prompt, so it was kind of showing a bunch of symbols saying that there's some un-tracked changes and there's some other modifications that I haven't committed.
Suz Hinton: And so I was like, huh, my state's not clean, okay so what was I doing in here last? And ran Git Dif and then of course there was an environment file with a whole bunch of environment variables in it that were secret.
Kent C. Dodds: Right.
Suz Hinton: Yeah you just see me laugh and I just laughed and laughed and I was like, oh Suz we've done it again. And so then what I ended up doing was I have this secret, I call it a secret blocker. And it's literally just an image that I can toggle with a keyboard shortcut. And it basically blocks just the desktop part of my stream, so it still shows the chat, it still shows my face. It doesn't mute the sound, but it just means that I have some privacy. It's like just throwing up a little curtain for a second.
Suz Hinton: And so if that happens I will laugh and I'm like, hey everybody just going to rotate that, copy/paste it in, maybe Git ignore that file. And then we're back to normal again. Right?
Kent C. Dodds: Mm-hmm (affirmative). Yeah that makes a lot of sense. Cool, well we're getting pretty close to the end of our time. I want to make sure to leave you with whatever time that you want to bring up anything that I didn't ask about. Is there anything about live streaming or about anything else that you're particularly interested in that you'd like to share with us or chat about for the last couple minutes?
Suz Hinton: I think that I want to let people know that try to find something sustainable for you. And that could just be one live stream and then that's it, you just wanted to show people this thing that you were working on. I think that people take it really really really seriously, and I don't think that that's something that you need to do. Like if you look at my setup, it might look super professional, but it's just because I stream every single Sunday and I want to be able to sleep in as much as possible. And so automating my setup and making sure that it just always looks good and I don't have to worry about it, is more a matter of aspirational laziness than anything.
Suz Hinton: And so you don't have to be all professional. And don't put so much pressure on yourself. And really the most important thing is that you're having fun, you're talking to people in the chat and having a good time with them. And that you're doing it because you look forward to it and because you've found a sustainable consistent schedule. And for not other reason other than that. Because a lot of people feel so bad if they, I guess, "fail" at this. And that's just really not what it's about. I think that I've setup some impossibly high standards for people. And they don't realize that it's taken almost three years for me to get to where I am.
Suz Hinton: And I never would have stuck with it this long if I didn't want to do it for reasons that are actually like genuine and authentic. So it's just, it's going to go a lot better than you think. But also, yeah, not to take it too seriously.
Kent C. Dodds: Oh that's wonderful advice. And I'm happy to end on that. Yeah you've shared a whole bunch of advice, and I keep on trying to find ways to add to what you said, but I can't because it was just good. So I'm going to ... I'll just leave it where it's at. So Suz, thank you so much for all that you do.
Kent C. Dodds: I know that people who watch your stream are actually learning stuff. And not only learning stuff, but also developing relationships with other people. And that I think is a really good thing that you do for the community, a good service. And the following that you've developed kind of speaks to that, and is a testament to the positive influence that you are in the community. So thank you for doing that. And I hope that you're able to continue that for as long as it brings you joy, sparks joy.
Suz Hinton: Thank you so much, I really appreciate hearing that. That's wonderful.
Kent C. Dodds: Cool. Well thanks so much Suz. We will see you around on the internet. Before we close this off, where can people find you on the internet?
Suz Hinton: Yeah, so I'm no-op-kat, or noop-kat, and you can pronounce it either way. Pretty much everywhere. So that's, N-O-O-P-K-A-T. And so that's where I am on Git Hub, Twitch, Twitter, that kind of thing. I think I'm Suz Hinton on Medium just to confuse things a little bit. So that's where I tend to blog about most of my Twitch stuff if you want to know more.
Kent C. Dodds: Very cool. Quick question, on the no-op or noop, how do you pronounce it?
Suz Hinton: The correct-
Kent C. Dodds: For you is it no-op, or-
Suz Hinton: The correct way to pronounce it is no-op-kat, but I'm lazy because that sounds like two syllables, so a lot of the time I just say noop-kat.
Kent C. Dodds: Okay. I, for a very long time always pronounced that noop. And then somebody said, no it's no-op, because it's a no operation. And oh my goodness. I still say noop.
Suz Hinton: Yeah, that is actually what it's from. So it supposed to be a joke, it's like useless or lazy cat, essentially, that's the joke.
Kent C. Dodds: Very good. Cool, well I appreciate also you sharing your optimizing for laziness. I think that we could all benefit from doing that. Automate ourselves into laziness, that's a good thing. Cool. Hey thank you so much, and we will see everyone later. Goodbye.