Another scheduler?! Aren't there enough already? - A common reaction and one I've read many times while browsing through indie startup forums where ecstatic founders tell the community about their newest social media project.
And while some would argue competition is a good sign of a market that is willing to pay for products. That was not even close to the reason I had.
So, why would I start another one?
I didn't. At least not at first... You see, I never had the intention of creating a Twitter scheduler. It just sort of happened. I was working on a completely different project back then. And I was working on this other thing for a year already. Silently. Refining, iterating and improving a product that had no users and no due date. It was my first attempt at a software as a service business.
I started this project in January of 2020 and by December I was already rewriting the whole codebase. Instead of getting closer to release I felt further from it than any time before. And at that point, I decided I needed a break from the project.
I needed a win. I just wanted to ship something. Have a project that's launched. That's out there for people to use. Not just tinkering in silence on something that no one ever sees.
I paused the project and decided to ship something new. Nothing big. Just something. In the hopes of giving me a boost in motivation to get back to finally release this hopeless project.
And so the idea of ThreadStart was born. Well, technically not the idea. Because that had already been in my head for a year. But the decision to finally go after it.
You see, when I started the hopeless project above I also started to become more active on Twitter. Which at that time, to me meant reading Twitter. Reading what other indiehackers and founders were building. And threads were the latest craze.
I figured creating a small one-page app that splits longer texts into a tweet thread could be helpful. At a time when I've hardly tweeted myself, not to mention never written an actual thread. But I'm a developer at heart, so step one is building then comes optimizing and eventually thinking about whether it is a good idea in the first place.
Then I discovered that another indie developer was building a scheduling SaaS and it offered scheduling threads! Suddenly I felt discouraged to go after the idea. So, I put it on the list. You know the one. The list you write of your genius ideas into. The list you never go back to. Exactly! That's where the idea went. To rest with all the other ideas I'd never revisit. Farewell!
Until December 2020, when I needed something to ship. Desperately. Just anything. And suddenly this same idea sounded like a good one. A small project. No scheduler. Just one page. You enter your long text and it spits out a thread. Something I could ship in a week. Post on ProductHunt. And then get back to working on my initial project.
Starting small and focused
Knowing myself I would start working on it and immediately have more ideas for features. Ideas for great future functionality, for viral marketing campaigns and for scaling it globally. As one does. So, I set myself some constraints: limit the time I'd be working on it & define a clear goal to work towards.
Here's what I came up with:
Phase 1 - one day
I have one day to build a landing page, describe the idea and find someone interested in the idea. If I can't do that, I won't continue with the project.
Goal: 1 newsletter subscriber in 1 day
Phase 2 - one week
I have one week to build the MVP. To get the bare minimum working, so that it could be used by someone interested in the project. If I can't find somebody to sign up, I won't continue the project.
Goal: 1 user in 1 week
Phase 3 - one month
I have one month to find a customer. Find someone who would not only use the project but actually pay for it. The ultimate validation of the idea. If I can't do that, I would stop the project.
Goal: 1 customer in 1 month
This process should guarantee I'd ship. And guarantee I would stop. Not because I wanted to stop, but because I had to. It was the rules of the game.
Well, it will be a scheduler
I don't want to go into too much detail of building ThreadStart. I've already posted about it here, here and here - not to mention the build in public threads on Twitter - but I've successfully managed to achieve all of the three goals. Hooray!
I did it. I shipped. And, I've built a SaaS.
While building it, I was always focused on the goal of the current phase. But I also got tons of ideas for additional functionality. Features to improve ThreadStart.
Even better, because I was building in public, I suddenly got numerous messages a day about cool things to add. From the community!
I wrote all of them down into my Notion list and realized that this project had waaaay more potential than what I was initially working on in 2020. For once I was working on the right thing at the right time.
And the suggestions and ideas from the community quickly laid out the path in which ThreadStart was heading...
Writing a long text and splitting it into a thread is nice but I also want to post it to Twitter.
Posting it right away is nice but it would be cool to save them. Because Twitter can't save thread drafts.
I often don't want to post it right away, it would be cool to specify a time to post it later.
Before the end of "Phase 3" (the one month one) I had finished all my initial features, added community features and built out the scheduling logic.
It was the natural direction such a project would head into. A Twitter scheduling service.
One year later
It is now one year after starting ThreadStart. It is a tweet scheduler now. It can write, save & schedule threads, tweets, has analytics and everything you'd expect.
If you had given me a list of all the things it can do now one year ago, I'd probably have laughed and not even started. But by taking small steps, and taking them consistently for a year, I managed to get it done. Even more than I had originally planned.
You don't need to have everything figured out when you start a project. Just get started. Move fast, iterate quickly and talk to your users. Their feedback will guide you in the right direction.
Look to ship as quickly as possible with as few features as necessary. Once the project is live and has users, you'll automatically want to improve it constantly. So, get it out of the door and let momentum guide you.
TL;DR: I started ThreadStart as a distraction, built it in public and eventually doubled down on it
overthinking and overengineering are the enemies holding you back
to ship fast set yourself strict but achievable limits
getting actual users fast is your priority
because their feedback shows you the path forward