Live data from Hacker News

I run multiple $10K MRR companies on a $20/month tech stack

stevehanov.ca

31–40 of 539 posts

Re: I run multiple $10K MRR companies on a $20/month tech stack

#31
> The enterprise mindset dictates that you need an out-of-process database server. But the truth is, a local SQLite file communicating over the C-interface or memory is orders of magnitude faster than making a TCP network hop to a remote Postgres server.

I don't want to diss SQLite because it is awesome and more than adequate for many/most web apps but you can connect to Postgres (or any DB really) on localhost over a Unix domain socket and avoid nearly all of the overhead.

It's not much harder to use than SQLite, you get all of the Postgres features, it's easier to run reports or whatever on the live db from a different box, and much easier if it comes time to setup a read replica, HA, or run the DB on a different box from the app.

I don't think running Postgres on the same box as your app is the same class of optimistic over provisioning as setting up a kubernetes cluster.

Re: I run multiple $10K MRR companies on a $20/month tech stack

#32
So what's the $10K MMR product, exactly? The lede is buried into nonexistence. Is it this one: https://www.websequencediagrams.com/ ...?

> Here is the trick that you might have missed: somehow, Microsoft is able to charge per request, not per token. And a "request" is simply what I type into the chat box. Even if the agent spends the next 30 minutes chewing through my entire codebase, mapping dependencies, and changing hundreds of files, I still pay roughly $0.04.

Really? Lol. If it's true why would you publish it? To ensure Microsoft will patch it up and fuck up your workflow?

Re: I run multiple $10K MRR companies on a $20/month tech stack

#33
post #7
post #5

A lot of this advice is good or at least interesting. A lot of it is questionable. Python is completely fine for the backend. And using SQLite for your prod database is a bad idea, just use Postgres or similar.

Why is SQLite bad for production database? Yes, it has some things that behave differently than PostgreSQL but I am curious about why you think that.

For read only it can be a great option. But even then I would choose D1 which has an amazing free tier and is sqlite under da hood.

Re: I run multiple $10K MRR companies on a $20/month tech stack

#34
post #11

I learned nothing. Most of this seems like common basic advice, wrapped up in AI written paragraphs... Initially from the title, I thought it would be about brainstorming and launching a successful idea, and that sort of thing.

I think it's good. I've definitely seen resource inflation exactly that OP is alluding to in enterprise. A desire to have some huge cloud based solution with AWS, spark bla bla when a python script with pandas in a cron job was faster.

Re: I run multiple $10K MRR companies on a $20/month tech stack

#35
The most interesting thing in here is https://github.com/smhanov/laconic which is the author's "agentic research orchestrator for Go that is optimized to use free search & low-cost limited context window llms".

I have been doing this kind of thing with Cursor and Codex subscriptions, but they do have annoying rate limits, and Cursor on the Auto model seems to perform poorly if you ask it to do too much work, so I am keen to try out laconic on my local GPU.

EDIT:

Having tried it out, this may be a false economy.

The way it works is it has a bunch of different prompts for the LLMs (Planner, Synthesizer, Finalizer).

The "Planner" is given your input question and the "scratchpad" and has to come up with DuckDuckGo search terms.

Then the harness runs the DuckDuckGo search and gives the question, results, and scratchpad to the Synthesizer. The Synthesizer updates the scratchpad with new information that is learnt.

This continues in a loop, with the Planner coming up with new search queries and the Synthesizer updating the scratchpad, until eventually the Planner decides to give a final answer, at which point the Finalizer summarises the information in a user-friendly final answer.

That is a pretty clever design! It allows you to do relatively complex research with only a very small amount of context window. So I love that.

However I have found that the Synthesizer step is extremely slow on my RTX3060, and also I think it would cost me about £1/day extra to run the RTX3060 flat out vs idle. For the amount of work laconic can do in a day (not a lot!), I think I am better off just sending the money to OpenAI and getting the results more quickly.

But I still love the design, this is a very creative way to use a very small context window. And has the obvious privacy and freedom advantages over depending on OpenAI.

Re: I run multiple $10K MRR companies on a $20/month tech stack

#36
When he switches from Kubernetes in the cloud to Nginx -> App Binary -> Sqlite he trades operations functionality for cost.

But, actually you can run Kubernetes and Postgres etc on a VPS.

See https://stack-cli.com/ where you can specify a Supabase style infra on a low cost VPS on top of K3s.

Re: I run multiple $10K MRR companies on a $20/month tech stack

#38
post #6

Just in case, if there are others like me who where wondering what does "MRR" means, it seems to be "monthly recurring revenue".

I'm just curious but is it the case that you signed up here 16 years ago and you didn't know what MRR means?

I was about to say: welcome to HN

Re: I run multiple $10K MRR companies on a $20/month tech stack

#40

Nice list! I'd say the SQLite with WAL is the biggest money saver mentioned. One note: you can absolutely use Python or Node just as well as Go. There's Hetzner that offers 4GB RAM, 10TB network (then 1$/TB egress), 2CPUs machines for 5$. Two disclaimers for VPS: If you're using a dedicated server instead of a cloud server, just don't forget to backup DB to a Storage box often (3$ /mo for 1TB, use rsync). It's a good…

> Nice list! I'd say the SQLite with WAL is the biggest money saver mentioned.

Funny you said that. I migrated an old, Django web site to a slightly more modern architecture (docker compose with uvicorn instead of bare metal uWSGI) the other day, and while doing that I noticed that it doesn't need PostgreSQL at all. The old server had it already installed, so it was the lazy choice.

I just dumped all data and loaded it into an SQLite database with WAL and it's much easier to maintain and back up now.

Post reply on HN