In 3 weeks I developed a fully functional Software as a Service!
I want to completely break down my short, but hard journey, what I learned, what I could have done better, what’s to come, and how it all culminated in creating DebateTrend.
What is DebateTrend?
DebateTrend is a web app, SaaS, where you can debate with AI on different topics!
You can have multiple debates with different debate styles for different lengths of time!
The special part is at the end of each debate. You can have another AI that will look through the debate by just clicking a button! It will give you and the AI you debated a score from a system I call “debate score”.
It will also give you recommendations on where you can improve your debating skills!
There’s a saying in this community that I 100% agree with and I keep repeating it every time I get the chance (quite annoying, I know)
“Create something based on your own issues, that you wish existed and that you will personally use”
The Idea
That’s exactly how I came up with DebateTrend!
I was listening to a Jordan Peterson debate/talk and wondered:
“I wish I could debate someone. I want to improve my debating skills”
“Wouldn’t it be cool if you could debate with AI on issues… wait-”
I started researching debating AI and the closest thing I found to what I had in mind was a sub-tool from a website that had a higher number of ads than I can count. It was ugly and it was more of a ChatGPT copy than ChatGPT itself.
“I could do better” — Said the guy who had never integrated authentication, hosted a web app, integrated AI, and made a real-time chat. Quite foolish.
The fact that a user-ready version of the website was made in three weeks is a miracle in itself. (very humble of me)
Tech Stack
So that’s exactly what I did!
Of course, since I didn’t know many things I had to add a lot of tech that I wasn’t familiar with to my tech stack but here’s the final version:
- Language: Javascript
- Database: MongoDB hosted on Atlas
- Hosting: Vercel
- Framework: Express
- Auth: PassportJs
- Emails: Resend
- Payments: Stripe
- Front End: TailWindCSS, some regular CSS and DaisyUI
- WebSockets: Pusher, because Vercel = no sockets integrated into your web app which I found the painful way
- AI: OpenAI’s API ChatGPT 4-o mini
Something I had completely no idea about though, was how to implement security so I can publish a clean and secure product.
Security
When you don’t know something it’s best to ask people who do.
I saw a tweet of Marc Lou showing how he got DDoSed a little after he released his start-up, and I honestly felt horrified!
“If he gets DDoS-ed what about me? A nobody!”
The answer was in the question: If people don’t know you, they don’t and can’t care about you.
From this X post, I got quite good feedback and implemented some security features. The most important one is — Not caring.
I liked one of the replies a lot, it went something like this:
“You’re at a really early stage. If people do decide to DDoS you that means you would have gotten enough attention, but at that point, you would have also gotten $ to fight back.”
I greatly educated myself on security. I am going to make another post specifically talking about SaaS security.
I’m sure there are many security vulnerabilities I’ll have to learn about as a painful lesson.
Painful Lessons
Sadly the painful lessons are always the most useful ones, the ones you’ll remember and the ones you won’t repeat again!
I couldn’t have known —As I mentioned in the previous chapter I found out the painful way that web sockets don’t work in environments like Vercel, because it’s serverless and static. The “static” part should have given it away but I somehow completely skipped it.
Build In Public — “Building in public” is the practice of sharing what you’re working on and how you’re working on it with like-minded people. Related to the last lesson, if I had “built-in public” I would have prevented the issue of not knowing that serverless/stateless meant I couldn’t use sockets and sessions. Building in public = less pain of figuring out what you HAD to do when you’ve already done it.
A lot of the things I talk about in this article I talk about daily on my X where I “build in public”. I’d appreciate it if you give me a follow there — https://x.com/Georgi_MY
Marketing
The matter of the fact is that it doesn’t matter if you build an amazing product or one that’s literal trash. You can’t get the feedback required to know what your SaaS is without doing marketing first.
Here are 8 of the steps I am going to take.
- Twitter/X — Making two accounts. One showing my progress from a developer side. The other posting about debate news all over the world and every couple of posts promoting DebateTrend.
- TikTok/Instagram/YouTube/Facebook etc. — I will make silly short videos there promoting my website as a place where you can “argue” with AI.
- Partnerships with communities — Offering affiliate programs to discord communities and more.
- Medium — This article for example was also published on Medium
- YouTube — Using it like X by showing my progress from a developer/business side
- Debate teams — There are thousands of debate teams all over the US, UK and many other places in the world. My platform is a great way for them to test and improve their debating skills.
- ProductHunt — Launching on ProductHunt and all ProductHunt alternatives will be another crucial step to marketing
- Reddit — Many Reddit communities would be interested in what I am developing. r/SideProjects, r/Debates and many more. There are some more things but my marketing scheme is so grand that it deserves a post of its own, which I will make and go into a lot more detail.
There are some more things but my marketing scheme is so grand that it deserves a post of its own, which I will make and go into a lot more detail.
All this seems great but with the slight issue that it’s all things I am planning to do, and haven’t started yet.
Income
That means that currently since there has been almost no marketing, there has been no income.
My goal in the next 3 months is to reach $300 monthly recurring revenue or mrr for short.
Costs
Even though I have played my cards so well that I can go without having any monthly costs I have decided to get some extras for better user experience.
Yearly purchase of the domain — debatetrend.com
Monthly costs ($10/mo):
- ($1/mo) Business email
- ($9/mo) MongoDB Atlas which is the place where I host my database so I can move its physical location to be closer to the Vercel servers
Future costs ($50/mo):
- ($10/mo) As previously listed
- ($20/mo) Vercel Pro
- ($20/mo) Resend subscription
Conclusion
I had been wondering for a long time if I could build a product and release it, but I never believed I could do it in just 3 weeks!
I see a lot of potential for DebateTrend. I want to make it the next chess.com for debaters and I hope I have the persuasion needed to finish this.
I’d be thankful if you’d follow me and like this article! If you have any questions at all feel free to ask them in the comments as well as if you feel like I’ve missed something important on the topic. Have a great day and thank you for your time!
Top comments (0)