Why I'm Building a SaaS Product Live on Twitch

PUBLISHED ON NOV 10, 2020 — STARTUP, STREAMING, TWITCH

Recently I’ve started streaming some live coding on Twitch and in this post I just wanted to go over what I’m doing, and why I’m doing it.
I’ve structured this in a sort of FAQ way, but if there’s anything you want to know that I haven’t covered feel free to drop into the stream and ask away, or follow me on Twitter and ask me there. So first up…

What are you streaming?

I’m building a SaaS product, with every bit of coding done live on stream - the only things I’ll be doing offline are things like sorting out any secrets, doing some research, or populating the Trello board I’ve set up. At some point I might stream some of that too if it’s of interest to people, I just thought those things would be a bit on the boring side for people.

The product I’m building is an applicant tracking system (thrilling, I know).
I covered a bit more about the idea in my first stream, and I’ll go over it again at the start of some other streams for any new viewers, but since you’re reading this I’ll say you’re interested now.
I’ve always hated applying for jobs - the job closes without you knowing, you get rejected without being told, or rejected without them even looking at your application. Basically, it’s only a decent project when the application goes well.
I think this can be improved.

Another aspect I’ll investigate further down the line (i.e. out of scope for the MVP most likely) is how we can level the playing field a little in applications. Such a system can’t eliminate bias entirely, that requires a much more fundamental, human shift.
But can it be made easier for someone to get a foot in the door at least?
I think so.
I don’t think you need to know someones name, age, gender etc. when first reviewing their CV/Resume. Obviously you find these things out early on, but let’s at least get to an initial chat before giving bias a chance.

Why are you streaming it?

There are several reasons:

  • It puts some pressure on me to get things done. I can’t be switching tech stacks every other month, and setting a schedule to stick to adds some peer pressure to show up and get on with things.
  • I am terrified of people watching me work. I don’t even like people watching me when pair programming - this seems like a good way to get over that.
  • It gives me a good opportunity to build an audience for the product, and get feedback along the way about what people might like to see.
  • Nobody was doing this - and there’s probably a good reason for that. But why not? People are always sharing metrics etc. about their startups, but what’s more open than building it in public?

What tech stack are you using?

Given I normally talk about tech, I’ll guess you’re interested in this bit.
As I mentioned above, part of the aim here is to stop switching my tech stack every other week.
So what am I using?
The backend is going to be a Python API using the FastAPI framework, while the frontend will be React.
I’m planning on using TailwindCSS as my CSS framework, and will be adding a Postgres database. I suspect Docker will likely be involved before long.

Why that tech stack?

Good question.
Mostly because I don’t have much experience in it.
I know that likely sounds like a terrible idea, but I didn’t want to be weighed down by doing things the right way - I just want to get on with building things, and you can’t worry about the right way if you don’t know what that is!
Also, I quite enjoy working in Python, so I’d like to do more of it. I tried Flask, but I really liked some aspects of FastAPI - which I’ll no doubt cover in more detail at some point in the future.

Will it be open source?

As it stands, no.
But this might change.
Part of the reason it isn’t right now is simply because I want to do all the work, and think things through myself. Too much help through PRs etc will deprive me of the fun!
Like I said, this could change, and given it’s all being recorded anyway, there’s not much to hide!

How can I follow along?

Bless you for wanting to suffer through this with me.
If you want to watch, you can follow me on Twitch where I’ll be streaming at least every Tuesday at 8pm GMT (3pm EST/12pm PST), and 8pm GMT (3pm EST/12pm PST) every Thursday. I’ll end up doing more sessions than this each week as I go, but that will be the bare minimum.
You can also follow me on Twitter where I’m sure I won’t shut up about it as I go.

Hopefully this project will prove interesting to you, and you want to follow along and get involved.
If you do stop by the stream please, please start asking questions/throwing insults or whatever in the chat. I feel incredibly awkward talking into the void!