Wrestling with our company's growth
Today's episode is brought to you by our friends at Balsamiq. This is the company I want Transistor to be like when it grows up. What I like most is that they truly care about people's success. You can see it in a bunch of the initiatives they run. For example, they give $350,000 a year for sponsoring events, which is crazy.
Justin:They donate their time to give career advice, and they have lots of free resources about UI and UX design on their website. But what I appreciate the most is that they don't build their product for the customers, but with their customers. They like to say that they are not metric driven, but people driven. And that's something I've always really valued myself. Now if you'd like to help make balsamic wireframes better and help them shape the future of wireframing, you can join their customer advisory board.
Justin:All you have to do is go to balsamic, that's balsamic with a q, dot com slash support slash make us better.
Jon:Hey, everyone. Welcome to build your SaaS. This is the behind the scenes story of building a web app in 2019. I'm John Buda, a
Justin:software engineer. And I'm Justin Jackson. I do product and marketing. Follow along as we build. Transistor dotfm.
Justin:I know Chris has been putting the robot voice back in.
Jon:Oh, yeah?
Justin:Yeah. Nice. Our our fans demand things, and we listen.
Jon:Demand robot Justin?
Justin:Yeah. By the way, I'm getting a little bit worried. Chris Chris is getting pretty popular as a podcast editor. Guy. I just hope he doesn't forget where, you know, the the little people on his way up.
Jon:We gotta we gotta lock him down. Get him on a contract.
Justin:Yeah. For a lot of people ask about, you know, his work and, yeah, he's editing Chartable Radio now, Maintainers Anonymous, which is a podcast on transistor.
Jon:Nice.
Justin:CodePen Radio. He's he's, like, edits a lot of really cool shows. So, yeah, we're just happy to have him.
Jon:That's awesome. I know last episode we talked a little bit about, bread and software development
Justin:Yes.
Jon:And how they might be similar. Mhmm. I don't have any more insight into that, but Baker that I sort of apprenticed under
Justin:Yes.
Jon:Which I did a few years ago during the summer on the weekends, He just won a James Beard award for best, baker in the country, which is like, it's like the Oscars for food. Yeah.
Justin:That's crazy.
Jon:Kinda nuts. So, can
Justin:And that's like your sensei. That's like your, your Obi wan.
Jon:So congrats to him even though he doesn't listen to this. Why Why is
Justin:it why isn't he listening?
Jon:I don't know.
Justin:We've mentioned bread now twice. He's
Jon:not building a sass. He's building a a real a real store.
Justin:A real thing. Things. Man, there's some things, you know, I whenever I feel like maybe building software is hard, I look at other things
Jon:Yeah.
Justin:And I go, it's not nearly as hard as
Jon:It's true.
Justin:I know that Alex Ohanian, who's married to Serena Williams so Alex Ohanian is the founder of Reddit. Serena Williams is an amazing tennis player. Alex said that, you know, he thought he used to say that people in tech worked hard, and then he got married to Serena. And he's like, we do not work hard.
Jon:Yeah. No. No. No. Those professional athletes are that's intense.
Justin:And this kind of dovetails actually into something I've been thinking about lately. It it just came to me, I think, yesterday. I was at home and talking with my wife about some things and oh, yeah. Because we got some feedback from folks that were, like because remember last time I talked we talked about, like, if someone offered us 5,000,000, would we take it? I was I was thinking more about that and and clarifying my thinking a bit more.
Justin:And partly, I think I just feel like our current rate of growth is really nice.
Jon:Mhmm.
Justin:Like, it feels manageable that we, you know, we last month, we had our best month ever. We did I think we added 29100 in new MRR. So that's 20 that's up 28.6% month over month.
Jon:It is when you look at that chart, it is a very manageable steady slope.
Justin:Yeah. Yeah. If you go to our our metrics republic, if you go to transistor.bearmetrics.com, and you look at monthly recurring revenue, I mean, 25% is a big jump, but the the slope is just very gradual. Mhmm. There's there's nothing it it's not like it's taken off like a rocket ship.
Justin:You know, obviously, I'd like it if transistor could pay full time salaries for you and I right now.
Jon:Right.
Justin:Obviously, you know, that would be awesome. But there's something about this sustainable rate of growth that feels good. I wake up in the morning. There's 10 support tickets waiting for me. I go through those, and then I think, okay.
Justin:What do I wanna work on today? And I, you know, write a bunch of documentation, or I work on something on the marketing site. But it all feels sustainable. It doesn't feel like, you know, I'm holding on for dear life or something.
Jon:It might feel slightly different for me. Not that I'm holding on for dear life, but that it's, like, slightly less sustainable just because I'm I'm, you know, working a full time job during the day.
Justin:Because you're working full time. Yeah. Well, just imagine though how different it could be. I was listening to this interview with Paldi, the founder of Balsamiq, and, it's on indie hackers. And he described his launch like, holding on to a rocket ship by his fingernails.
Jon:That sounds terrifying.
Justin:Like, he was working full time for Adobe. They launched, and then he said he just didn't he wanted this little one person software company.
Jon:Mhmm.
Justin:And it just took off so fast that he basically, I think he's just feeling like he's catching up now. You know you know, like, when you're sitting in a Tesla and someone, like, slams on the not the gas, but the accelerator, and it feels like it takes a while for your stomach to catch up.
Jon:Right.
Justin:I think that's how it felt for him launching. Like, he just, like, put this thing onto the world, and all of a sudden, it was, like, off into space. And
Jon:I don't I don't think I would like that if that's what happened with us.
Justin:Yeah. Well, that's what I'm that's kinda what I'm feeling. It's just, you know, I I hear these stories of other folks that are building startups. And that's the great thing about business is, I mean, it depends on a lot of factors. Largely your market that you're in, you know, demand in that market.
Justin:Lots of factors. But, you know, you can largely depending on if those if there's enough demand, you can build the company kind of how you want. And when I see people adding, you know, more people hiring like crazy, and then once they've hired a bunch of folks, they have to add more processes. Processes?
Jon:Processes. Yeah. Processes? More process. I don't know.
Justin:And you have to have 1 on 1 meetings. You and you know this. You you're managing a team right
Jon:now. Right.
Justin:It it gets complicated.
Jon:Yeah. Plus plus, I think with that type of fast growth, you're probably more apt to get into the, like, the VC cycle, right, where you're like, oh, we need to raise money because it's moving like crazy. We need more people. We need more money. I think you're I don't know.
Jon:It's just a guess that people are probably a little more prone to, jumping into the investment world.
Justin:Well yeah. And, I mean, some people love that too. I I was listening to Bootstrap Web, which is Jordan Gall and Brian Kasel. And, Jordan is building cart hook. Oh, we went to his office in Portland.
Justin:And he just loves building this team. Like, he feels like the ecommerce niche that they're going after is just in a massive opportunity. And so they keep going in and out of profitability. They'll hit profitability, And then, basically, they'll risk hiring a bunch more people, and they'll become unprofitable again with the hopes that those people will help them ship faster, capture more of the market, you know, move faster than their competitors, all of those kinds of things. And that's great.
Justin:Like, he that is he's definitely built for that. I guess part of my struggles was sometimes, like, I wonder, like, should we be like that? Or, you know, because it it right now, it just does feel like this is growing at a nice rate right now. And, you know, it's gonna take some time for it to pay our full time salaries, but we're getting there. And I would much rather have this than one or than the other options, which is, you know, Paldi just holding on for dear life, or Jordan who's, like, trying to, you know, grow and then basically risk.
Justin:Like, we're gonna take on investment and other things and maybe go into debt or whatever so we can hire more people. Yeah. What are your thoughts on that? Like, what are some of your what's your thinking around growth and Yeah. I how fast we should be growing?
Jon:I mean, I I really have liked the the steady growth. Like, I'm I don't know. I'm still waiting for, like, a spike or a dip or something to slow down. Mhmm. And I don't I don't I don't really foresee a spike.
Jon:I don't know if there will be a dip or a slowdown or when that would happen. Well, Well,
Justin:eventually, it probably will.
Jon:It probably will. But, I mean, I I I've honestly never really been part of a a fast growth company that was just, like, a madhouse. Right? I I have a lot of friends that have been, and it sounds, like, not that desirable to me.
Justin:You know? Like,
Jon:some people some people, it was manageable because, the management of the company sort of, you know, ran things well, and everyone remained calm. Mhmm. But the I think that was a company that was, like, profitable from the get go. It wasn't like, you know, they were losing money and needed to raise money or, hit certain targets just to make sure that they can keep moving forward. Yes.
Jon:So in that sense, I guess, that that particular company was, like, a little more sustainable because they they were profitable.
Justin:Mhmm. What do you think about because that brings up a good point. Because part of my aversion to growth, especially growth for growth's sake, it you just you're adding so many dependencies.
Jon:Right.
Justin:So, like, let's say that the podcast pie is 10 pieces, and we have one slice right now. And so we're like, we've gotta get, you know, we've gotta get more pieces of the pie. And so we hire a bunch of people. We invest a bunch more in advertising. We we just really try to juice our growth.
Justin:Mhmm. And, you know, because of that, it means we have to build an office, and then we need to start filling our tax forms for everybody. We need an accountant. We need someone in finance. We need, you know, we get sued a couple times.
Justin:We there's all these things that happen. Right?
Jon:Well, that's how you know you're a successful startup.
Justin:Is that once you've been sued? But we could juice it. We really could. Like, I feel like you and I have the ability to do that.
Jon:Could turn on we could have a free plan right now, which I'm sure tons of people would sign up for, but then we have to support that. I think I would rather, you know, keep keep this slow growth in mind or steady growth. And instead of trying to get a bigger necessarily a bigger slice of the podcast pie Mhmm. Which sounds disgusting. I I think I would rather build our service so that our current customers can sort of, like maybe we add value so that they can get more benefit out of what we offer, but maybe move up to a different tier.
Jon:Right? So, like
Justin:Yes. Yeah. Yeah. We've got a lot of opportunity there.
Jon:Yeah.
Justin:Just hold that first thought for a sec because I wanna close this other thread, which is you build up all of that machine. And then our job is to just keep that machine running. All we think about when we go to bed is we gotta keep the machine running. When we wake up in the morning, we're like, oh my god. There's 20 people here.
Justin:We gotta pay all these people. Yeah.
Jon:I mean, yeah, they need insurance. We gotta pay them. They're we're supporting them and their families. Yeah. That's that's entirely different ballgame.
Justin:I think part of my struggle is sometimes I think, well, am I being selfish for not wanting that? Like, maybe we should be juicing growth just so that we can hire more people.
Jon:I don't know. I I don't I guess, depends what we want. I I don't think we want that, so we might as well just be honest. I mean, eventually, yeah, we'll probably hire people. I was talking to a friend of mine about this and, you know, about the the prospect of of going full time and and, like, what that would take and how things would change.
Jon:And he made a good point that, he's like, the company's doing great as it is now. And you're not working full time whenever that happens, like, make sure you keep the same constraints. Mhmm. And that might include growth, but that that that also includes, like like, we only talk once a week. Right?
Jon:And it's been working. So, like, maybe that's a constraint we keep or we maybe we talk we record once and we have one meeting for, like, planning or something once a week or whatever, or maybe not even that much. But but I think that that sort of ties into the whole the whole growth thing too is to keep in mind, like, I don't know, how how you want your life to be like if you're working on it full time and and how growth ties into that. And
Justin:Oh, totally. Yeah. Well, there's actually two parts of that. One is when you're talking about growth, sometimes growth is just unhealthy.
Jon:Right.
Justin:It's just not helpful. Like, you can add 10 people, but only get one person's worth of work out of those 10. Mhmm. You know what I mean? You can there there's, like, this tension between you know, if we add one person that add that doesn't just add one person's level of complexity to our business.
Justin:It actually adds just as much complexity as we'd have with 10 people.
Jon:Right.
Justin:So for us to move from 2 cofounders to 2 cofounders and an employee, that's, like, that's not just a little bit of complexity. That is a lot of complexity. I I think sometimes people don't explore. Right now, we're we we're 2 people exploring this cave. And, you know, there could be this this is my metaphor might break down, but, like, it feels like I don't really wanna get more people in the cave until I've really had a chance to explore it.
Justin:Just us too. Yeah. Like, maybe we don't need more people.
Jon:It might be a small cave.
Justin:It might be a small cave.
Speaker 3:My favorite, my favorite part about the show
Justin:is me like coming up with a metaphor off the top of my head. And then
Speaker 3:you sometimes just going with it. That's good.
Jon:Yeah. I like it. They're good metaphors.
Justin:But you're right. Like, it might it might be it might sometimes people over optimize too fast. They think, well, the solution has gotta be we throw more people at this, and then we'll we'll necessarily, it'll be better. Right. But just think about, you know, like, there's so many things that could happen.
Justin:Like, we add a bunch of people, and then all of a sudden, there's a recession.
Jon:Mhmm.
Justin:It's just we the the more we try to juice the growth, it feels like the more just, like, complexity and dependency and anxiety, and there's just more that can go wrong. Where right now, we have this healthy buffer of growth is good. We're gonna get to full time income when we get there. And if we lost 10% of our customers, you know, let's say I mean, obviously, I want us to grow until we hit, I don't know, let's say 50 k a month. Yeah.
Justin:But if we lose 10% of our customers overnight when we hit 50 k, it would be like, it's okay. We'll be fine. Yeah.
Jon:As long as that trend doesn't continue.
Justin:Yeah. But yeah. I mean, honestly. But I'm just saying, like, the there's something about all of that that and maybe it's because I'm reading this Walt Disney book right now, and it's just talking about him staffing up and how, like, well, like, Disney Studios is just, like, unprofitable, unprofitable, unprofitable because they just need so many animators to especially when they start working on Snow White. And just the amount of stress it put on Roy and Walt.
Justin:And, you know, there's so much in their history of them getting sick. And I just I'm like, oh, God. If I can avoid that, I would be okay with with that, you know. Let's just pause here. I wanna I wanna give a shout out to Clubhouse.
Justin:Well, we're gonna let this ruminate while I talk about Clubhouse. They've sponsored us again for May. This is how you know if people love or hate their project management software. I just just now, I went on Twitter and I searched Clubhouse. The first tweet I see is from Abel.
Justin:He says simply, I'm in love with Clubhouse. Who says that about their project management software? Yeah. No. No one.
Justin:Completely separate tweet thread. And these folks are both replying to folks that are on Jira. Uh-huh. And Jared Palmer, we use Clubhouse and love it. That kind of love, you can't you can't fake that.
Justin:And we've been using Clubhouse. We really like it too. It is project management software that's a delight to use. They just launched today. They didn't tell me to talk about this, but they just launched a new Slack community where you can meet and talk with other Clubhouse users.
Justin:They're doing a bunch of stuff around community now. You should really check them out. When you sign up with our special code, you get 2 months free. Go to clubhouse.io/
Jon:bill. Nice. I wonder what their, I wonder what their growth is like because because they feel like I'm, like, flew under the radar for a while. They've been around for a little like, a couple years, I think. But it's just been, like, slowly churning, like, cranking away and adding, like, cool features.
Jon:Mhmm. Yeah. I wonder.
Justin:Yeah. Yeah. I mean, the there's a lot of companies that I think are just, you know, slow and steady, slow and steady. And, again, I think folks can do whatever they want. Like and sometimes you can't do what you want.
Justin:Like, Balsamic's a good example. He just launched it, and he didn't have a choice. The thing was, like, freaking crazy. Right? But sometimes you get, you know, you get in the water, you get in the river, and the river's just flowing really nice.
Justin:And you can paddle pretty hard, and you can make pretty good, you know, progress. And I don't know if we there's this other, quote I talk about all the time. Actually, this is a perfect illustration for growth versus non growth or juicing growth. So, I'm born in 1980. The what year did Dookie come out?
Justin:Was that 2,003? Sorry. 2003. 1993. So 1994 is when it came out.
Justin:February 1st.
Jon:You're talking about the Green Day album?
Justin:The Green Day album. Yeah. Okay.
Jon:You said Dookie. I I say Dookie. Dookie.
Justin:Oh, you say Dookie.
Jon:I guess it's a Canadian American thing, I guess.
Justin:No. I probably am saying it wrong.
Jon:Mhmm.
Justin:Anyway, 1994. How do you say
Jon:it? Dookie. Although I say cookie. So
Justin:Oh my god. Know. There are there's there are, like,
Jon:a thousand language.
Justin:There are thousands of punk rock fans just screaming at our podcast play right now. Dookie. That album comes out in 94. And, you know, punk rock, kinda has its next wave. Right?
Justin:And I remember loving that album. Green Day is still to this day one of my favorite, bands. But what was great about punk rock was there's all these great smaller bands that you could get into. Right? Mhmm.
Justin:And, like, Noah Fax. You know, there's just this I I used to go to the record store and buy those, like, fat records compilations, and you'd get, like, high standard and, like, all of these great bands on one album. But when Dookie came out, it really that really kinda propelled this this new wave of punk rock into the mainstream. And you had bands that were previously kind of indie, like Offspring. They really start to juice it.
Justin:They they sign with a bigger record label. That their album, Smash Goes Crazy. They're selling millions of records. And at the same time, you've got Fat Mike, who's the founder of the band, NOFAX, and the founder of Fat Records. He decides to just stay the course.
Justin:So Green Day is playing arenas. He's still playing small little venues. Offspring is doing, like, a 20 arena tour. He's still going town to town in a punk rock van and playing, you know, still sizable venues, but 500 people, a 1000 people, that kind of growth. In a article, an interview, which I'll link to in the show notes, someone said, hey.
Justin:Do you ever regret not capitalizing on that punk rock, crazy punk rock wave when it was happening? And he was, like, fuck no. He's, like, look what happened to offspring. He's, like, offspring can't even play casinos now. Right?
Justin:They just became kind of a joke. Yeah. I mean, he's he's a little bit harsh, but but he's saying no effects. We're still playing the same venues that we've always played. We go on tour.
Justin:We sell out our tours every year. We put out an album. Our fans line up to buy an album. So not juicing growth, not taking, like, you know, jumping on it and saying we have to. But look at all this opportunity.
Justin:Punk rock is growing like crazy. We've just gotta capture as much of this attention as we can. He was like, no. We're just gonna keep growing the way we're growing and, you know Yeah.
Jon:I like that. That'll be that. A good analogy.
Justin:I mean, he has tons of other personal problems and vices, but it's a good illustration, I think. Yeah. There's I think there's some wisdom to that that, again, in some way, like, Green Day, it it worked for them. They, you know, they have been riding that mainstream wave for a long time. And in some ways, like Fat Mike, I think he said, they got lucky.
Justin:Like, they they put out this huge album, and then, you know, they didn't have another big hit until American Idiot came out. That was a long time. Like, American idiot came out when that was during Bush.
Jon:Well yeah. Yeah. Greendale, they evolved, though. I mean, they did. You know?
Jon:They went to, like, punk opera, rock opera as yeah.
Justin:But it it might not have worked is the point. Right? Like, Warning, which I think is their best album, was right after Dookie, and it was, like, a acoustic album did terrible. And so that was a big experiment that didn't work out. Right?
Justin:So from 94 to then 2004 when they released American Idiot, they were kind of just, like, everyone's hoping that they have another massive hit.
Jon:Right.
Justin:And they got it. They got lucky, which gave them you know, it probably gave them another decade. So, obviously, there's all sorts of ways to do this. And, obviously, you know, these are just anecdotes. But I do think about it a lot.
Justin:And it seems a lot of it comes down to what do we want.
Jon:Yeah. I think yeah. What do we want? What do we want? I think we know what we want.
Justin:And, I mean, this can change, but for now, I'm just I am like, I'm continually surprised every month. We've got new customers signing up. It's crazy to me.
Jon:Yeah. It is. I mean, we get these emails from ProfitWell that are, like, you're, you know, 23% through the month and 46 percent ahead of your goal. I'm just, like, what? How does this keep happening?
Justin:Yeah. And, honestly, like, it feels like we're making like, I I'm not gonna be able to do this forever probably, but right now, somebody signs up for $19 a month, and I am helping them so much. Yeah. Like, I'm I'm really like, I'm helping them customize their website. I'm, you know, helping them promote their show on our Instagram and our Twitter.
Justin:I'm making special clips for them. I'm giving them advice. I'm I'm recording individualized screen casts. Like, we are really able to give a high level of service to our customers.
Jon:Right.
Justin:Because I love our customers. I just I get so excited when I see someone launching a show. If tomorrow, I had a 100 Kayako tickets, like, customer support tickets as opposed to 10, that's a whole new game, isn't it? Yeah.
Jon:That's like, oh, that's a weight on just like a weight on your shoulders.
Justin:And if all of a sudden you have to shard the database every week
Jon:You know, you say that you say that jokingly, but that is actually a good solution to problems like like we were having.
Speaker 3:Yeah. Well, see, I mean,
Justin:it just becomes a different life then.
Jon:Yeah.
Justin:Right. Like, if you're Twitter's engineers when Twitter was taking off, what a crappy life.
Jon:Yeah. I mean, they're working their ass off to fix stuff, probably just getting, like, angry customers all the time
Justin:Yeah. For a
Jon:thing that's free.
Justin:Oh, yeah. And, I mean, this is why, you know, I've been listening to this Honey Badger podcast quite a bit. It's just 3 founders working away on their thing. And, man, it's it sounds like they really are able to serve the customers at a high level. But at the same time and they they're concerned about marketing and growth.
Justin:Like, they're investing in it. That's one reason they're doing their podcast. On the other hand, they seem to have a great life.
Jon:Yeah.
Justin:They they go to work every day. They get to do work that they like, but then they get to walk their kids to school. They can take time off. It's they get to work with people they like.
Jon:It's not not a not a bad gig if you can get it.
Justin:Not a bad gig if you can get it. And so I think there is something smart about being mindful about this because too many people take the de facto, well, we gotta grow, we gotta hire.
Jon:Right.
Justin:Well, maybe we don't. Like that pinboard dude, he's been solo forever, hasn't he?
Jon:Think so. That said, like, if somebody came along who was, let's say, just a crazy expert in the podcasting world and or a a developer that was just like, I have these ideas like that Mhmm. You know, maybe maybe you take them on as, like, another, like, founder or early, you know, give them some equity and, like, maybe we could work something. If it's like, we have to have this guy or something or or person, either way.
Justin:Yeah. I mean, although it all depends on whether it aligns with what you want.
Jon:Right. Right.
Justin:Which is why I think I think it is hard. Like, I know friends who have businesses, and amazing people show up at their door, and they're like, well, I've gotta hire them.
Jon:Mhmm.
Justin:There's something about having amazing people show up at your door and also being like, well, I could hire them, but that might just take me and the company to a place where I don't wanna go.
Jon:Yeah. For sure.
Justin:And maybe it's a mistake. Like, I I would I'm happy to hear from listeners. Like, maybe
Jon:I mean, you know, don't hire anyone if you can't afford it. But
Justin:Yes. Obviously. But maybe but maybe not being focused on growth is a mistake. Like, there's folks on Twitter that have told me, like, if you don't grab it while you can, there's, like, you have this window. Right now, trans Transistor is new.
Justin:You're the new kid on the block. But pretty soon, you're not gonna be the new kid on the block anymore. Someone else is gonna come along
Jon:Mhmm.
Justin:Who becomes the fresh new podcast hosting and analytics platform. And that that new car smell that you guys have, you know, it'll be gone. And you you'll have missed your window. You should have grabbed as much of as many of the cookies as you could while you had the chance.
Jon:Oh, capitalism.
Justin:So I don't know. I'd be interested in hearing listeners thoughts on this.
Jon:I would say if we if we grew too fast and it affected customer service, then I would not be okay with that.
Justin:Yeah. Exactly. Alright. Let's let's change gears. Why don't you talk give a little update on the, the analytics?
Justin:Yeah. So because we talked about that last week.
Jon:Last week, and it was not going great.
Justin:I kinda feel better about it. Do you feel bet like, I feel more calm.
Jon:I do. Yeah. Yeah. I think it turned out alright. I I did sort of a a deep dive into a lot of things.
Jon:That that helped out quite a bit. So, as we mentioned last week, I was in the process of, like, reanalyzing all of our previous downloads in our system.
Justin:Yeah. For analytics.
Jon:For analytics purposes.
Justin:Yeah. Our customers get podcast analytics on how many people have downloaded the show, all that stuff.
Jon:They listen from, what they used to listen to it, stuff like that. So we we have been wanting to sort of update our analytics so that it would weed out, obviously, bad or not bad, like, bots and things like indexers that are indexing RSS feeds that that might have hit an MP 3 file. It got tracked as a download, but really wasn't from a person. Like, no one listened to that. Right?
Jon:So there's
Justin:Yeah.
Jon:There are ways to detect these things. There's just, like, a lot of different, user oh, the user agent strings, which are what identify the particular device or or a piece of software that's listening to a MP 3 file. Mhmm. There's a lot of those that, like, really don't tie to a specific app necessarily. It's not easy to tell.
Jon:So we found this or you found, by way of someone else, this GitHub repository, that PRX, the public radio exchange, started and people have contributed to, which is sort of like a just a huge list of podcasting apps and web browsers and user agent strings and these regular expressions they have set up to sort of detect if it's a bot so that it's a download you can sort of discard. So we pulled that in and ended up reworking a bunch of the code to detect, those types of apps, and it's also now detecting the operating system that was used and the device type. So it's either, like, a mobile, device or a mobile browser or a desktop browser or a smart speaker or a a Yeah.
Justin:That's cool.
Jon:Watch or something like that.
Justin:Refrigerator?
Jon:Yeah. Sure. Refrigerator. Yeah. Light bulb.
Jon:I don't know. So
Justin:I just want podcasts in all my things.
Jon:Yes. Everywhere. So so last week, we're I was at a point where I was, like, rerunning these things was just really slow.
Justin:Yeah.
Jon:And I was kind of hitting my like, bang my head against the table coming up with a solution to this.
Justin:Metaphorically. Metaphorically.
Jon:Yeah. Mostly metaphorically. And, really, what turned out happening was that I was missing a couple of indexes in our database that really helped out a lot.
Justin:How'd you how'd you figure that out?
Jon:Well, there's there's a bunch of tools you can use with, for Postgres and MySQL that kind of, like you can run, an explain or analyze query against an actual database query, and it sort of explains to you how the database itself is doing these lookups. Like, how many rows is it scanning? Does it have to, like, loop back and scan again to, like, filter out stuff? But it also tells you what particular indexes it's trying to use. So in this case, it was just using, like, the wrong index or an index that isn't quite accurate enough.
Jon:So we have a we have a table that sort of distills down downloads into downloads per day, per episode, per type of analytics. So it's, like, per for this day, for this episode, a hundred people listened on Apple Podcasts.
Justin:Yes.
Jon:So when we were doing a bunch of lookups, it was just, like, wasn't using an index to sort of filter out the type of daily analytic it was. So it was just looking through way too many records. So I added, what what's called, like, a Postgres partial index.
Justin:Okay.
Jon:That just is a much more accurate smaller index, so it's faster to scan. Once I did once I did that, it, really sped things up. So now, like, it it it took a while. There were a couple, like, false starts. I I started with our show just to make sure it worked.
Jon:Mhmm. Everything now is reanalyzed, and only a few customers noticed that there there was actually a small drop in overall downloads, but that's from us throwing out, like, obviously bad bad downloads. Like
Justin:Yeah.
Jon:Not real people downloads. Yeah. Everyone was, like, pretty, you know, understanding about it.
Justin:Yeah. Yes. Especially once I I I think the hardest thing for me was just creating language around it. Like, I had to do a bunch of research on bots and, like, how does this happen? Why does this happen?
Justin:And then once I was able to get the language to go, you know, this is just something we're gonna be chasing our whole time.
Jon:Yeah. I mean, it's yeah. It's, it's sort of like an endless battle because there's always a new podcasting apps that you need to add to your detection.
Justin:Yeah. And I mean, go go into your Google Analytics folks and look at all of the spam, refers you have in there. Yeah. Like, Google cannot Google can't figure this out. I think, actually, podcasters have a better chance because, just there's less less places traffic can come come from.
Jon:Yeah.
Justin:And so I think we'll be able to stay on top of it better than other folks.
Jon:Yep.
Justin:And there's definitely some hosting providers that are less worried about this, but I think you and I have always felt like we wanna give people as accurate a picture as we can Mhmm. About what's really going on with their show. And also to say, like, if you have 20 listeners, that's amazing.
Jon:Right.
Justin:And we have customers who have, you know, a 100 regular listeners, and they get a great return on their podcast. I know that sounds funny. Like, people everyone wants thousands and thousands of listeners, but there are, you know, there are musicians on our platform that have 500,000 followers on Twitter and are you know, they're getting less of a return from their podcast than folks that have a 100 regular listeners.
Jon:So, yeah, I'm I'm pretty happy where it ended up. It actually fixed a lot of problems and kinda got us to a point where we're, like, one step closer to this IAB compliance, which is the, what, Internet advertising? What is it? Bureau or It's something?
Justin:What are they called? Interactive Advertising Bureau.
Jon:That was way off. Cool.
Justin:I mean, you you were pretty close.
Jon:Close, I guess.
Justin:You had bureau.
Jon:Bureau. Yeah. That was a guess. So we're, yeah, we're one step closer to to, like, complying with them so that we could, you know, eventually move into, getting our certification or
Justin:something.
Jon:Yeah. But, also, like, what this ended up doing was and I think this is kind of, like, a good a good, example of, like, not prematurely optimizing stuff? Because, like, I could've Mhmm. I could've spent time before we launched trying to make the analytics page, like, as efficient and optimized as possible and as fast, but I didn't like, I knew they were gonna probably be problems. Right?
Jon:So, you know, once I picked up this this story about redoing all the analytics, like, I it was a good time to sort of revisit how, fast our analytics pages are.
Justin:Mhmm. So
Jon:I actually reworked a lot of that. So every so everyone's analytics pages are now going to be much, much faster, through a combination of, like, caching ahead of time and also, like, those missing indexes that I talked about in the database. So it should be very quick. But it also since we added in new data, like the OS and the device type, Mhmm. Sort of, like, the next step is reworking the analytics pages to to, like, surface a lot of that information and provide more insight into, like, how people are listening and then, like, when they're listening.
Jon:And Yeah. So Awesome. So yeah.
Justin:So there we go. You know? From frustration and and despair to breaking through on the other side.
Jon:Like, that's, a good description of software development. Usually, it's frustration and anger and despair, and then you hit you, like, find a solution to something, you're like, oh, that's okay.
Justin:Frustration, anger, despair, breakthrough. That's maybe that'll be the title. Yeah. We actually got some questions on Twitter from Jared, Mapplethorpe, Cameron Kales, and Tim Smith. Tim says, I'd love to hear how you get the word out on transistor and what you do in your moments of feeling in doubt.
Justin:Oh, man. We've talked about that a lot on the show. Our our biggest acquisition channel by percentage is, affiliates. Right? And actually, Jared Mapplethorpe, that was his question as well.
Justin:But we do a lot of content marketing. John and I both had networks that we've used. We've told everybody we know. One of my tricks is I just am continually putting out stuff. I'm always talking about what we're doing, even if it's just showing, you know, like this podcast, showing what we're working on, continually sharing little insights.
Justin:And so that transistor is top of mind for folks. Cameron wants to know how that meeting go with that big huge company I mentioned last week. That was interesting. They're a big conglomerate, and, they're wanting to get into podcasting. And so the the person I talked to was mostly just trying to figure out, you know, what the landscape was like and, you know, considering us as a, you know, a future partner.
Justin:But I basically told him, like, we might not be sophisticated enough for what they wanna do. And, you know, we're okay with that too. So yeah. It was it was good meeting. Alright, man.
Justin:Why don't we go through our Patreons?
Jon:Sounds good. Yeah. Thanks as always to our supporters on Patreon for making this show possible. We got Miguel Pedrafita.
Justin:Yeah. I love it when you sit
Jon:down here. Shane Smith, Austin Loveless, Simon Bennett, Corey Haines, Michael Sitwer, Paul Jarvis, and Jack Ellis, Dan Buddha, my brother.
Justin:Atdanbudda.com. I actually had a little conversation about his website Oh. On Twitter today. Nice. Yeah.
Justin:Cool. He said it's not built in Gatsby. It he's he's gonna he's and he's rebuilding it. You gotta stay tuned, folks. He's rebuilding it in something else.
Justin:So Nice. Go check it out.
Jon:Cool. Our buddy Darby Frey.
Justin:Yeah.
Jon:Samori Augusto, Dave Young, Brad from Canada, Kevin Markham, Sammy Schuichert, Dan Erickson, Mike Walker, Adam Devander, Dave Giunta.
Justin:Junta, who you just got to hang out with.
Jon:Yeah. It's been a while. Got to catch up with Dave. Kyle Fox, get rewardful.com, and our sponsors, Clubhouse and Balsamiq.
Justin:Thanks again for listening, and we'll see you next week.
Jon:I'm gonna go listen to some Green Day.
Justin:Dookie.
Jon:Dookie.
Justin:Dookie? Dookie. What did I say? Dookie. Dookie.
Jon:Dookie. Dookie.
Justin:Oh, man.