Live data from Hacker News

The Tech Stack of a One-Man SaaS

panelbear.com

171–180 of 259 posts

Re: The Tech Stack of a One-Man SaaS

#171
post #14

It's cool that this stack works for the author, but if anyone is just starting out on their own one-person journey to build a product, I don't think they should follow the stack in this article. There are too many dependencies and too much complexity here. Kubernetes is overkill for 95% of applications, especially single founder SaaS businesses. Clickhouse may make sense for an analytics product but caring and feedin…

Indeed OP uses this sort of stack in his full time job and has learned about all the kinks over the years, while getting paid to do it! I'm working on a side project and it's literally a bunch of .py files in a folder. Libraries include fastapi and sqlite3. I cannot think of a reason to use container orchestration over a "single beefy machine" in almost any use case.

Not having to recreate your Python env, not having to worry about dependencies (once they're pinned), the ability to run the app on a hosted service like Fargate instead of managing the server...

Re: The Tech Stack of a One-Man SaaS

#172
post #122
post #20

Honestly, having gone down this path a year back, just use Heroku for your backend. Maybe Netlify if you want to separate your frontend and backend. The amount of complexity and interdependencies these "here's my stack" posts describe are always a huge cognitive overhead for running a one-person SaaS. Heroku costs more, but there's a reason for it. If you're even remotely making money from your product, and are alone…

Heroku is terrible value for money. You can very easily use one of the dozens of free & open source deployment managers or CLIs for EC2 and get the same ease of use at 1/10-1/20 of the cost. It's good for hosting a hobby project for free or $5/mo and forgetting about it, but it doesn't make any sense for a startup.

Or side project. There is a learning curve to heroku of its own, and you could be spending that time just learning how to deploy docker containers.

Re: The Tech Stack of a One-Man SaaS

#173
post #74

Earlier quoted context omitted.

The "most of your response time is spent waiting on the DB" assumption might not hold for your app. Even if you actively push work to the DB to reduce network bandwidth or something, your workload might fundamentally be comprised of small, easy-to-optimize units of work that the DB handles without any issues. That said, hundreds of milliseconds sounds slow by an order of magnitude or more for html rendering, even if…

In this app, mostly lots and lots of thumbnails. It may be some unoptimized code. But rather than get into the details of my app, and parts that need optimization (whether in my local code or in Rails or in ruby), I'm more curious about the overall concept. Are you sure that most of your web app's time is spent waiting on the DB? My suspicion has become that this is conventional wisdom that is not actually true of mo…

> Are you sure that most of your web app's time is spent waiting on the DB?

Positive. It's my first tech job though, and we use C# at work to the extent that matters.

The kind of Python I write off the clock probably isn't a good example of waiting on the DB though. It's usually a thin wrapper around C or assembly (or calling into such a library via numpy, networkx, etc) to do something horrendously expensive that I absolutely would not want to run in vanilla cpython. That said, when I do ordinaryish web-related stuff in Python I'm looking at well under 20ms total elapsed time per call, which is why your ~200ms html rendering time stuck out to me.

Re: The Tech Stack of a One-Man SaaS

#174
post #38
post #20

Honestly, having gone down this path a year back, just use Heroku for your backend. Maybe Netlify if you want to separate your frontend and backend. The amount of complexity and interdependencies these "here's my stack" posts describe are always a huge cognitive overhead for running a one-person SaaS. Heroku costs more, but there's a reason for it. If you're even remotely making money from your product, and are alone…

Heroku is a great product if you want development speed right from the start. I have used them in the past, and it was a very nice experience overall. For many projects this is more than enough. However, in my case I would be paying 2-3x more if I was using Heroku. With Kubernetes, in case I wanted to deploy new projects or even spin up a "testing" env, I can use the same stack/cluster, and not have my costs increase…

[deleted]

Re: The Tech Stack of a One-Man SaaS

#175
post #166
post #20

Honestly, having gone down this path a year back, just use Heroku for your backend. Maybe Netlify if you want to separate your frontend and backend. The amount of complexity and interdependencies these "here's my stack" posts describe are always a huge cognitive overhead for running a one-person SaaS. Heroku costs more, but there's a reason for it. If you're even remotely making money from your product, and are alone…

Heroku is a god send for getting off the ground, however the biggest issue for us hasn’t been cost (it’s high, but worth every cent) it’s been server location. We’re an Aussie company, and a large percentage of our customers are in Australia. Having servers only in the US and Europe mean that Australian customers speeds are slower than they should be, and private spaces are far too expensive to warrant it.

I have started using google cloud run as a drop in replacement for Heroku.

It has almost all the same features and runs at almost any GCP location.

Re: The Tech Stack of a One-Man SaaS

#176
post #170
post #139

First of all, thank you all! Just the discussion on this post alone, is a goldmine for anyone trying to figure out what worked, and what not for others. This is why I love HN. To clarify a point about my article, I think everyone should do what works for them. Just because my unconventional stack for a solo founder works great for me, doesn't mean it will do the same for you. Your mileage may vary, and it all comes d…

Hi Anthony - do you have any concerns with your current employer (Stylights) trying to make an IP claim on your one man saas company?

They have been very supportive, and signed legally binding documents to allow me to work on this.

We're also hiring :)

Re: The Tech Stack of a One-Man SaaS

#177

Here's my self-serving advice for every one-man SaaS: Use Heroku. It's super easy to get started. And when you reach $2000+ in monthly bills, hire me to move things over onto dedicated or EC2 so that you'll get 10x that performance for the same price. As for the actual language, I think PostgreSQL + Ruby Backend + JS Frontend is still the easiest way to get started. All those great architectural ideas don't matter mu…

if you truly want to save some $$$, host it on your residential line and proxy the requests through an external load balancer.

could also rope your friends/family into it if you want your app to be "distributed", might require a lot of work though especially if they are not very technology oriented.

Re: The Tech Stack of a One-Man SaaS

#178

Earlier quoted context omitted.

You didn't seem to get much of a reaction, probably because of your recommendations to go with proven (read: old & boring) tech, but I appreciate it. Front-end churn is real and, coupled with rapidly evolving and ever-abstracting containerization approaches, staying on top of it is a full-time job, best done as an employee.

FWIW, I disagree with GP. I'm more productive in React than in SSR, and I'm much better at code design and architecture with it. React is pretty much old and boring by now. Just build in what you know.

> Just build in what you know.

Yup, I agree.

The apparent difference in our situations is that you know React and everything that comes with it. It seems like that'd be a good choice for you.

I'm not proficient in any of the currently popular frontend architectures. Gaining that proficiency and moving a 10+ year old product to a SPA type architecture would be a massive investment. I enjoy learning new things and pushing things forward but I can't justify that investment when it comes to the frontend. Instead, I invest in other areas to move forward in.

Re: The Tech Stack of a One-Man SaaS

#179

Earlier quoted context omitted.

Didn't they recently integrate with docker compose? It looked really cool but I haven't tinkered with it yet.

Yes. https://docs.docker.com/engine/context/ecs-integration/

Have you messed with the docker compose integration?

Did you like it?

Re: The Tech Stack of a One-Man SaaS

#180
post #152

Earlier quoted context omitted.

What do you mean API heavy? Do you mean hitting the kubernetes API? Does k8s auto scaling count?

I guess he means the Kubernetes API which is what most of the controllers, and other components talk to. That was my case too. It was mostly when I installed the prometheus-operator that things would go south, even if the nodes themselves were perfectly healthy and underutilized.

Gotcha, thanks for the info! Do you know if were just doing run of the mill Pod deploys of like wordpress and little MVC apps and stuff with no K8s api calls we should be fine?

I like the autoscaling and the infrastructure as code, and price for DOKS is good.

Post reply on HN