Relicans host, Ali Diamond, talks to Staff Developer Advocate at PlanetScale, James Q. Quick, about recently hitting 100,000 subscribers on YouTube, creating edgier videos that provide value but still get people's attention, and how he repurposes content by pointing people back to it in the newer videos he makes.
Should you find a burning need to share your thoughts or rants about the show, please spray them at devrel@newrelic.com. While you're going to all the trouble of shipping us some bytes, please consider taking a moment to let us know what you'd like to hear on the show in the future. Despite the all-caps flaming you will receive in response, please know that we are sincerely interested in your feedback; we aim to appease. Follow us on the Twitters: @PolyglotShow.
Jonan Scheffler: Hello and welcome to Polyglot, proudly brought to you by New Relic's developer relations team, The Relicans. Polyglot is about software design. It's about looking beyond languages to the patterns and methods that we as developers use to do our best work. You can join us every week to hear from developers who have stories to share about what has worked for them and may have some opinions about how best to write quality software. We may not always agree, but we are certainly going to have fun, and we will always do our best to level up together. You can find the show notes for this episode and all of The Relicans podcasts on developer.newrelic.com/podcasts. Thank you so much for joining us. Enjoy the show.
Ali Diamond: Hi, everyone. Welcome back to the Polyglot Podcast. I'm Ali. And you could find me everywhere on the internet @endingwithali on everything, including Minecraft. And today, we have a really awesome guest, a person that I have so much admiration for. And who better to introduce themselves than they themselves? Hi, James.
James Q. Quick: Hey, how's it going?
Ali: I'm doing well. How are you?
James: I'm doing good.
Ali: So tell me about yourself. You have a long history of going big, going small, doing everything, and a lot of amazing accomplishments under your belt. So I'd love to hear more and have the audience hear more.
James: So I've considered myself to be primarily three things: a developer, speaker, and teacher. I've done some combination of those professionally for almost ten years now, which is kind of hard to believe. But I just recently went through a job transition. So I was a Developer Advocate at Auth0, and then I transitioned a couple of weeks ago to PlanetScale as a Staff Developer Advocate.
So I've been doing a lot of onboarding and technical ramp-up and product investigation and that kind of stuff for the last couple of weeks. But outside of that, I run a YouTube channel that I do weekly, sometimes multiple times a week, videos on web development.
I run a podcast called Compressed FM with my podcast co-host, Amy Dutton. We do web development and design. And we do right now weekly episodes and are maybe moving to bi-weekly episodes. And just general content creation and community involvement, so I run a Discord server. I love celebrating pieces of content that other people create and helping support content creators and the community in general.
Ali: Along the lines of your YouTube channel, you said to me that you recently hit 100,000 subscribers, which is a huge milestone. You're going to be getting that plaque soon, which is so exciting. It's a total dream of mine to one day launch a YouTube channel and hit those milestones I've watched over the many numerous years of being a YouTube black hole of knowledge about YouTube. To see more and more people achieving those milestones is so amazing. And with that, you're seeing more and more people, as I said, start becoming YouTubers. So what inspired you to start becoming a content creator?
James: For me, I randomly started on YouTube. I was giving workshops in game development to students in high school and college when I was at Microsoft as part of community engagement. And I realized I was repeating myself a lot. I would show this demo for an hour of; here’s some things you could do and then just let people go off and do stuff themselves.
And they would have the same questions inevitably over and over again. And I figured why don't I just record videos? (That I'd never done before.) But why don't I just record these videos that they could go and watch and pick up whichever ones they need instead of me having to answer the same question over and over?
So I created, I think, a series of 18 videos. And that was basically the first thing I did on YouTube. And I didn't have any plans of this being a long-term goal. I didn't have any plans of doing it consistently. I was just trying to solve a problem at the time. So I did that.
And at Microsoft, I ended up doing a few other videos. I did a decent amount of video content on my personal channel at that time and on different Microsoft channels. And then I got away from that for a couple of years; I moved, I changed jobs.
I started working at FedEx as a software developer, so I wasn't doing content on a regular basis. And a couple of years in there, I just realized I really missed it. I missed being a part of the community. I missed going to meetups. I missed creating content and started to pick back up on that. So I started creating YouTube videos. I wrote articles for a platform called Scotch.io that has since been acquired by DigitalOcean.
And maybe a year or so into that, I started to realize this is something I really want to take seriously. And so, the past couple of years, I've created a video or two almost every single week. And the past year has been huge in terms of growth of having like a couple of, I kind of hate the term, but viral videos that got lots of exposure and led to a lot of growth on the channel in the last year.
Ali: Let's talk about those viral videos. What were they? Did you realize that they were going to go viral? What were you expecting?
James: A couple of them were me leveraging other people's platforms, Traversy Media, Brad Traversy. Traversy Media channel is one of the biggest in web development. That's one I've referenced for years now. And he was slowing down on creating videos himself and reached out to see if guests would be interested in doing content on his channel. So I did one of those.
And immediately when I did that, the day that video launched, I got like 1,000 new subscribers on my channel because it referenced my channel. I did a second one of those with him. I did a video on the freeCodeCamp channel. So at the end of the second half of 2020, I went from 10,000 subscribers to about 30,000. That was after a couple of years of building up to 10,000.
And then 2021, there was one big one in particular which was me highlighting an extension in VS Code that could kind of replace Postman. So Postman being a client that you could send HTTP requests, and Thunder Client was just a new extension that I came across. And I think I just happened to have the exact right wording and thumbnail for people to be really intrigued.
But I think the title was like; I Don't Need Postman Anymore. I can use Thunder Client, or I can use VS Code or something like that. And so it had me waving with crossing out Postman. It was one of the edgier videos that I've ever done.
And there's this fine balance between doing clickbait content and just doing it in a way that still provides value but gets people's attention. That, I think, was just a big example of still providing value but bringing people and grabbing their attention.
And I had a few more that were not quite that big but relatively big and just kind of rode that wave the last several months. So now, something that I experiment more with is being a little edgier, having a little more aggressive titles or opinionated titles because that seems to be the things that people really resonate with.
But like I said, at the end of the day, I still have to make sure that the response to those videos are positive; people are still getting value out of the content that I create.
Ali: Speaking of getting value out of the content you create, one of the things that I've noticed on a lot of channels is not necessarily repetitive content but recycled content. So how do you as a content creator go about creating new content that is still digestible, and understandable, and engaging to your audience without burning out on ideas, especially creating videos every week?
James: I think there are two perspectives on this. There's a lot of reusability that's super, super useful, practical, and still valuable for the community. If you look at the big web developer channels, every year they do, like here's a recap of 2021, and here's what to look forward to in 2022. And then, in early 2022, they do their new web developer roadmap.
And that stuff seems repetitive but also, it's so valuable because web development changes so much every single year. So it's worth giving people that refresh. Or they do a crash course on Svelte when it first came out, and now there's SvelteKit. And SvelteKit, at one point, will finish being out of beta, and then now that will be a thing that warrants its own maybe very similar tutorial but highlights those differences. So I think one, reusing that content and updating that content on a yearly basis is still really valuable.
But the other perspective is I've got a backlog of 100 different ideas and 80 of those I'll never get to. It literally never ends. And I think the biggest realization that I have as a content creator is everything that I do or see or learn is content for someone. People that aren't experienced in content just don't realize that for themselves. They take for granted that they know this one thing, or they know this one trick, or they know this one tool.
As a content creator, you start to examine every single thing you do and think of that as a piece of content. I am in no way worried about running out of ideas. Like I said, if I need a random idea, I've got a backlog of 100 items. And I keep adding to that in my mind every single day because I come across something else that would be valuable for people in their learning journey.
And then, on the burnout section, for me, I just do stuff that I want to talk about. I'm not going to force myself to do stuff content-wise that I'm not interested in. So that way, when I'm actually doing content, it’s stuff I'm already excited about. And it helps fight the do a video once a week or twice a week but still not get burnt out with it.
Ali: That's good. That's really, really good. So you said examining everything you do and make it into content. How do you feel when it comes to looking at your content? How do you extract the most value for your viewers in your content creation?
James: Strike the most value. I think the number one thing is defining who your audience is in terms of expectations, so making sure that you set those upfront. There's nothing worse than having a tutorial say, "Complete beginner guide," and then it gets into stuff that's not beginner. That's an immediate way to lose people. So I think thinking about who your intended audience is is definitely first and foremost.
And then there are small things like do you have a way for them to follow up if they have questions? Asking questions on YouTube is not very likely to be super helpful. I can pay attention, and I do pay attention to comments, but it's really hard to answer detailed questions there.
So I have a Discord server, and I will redirect people there. And then, I also encourage them not just to ask me but to ask the community so that other people can get involved, and we start to help each other learn and grow. And it's not just dependent upon me as an individual.
The other thing is basic stuff. As I create a tutorial, having a GitHub project for them to go and check out that code. Because if they're following along with the tutorial and typing it themselves and they have one little small typo, they're going to be stuck. I may not see their comment on YouTube if they ask one, and then they're just kind of screwed.
So having any amount of resources that you can add to help facilitate them getting that value, as you mentioned, out of the individual video, I think, is a big thing upfront to think about. And then at the end, just to make sure that you have those resources for them.
Ali: And you kind of talked about this and touched on this: using other platforms as a way to engage with your community. But I'm curious to hear how you're leveraging other platforms as a tool for growth.
James: So I think in terms of growth, that can mean a lot of things. But one of the benefits, selfishly, of running a Discord is if I have something that I promote, I can share it now with...I think there are almost 3,000 People in this Discord. So selfishly, I get a little bit out of that. But it's been really important for that Discord to not just be me; it's a community thing. But it does help with my exposure, my ability to interact with people directly.
I can think about myself five years ago when I was just learning web development. If I had the ability to chat with one of the YouTubers that I followed on a regular basis and learn from them, how cool of an experience would that be? And how much more likely would I be able to follow the stuff that they do later on based on that?
Tons of other avenues. I am pretty active on Twitter. It's one of the easiest ways for me to stay up to date with what people are talking about, what articles, and other content other people are creating, and then share the stuff that I work on and ask questions to get feedback from people on Twitter as well.
I started doing a podcast back in April, I think, with Amy Dutton called Compressed FM. That's another audience that we have. And then we get to cross-promote some of the other things that we do, like these Advent courses that we just launched.
So I think having that repetition of being in different places and being in different places where you earn people's trust, that way, next time you create a piece of content, they know who you are, and they know they trust you, and they trust the content that you create. So you're helping yourself by being genuine and then continuing to build an audience for the stuff that you do in the future going forward.
Ali: Yeah. And working in DevRel, you'll find that a lot of the work that you do in DevRel overlaps really heavily with things like content creation. So how do you establish your boundaries? And how do you establish your ownership over content for work and for personal? What does that look like to you?
James: First and foremost, my personal brand and my personal channels like podcasts, and YouTube, and Twitter are always 100% going to be mine. I would never work for a company that would try to dictate how and what I create in that regard. So that's first and foremost for me.
At Auth0, I was pretty separated in the two. So I would wake up, my wife would go to work early, so I would do my personal content for an hour or two before actually starting my job at Auth0. And all of that was pretty completely separate.
Now, there were benefits of my experience with creating videos. It made me better at creating videos for Auth0. And by doing more videos at Auth0, I got better at doing videos for myself. So there's some overlap in that sense. But they were pretty distinct. I owned all of my content that I created on my channel. And then Auth0 would own all the content that I put on Auth0 channels.
I actually want to do that a little bit differently this time around with PlanetScale because I want to double-dip for myself. I've got an audience that's bigger than the PlanetScale YouTube channel. So if I create something that's valuable for people in general and references PlanetScale, it is beneficial for some of that to be on my channel because it means hopefully more exposure. And then, I can also double-dip in terms of time because it's content that helps me with work as well.
Most of the stuff that I do PlanetScale-wise will go on the actual PlanetScale channels, the blog, that sort of stuff. So you can mix those. But I think the thing that I'll never sacrifice on, again, is my control over my personal brand, my YouTube channel, my Twitter, my podcast because that's the kind of thing regardless of what company I work for that I will get to keep for myself and leverage in the future.
Ali: Yeah, you touched on your specialty, which is front end and creating front-end content. You mentioned earlier that you were doing Advent of CSS. Are you going to be doing that on your YouTube channel?
James: So one of the things we will do better in the future is having more lead time for marketing. So you talked about promoting one thing from another. YouTube is the biggest audience that I have. And my plan, had we been further ahead, was to create several different teaser videos leading up to the launch of the course on December 1st. And we just didn't have that lead time.
But that would be the approach in the future is to take the audience that I have and provide them some sort of value there from a free perspective and then say, "Hey, I'm launching this thing where you could get a lot more out of. There's a free aspect to it, and then you also could pay for this group of solutions and videos," and be able to cross-promote that way. So that's something that we definitely want to do more of in the future.
Ali: Yeah, that's awesome. So I want to pivot and talk a little bit more technical. And you had mentioned before we started recording that you focus on Jamstack and Serverless. And I wanted to jump in and say, when did you start focusing on Jamstack and Serverless?
James: Starting to work with Jamstack was maybe 2019. And Netlify was a term that I heard a lot. Gatsby was the term that I heard a lot, static site generators. These were all terms that I heard a lot that I really didn't understand. But I started to hear them more on podcasts. I started to hear more people or see more people tweeting about them.
And sometime in 2019, maybe the summer of 2019, a friend of mine showed me Netlify and how to deploy a site there and how easy it was. And that was really interesting for me. And then I started looking at okay, well, I've got this blog...maybe this was even 2018. But I had this blog that was on WordPress. And I'd heard so much about static site generators. I had just started learning React not too far before that.
And people were talking about Gatsby so much for their personal sites. And so, I decided to rebuild my site in Gatsby and go through that experiment. And since then, it's just been continuing to build more and more demos, continuing to build stuff and tools for myself like my blog. And then it turned into working full time at Auth0, being able to tie that into talks that I would give and videos that I would do. So getting really interested in all the different frameworks.
Next.js, I think, is a really cool example of the combination of static site generator as well as server-side rendered pages. So you can do everything that you want to there. And I just see the Jamstack as the developer experience is really top-notch. You can get started using all these different services for free. So it's very accessible for people to build stuff and actually launch stuff and just iterate on it.
I think at a certain point, if you scale and have to pay out of a free tier into a paid tier, you're probably doing something good because a lot of the services have such a good free tier that you have to get quite a bit of traffic or engagement or whatever it is to get you out of that free tier.
So I've just progressively fallen more and more in love with the Jamstack and have had that tied into things I built for myself, content that I create on YouTube, and blog posts and stuff like that, and then talks that I give at conferences.
Ali: With Jamstack and Serverless and now working at PlanetScale, you're probably thinking a little bit more about security and teaching with more security in mind. And you had mentioned this is something that you were super interested in and that you had thought about. And I'm super curious to hear when you're working on your content; how do you integrate security into your work? And what are your thoughts on security with Jamstack and Serverless?
James: Working at Auth0, that's a lot of what I talked about was authentication, authorization, general security, and the Jamstack. And what gets really interesting is the Jamstack; I think kind of started with this big focus on static content.
And there are like a million different definitions of what static content means. But a lot of it became really focused on these static site generators, Gatsby being a big one, Hugo was one, Eleventy is one, Gridsome is one. There are lots of these frameworks that were built for statically generating pages.
And it was interesting that that was the focus, at least for the beginning of the Jamstack. And then, as people realized the limitations with that, they started to look more for Serverless functions and server-side rendering and the ability to do things almost the way it had been in the past but with Serverless instead of a full server.
So things like SvelteKit and Next.js and a lot of these different frameworks give you the ability to do it all, which then makes authentication, authorization a little more complicated because if you're...there are two main approaches to handling authentication in the Jamstack, one is on the client.
So you ship a bunch of code to the browser, the browser then makes some request to figure out if the user is logged in or they have some sort of cookie that they're tracking. And all that happens client-side. So you see a lot of these loading icons or loading animations.
And then, after you figure out if the user is authenticated, now you're maybe doing a loading state to go and grab the user's information, their blog post, or whatever to put on the page. So you can do all that stuff on the client-side.
You can alternatively do all of this on the server where before you actually send down this page detailing my user information and all of my blog posts, I can go and make sure on the server that the user is logged in, and then go and grab all the information that I need associated with this user, and then use that to render HTML and send that down to the browser. So there are two fairly different perspectives on how you handle that.
But then what's interesting is you can combine them too where you can do everything on the server but then add on top of that with client-side JavaScript as well. So that I think has been really fascinating for me as the Jamstack has evolved to what are the different ways that we can handle authentication? What are the different ways that we can protect our applications? And how do we mix them in a way that makes the most sense for the thing that we're actually building?
Ali: Yeah, that makes total sense. And this may seem menial, this may seem trivial, but throwing it back to your time at Auth0, how would you define to the listeners the difference between authentication and authorization? Because I know that is a topic because they're different. But at the same time, people mix them up all the time. And I would love to hear if you were to explain this to a five-year-old; how would you explain it?
James: Authentication is who you are, and authorization is what you have access to do. That's usually the simplest way that I've seen it put. And then to take that more specifically to an application context of some sort, if I log into an app, if I add my credentials, my email, my password, and login, I am that person, and that's been proven, so I'm authenticated. That doesn't necessarily mean that I have access to do certain things.
So the most common example of this is if I create a blog post, you shouldn't be able to edit or delete my blog post. Only the creator should be able to edit or delete their blog post. So authorization comes to tie in the user to what they actually have access to do on that site.
Ali: That makes sense. I love how straightforward you define it. And I think that's super key for someone in DevRel is being able to explain concepts concisely and quickly. That's approachable for everyone. Because I imagine that you've experienced this, and you probably see this in your YouTube comments all the time people saying, "Wow, I'm so frustrated. You explained it so clearly. Thank you so much." And when you're going through that content creation, how do you make sure that you create content that's approachable for everyone?
James: It's definitely a challenge. I think the one thing I will never fully know what it feels like for the rest of my life is what it's like to write my first line of JavaScript or to use X feature of JavaScript for the first time, arrow functions, or ES6 template literals strings or that sort of stuff. I will never 100% remember what it's like to learn that thing for the first time.
So one of the things that I've said is if you just learned something, as a content creator, you're probably the best person to explain it because you know exactly what you just went through to get there. Now, like those features in JavaScript I've been using for years, I try my best to remember what it's like for someone that doesn't know what they are. But it's easy to overlook that.
I think that's something like the more content you create, the more comments you get, positive and constructive feedback. You start to become more aware of what are those things that you need to call out. And so a lot of that, again, goes back to defining who your audience is. Am I writing this for a complete beginner of JavaScript? Most of my content is no because I want to get in and build the thing that I'm trying to build without teaching each individual piece.
But when I see things, when I'm covering things that are a little tricky or maybe it's a specific way that I do something, I try to make sure to call those out and acknowledge that this may not be common knowledge for people. We want to make sure we cover it before we move on to the next thing.
I think there's a lot more of that sort of planning that goes into something like a course than just an individual video because a course is going to be that much more focused on a specific audience. And you've got this progression of I need to cover these topics before I get to this other bigger topic.
The last thing I'll say from kind of individual YouTube videos perspective is one of the things that actually is really useful is if there's some topic that I'm going to use in a lot of my other videos or I have already used it in one of my videos, and I didn't explain it well, why not create an individual video on that topic?
And then, later on, I can refer back to that video to say, "Hey, if you want to learn more about how environment variables work in Node or how arrow functions work in JavaScript, go back and watch this video. Otherwise, we'll go ahead and continue to move forward." That way, I get to repurpose my content and reuse it by pointing people back to it. And then I have the ability to not explain all of those details every single time but give them a resource for the people that need them.
Ali: Yeah, I feel like you're going to have a really good response to this question, which it's not related, but I feel like you have an amazing response. If you were to change one thing about JavaScript, what would you change?
James: Gosh, one is that it be taught more in colleges. And I think it's more popular in bootcamps than colleges. I did C++; I was really intimidated by it. I was really kind of scared of it because I was used to something like an object-oriented programming language where I knew what the class was. I knew what the variables or properties were. I knew what the methods were like. I had IntelliSense, the editors, that sort of stuff.
So at the time, I think I would have really loved the opportunity to work with TypeScript, which is now readily available. It’s becoming more and more popular because it gives you that structure. It gives you that IntelliSense. It gives you that familiarity with what you're actually working with. So I think back in the day, that probably would have been one of the big things, but it's here now.
And the other one was just that sort of support from an IDE or a text editor perspective. Because when I started, I was using Sublime, and there was no IntelliSense. And there was no help for what you were doing. But VS Code has made that so much better now that I guess a couple of things I would have asked for a few years ago have come a long way.
Ali: And as we wrap up our conversation, is there any piece of advice you want to give to the world, any last things you want to share?
James: Yeah, I talk a lot about content creation in general and like to inspire other people to become content creators, and lots of people have interest in that. But maybe they're nervous about it, or they don't know where to start. And what I always say is just start with something. Yeah, you're pointing at yourself.
Just start with the simplest thing that you can think of. What's the one thing that you know today that you didn't know yesterday? What's the thing that you learned last week, no matter how small it was? And create that content, write that blog post, create the video. It's not going to be the best thing you've ever created. It's probably going to be the worst thing that you will ever create because you'll just get better and better the more you do it.
At this point, I've created 400; 500 videos total in my career. And I can tell you the stuff that I created in the first 10, 20, 50 is much different than what I create now. So I just always recommend to people if you're interested at all in content creation, just get started. Create the first one, ship it, listen to the comments. Do better the second time, do better the third, and continue to build on that and build momentum.
Ali: And where on the internet can people find you right now?
James: James Q. Quick on basically everything, Twitter, YouTube, I'm on TikTok. I'm back on Instagram. This was a weird story where I got kicked off, and I don't know why. And so my account literally just disappeared, and I was really mad. So I didn't recreate it until two weeks ago. So I've got like five pictures up on Instagram. But yeah, James Q. Quick on mostly anything that people can think of.
Ali: Awesome. And for those who are listening, thank you so much for taking the time out of your day to hear us talk about all these amazing topics. Again, I'm @endingwithali on everything, including Minecraft, so you can find us on the internet. And thank you so much for listening. Bye.
Jonan: Thank you so much for joining us. We really appreciate it. You can find the show notes for this episode along with all of the rest of The Relicans podcasts on therelicans.com. In fact, most anything The Relicans get up to online will be on that site. We'll see you next week. Take care.