Summary
Podcasts are becoming more popular now than they ever have been. Podbuzzz is a service for helping podcasters to track their reviews and imporove SEO to reach a wider audience. In this episode we spoke with Kyle Martin about his experience using Python to build Podbuzzz and manage it in production.
Brief Introduction
- Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
- I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable.
- You need a place to run your awesome new Python apps, so check out our sponsor Linode at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project.
- You want to make sure your apps are error-free so give our next sponsor, Rollbar, a look. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastinit to get 90 days and 300,000 errors for free on their bootstrap plan.
- Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch.
- By leaving a review on iTunes, or Google Play Music it becomes easier for other people to find us.
- Join our community! Visit discourse.pythonpodcast.com to help us grow and connect our wonderful audience.
- Your hosts as usual are Tobias Macey and Chris Patti
- Today we’re interviewing Kyle Martin about Podbuzzz
Interview with Kyle Martin
- Introductions
- How did you get introduced to Python? – Chris
- Can you start by explaining what Podbuzz is? – Tobias
- Why did you end up choosing Python as the language for building thx#is service? – Tobias
- What have been the biggest engineering challenges in building Podbuzzz? – Tobias
- How did you conceive of the idea to build Podbuzzz and what inspired you to provide it as a service? – Tobias
- Part of the service that you are building is a widget that encourages listeners to rate a podcast on iTunes. Why is that important and what are some of the techniques that you have leveraged to determine the most effective messaging? – Tobias
- What are some of the features that you plan on adding to your service? – Tobias
- Do you intend to run Podbuzzz as a side project or do you envision it becoming a company with its own staff? – Tobias
- In addition to your work with Podbuzzz as a way for podcasters to gain visibility for their shows, you’re also working on an analytics platform for the same target audience. Can you explain a bit about that and the problems that you’ve had to overcome? – Tobias
- What is it about podcasting that makes it hard to gain useful metrics and what is your strategy for overcoming some of those obstacles? – Tobias
Keep In Touch
Picks
- Tobias
- Chris
- Kyle
Links
The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA
[00:00:15]
Unknown:
Hello, and welcome to podcast. Init, the podcast about Python and the people who make it great. I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. You need a place to run your awesome new Python apps so check out our sponsor Linode at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual server for your next project. You want to make sure your apps are error free so give our next sponsor Rollbar a look. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastcenter to get 90 days 300, 000 errors tracked for free on the Bootstrap plan.
You can also visit our site at pythonpodcast.com to subscribe to our show, sign up for our newsletter, read the show notes and get in touch. And by leaving a review on iTunes or Google Play Music, it becomes easier for other people to find us. You can also join our community at discourse.pythonpodcast.com to help us grow and connect our wonderful audience. Your host, as usual, are Tobias Macy and Chris Patti. And today, we're interviewing Kyle Martin about his project Podbuzz. So Kyle, could you please introduce yourself?
[00:01:21] Unknown:
Hey. Sure. So I'm an iOS software engineer at a company called SuperShuttle. It's a service that's been around a lot longer than Uber, but we specialize in scheduled rides to the airport and back. I'm the lead iOS engineer on the driver operations app. So you can kind of think of that as, like, Uber's driver app, but it's a little bit more complicated from a business operations point of view.
[00:01:45] Unknown:
So how did you get into Python?
[00:01:48] Unknown:
I started playing with Python in college. I was studying electrical engineering at the time, and I didn't really like the syntax of VHDL. For for those that don't know, that's a hardware description language. It's kind of like code that you can write that describes how hardware should behave. And when you compile it, or what's called synthesize it, it will output logical gates that, is actually hardware. So I really didn't like the syntax of the HDL. I came from a C Java background. So I looked at Python, you know, it seemed interesting to me. It seemed very straightforward.
So I decided to kind of embark on a little project. What I did is I basically made a transpiler. At the time, I didn't know even what a transpiler was, or even if have 1 had existed. But I kind of said to myself, well, I don't like how the VHDL is, so I'm going to write my own syntax for it. So I wrote a Python script that would basically interpret my version of VHDL and then transpile it into true VHDL. And then, I would paste that into Xilinx and, then complete my, project for my course in college. My other experience with Python was when I was taking a graduate course. It was sort of a unofficial, course. I was just I was an undergrad, but, I was really interested in the topic of computational electromagnetics.
And I had talked to my professor about it, and he said, well, why don't you just come, you know, come join us and, do a little bit of research with us? So, I joined them, and my professor was studying computational, electromagnetics from the point of view of, how it behaves on the human body, particularly in in medical devices. So we are using MATLAB, and, again, coming from a Java background, I really didn't like the syntax of MATLAB. I felt that it was not really for me. So I convinced my professor to let me, work in Python.
So we implemented a lot of interesting algorithms, you know, just, something called, like, particle swarm optimization and, simulated annealing and some other things. Yeah. I really I really like that, it's, you know, studying, electromagnetics and getting a chance to kinda play around with Python and, solve some cool problems with that.
[00:04:15] Unknown:
Yeah. That sounds like some pretty interesting projects, and I can remember trying to battle with VHDL when I was dealing with it. So having a different syntax to work with would have been nice.
[00:04:27] Unknown:
Yeah. Certainly. Maybe just some curly braces, you know, would would make it a lot more familiar.
[00:04:31] Unknown:
Yeah. Boolean algebra is not exactly the most intuitive thing when you're trying to figure out how to parse that into logic gates.
[00:04:40] Unknown:
Yeah. Certainly not.
[00:04:43] Unknown:
And so you ended up using Python to start a side project that you called pod Buzz. So could you explain a bit about what that is?
[00:04:53] Unknown:
Sure. Yeah. So Pod Buzz is essentially a iTunes review aggregator. 1 thing that I found really interesting about, you know, podcasting and iTunes is when you're when you're looking at your reviews on the iTunes page, you really you actually only see your reviews in the country that iTunes is configured in. So if you're in the US, you only see US reviews about your podcast. But it turns out there's a 158 other countries. So, I was just talking to a lot of podcasters. You know, I have some friends that podcast, and they seemed like it seemed like that was 1 of their pain points. So I thought it would be a cool project just to, you know, write a tool that would aggregate, all of those reviews from every country, and then throw it into a nice dashboard, and then let podcasters sort of see where they can improve. And, also, just, you know, it's it's really good and really fulfilling to get feedback from your listeners. So it just seems like a kind of an interesting project to me.
[00:05:55] Unknown:
So, can you explain why you ended up choosing Python as the language for building the Podbuzz service?
[00:06:02] Unknown:
Yeah. I was looking for something simple and straightforward, and most importantly, no magic. I looked at other frameworks, Ruby on Rails and some others, and I just I liked Python, and I wanted something simple, so I went with Flask. The whole app is implemented in Flask with the blueprint pattern. And I just also wanted to learn more of the DevOps side of things. So going with Python, it seemed like a natural choice, considering that a lot of DevOps tools are, also written in Python.
[00:06:34] Unknown:
And what have been some of the biggest engineering challenges that you've had to tackle in the process of building your platform?
[00:06:40] Unknown:
So 1 of the things was basically scaling. I mean, I have about 800 podcasters now, and I I scrape a 158 countries for every podcast, every day. And not just just scraping data and, you know, seeing what's new. It's also, you know, running a custom significant phrase extraction algorithm. You can kind of think of that like Yelp. So I I really admired how Yelp basically extracted, useful information for restaurants and other businesses. And I wanted to provide that same thing to podcasters so they can kind of just get, an overall sense of what are they doing right, and then what are they, you know, how can they improve. So it was just sort of, that's also was just sort of an interesting problem for me to, look into and learn from.
So really it was just how do I get this thing stable in production? And how do I build something that's scalable and is fast. So that's probably the the gist of it. Also, I really liked, you know, learning Docker. I just use this as an opportunity to to learn Docker and, figuring out how to set up as a smooth deployment process. So I literally have a command on my local machine where I can just type in deploy, and it will, you know, look for changes in my git repo, notice which which the code that was changed, it'll notice how that, like, how that maps to a certain containers that I have in my production environment.
And it'll deploy those, those new, containers out, into production. So if not, you know, if if anything, this this project has been more or less just a a way to learn new, you know, new techniques and sort of like modern development skills.
[00:08:32] Unknown:
And are you running those Docker containers on any of the schedulers, like Kubernetes or Mesos or anything like that?
[00:08:40] Unknown:
It's just I have 5 containers, and they're just on a single digital ocean box. I will get to a point where I need to basically use Docker Swarm to move out to more, you know, move the workers off of 1 single machine and into, you know, several machines?
[00:09:01] Unknown:
I think it's really interesting how how the whole containerization revolution has really simplified the process of configuration management and deployment for a lot of people. Can you give us so maybe a Docker eye view, like what are the components of your system and and how did they come together to make, Podbuzz work?
[00:09:23] Unknown:
Okay. So I have 1 Docker container that just is a web server. It has nginx, and then it reverse proxies to gunnichorn, which is running the Flask web server app. And then I have a couple workers. I have an email worker, so every night, I will look for new reviews in the database, and then I'll loop through, and simply email each podcaster, that has new reviews. And I'll say, hey. You got 2 new reviews, and here they are. It's very straightforward for them, and they actually probably never need to go back to the app at this point. So I have an email worker. I have a scheduler, which schedules the the scraping workers to kick off at noon every day.
That was pretty much an arbitrary choice of time. It just kind of worked out with my schedule so I could check-in in production once in a while to make sure everything was running. I have a couple other workers. I have a what's called a media worker. That is basically something that will generate videos and do some other interesting things with audio and video. Those are that's actually for some features that I'm working on and are in beta right now. So I have several workers and then a web server, and, I'm trying to think of anything else.
[00:10:44] Unknown:
That that's fine. I mean, feel free to if you have additional details, but I was just curious about sort of like a component level view. When you say workers, are those salary workers?
[00:10:53] Unknown:
That's exactly right. Yeah. They're they're Celery workers, and then the, the work queue is actually, on Mongo DB. So I'm using a free service called MongoLab, which offers a pretty much a pretty generous free plan. It's 500 megabytes, and that's where everything in my database is is stored. And I also use that as a a way to persist the the queue. Perhaps not the most efficient or real time solution, but for what I'm doing, it works perfectly fine. So I highly recommend Mongo MongoLab, or I think they've even changed their name to MLab now. And yeah. So I'm using Celery workers, and, nothing nothing too crazy there. Just, Celery heartbeat scheduler that kicks off the, emails every night, and it also kicks off the scraping. And then any 1 off things like, for instance, when you when you sign up for the service, I ask you for your podcast Itunes URL.
So, you put that in, and then I'll kick off a 1 off salary job to just pull in all those reviews from all the countries, and then it sends you an email when it's done with all the reviews.
[00:12:11] Unknown:
And so it's definitely an interesting project and an interesting problem space, but what made you want to provide it as a service as opposed to just releasing it as a set of tools that people could run on their own?
[00:12:23] Unknown:
The, the the first thing is, I mean, most podcasters aren't that tech savvy. They are very, you know, they're very competent computer users, but I wouldn't say they're not necessarily going to download an open source project and set it up. They much rather use something that's just sort of free and, does something cool for them. So the other thing is is, I, you know, I've been listening to a lot of bootstrapped software entrepreneur podcasts. Things like, 0 to Scale is a great podcast, and also Startups for the Rest of Us is probably the most popular 1. So those really inspired me to go with something that I could just, you know, potentially monetize in the future. Right now, my strategy is just to be free and have a tool that's basically better than any other podcast tool out there.
And, learn from the people in the community. And, and then eventually move into more of a monetized solute you know, monetized, podcast tool. So yeah. I mean, I just I just love podcasts, and I want to get into the So it seems like it seems like a good way to to get started, you know. I know how to write code, and, yeah, I just I just wanted to pretty much get into the industry.
[00:13:37] Unknown:
And another part of the service that you're offering is a widget that people can place on their websites that encourages people visiting the page and listeners to rate the podcast in iTunes. So I'm wondering if you can dig into a bit why iTunes ratings are important for podcasts to be able to gain visibility and, some of the other goals that podcasters might be looking to attain with their show?
[00:14:02] Unknown:
Okay. Well, before I answer that, first thing you need to do is stop and go rate this podcast right now. It's that important. And the reason is is iTunes uses the, amount of reviews and the, the rate, the acceleration at which you're, getting reviews in order to determine your ranking. So if you get a lot of reviews at once, that's very good for your for your visibility inside of Itunes. The other thing is is if you like the show, then, you know, you should leave some feedback and let them know what they're doing right and how can they improve. You know, this is a very asynchronous process, so it's, it's something that I that I see as very important. And, you know, just like you like getting feedback, podcasters love getting feedback, and it keeps them keeps them going.
[00:14:51] Unknown:
Yeah. To add to that a bit too, iTunes is still largely the backbone of the entire podcast infrastructure where they serve as the location that a lot of other podcast applications will pull their feeds of, you know, all the episodes that are available for a given itunes provides for a given podcast will also reflect in a lot of the other services and podcast apps that you view. So when you're looking at, you know, new and noteworthy or top trending podcasts, the number of iTunes reviews that you get is 1 of the key indicators of what will cause a podcast to end up in 1 of those top ranked lists so that other people will find them if they're not directly looking for your show in particular. So in order to be able to grow your audience, having a lot of reviews, like you said, particularly in a in a short time frame will allow a podcast to hit that top ranking so that other people will be able to see it if they're just browsing through it, looking for something new to add to their, subscriptions.
[00:15:52] Unknown:
That's right. And, also, reviews provide social proof. So if you're not sure about a podcast, you're on the the fence, and you see a lot of good feedback, that's gonna make someone wanna listen a lot more.
[00:16:05] Unknown:
Speaking of which, our rating on iTunes is unfortunately kinda not amazing. And, part of that is is our own fault. When we first started out, we had a lot of audio problems and I think a lot of people reviewed us back then, and we haven't had a lot of people reviewing us recently. So if you like the show and would be willing to, that would be fantastic. We really appreciate it. And especially if you like the show, but, reviewed us early on when our audio was terrible and hopefully you think it's gotten better, we've worked really hard to make that happen. Maybe consider dropping us a new review, and, we'll see what we can do about that rating.
[00:16:41] Unknown:
So you mentioned that you have some additional features that you're looking to add to the service. I don't know if you are at a point where you can discuss some of them or talk about what you're hoping to grow your service into.
[00:16:54] Unknown:
Yeah. A lot of these a lot of these things I'm gonna share are already developed. I'm just getting ready to launch an email campaign for all my beta testers, to get them in and test out the tools, kick the tires, and, see how it can help them grow their their audience. The first tool is, like, an iTunes SEO, inspector, if you will. So it can you can basically type in your podcast or paste in your iTunes URL, and then it will sort of reverse engineer what keywords your podcast is ranking well for. I spent a considerable amount of time trying to figure out what iTunes uses to rank. What are they keying off of. And then, also looking at, like, other similar podcasts to see, you know, just pulling a lot of data to just figure out what keywords would be would be best for you to, to rank for. So, yeah. I basically have a tool that will rank that will basically you can Yeah. It's essentially it's an iTunes SEO tool that can track where your podcast ranks in iTunes for a particular keyword.
There's lots of these type of tools for Google. So, you know, if you're a donut shop, you want to rank for the word donut in your city. So you could type in the word donut in Austin, Texas, and then it would basically tell you, oh, you're number 3 when you you're the 3rd listing on Google when someone types that in in Austin, Texas. I noticed there's nothing like that for Itunes, and I think that's something that could be addressed, you know. So, for instance, this podcast, it would probably be Python or developer or engineering. Like, any of those words would be very good words to basically put into Podbuzz and then let, the tool basically track your ranking over time. It will also basically reverse engineer what keywords other podcasters are using.
So maybe there's, there's a podcast that's also about Python and maybe, if you research them, you could basically figure out what keywords they're ranking well for. And if there's something that you're not if there's a keyword that you're not using, it might be a good idea to also use that keyword. So I have that tool, and then I also have another tool that will take, it basically generates a shareable video from clips of your podcast. So you basically can upload an MP 3, and then it basically shows you a waveform of your MP 3, and you can select sections on a Web GUI tool. And you can type in some text for a caption.
And what it'll do is it'll, basically generate a video of a waveform of the slice of the m p 3 that you selected, and it'll throw that text on there and you can share it on Facebook, Twitter, Instagram, YouTube. For the for those of you that are familiar with Canva, it's sort of like that, but it's more for video. And I've noticed there's, some people doing this that are, like, in the public radio space that sort of have this, and they seem to get really good engagement numbers. So I figure why not offer this to just the, normal podcaster, if you will. Also, I think a tool that might be useful is something kind of like Calendly, which, if you don't know, it's a tool that allows you to sort of fix the process of figuring out how to schedule a meeting with someone. You can basically send them a link and then they can see the times, which you're available.
And they just select the time that works for both of you. And then Calendly will basically remind both people that are in the meeting, or if there's multiple people, multiple people will get this email. And, it's just a very useful tool. You don't have to it saves basically all the time that you would have to go back and forth. So I'm kinda making a tool that's just for podcasters. So you can basically find people to, interview on your show. You can use it to book, basically, schedule a time with them. It'll basically send automated emails with, you know, instructions on how your podcast is run, what info you need from them, do you need a headshot.
So, it's really taking like a kind of a general software as a service product and niching it down into a problem that's, like, really something that podcasters, may want to may want to use. So, that's kinda my approach on the features that I'm building. I think I once heard a phrase on the Internet Business Mastery Podcast, I think that's what it's called. They basically have this phrase that goes rip, pivot, and jam. So you look at an idea that's, you look at something that's already out there on the Internet. It could be a service, it could be a project, or whatever it is. You kind of look at it and you say, how can this apply to something I'm interested in? I was interested in a podcast, and I've seen review aggregator tools out there for Yelp. So I said, okay.
I'm gonna, like, rip that. I'm gonna pivot it toward podcasters, and then I'm gonna jam it into the market. And it it seemed to work. So if you're if you're ever, you know, thinking, oh, man. Like, I wish I had a side project or, I wish there is a way I could take my skills and then turn into something that would, you know, provide, like, sort of a a side business or a side income. That's a really interesting strategy I've I've come across.
[00:22:04] Unknown:
And particularly given the fact that you're choosing podcasters as your niche and your target audience, it sort of validates the fact that podcasting has become 1 of the big new media trends that's driving a lot of innovation and interest even from larger media companies. So I'm wondering if you have any thoughts or feelings on what is contributing to that popularity.
[00:22:30] Unknown:
Oh, the serial podcast for sure. It's it's pretty much so the the main demographic of podcasts, essentially white males that have gone to college, and that number is not decreasing. It's increasing. Obviously, people seem to think that's the right path to take nowadays, but I guess I guess the real reason is it's just a really good medium. And, Alex Bloomberg actually covered this sort of pretty well in his keynote talk at Podcast Movement this year. And I believe he was basically trying to communicate that radio has been a lost art. You know, before TV, radio was the big thing.
And people would tune in every night and listen to these really compelling stories, these mystery stories, and, news stories, and all sorts of things. And when TV came along, it really kinda stunted the the, innovation and the the creativity of the of the medium. So now that podcast has sort of emerged, what's happened is is just like YouTube, it's provided a way for people that have ideas and thoughts and something to something to talk about. They they basically are empowered to create these, you know, works of art and then distribute them without any sort of big media company, involved. There's no there's no middleman. Whatever you wanna say, you can put it out there.
So I think, you know, there's there's always a podcast for someone. No matter what you're interested in, there's something out there. And I think people are just, you know, they're just discovering that whatever they're interested in, they can they can find it and get involved in that community. So I would probably say it's mostly the the opportunity to connect with people that you wouldn't necessarily be able to find a community for.
[00:24:20] Unknown:
I think another thing that's contributing to it as well is that the overall infrastructure and process of producing, but also more importantly consuming podcasts has become a lot easier than when they first became a thing where you had to have an MP 3 player that you could download the media onto your computer and then sync to the MP 3 player if you want to listen to it away from your desk. And now with the ubiquity of smartphones and tablets and apps that allow you to just automatically download that media to your device, it makes it a much, lower barrier to entry and much less friction. And it also plays into the modern lifestyle of people being able to consume the content that they want when they want rather than being tied to a particular broadcaster lot of it at the time when it's aired, then you can just listen to it when it's convenient for you.
[00:25:16] Unknown:
Absolutely. This American Life is a perfect example of that.
[00:25:19] Unknown:
Yeah. I listen to Wait Wait Don't Tell Me as a podcast every week because I'm usually not able to catch it at 11 in the morning on a Saturday when it's aired, but I can download it and listen to it on my way to work.
[00:25:31] Unknown:
Yeah, definitely.
[00:25:33] Unknown:
And in addition to the work that you've been doing with Podbuzz for being able to increase the number of reviews and overall visibility of a podcast, you're also working on launching another product called Castalytics for being able to track the metrics associated with the podcast. I don't know if you can dig a bit into what of metrics are important and the, you know, a little bit of the background of the platform that you're trying to build out.
[00:25:59] Unknown:
It's interesting you brought that up because that's actually what I was I ventured out to build that first, and then I pivoted away from that to Pod Buzz. And, in fact, I actually took down the website, the, DigitalOcean droplet, I think, probably the same day you signed up, probably hours before, but I hadn't seen that email, that you signed up for the email list. But I guess the Castalytics, the original idea was is there's basically a lack of analytics and especially granular analytics and podcasting. You know, no 1 knows really how many people are listening. You only kind of know how many people have downloaded your MP 3. No 1 really knows how many people, listen to the whole the whole episode or when people stop listening to the episode.
So, for instance, YouTube creators, they don't have that problem. They can see exactly where their content is falling short and, you know, do something about it. They can they can not do that kind of, that video again, that type of video, or not discuss that topic. And, overall, it just allows them to kind of better tailor their content to the audience they're trying to reach. And, that's something that podcasters need as well. Or at least that's what I thought, and I still do think that. However, there's a serious technical problem with providing that sort of analytical data. People download podcasts over HTTP.
HTTP wasn't designed with analytics in mind. It was designed very practically by engineers. So the problem is that the majority of people that download podcasts are they download on their iPhone or their Android phone. The the root of the problem is that podcast apps download in chunks. So they use the HTTP byte offset mechanism. So imagine you having a very, you know, antiquated Android phone that's on a 2 2 g connection, it's going to be downloading a podcast over probably a day or something, like, if it's downloading in the background. And it's gonna be downloading in very, very small chunks. You know, that basically makes it pretty hard to figure out if it's 1 person downloading the file or if it's, like, 10 people downloading the file. Because they could be switching from WiFi to, a cellular network, you know, to to a hotspot to, you know, whatever. So you can't really key off of, you know, like an IP address. You need you need something a little bit more static, like, obviously, MAC address would be useful, but you can't that's also not really something you can always do or rely on. Yeah. I mean, there's, like, there's, like, kind of a couple questions that podcast just want answered. It's sort of, are people lacking my content? Where are they, getting bored? Where are they getting excited?
And are they listening to my ads? Because it's really important that, obviously, you're providing value to your sponsors. So those kind of questions are are pretty compelling, from a business point of view or from just, supporting your podcast point of view. So, really, the only way that I've found to get that data is to basically heartbeat, use a heartbeat technique. So, unfortunately, that's only possible on a web browser or through an app where you can have some sort of mechanism that's playing back the audio, it will take note of when you're playing and pausing and skipping or reversing through con you know, going backwards and relistening to something. So you need basically a custom podcast player to to track those metrics. And, I've I've reached out to a couple different podcast app engineers or podcast app creators, you know, overcast and downcast, and they don't seem very interested in that. And I don't blame them 1 bit because they, you know, want their users to trust them. And I'm sure most people would feel kind of violated if there there was analytics being collected and sold to someone else, really, without their permission.
Know, it's just a lot of people are security minded and, privacy minded nowadays. So yeah. So, really, if you if if you were wanting to solve this problem, I would suggest making a a podcast web player that would be embeddable, you know, via WordPress or just maybe some sort of, JavaScript snippet that a podcaster can paste on their website. And that would basically play the podcasts and you could then relay those analytic points back to some place that you've set up. Sort of interesting, but I'm not sure anyone's gonna solve it anytime soon because of just how HTTP is built.
[00:30:36] Unknown:
Yeah. It's kind of the catch 22 of the media amend its popularity. And that part of the reason that it scales and is able to grow so well is because of the fact that it's so open where you just have an audio file that somebody downloads and they listen to, and then they can redistribute that to other people. So that makes it easier to grow organically, but it also means that you don't have any great insight into what your growth looks like or what your audience looks like and things like that. So it prevents a lot of the traditional business models where you do, for instance, like a pay per click because there's no way to create an analog of a click when you're dealing with audio and freely distributed audio at that, unless you, like you said, wanted to restrict your playback to a medium that you control, whether it's by a custom mobile application or a web player and essentially adding DRM to it, which is somewhat anathema to a lot of particularly independent podcasters.
Though there have been some recent moves in the space, particularly with Stitcher to go that direction where you control the entire distribution channel end to end in order to be able to get that analytics feedback so that the advertisers and bigger companies can monetize podcasts?
[00:31:50] Unknown:
That's right. There's actually 1 1 instance that I know of in particular that is, is doing this, and that's, NPR. They have an app called NPR 1, and they are, seriously tracking everything you could ever wanna know or collect on, podcast listening behavior. They have a really good, engineering team over there at NPR, and they're doing some very interesting things. 1 project that I know of that they're doing is called Dovetail, and they're basically doing some interesting things with ads. So let's just say they, they're basically generating an MP 3 on the fly. So when your podcast app goes to download, it will look at your IP address and then decide, based on your location, which ad to serve.
So they have, like, maybe 4 or 5 kind of, like, ad clips, and then they'll splice it in into different places inside of an m p 3 of a podcast, and they'll serve it to you. And it's, like, it's, it's called dovetail. Obviously, that comes from woodworking when you're trying to put 2 pieces of wood together in a very, strong and, it's a joint for furniture. But, yeah, the idea is they're just trying to AB test ads and try to optimize the ad for the listener. So that could be on ZIP code. Right? They can take their IP address and then convert that into a ZIP code through US Censa data. And from there, I mean, you know, see what happens. But, yeah, they had a they had a very interesting talk at PodcastMufin about about their, engineering efforts at, NPR.
[00:33:28] Unknown:
Yeah. It's definitely an interesting problem space, and given the fact that we're producing a podcast, 1 that's pretty close to home for us. So it's definitely good to see people continuing to innovate and try to solve some of the existing problems. And I think that Podbuzz is a pretty interesting offering in the space for being able to sort of control your reputation and get a broader sense of feedback and try and encourage people to read reviews to make your podcast easier to find. So are there any other topics that you wanted to cover before we close out the show? I don't think so. Great. So for anybody who wants to follow you and keep up to date with what you're working on, what would be the best way for them to do that?
[00:34:08] Unknown:
I would say on Twitter. So I don't really have a personal Twitter, but I do have 1 for Podbuzz. It's spelled podbuzzz. That's 3 z's. The reason is because podbuzz, with 2 z's, dotcom was $2, 000 and, adding an extra z made it $12, so I chose the 3 z's. So Podbuzz on Twitter. And, yeah, that's probably the best place to to reach me. You can also reach me at kyle@podbuzz.com. And I encourage you to to sign up and just check it out if you're just interested in the in the service and how it works, and, feel free to reach out.
[00:34:49] Unknown:
Yeah. It's a pretty interesting product. I actually came across it while I was looking through some of the different WordPress plugins for podcasting and decided to give it a shot. And, that's how we ended up with this interview. So thank you for taking the time out of your day to join us on that.
[00:35:04] Unknown:
Oh, sure. Yeah. I wasn't sure if that, WordPress plugin would ever result in anything, but it was a it was a fun couple hours to to hack it together.
[00:35:13] Unknown:
So, with that, I'll move us on into the picks. My pick this week is a band called Thank You, Scientist that I discovered via Spotify. They're an interesting sort of mixed genre experimental musical group. They've got a lot of really interesting sounds to them and they're pretty well composed and executed. So definitely recommend taking a look at them. And with that, I'll pass it to you, Chris.
[00:35:36] Unknown:
Thanks, Tobias. I just have 1 pick this week. It is a movie called hell or high water with Jeff Bridges and a number of other lesser known actors. I walked in thinking this was going to be an action film and kind of, an entertaining romp, and it wasn't. It was actually a rather deep exploration of, morality, the morality around capitalism versus poverty and justice. It was really interesting. I I highly recommend it. Kyle, do you have any picks for us?
[00:36:07] Unknown:
Yeah. I have a couple. The the first 1 I have is, it's a Udacity course. Actually, it's a a it was, like, it's what they call a nano degree from Udacity. It's for learning how to become a self driving car engineer. So I think it's couple $100, a semester. But if you're really interested in getting into the space of self driving cars, it's apparently all the rage right now, especially on Hacker News. So if you wanna, you know, join in that conversation and join in the industry, I would, recommend checking out that self driving car, Udacity course.
I have 2 podcasts, startups for the rest of us, 0 to scale. And, the last thing I have would be a a pretty neat service. It's a speech to text API called Speechmatics. They basically have a Python library that very easy to use. You can pass it to m p 3, and then it'll give you a really well done transcript that's, also time aligned. So it'll actually tell you, you know, at what point in time people were were speaking and, it recognizes different speakers. So they have a pretty cool speaker recognition algorithm. And it's actually something I'm using in in Podbuzz. I have a feature that is, will basically give you an instant transcript of your episode.
And by the way, I have 1 of those for y'all, at the end of this episode. I, up uploaded episode 74, and, I'll send you the results after this.
[00:37:42] Unknown:
That's actually something that I've been looking into a bit more recently. So, thank you for pointing that 1 out. I'll have to check it out some more. Yep. Alright. Well, thank you again for taking the time out of your day to join us and talk to us about Podbuzz and podcasting and some of the different challenges that go along with it. I think that it's made for a pretty interesting conversation, and, I certainly got a few interesting bits and pieces out of it. So I hope everybody else did as well. Thanks. Cheers. Alright. Have a good night.
Hello, and welcome to podcast. Init, the podcast about Python and the people who make it great. I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. You need a place to run your awesome new Python apps so check out our sponsor Linode at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual server for your next project. You want to make sure your apps are error free so give our next sponsor Rollbar a look. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastcenter to get 90 days 300, 000 errors tracked for free on the Bootstrap plan.
You can also visit our site at pythonpodcast.com to subscribe to our show, sign up for our newsletter, read the show notes and get in touch. And by leaving a review on iTunes or Google Play Music, it becomes easier for other people to find us. You can also join our community at discourse.pythonpodcast.com to help us grow and connect our wonderful audience. Your host, as usual, are Tobias Macy and Chris Patti. And today, we're interviewing Kyle Martin about his project Podbuzz. So Kyle, could you please introduce yourself?
[00:01:21] Unknown:
Hey. Sure. So I'm an iOS software engineer at a company called SuperShuttle. It's a service that's been around a lot longer than Uber, but we specialize in scheduled rides to the airport and back. I'm the lead iOS engineer on the driver operations app. So you can kind of think of that as, like, Uber's driver app, but it's a little bit more complicated from a business operations point of view.
[00:01:45] Unknown:
So how did you get into Python?
[00:01:48] Unknown:
I started playing with Python in college. I was studying electrical engineering at the time, and I didn't really like the syntax of VHDL. For for those that don't know, that's a hardware description language. It's kind of like code that you can write that describes how hardware should behave. And when you compile it, or what's called synthesize it, it will output logical gates that, is actually hardware. So I really didn't like the syntax of the HDL. I came from a C Java background. So I looked at Python, you know, it seemed interesting to me. It seemed very straightforward.
So I decided to kind of embark on a little project. What I did is I basically made a transpiler. At the time, I didn't know even what a transpiler was, or even if have 1 had existed. But I kind of said to myself, well, I don't like how the VHDL is, so I'm going to write my own syntax for it. So I wrote a Python script that would basically interpret my version of VHDL and then transpile it into true VHDL. And then, I would paste that into Xilinx and, then complete my, project for my course in college. My other experience with Python was when I was taking a graduate course. It was sort of a unofficial, course. I was just I was an undergrad, but, I was really interested in the topic of computational electromagnetics.
And I had talked to my professor about it, and he said, well, why don't you just come, you know, come join us and, do a little bit of research with us? So, I joined them, and my professor was studying computational, electromagnetics from the point of view of, how it behaves on the human body, particularly in in medical devices. So we are using MATLAB, and, again, coming from a Java background, I really didn't like the syntax of MATLAB. I felt that it was not really for me. So I convinced my professor to let me, work in Python.
So we implemented a lot of interesting algorithms, you know, just, something called, like, particle swarm optimization and, simulated annealing and some other things. Yeah. I really I really like that, it's, you know, studying, electromagnetics and getting a chance to kinda play around with Python and, solve some cool problems with that.
[00:04:15] Unknown:
Yeah. That sounds like some pretty interesting projects, and I can remember trying to battle with VHDL when I was dealing with it. So having a different syntax to work with would have been nice.
[00:04:27] Unknown:
Yeah. Certainly. Maybe just some curly braces, you know, would would make it a lot more familiar.
[00:04:31] Unknown:
Yeah. Boolean algebra is not exactly the most intuitive thing when you're trying to figure out how to parse that into logic gates.
[00:04:40] Unknown:
Yeah. Certainly not.
[00:04:43] Unknown:
And so you ended up using Python to start a side project that you called pod Buzz. So could you explain a bit about what that is?
[00:04:53] Unknown:
Sure. Yeah. So Pod Buzz is essentially a iTunes review aggregator. 1 thing that I found really interesting about, you know, podcasting and iTunes is when you're when you're looking at your reviews on the iTunes page, you really you actually only see your reviews in the country that iTunes is configured in. So if you're in the US, you only see US reviews about your podcast. But it turns out there's a 158 other countries. So, I was just talking to a lot of podcasters. You know, I have some friends that podcast, and they seemed like it seemed like that was 1 of their pain points. So I thought it would be a cool project just to, you know, write a tool that would aggregate, all of those reviews from every country, and then throw it into a nice dashboard, and then let podcasters sort of see where they can improve. And, also, just, you know, it's it's really good and really fulfilling to get feedback from your listeners. So it just seems like a kind of an interesting project to me.
[00:05:55] Unknown:
So, can you explain why you ended up choosing Python as the language for building the Podbuzz service?
[00:06:02] Unknown:
Yeah. I was looking for something simple and straightforward, and most importantly, no magic. I looked at other frameworks, Ruby on Rails and some others, and I just I liked Python, and I wanted something simple, so I went with Flask. The whole app is implemented in Flask with the blueprint pattern. And I just also wanted to learn more of the DevOps side of things. So going with Python, it seemed like a natural choice, considering that a lot of DevOps tools are, also written in Python.
[00:06:34] Unknown:
And what have been some of the biggest engineering challenges that you've had to tackle in the process of building your platform?
[00:06:40] Unknown:
So 1 of the things was basically scaling. I mean, I have about 800 podcasters now, and I I scrape a 158 countries for every podcast, every day. And not just just scraping data and, you know, seeing what's new. It's also, you know, running a custom significant phrase extraction algorithm. You can kind of think of that like Yelp. So I I really admired how Yelp basically extracted, useful information for restaurants and other businesses. And I wanted to provide that same thing to podcasters so they can kind of just get, an overall sense of what are they doing right, and then what are they, you know, how can they improve. So it was just sort of, that's also was just sort of an interesting problem for me to, look into and learn from.
So really it was just how do I get this thing stable in production? And how do I build something that's scalable and is fast. So that's probably the the gist of it. Also, I really liked, you know, learning Docker. I just use this as an opportunity to to learn Docker and, figuring out how to set up as a smooth deployment process. So I literally have a command on my local machine where I can just type in deploy, and it will, you know, look for changes in my git repo, notice which which the code that was changed, it'll notice how that, like, how that maps to a certain containers that I have in my production environment.
And it'll deploy those, those new, containers out, into production. So if not, you know, if if anything, this this project has been more or less just a a way to learn new, you know, new techniques and sort of like modern development skills.
[00:08:32] Unknown:
And are you running those Docker containers on any of the schedulers, like Kubernetes or Mesos or anything like that?
[00:08:40] Unknown:
It's just I have 5 containers, and they're just on a single digital ocean box. I will get to a point where I need to basically use Docker Swarm to move out to more, you know, move the workers off of 1 single machine and into, you know, several machines?
[00:09:01] Unknown:
I think it's really interesting how how the whole containerization revolution has really simplified the process of configuration management and deployment for a lot of people. Can you give us so maybe a Docker eye view, like what are the components of your system and and how did they come together to make, Podbuzz work?
[00:09:23] Unknown:
Okay. So I have 1 Docker container that just is a web server. It has nginx, and then it reverse proxies to gunnichorn, which is running the Flask web server app. And then I have a couple workers. I have an email worker, so every night, I will look for new reviews in the database, and then I'll loop through, and simply email each podcaster, that has new reviews. And I'll say, hey. You got 2 new reviews, and here they are. It's very straightforward for them, and they actually probably never need to go back to the app at this point. So I have an email worker. I have a scheduler, which schedules the the scraping workers to kick off at noon every day.
That was pretty much an arbitrary choice of time. It just kind of worked out with my schedule so I could check-in in production once in a while to make sure everything was running. I have a couple other workers. I have a what's called a media worker. That is basically something that will generate videos and do some other interesting things with audio and video. Those are that's actually for some features that I'm working on and are in beta right now. So I have several workers and then a web server, and, I'm trying to think of anything else.
[00:10:44] Unknown:
That that's fine. I mean, feel free to if you have additional details, but I was just curious about sort of like a component level view. When you say workers, are those salary workers?
[00:10:53] Unknown:
That's exactly right. Yeah. They're they're Celery workers, and then the, the work queue is actually, on Mongo DB. So I'm using a free service called MongoLab, which offers a pretty much a pretty generous free plan. It's 500 megabytes, and that's where everything in my database is is stored. And I also use that as a a way to persist the the queue. Perhaps not the most efficient or real time solution, but for what I'm doing, it works perfectly fine. So I highly recommend Mongo MongoLab, or I think they've even changed their name to MLab now. And yeah. So I'm using Celery workers, and, nothing nothing too crazy there. Just, Celery heartbeat scheduler that kicks off the, emails every night, and it also kicks off the scraping. And then any 1 off things like, for instance, when you when you sign up for the service, I ask you for your podcast Itunes URL.
So, you put that in, and then I'll kick off a 1 off salary job to just pull in all those reviews from all the countries, and then it sends you an email when it's done with all the reviews.
[00:12:11] Unknown:
And so it's definitely an interesting project and an interesting problem space, but what made you want to provide it as a service as opposed to just releasing it as a set of tools that people could run on their own?
[00:12:23] Unknown:
The, the the first thing is, I mean, most podcasters aren't that tech savvy. They are very, you know, they're very competent computer users, but I wouldn't say they're not necessarily going to download an open source project and set it up. They much rather use something that's just sort of free and, does something cool for them. So the other thing is is, I, you know, I've been listening to a lot of bootstrapped software entrepreneur podcasts. Things like, 0 to Scale is a great podcast, and also Startups for the Rest of Us is probably the most popular 1. So those really inspired me to go with something that I could just, you know, potentially monetize in the future. Right now, my strategy is just to be free and have a tool that's basically better than any other podcast tool out there.
And, learn from the people in the community. And, and then eventually move into more of a monetized solute you know, monetized, podcast tool. So yeah. I mean, I just I just love podcasts, and I want to get into the So it seems like it seems like a good way to to get started, you know. I know how to write code, and, yeah, I just I just wanted to pretty much get into the industry.
[00:13:37] Unknown:
And another part of the service that you're offering is a widget that people can place on their websites that encourages people visiting the page and listeners to rate the podcast in iTunes. So I'm wondering if you can dig into a bit why iTunes ratings are important for podcasts to be able to gain visibility and, some of the other goals that podcasters might be looking to attain with their show?
[00:14:02] Unknown:
Okay. Well, before I answer that, first thing you need to do is stop and go rate this podcast right now. It's that important. And the reason is is iTunes uses the, amount of reviews and the, the rate, the acceleration at which you're, getting reviews in order to determine your ranking. So if you get a lot of reviews at once, that's very good for your for your visibility inside of Itunes. The other thing is is if you like the show, then, you know, you should leave some feedback and let them know what they're doing right and how can they improve. You know, this is a very asynchronous process, so it's, it's something that I that I see as very important. And, you know, just like you like getting feedback, podcasters love getting feedback, and it keeps them keeps them going.
[00:14:51] Unknown:
Yeah. To add to that a bit too, iTunes is still largely the backbone of the entire podcast infrastructure where they serve as the location that a lot of other podcast applications will pull their feeds of, you know, all the episodes that are available for a given itunes provides for a given podcast will also reflect in a lot of the other services and podcast apps that you view. So when you're looking at, you know, new and noteworthy or top trending podcasts, the number of iTunes reviews that you get is 1 of the key indicators of what will cause a podcast to end up in 1 of those top ranked lists so that other people will find them if they're not directly looking for your show in particular. So in order to be able to grow your audience, having a lot of reviews, like you said, particularly in a in a short time frame will allow a podcast to hit that top ranking so that other people will be able to see it if they're just browsing through it, looking for something new to add to their, subscriptions.
[00:15:52] Unknown:
That's right. And, also, reviews provide social proof. So if you're not sure about a podcast, you're on the the fence, and you see a lot of good feedback, that's gonna make someone wanna listen a lot more.
[00:16:05] Unknown:
Speaking of which, our rating on iTunes is unfortunately kinda not amazing. And, part of that is is our own fault. When we first started out, we had a lot of audio problems and I think a lot of people reviewed us back then, and we haven't had a lot of people reviewing us recently. So if you like the show and would be willing to, that would be fantastic. We really appreciate it. And especially if you like the show, but, reviewed us early on when our audio was terrible and hopefully you think it's gotten better, we've worked really hard to make that happen. Maybe consider dropping us a new review, and, we'll see what we can do about that rating.
[00:16:41] Unknown:
So you mentioned that you have some additional features that you're looking to add to the service. I don't know if you are at a point where you can discuss some of them or talk about what you're hoping to grow your service into.
[00:16:54] Unknown:
Yeah. A lot of these a lot of these things I'm gonna share are already developed. I'm just getting ready to launch an email campaign for all my beta testers, to get them in and test out the tools, kick the tires, and, see how it can help them grow their their audience. The first tool is, like, an iTunes SEO, inspector, if you will. So it can you can basically type in your podcast or paste in your iTunes URL, and then it will sort of reverse engineer what keywords your podcast is ranking well for. I spent a considerable amount of time trying to figure out what iTunes uses to rank. What are they keying off of. And then, also looking at, like, other similar podcasts to see, you know, just pulling a lot of data to just figure out what keywords would be would be best for you to, to rank for. So, yeah. I basically have a tool that will rank that will basically you can Yeah. It's essentially it's an iTunes SEO tool that can track where your podcast ranks in iTunes for a particular keyword.
There's lots of these type of tools for Google. So, you know, if you're a donut shop, you want to rank for the word donut in your city. So you could type in the word donut in Austin, Texas, and then it would basically tell you, oh, you're number 3 when you you're the 3rd listing on Google when someone types that in in Austin, Texas. I noticed there's nothing like that for Itunes, and I think that's something that could be addressed, you know. So, for instance, this podcast, it would probably be Python or developer or engineering. Like, any of those words would be very good words to basically put into Podbuzz and then let, the tool basically track your ranking over time. It will also basically reverse engineer what keywords other podcasters are using.
So maybe there's, there's a podcast that's also about Python and maybe, if you research them, you could basically figure out what keywords they're ranking well for. And if there's something that you're not if there's a keyword that you're not using, it might be a good idea to also use that keyword. So I have that tool, and then I also have another tool that will take, it basically generates a shareable video from clips of your podcast. So you basically can upload an MP 3, and then it basically shows you a waveform of your MP 3, and you can select sections on a Web GUI tool. And you can type in some text for a caption.
And what it'll do is it'll, basically generate a video of a waveform of the slice of the m p 3 that you selected, and it'll throw that text on there and you can share it on Facebook, Twitter, Instagram, YouTube. For the for those of you that are familiar with Canva, it's sort of like that, but it's more for video. And I've noticed there's, some people doing this that are, like, in the public radio space that sort of have this, and they seem to get really good engagement numbers. So I figure why not offer this to just the, normal podcaster, if you will. Also, I think a tool that might be useful is something kind of like Calendly, which, if you don't know, it's a tool that allows you to sort of fix the process of figuring out how to schedule a meeting with someone. You can basically send them a link and then they can see the times, which you're available.
And they just select the time that works for both of you. And then Calendly will basically remind both people that are in the meeting, or if there's multiple people, multiple people will get this email. And, it's just a very useful tool. You don't have to it saves basically all the time that you would have to go back and forth. So I'm kinda making a tool that's just for podcasters. So you can basically find people to, interview on your show. You can use it to book, basically, schedule a time with them. It'll basically send automated emails with, you know, instructions on how your podcast is run, what info you need from them, do you need a headshot.
So, it's really taking like a kind of a general software as a service product and niching it down into a problem that's, like, really something that podcasters, may want to may want to use. So, that's kinda my approach on the features that I'm building. I think I once heard a phrase on the Internet Business Mastery Podcast, I think that's what it's called. They basically have this phrase that goes rip, pivot, and jam. So you look at an idea that's, you look at something that's already out there on the Internet. It could be a service, it could be a project, or whatever it is. You kind of look at it and you say, how can this apply to something I'm interested in? I was interested in a podcast, and I've seen review aggregator tools out there for Yelp. So I said, okay.
I'm gonna, like, rip that. I'm gonna pivot it toward podcasters, and then I'm gonna jam it into the market. And it it seemed to work. So if you're if you're ever, you know, thinking, oh, man. Like, I wish I had a side project or, I wish there is a way I could take my skills and then turn into something that would, you know, provide, like, sort of a a side business or a side income. That's a really interesting strategy I've I've come across.
[00:22:04] Unknown:
And particularly given the fact that you're choosing podcasters as your niche and your target audience, it sort of validates the fact that podcasting has become 1 of the big new media trends that's driving a lot of innovation and interest even from larger media companies. So I'm wondering if you have any thoughts or feelings on what is contributing to that popularity.
[00:22:30] Unknown:
Oh, the serial podcast for sure. It's it's pretty much so the the main demographic of podcasts, essentially white males that have gone to college, and that number is not decreasing. It's increasing. Obviously, people seem to think that's the right path to take nowadays, but I guess I guess the real reason is it's just a really good medium. And, Alex Bloomberg actually covered this sort of pretty well in his keynote talk at Podcast Movement this year. And I believe he was basically trying to communicate that radio has been a lost art. You know, before TV, radio was the big thing.
And people would tune in every night and listen to these really compelling stories, these mystery stories, and, news stories, and all sorts of things. And when TV came along, it really kinda stunted the the, innovation and the the creativity of the of the medium. So now that podcast has sort of emerged, what's happened is is just like YouTube, it's provided a way for people that have ideas and thoughts and something to something to talk about. They they basically are empowered to create these, you know, works of art and then distribute them without any sort of big media company, involved. There's no there's no middleman. Whatever you wanna say, you can put it out there.
So I think, you know, there's there's always a podcast for someone. No matter what you're interested in, there's something out there. And I think people are just, you know, they're just discovering that whatever they're interested in, they can they can find it and get involved in that community. So I would probably say it's mostly the the opportunity to connect with people that you wouldn't necessarily be able to find a community for.
[00:24:20] Unknown:
I think another thing that's contributing to it as well is that the overall infrastructure and process of producing, but also more importantly consuming podcasts has become a lot easier than when they first became a thing where you had to have an MP 3 player that you could download the media onto your computer and then sync to the MP 3 player if you want to listen to it away from your desk. And now with the ubiquity of smartphones and tablets and apps that allow you to just automatically download that media to your device, it makes it a much, lower barrier to entry and much less friction. And it also plays into the modern lifestyle of people being able to consume the content that they want when they want rather than being tied to a particular broadcaster lot of it at the time when it's aired, then you can just listen to it when it's convenient for you.
[00:25:16] Unknown:
Absolutely. This American Life is a perfect example of that.
[00:25:19] Unknown:
Yeah. I listen to Wait Wait Don't Tell Me as a podcast every week because I'm usually not able to catch it at 11 in the morning on a Saturday when it's aired, but I can download it and listen to it on my way to work.
[00:25:31] Unknown:
Yeah, definitely.
[00:25:33] Unknown:
And in addition to the work that you've been doing with Podbuzz for being able to increase the number of reviews and overall visibility of a podcast, you're also working on launching another product called Castalytics for being able to track the metrics associated with the podcast. I don't know if you can dig a bit into what of metrics are important and the, you know, a little bit of the background of the platform that you're trying to build out.
[00:25:59] Unknown:
It's interesting you brought that up because that's actually what I was I ventured out to build that first, and then I pivoted away from that to Pod Buzz. And, in fact, I actually took down the website, the, DigitalOcean droplet, I think, probably the same day you signed up, probably hours before, but I hadn't seen that email, that you signed up for the email list. But I guess the Castalytics, the original idea was is there's basically a lack of analytics and especially granular analytics and podcasting. You know, no 1 knows really how many people are listening. You only kind of know how many people have downloaded your MP 3. No 1 really knows how many people, listen to the whole the whole episode or when people stop listening to the episode.
So, for instance, YouTube creators, they don't have that problem. They can see exactly where their content is falling short and, you know, do something about it. They can they can not do that kind of, that video again, that type of video, or not discuss that topic. And, overall, it just allows them to kind of better tailor their content to the audience they're trying to reach. And, that's something that podcasters need as well. Or at least that's what I thought, and I still do think that. However, there's a serious technical problem with providing that sort of analytical data. People download podcasts over HTTP.
HTTP wasn't designed with analytics in mind. It was designed very practically by engineers. So the problem is that the majority of people that download podcasts are they download on their iPhone or their Android phone. The the root of the problem is that podcast apps download in chunks. So they use the HTTP byte offset mechanism. So imagine you having a very, you know, antiquated Android phone that's on a 2 2 g connection, it's going to be downloading a podcast over probably a day or something, like, if it's downloading in the background. And it's gonna be downloading in very, very small chunks. You know, that basically makes it pretty hard to figure out if it's 1 person downloading the file or if it's, like, 10 people downloading the file. Because they could be switching from WiFi to, a cellular network, you know, to to a hotspot to, you know, whatever. So you can't really key off of, you know, like an IP address. You need you need something a little bit more static, like, obviously, MAC address would be useful, but you can't that's also not really something you can always do or rely on. Yeah. I mean, there's, like, there's, like, kind of a couple questions that podcast just want answered. It's sort of, are people lacking my content? Where are they, getting bored? Where are they getting excited?
And are they listening to my ads? Because it's really important that, obviously, you're providing value to your sponsors. So those kind of questions are are pretty compelling, from a business point of view or from just, supporting your podcast point of view. So, really, the only way that I've found to get that data is to basically heartbeat, use a heartbeat technique. So, unfortunately, that's only possible on a web browser or through an app where you can have some sort of mechanism that's playing back the audio, it will take note of when you're playing and pausing and skipping or reversing through con you know, going backwards and relistening to something. So you need basically a custom podcast player to to track those metrics. And, I've I've reached out to a couple different podcast app engineers or podcast app creators, you know, overcast and downcast, and they don't seem very interested in that. And I don't blame them 1 bit because they, you know, want their users to trust them. And I'm sure most people would feel kind of violated if there there was analytics being collected and sold to someone else, really, without their permission.
Know, it's just a lot of people are security minded and, privacy minded nowadays. So yeah. So, really, if you if if you were wanting to solve this problem, I would suggest making a a podcast web player that would be embeddable, you know, via WordPress or just maybe some sort of, JavaScript snippet that a podcaster can paste on their website. And that would basically play the podcasts and you could then relay those analytic points back to some place that you've set up. Sort of interesting, but I'm not sure anyone's gonna solve it anytime soon because of just how HTTP is built.
[00:30:36] Unknown:
Yeah. It's kind of the catch 22 of the media amend its popularity. And that part of the reason that it scales and is able to grow so well is because of the fact that it's so open where you just have an audio file that somebody downloads and they listen to, and then they can redistribute that to other people. So that makes it easier to grow organically, but it also means that you don't have any great insight into what your growth looks like or what your audience looks like and things like that. So it prevents a lot of the traditional business models where you do, for instance, like a pay per click because there's no way to create an analog of a click when you're dealing with audio and freely distributed audio at that, unless you, like you said, wanted to restrict your playback to a medium that you control, whether it's by a custom mobile application or a web player and essentially adding DRM to it, which is somewhat anathema to a lot of particularly independent podcasters.
Though there have been some recent moves in the space, particularly with Stitcher to go that direction where you control the entire distribution channel end to end in order to be able to get that analytics feedback so that the advertisers and bigger companies can monetize podcasts?
[00:31:50] Unknown:
That's right. There's actually 1 1 instance that I know of in particular that is, is doing this, and that's, NPR. They have an app called NPR 1, and they are, seriously tracking everything you could ever wanna know or collect on, podcast listening behavior. They have a really good, engineering team over there at NPR, and they're doing some very interesting things. 1 project that I know of that they're doing is called Dovetail, and they're basically doing some interesting things with ads. So let's just say they, they're basically generating an MP 3 on the fly. So when your podcast app goes to download, it will look at your IP address and then decide, based on your location, which ad to serve.
So they have, like, maybe 4 or 5 kind of, like, ad clips, and then they'll splice it in into different places inside of an m p 3 of a podcast, and they'll serve it to you. And it's, like, it's, it's called dovetail. Obviously, that comes from woodworking when you're trying to put 2 pieces of wood together in a very, strong and, it's a joint for furniture. But, yeah, the idea is they're just trying to AB test ads and try to optimize the ad for the listener. So that could be on ZIP code. Right? They can take their IP address and then convert that into a ZIP code through US Censa data. And from there, I mean, you know, see what happens. But, yeah, they had a they had a very interesting talk at PodcastMufin about about their, engineering efforts at, NPR.
[00:33:28] Unknown:
Yeah. It's definitely an interesting problem space, and given the fact that we're producing a podcast, 1 that's pretty close to home for us. So it's definitely good to see people continuing to innovate and try to solve some of the existing problems. And I think that Podbuzz is a pretty interesting offering in the space for being able to sort of control your reputation and get a broader sense of feedback and try and encourage people to read reviews to make your podcast easier to find. So are there any other topics that you wanted to cover before we close out the show? I don't think so. Great. So for anybody who wants to follow you and keep up to date with what you're working on, what would be the best way for them to do that?
[00:34:08] Unknown:
I would say on Twitter. So I don't really have a personal Twitter, but I do have 1 for Podbuzz. It's spelled podbuzzz. That's 3 z's. The reason is because podbuzz, with 2 z's, dotcom was $2, 000 and, adding an extra z made it $12, so I chose the 3 z's. So Podbuzz on Twitter. And, yeah, that's probably the best place to to reach me. You can also reach me at kyle@podbuzz.com. And I encourage you to to sign up and just check it out if you're just interested in the in the service and how it works, and, feel free to reach out.
[00:34:49] Unknown:
Yeah. It's a pretty interesting product. I actually came across it while I was looking through some of the different WordPress plugins for podcasting and decided to give it a shot. And, that's how we ended up with this interview. So thank you for taking the time out of your day to join us on that.
[00:35:04] Unknown:
Oh, sure. Yeah. I wasn't sure if that, WordPress plugin would ever result in anything, but it was a it was a fun couple hours to to hack it together.
[00:35:13] Unknown:
So, with that, I'll move us on into the picks. My pick this week is a band called Thank You, Scientist that I discovered via Spotify. They're an interesting sort of mixed genre experimental musical group. They've got a lot of really interesting sounds to them and they're pretty well composed and executed. So definitely recommend taking a look at them. And with that, I'll pass it to you, Chris.
[00:35:36] Unknown:
Thanks, Tobias. I just have 1 pick this week. It is a movie called hell or high water with Jeff Bridges and a number of other lesser known actors. I walked in thinking this was going to be an action film and kind of, an entertaining romp, and it wasn't. It was actually a rather deep exploration of, morality, the morality around capitalism versus poverty and justice. It was really interesting. I I highly recommend it. Kyle, do you have any picks for us?
[00:36:07] Unknown:
Yeah. I have a couple. The the first 1 I have is, it's a Udacity course. Actually, it's a a it was, like, it's what they call a nano degree from Udacity. It's for learning how to become a self driving car engineer. So I think it's couple $100, a semester. But if you're really interested in getting into the space of self driving cars, it's apparently all the rage right now, especially on Hacker News. So if you wanna, you know, join in that conversation and join in the industry, I would, recommend checking out that self driving car, Udacity course.
I have 2 podcasts, startups for the rest of us, 0 to scale. And, the last thing I have would be a a pretty neat service. It's a speech to text API called Speechmatics. They basically have a Python library that very easy to use. You can pass it to m p 3, and then it'll give you a really well done transcript that's, also time aligned. So it'll actually tell you, you know, at what point in time people were were speaking and, it recognizes different speakers. So they have a pretty cool speaker recognition algorithm. And it's actually something I'm using in in Podbuzz. I have a feature that is, will basically give you an instant transcript of your episode.
And by the way, I have 1 of those for y'all, at the end of this episode. I, up uploaded episode 74, and, I'll send you the results after this.
[00:37:42] Unknown:
That's actually something that I've been looking into a bit more recently. So, thank you for pointing that 1 out. I'll have to check it out some more. Yep. Alright. Well, thank you again for taking the time out of your day to join us and talk to us about Podbuzz and podcasting and some of the different challenges that go along with it. I think that it's made for a pretty interesting conversation, and, I certainly got a few interesting bits and pieces out of it. So I hope everybody else did as well. Thanks. Cheers. Alright. Have a good night.
Introduction to Kyle Martin and Podbuzz
Kyle's Journey into Python
Overview of Podbuzz
Choosing Python and Engineering Challenges
Docker and Deployment
Service vs. Open Source
Importance of iTunes Ratings
Future Features of Podbuzz
Podcasting's Popularity and Infrastructure
Introduction to Castalytics
Closing Remarks and Contact Information
Picks of the Week