I've been thinking of starting something that would give me a modest income on the side. I'm still in the planning stages, and thought documenting it would be helpful (to me, or to others).
For the past couple of years, I read quite a bit about starting an online business. There's a lot of bad advice, but some really good stuff too. From what I've gathered, it's a pretty repeatable process (unless you go the route of VC-funded unicorn startup).
There's a lot of overlap in the advice that seems to work. There are also some online courses that go through this process step-by-step but unfortunately, the price point for these courses is out of reach for me right now. I figured I'd learn a lot more if I try doing this myself.
Here are a few things I've seen again and again:
Start with the customer
The first recommendation is usually to start with a customer in mind first, as opposed to offering something and then looking for people to buy -- it just doesn't work.
The target customer needs to meet several criteria: (a) they can pay you, (b) you have the ability to serve them, and (c) you have the willingness to serve them. Miss one of the above, and they'll either never buy from you, or worse -- they buy your product or service but you hate them.
Once I have a target, it will then be necessary to research their "pains" to see what I can offer them. A lot of people advise customer interviews, while others recommend just stalking internet forums where the target market hangs out.
Don't build a SaaS
The second recommendation is to not build a software business for a first project.
As software developers, we're always tempted to build a SaaS to solve a problem, scratch an itch, whatever. But selling and marketing is pretty difficult when you're doing it for the first time, so maintaining and building an app at the same time is going to be a giant undertaking. I don't have the stomach for that right now while being employed full time. I may negotiate a 4-day week in the future if I go down this route though.
That leaves only a few options, and this is most likely an educational product. This means either an ebook, a course, or video screencasts. Something in that vein.
Give out free material and build an audience
Before building and selling the product, whatever it is, I'll need to start producing free content to attract an audience. The end game is to build an audience comprised of people from your target market.
By giving out material for free and adding value, I'll be building a reputation and establishing credibility with my target market. It will be far easier to sell to someone who already trusts you and finds your content useful. In fact, I imagine they'd already want to buy from me.
Corollary: if my free material doesn't attract an audience, maybe it's the wrong niche.
There are several ways I could go about this. I could blog and maybe offer something like a cheatsheet in return for email addresses. I could also record screencasts. Given that I'm pretty awful at talking into a microphone, it's going to be more likely I go the blog route.
Having an audience also means I can do further customer research by encouraging participation and engagement.
Here's where I'll need to learn and practise something I have very little knowledge about: pitching to customers.
Fortunately, there are a lot of resources online on effective copywriting. I probably don't need to be great at it, but I can follow simple formulas to write a pitch.
My personal situation
Django is also a pretty small audience. But there also aren't too many books for it. Anything I write for it goes out of date pretty quickly, though.
My first step would be to do some customer research. Time to do some lurking in forums.