How to monetize your side project for fun & profit

This video features Wilhelm Klopp at DjangoCon Europe 2024 in Vigo, Spain.

How to monetize your side project for fun & profit
0:35:02
Published July 10, 2024
715 views

Talk: How to monetize your side project for fun & profit by Wilhelm Klopp

https://pretalx.evolutio.pt/djangocon-europe-2024/talk/QQGHXX/

Summary

Wilhelm Klopp argues that monetizing a side project is mainly a distribution problem, not a pricing problem. He recommends starting with a simple product, one reliable channel, and a clear business value—ideally something that saves customers time or money—while keeping a day job, shipping early, charging as soon as possible, and treating competitors as validation. He illustrates this with Simple Poll, which grew through Slack’s app directory before becoming a full-time business, and then explains why Colo is currently focusing on automatically generating Django integration tests as a more urgent “painkiller” than its earlier code-visualization features, with monetization planned after the product proves its value.

Key takeaways

  • A dependable distribution channel can matter more than having the best product, and demand and revenue usually grow gradually rather than appearing at launch.
  • The stair-step approach is to start with a simple product and one marketing channel, build enough income and experience to reclaim your time, and only then pursue a larger SaaS business.
  • Search, platform marketplaces, email, and useful content can provide sustainable distribution, while paid advertising is better saved for a product and channel that already work.
  • Products are easier to sell when they act as painkillers by solving an urgent problem or saving customers time or money.
  • Keeping a job while developing a side project provides stability and forces prioritization; businesses are generally more attractive customers than consumers.
  • Colo is prioritizing automatic Django integration-test generation because it addresses a recurring, immediate problem, while postponing monetization until it creates significant value.

Summarised automatically from the transcript.

Transcript

6,963 words · auto-generated Show

Automatically transcribed, so expect mistakes in names and technical terms.

0:01

Good afternoon everyone. Hello. Can you hear me alright? Can you hear me if I stand like here? Okay. So I don't want to be like I need to see my laptop somehow. Um how are you all doing today? Today. Do you have are you having a nice nice Django con? Yeah, really. Woo! Nice. It's not every day you have a conference where you can just look out into the ocean. It's very nice. Cool. So um I'm here to talk about how to monitor. your side project and I'm very excited to give this talk. I was looking through the schedule and realised I get to be the guy that gives the like business talk at the tech conference, which um is a is an honor. And we actually have quite a lot to get through. So hopefully hopefully We can make it all through.

0:46

Um, so a little bit on me, I love building side projects. So uh here's some of like what I've worked on in the past. I've always kind of had a main gig and then a side project happening at the same time. Uh simple poll is one of the most popular apps for Slack. And it's been a side project for a long time. Then it became my main business for or my main my main thing, my main job for uh quite a few years with uh Colo becoming a side project for SimplePol. Uh and then as of a few months ago I now worked full time on on colo. Um more on colo in a little bit, but basically what we're focusing on is uh helping you automatically generate uh Django integration tests. And we're also sponsoring the conference as colo. So you might have seen our booth uh Downstairs.

1:31

Alright, I wanna ask uh we'll start with a few questions. Uh so please raise your hand if you're currently working on a side project. Okay, amazing. Don't be shy, can be anything. Uh all right. Keep your hands up. Keep your hands up if you're working on a side project. And keep them up now if you would like to monetize the side project. Because you've come to the right talk. You don't have to monetize a side project, right? It can be just for fun. Alright, that's most of you. Yeah, for the recording. I guess maybe sixty, seventy perc sixty percent of hands are raised. Uh changed it a little bit. Um and then a few went down. Uh who has already monetized it? Okay, so that's maybe like five hands remaining. Um cool.

2:17

Awesome. Thank you. That's really, really interesting. So this talk is basically split into um two different sections. So we're gonna talk first about like lessons learned from monetizing simple pole, uh, which is kind of been the main thing I've monetized, like the main thing I spent uh good chunk of my life on now. And then uh kind of part two is like how we're thinking about monetizing colours. So how are we actually applying some of the lessons learned from the previous thing uh to um To like actually monetize Colo and make that like a pay product. So I'm keen to kind of give you a little bit of like a look behind the scenes for both of these. So um might be worth refreshing a little bit, like what's actually Actually, the goal with monetizing a side project.

3:02

Uh because there's a lot of different reasons you might want to do it, and it might actually be quite helpful for you to get clear on your own reasons for doing this. But a lot of the reasons tend to be like flexibility, making money um while you're not working. So I think like Typically, you know, you have this idea that you'd exchange your your time for money, you show up at your job and you get paid for that. Wouldn't it be nice if you can make money while you're sleeping? Uh and you don't have to exchange your your time for money. Being your own boss, financial independence, decides what you get to work on, uh all of these are kind of the the the goal of like how you know what would be nice uh a nice outcome for us monetizing our side project. However, like this is like a difficult place to get to. I don't know if any of you are familiar with this meme. It's like it's quite a lot, right?

3:48

We tried to recreate this earlier today downstairs. So how do we actually how do we actually do this? How do we make this like leap? Well you kind of like Like take it one step at a time. So there's a really fun framework which is uh really kind of well spread in the like indie hacker bootstrapper community, uh which is called the stair step method by uh someone called Rob Walling. He published this blog post uh I think like around the decade ago and it's still like very much a go-to resource. So for anyone who's um you know really considering like monetizing their side project, I'd recommend you actually just read the whole uh post yourself, uh because it's it's really not that long. So roughly like what it looks like is you have these you have these three steps. Uh and really the step the step number one is to keep it simple.

4:36

I don't know if you can read this all the way at the back. But step one is um to just have like one predictable marketing channel for like one one product and specifically what he uh talks about here is actually having a plugin for an existing platform. So he mentions WordPress, Heroku, Shopify, SimplePauls, a Slack app. So I feel like I very much, very much did this. But the goal is to keep it simple. There's like a lot of advice out there for how to build a startup, for how to build a business. And if you try and follow all of it, you will like never get anything done basically. So step one is very much like keep it simple, focus on like one marketing channel, and focus on just Yeah, getting a little bit of revenue. It can be like totally can be like one off revenue. I think that's actually the recommendation. And then step two is to just keep doing this until you actually like own your own time.

5:25

So if you have like one, let's say you have, I don't know, maybe you've built a WordPress plugin, let's say, uh and you're making some money from that, um, maybe it's not enough for you to like fully quit your job. He's actually saying keep repeating step one, build another thing, build another thing, while keeping your main job and just build up the experience, build up like these diversified revenue streams and then um after you've uh kind of bought back your time uh or you you own your own time um then you can kind of like use all of that experience, all of that like foundation of uh incoming revenue Which might be one off, might be recurring, to then build like a standalone SaaS product. I think often the dream is like let's like get to this incredible state of having like recurring revenue coming in every month, don't need to do any more work, it's just

6:11

customers are happy to pay, maybe there's a little bit of development. Um but that's like a really really hard place to get to get to and uh very easy to burn out trying to like make very easy trying to like if you just walk through the world like this uh very easy to like um not not not be happy and burn out. So the stair step method is kind of like It's kind of like very much the recommended path. And um like I uh haven't like seen or gr Rob Walling runs a accelerator and also a big conference called Microconf, and he's seen a lot of like startup successes upfront or uh uh up close and um and he's seen this kind of approach work out like again and again. So this is kind of broadly the the way to go. Uh so a little bit of context on simple poll um

6:56

to give you a little bit of the lessons learned from that project specifically for me, uh it very much started uh or yeah, this is what it does. It basically you know you can create polls and surveys very natively inside of Slack. Um and it started like very humbly as like a just like a Django admin start project. Uh and that was all the way back in twenty fifteen. Now it's like one of the most popular Slack apps, uh millions of dollars in revenue, uh millions of users. The way it works is the freemium model. So uh there's tons and tons of free users and then like a small minority Of paying customers. And uh customers pay this much. Um the and the distribution channel is predominantly the Slack app directory and Google search. So I mentioned this because you know this talk says

7:43

this talk is how to monetize. your side project, but really as you'll see, it's gonna be kind of be a talk about like distribution. So if there's like one thing that I think you'll take away from this talk is when you think about monetization, think about distribution and how you're gonna distribute your product. Who you're gonna distribute it to. Uh so for Simple Pole, very much like what worked incredibly well almost you know within a few months of launch is just being listed on the Slack app directory. And I'll talk a little bit more about that in a second. Um working on simple poll today and yeah after like a lot of years building building simple poll I just handed it off to a new CEO earlier this year and now I work full time on colour which uh is a very exciting change. Alright

8:28

uh very quickly the timeline um and also just to give like a little bit of context on how long it's been in the making, yeah wow, you can't read this at all. Alright, so I'll walk you through it. So December twenty fifteen is when the Slack platform launched. So Slack was like in its infancy and they wanted to get apps onto um Slack. So they made a big uh kind of event and like an announcement saying, hey, please build apps for Slack. And I saw that and I thought, I really like Slack, I'm gonna build an app for this. And then yeah, the following month, literally within like I think I spent only like a few days working on it, simple call uh launched. And uh someone else actually found it on uh I just tweeted about it, someone else put it on product hunt and I kind of woke up the next day and like six hundred companies were like actually using it, including NASA. So it was kind of like a blown away kind of moment.

9:15

Um and then I list it in the Slack app directory later that month. And uh what was kind of wild is that from the moment it uh got listed in the app directory, that like channel brought in like 200 new Slack workspaces every Single working day. So I just built a thing, but because I could list it on this like Slack app store, it Slack was sending me like 200 potential customers like every single day. And that is very much like Like what made it possible to monetize simple pool later. So that single distribution channel is like a huge part of the success. Obviously it was a the right product, like at the right time, and the product actually had to work, and I think it really helped that it was simple, but um very much

10:00

Uh uh the the the distribution channel of the Slack app directory was kind of like a key crucial ingredient. So that that happens in early 2016. Uh it's just a completely free product until October 2018. That's when I decided to monitor. monetized it by adding a pay plan. Um and then I actually just uh yeah, kind of like supported it and um and didn't really yeah, just kind of watched it slowly grow in in revenue um uh until July twenty nine. when it was uh just so much support load that I brought in someone else to help. And then in September 2019, uh so about roughly a year after monetizing it, it had grown to be like more than my salary at my job. And that's when I decided to quit and like focus on it full-time.

10:45

So to recap very quickly, um simple is good. This is kind of like step one of the stair step method from Rob Rolling. Um with SimplePole like the the value is very clear to the user. It's polls and slack, and um people want to poll their coworkers, which is great, yeah, very straightforward for users to understand, and it's also just like very easy for me to build. So I built the first version uh literally. Literally like in a weekend. Uh so that was a really nice way to just get something out and validate it quickly. Uh I talked a bit already about like how distribution is is absolutely everything. Um yeah, from the day we released it on the Slack app directory, just having like 200 potential customers, like every Every single weekday.

11:31

We can't like convert all of them by the way. Like some of them are like companies like NASA or whatever or you know, big um companies with but deep pockets. But sometimes it's like New Jersey pickleball and you're never gonna charge them any money. But still it's like a huge number and you can do something with that number. And then the middle point I haven't really spoken about um so this idea that demand takes like time to grow. I think like as uh like software engineers we're kind of familiar with the idea that if you want to make and build a big complex project, it's gonna Take time to build. Like you can't just hit a button and like a whole working like full stack web app appears. Like we know that it takes time to like like it might take like three months to ship like the first version of something. Um the same is actually true for demand. Like I think sometimes we're going to be able to do that. There's a misconception that like

12:16

you will spend like weeks, months building something, and then you will launch it, and then every like everyone will see the launch, you will be covered in TechCrunch, and like you'll get all these users. In reality, like it's not like that at all. Like launches bring in like very, very few customers and really like it's about having this sustainable distribution channel. And that means that demand takes time. So like you need to give your own users who you want to charge time to actually discover the product and pay for the product. And that's how the that's how the So just to give like one example of this, when um so that October 2018 uh when I monetized Symbol Call, it had been running for three years, had like hundreds of thousands of like monthly active users, but had no revenue, and I decided to have a lot of money. To um have some premium features and uh start charging some users for it.

13:04

And I thought cool, like I'll turn on revenue and then I'll make like maybe a few thousand dollars a month. And I remember like a week into it, it was like three hundred dollars. And I thought Shit, this like totally isn't working. I thought I had something great here, but I only have like $300 a month. Like I can live off that. That's ridiculous. Maybe I can't monetize this thing. But then I was amazed how like every month that just continued, it was another thousand. In like recurring revenue. So like in November it was a thousand three hundred, in December it was like two thousand. In like January it was like two thousand five hundred. So it grew a little bit every time. But had I delayed the monetization by like another three months, it would have delayed all of that process of the revenue building up by another three months. So I think like this sounds like reasonably simple, but I don't think it's um actually very intuitive, like that demand takes time to build and like

13:54

revenue takes time to build. But that's very much um a thing. So the advice there is just like launch Launch quickly. Um this is a blank slide somehow. Uh so yeah, back to the main point of this talk, like distribution. I think this is like a line that gets um posted sometimes, like this kind of belief that like if you just build it, like developer or like customers will just show up because your product is so great. And in a way, like the product obviously matters, but if you build it and don't do anything, like people won't find it and it'll feel quite um demoralizing. So I think the only version in which this statement can be true is if you essentially change it like this. So if you build it and have an amazing distribution channel, then they will come.

14:40

But often like products like if you had to predict the success of two products. One is like an amazing product with no distribution channel, and another product has a like a working distribution channel, but is like crappy to use, has like bad UX, like doesn't really work all the time. The product with the better distribution channel actually will win, or um is actually gonna Have paying customers. And I think that's like really, really important to realize. So we keep talking about distribution channels. What does this actually mean? So here 's like a a couple of um a couple of ones that just give you maybe some idea. Um like sending emails. This actually works. Like you can send people emails and some of them will read them and some of them will like click on it. So if you have like an existing um if you have like an uh existing email list or like an existing newsletter, I think that can be really effective.

15:28

Uh blog posts. So Search I think is often overlooked. Like people often search for things and actually you can use tools to see what people search for. And if people search for something and then they find your thing and it helps them, that's like an incredibly reliable way to um like have a distribution channel, so search is like I think often under considered. Again, I think in this world where we think like we have a make a break great product and then we launched it and then how pe that's how people find out about it. Search gets like a little bit forgotten about. And I'll skip actually quickly ahead to this. So these are two Tools that you could use, uh one is called RFs and one is called SEMrush, um, that can you can use to like figure out what are people searching for and are people searching for your thing. But basically the point is just like search is a is a good channel. For simple

16:13

poll, obviously we uh Um build it on top of a platform, so build it on top of Slack. Also fantastic distribution channel. I think the advice from uh Rob Rolling in the stair step approach is to just like pick one of these and just do it really really really well uh well. Um I actually think you can maybe do Do a trifecta of like have a blog, email people when there's new blog posts, and then obviously those blog posts are listed for search. Uh so you kind of get three channels almost like at the price of one. And I think that can be like really effective. Uh yeah, if you have like a great big audience on social media if you're if you happen to be a Django influencer. I'm not sure actually if there is a big Django influencer. Maybe Adam is the closest we've gotten. Adam Johnson. But uh otherwise yeah you know you you can always build an audience

17:00

audience on on social media, I actually think we need more Django memes. If anyone really has a deep desire to like build a Django meme account, I think that would be a great contribution to the community. And you could then sell them some product as an or us a product later on that relates to Django. Uh I would very much advise against uh just doing paid advertisement. I think I used to think this. It's kind of an extension of the just launch and they will come. It's like just launch and then pay Google for ads and then people will come. I don't think this really works. I think advertisement works if you've got like a working channel and a working message and a working product and you just need to scale it up. I think then advertisement can work. But I would very much uh suggest avoiding paid ads at the very beginning. Cool. We covered the

17:45

search stuff. But yeah, the main message of the talk is really like you need to think about distribution. You thought you came here to learn about pricing techniques and how much you should charge for your product, but really like it's all about distribution. If you can nail and figure out distribution, then like monetizing uh i is is gonna become really really straightforward. Cool. Um yeah, I think like the the thing that oh I almost struggled about like including the slide or not because if It feels like, yeah, obviously like a product c should create value. Um and that's kind of how businesses think about purchasing software or how users think about purchasing a product. Like this thing needs to be useful for me. It feels a bit like almost not worth saying. But I think like the

18:30

thing worth calling out is like ask yourself if the thing you've built saves people time or saves people money. If it doesn't do like one of the two, maybe figure out how it can be one of those how it can do one of those two things to be really useful. Even if it's just sort of in the messaging of like, hey, use my thing and you will save time or you will save money. That's like the most effective way. So that kind of goes into like how to think about the the product. Alright, I'm gonna skip ahead a little bit here. Um is anyone familiar with this concept of painkillers versus vitamins in business? Nice couple hands. Um so just to like briefly go over this, and again this goes back to like creating value and saving time and uh versus saving money. Uh painkillers uh solve like an an urgent problem.

19:15

Uh something that immediately saves someone or a business ideally time and money. So I think like a good example would be like production downtime detection. Like if your production server is down, like that's a really, really urgent problem. So if you're selling a service uh that's Does that, then that's a painkiller and that's kind of the place to be. Whereas vitamins are more kind of gradual, like long-term benefits. There's no urgent need for them. Maybe like if you if you it built something But gives like a um A B C D E F rating for like a code base. That's like kind of nice to have, but is it maybe super urgent to get your code base from like a B grade to an A grade? Perhaps not. And maybe the the kind of more consumer example. Would be Uber versus Duolingo. So like Duolingo doesn't really immediately solve any kind of urgent pain.

20:02

Um it kind of helps you learn a language like gradually o over time. Um and uh that's great and it's useful to be able to speak another language. But But um it's very different to an app like Uber where you uh are somewhere and maybe there's no bus or no public transport or you just need to get from A to B and quickly and then you're gonna reach for something like like Uber. Uh cool. All right. So I'm gonna wrap this up with two things. First is my monetization hot takes. So going back to the beginning, start simple, follow the stair step approach. And yeah, just try and keep it simple. Um don't quit your job yet. Uh keep your job while monetizing your side project. I think this is actually A little bit of an I say a couple more things on this because I think it's sometimes misunderstood. Uh like

20:47

the goal is to like work on your own thing and maybe have your whole full time to do that. But even if you've maybe passed that step one and maybe you have a little bit of income coming in, like say you you know say you're making like a thousand dollars, a thousand euros, a thousand pounds a month, and um you'll you're thinking, okay, well if I can only work on this, uh if I have only worked on this for 10 hours a month or 10 hours a week. I can make like way more money if I work on it full time. I think often it it doesn't actually work like this. Uh I learned this the hard way. When I quit my job, uh I thought, okay, now that I'm working on this forty hours a week instead of ten hours a week, my growth should Forex. And actually after I quit my job that following month was the first month where we uh the revenue declined.

21:33

So it's like I was like, this is not right. Like dear customers, I have been supporting you on very little time for a year. Uh and this is how you reward my additional investment. So I think these things are just like not very obvious from from the get-go. Um and it's actually really nice to have a job. It's like provides a super great layer of stability. It um also forces you to prioritize. If you can only like add like one thing to your project, like the on the weekend or in an evening, it you kind of make sure that you're yeah, it it forces you to add like the most important thing. Like the thing that you think will get you closer to being able to create your job gets you closer to like uh more revenue or closer to like a feature someone's been requesting. Whereas if you're on something like full

22:19

time, it's actually and I've done this many, many times, I'm very guilty of this. That maybe aren't so critical because you think you have more time and more space. So keep your job. Um number three, again, like maybe this is totally obvious, but you want to serve businesses, not consumers. Consumers have very little uh disposable income, they like to complain, they like to churn. If you serve businesses those problems will be reduced. Um and then yeah, distribution. If this slide could say just like one thing, it would just be distribution, distribution, distribution. Very much related to that, um if you have competitors, that's a good thing. I think there's always a really really big emotional load that comes when you see that someone's building the thing that you're also building and you're like, oh, they're ripping me off. But actually um and that that's like

23:06

totally a fair emotion to feel and it sucks. But um it means That there is someone else in the space who believes that there is like money to be made here. So in a way, it's actually really great validation that you're working on kind of the right thing. Uh demand takes time to build, so ship as early as you can, talked about that. Um Uh yeah, start charging uh for what you're building even if you're not super happy with the product yet. It's a great sign if someone's willing to pay for what you've built, even though the experience is still rough. Uh I think yeah, again this can be like a little bit strange, but If if you've what you've built doesn't have the greatest user experience and people are still willing to pay uh money for it, that means you're solving like a real problem for them and they're willing to wade through difficulty to like uh get that value.

23:52

Ideally, sell a painkiller, not a vitamin. Um Number nine, kind of like a bonus thing, cheat code. If you can um if you can compete in like an existing space or make something that already exists, that means you're basically that person I described earlier where you're like coming into an existing product. And maybe you add a tweak or you um you kind of have some maybe small unique insight that changes uh uh like yeah, changes maybe the audience or the value pop just a tiny bit, uh and then you can compete in an existing space with an existing category and you will have competition like from day one, but it doesn't mean like there's money um like people are spending in that space and um yeah people are spending in that space and they can just um

24:38

yeah you you you can compete and and and you You can grow some revenue there. You're not kind of like starting from from zero. And yeah, this stuff is just like really hard. Take it easy and enjoy enjoy the journey. Uh like don't be too um Oh sorry, could I have some water by any chance? Just feeling a little bit All right. Yeah lastly um community so um there's a lot of really great resources out there a couple of them uh are here so yeah uh check out like

25:23

indie hackers check out microcon Cool. So next up, how are we thinking of actually monetizing Colo? So this is like a little bit different, it's kind of like my second thing. So there's a few different things happening with this. Um some of you might be familiar with the kind of original colo. Um we talked about this past few Django cons. Basically you can um visualize and like understand existing code bases really quickly. But we actually have a new colour that we're kind of presenting at this conference. So Nucolo

26:09

is um Testing should be easy, whereas old colo is understand everything your c your code is doing. And this goes back a little bit to the like painkiller versus vitamin analogy. So with old colour we were kind of a vitamin. We were um providing you with visualizations and faster debugging and like deeper insight. Whereas with new inside with new colour um we generate integration tests for you. So the idea there is testing is is tricky and hard and like can take a lot of time and maybe it doesn't like immediately create business value or you don't have as much time for it. So um colo would generates integration integration tests for you and therefore um it it's a bit more of a immediate painkiller. So our new uh kind of slogan is testing should be easy and we kind of have this setup here where it's um yeah

26:54

okay this is like I don't think you can super well see this except for what it says at the at the top. But basically what Colo does is it runs over your code base and um traces existing or traces requests. So uh it If you make like a request to your Django app, colour will store a trace. From that trace, uh which is basically like every function call, every SQL query, every outbound request in um in the request that you made, it can generate a plan, and then from that plan it can generate a test. So I just want to quickly give you a demo of what that actually looks like.

27:46

Amazing. So uh Can you see this alright? Somewhat alright. Uh so we have uh like just a basic to-do demo app here. And um then we have colo open on the left. So this is all the most recent requests that like colo um stored. And I'm just gonna add a to-do here that's like give a talk. And add that to do. And then it will add that to do and also add a uh chat GPT generated fortune cookie advice uh saying your words will spark inspiration in the heart of another. Cool. That way after the talk, come come up to me. If I touched your heart, uh that would mean a lot. Um but then we can go into colo

28:32

and inside colo we can essentially like uh see this generated test. So just from this single request that I just made to my like locally running Django. I have um this this test plan generated by Colo, which comes in these three sections, like arrange, uh act, and assert. And so Colo knows that before it can like actually write um a test or send this thing. So the first is just creating a user, right? Before uh we can make a request as the user to add it to do, we have to actually create the user in the database. In this case we also Need an HTTP mock, then we can actually fire off the request and then we can make some assertions. Uh we can make some changes, but I think this test is fine for now, for demo purposes.

29:20

So I'm gonna go ahead and save it, open it in VS Code, and then I'm actually gonna go ahead and and just run Py test to run it. And it passed. So this is just like just from that sim s uh simple request that I just made in um the browser to like add a to do in my demo app. Uh Colo generated like a fully working integration test that I can now Change or edit or modify. Um this was a very simple example. It does also work on like much more complex codebases like the simple pole codebase. If you're interested in this at all, like come to our booth and we can like show you more about how it works. We have a nice leaflet that explains it all a little bit more. Um But basically we think testing should be easy and if you agree then um come to our booth and and we'll help you like get set up with colo. And yeah, or if you want to just chat about testing, that's also

30:07

very much cool. Okay, back to the slides. Where did they go? Stop mirroring. Ah, gorgeous. That's actually quite nice. Cool. Um I want to talk a little bit um about Uh the inside scoop for Colo now and uh like the monetization paths that we actually rejected. Because I think it's like nice to hear like the simple pole story like a few years on, but this is like some of the stuff that we're actually going through right now. So colo is a completely free product at the moment, it's like not monetized. monetized at all. So like how are we thinking about monetization? And in which case am I not like taking my own advice? So a few things we considered um in terms of monetizations. One is like donations.

30:53

And again you might be considering this for for your project. For us, we don't really think that um donations would like bring in enough to like build a sustainable business model. It's it tends to be quite one off. Um we want to work on color like quite a lot and um make it like a you know business that can like employ several several people. And I don't think we can really get there with donations. There's also a consideration of like, hmm, okay, so a lot of the existing curl functionality is kind of like a premium Django debug toolbar. Like, could we um make that like a business? Um, but Django debug toolbar. Already exists and it's pretty good and it's free. And the question is like, can we really add that much value on top of an existing, like on top of Django debug toolbar? And the value that we add, is it like more of a vitamin or is it more of a paint color?

31:38

I think there's maybe a case to be made that Django debug toolbar. Bar is often a vitamin and sometimes a painkiller. So to us it will for us it was a little bit too much uh vitamin. Another um idea was uh doing a PyCharm plugin. Uh that's like so in the past, Colo was VS Code on Now we have a web version, so it kind of supports all editors. In fact, you could use no editor and use colour today. And we kind of rejected that path because it's kind of like only like one audience, again it's unclear is there like a recurring charge we can make here or is it more of a is it more of a one-off thing? And again, like is there kind of a vitamin or is there kind of um a uh is there kind of a painkiller

32:23

aspect to it? And And um yeah, the the the the same for these kind of bottom bottom two. So uh in a hosted colour SAS, like again, is it just an extension of the current thing? Like how much value can we really create here? Uh so for all of these, I guess they kind of failed almost like the the value test. Like how much Value are we actually creating? And we think by focusing on like generating tests, that's where Colo is the most useful right now and solves the biggest pain. Uh right, that's pretty much what I just said. So testing, writing tests can be like a very recurring pain that happens like in your day-to-day quite a bit. And uh we're kind of here at this conference to like validate that that's actually the case uh and see if you all like want to use this stuff and if it's actually useful to you and how we can tweak it to make

33:10

make it really useful to you and tweak it to you to um your own testing strategy. And then um kind of monetize once we've creating a s significant value. So colo, yeah, at the moment, as I mentioned, is completely free. There'll likely be some kind of paid thing, paid version in the future. once we've um yeah made sure that we're actually building something really really useful that is a true like painkiller. And then over the long term, and this is where it gets like a little bit you know far into the future, our core belief is that like This underlying like runtime data that Colo is capturing can be used for like tons of different things. So it can be used to like understand a code base more quickly. It can be used to like improve your day-to-day development experience a little bit. It can be used

33:55

to maybe dig deeper into like production errors without having to like reproduce them um manually or painstakingly. So we have like a kind of fun, exciting, like long-term vision for all the different things that like Colo might be able to do. I appreciate you can Can't really read any of this. The top left says uh automatically generate tests, uh, and then the middle column is kind of understanding. So lots of ideas for how to use like this runtime data, these like traces Colo collects. Um, but the reason we're focusing on test generation in In the short term, uh, is very much like all the the reasons I explain in this talk. We think it's like the biggest value, we think it's the um most immediate like pain that we can actually help with. Uh and it doesn't really exist yet. Um So that's the talk.

34:41

If you want to learn more, find us at the booth or head to color. app dot test uh color. app slash test gen. Uh and if you want to talk about monetizing your side project, I'm also here all day and Saturday morning at the Sprints. So come find me and yeah, we'd love to would love to chat. Thank you.

Questions this talk answers

What is the stair-step method for monetizing a side project?

Start with a simple product and one predictable distribution channel, often a plugin or app on an existing platform. Repeat that approach until you have enough revenue and experience to build a standalone SaaS product.

Discussed at 3:48

How did Simple Poll get its first customers and become monetized?

Simple Poll was built quickly as a Slack app and gained a major distribution channel through the Slack app directory, which brought in roughly 200 new workspaces per working day. It remained free for several years before premium plans were introduced in October 2018, allowing revenue to grow gradually.

Discussed at 9:15

How long does it take for demand and revenue to grow after launching a side project?

Demand and revenue usually build gradually rather than appearing in a dramatic launch. The speaker recommends launching early and giving users time to discover and start paying; delaying monetization delays that revenue growth as well.

Discussed at 12:16

Why is distribution more important than just building a great product?

A product cannot gain customers if people cannot find it. A working distribution channel can produce paying customers even for an imperfect product, while an excellent product with no way to reach its audience may go nowhere.

Discussed at 13:43

What distribution channels can a side project use?

Useful channels include email, blog posts and search, an existing platform such as Slack, and social media. The advice is to choose one channel and execute it well; paid advertising is better saved until the product, message, and acquisition channel already work.

Discussed at 14:28

What is the difference between a painkiller and a vitamin in software products?

A painkiller solves an urgent problem and immediately saves time or money, such as detecting production downtime. A vitamin provides a useful but gradual or optional benefit, such as improving a codebase’s rating.

Discussed at 19:15

Should you quit your job when your side project starts making money?

Usually, keep the job while monetizing the project because it provides stability and forces prioritization. Working on the project full time does not automatically multiply growth; in the speaker’s case, revenue declined in the first month after quitting.

Discussed at 20:47

Should a side project sell to businesses or consumers?

The speaker recommends serving businesses because they generally have more disposable income and are less likely to complain or churn than consumers.

Discussed at 22:19

How is Colo planning to monetize its Django testing product?

Colo is focusing first on automatically generating integration tests because that addresses a recurring, immediate pain and creates clearer value than donations, editor plugins, or a hosted version of its existing features. The product is currently free, with a paid version planned after the team validates that it is genuinely useful.

Discussed at 32:23

Presenters

Note: We understand that names change, people change, and bodies change. We respect each individual's journey and privacy. If you have any concerns about a video or need us to remove content, please don't hesitate to contact us. We will handle your request with care and promptly address any issues.

More videos by Wilhelm Klopp

More videos from DjangoCon Europe