I think newer developers really need to learn that you can actually do production stuff using bare tools. It is not crazy, especially in the beginning, and it will save you a ton of money and time.
I run multiple $10K MRR companies on a $20/month tech stack
421–430 of 539 posts
Re: I run multiple $10K MRR companies on a $20/month tech stack
#422Earlier quoted context omitted.
Looks like the overhead is not insignificant: Running 100,000 `SELECT 1` queries: PostgreSQL (localhost): 2.77 seconds SQLite (in-memory): 0.07 seconds ( https://gist.github.com/leifkb/1ad16a741fd061216f074aedf1eca... )
Would be nice to see PGLite[1] compared too 1: https://pglite.dev/
Re: I run multiple $10K MRR companies on a $20/month tech stack
#423What do I get as an advantage being on AWS? S3 (literally like a $1 month) SQS (free tier) and Lambda (async jobs; free tier). Capacity if needed, just scale up t4g instances.
Re: I run multiple $10K MRR companies on a $20/month tech stack
#424Earlier quoted context omitted.
How about pg on Unix socket?
Running 100,000 `SELECT 1` queries: PostgreSQL (localhost): 2.84 seconds PostgreSQL (Unix socket): 1.93 seconds SQLite (in-memory): 0.07 seconds SQLite (tempfile): 0.06 seconds ( https://gist.github.com/leifkb/b940b8cdd8e0432cc58670bbc0c33... )
Re: I run multiple $10K MRR companies on a $20/month tech stack
#425Earlier quoted context omitted.
Yeah, 25 years in the industry, zero business ideas right here. I can build whatever, I just have zero clue whatsoever what to build. Never have.
What has your career looked like? I'm interested because I've spent 20 years in applied research and I've only more recently realized the continual stress that I've felt for 20 years from trying (and mostly failing) to innovate in the "what to build" space.
Same as 95+% of people.
Re: I run multiple $10K MRR companies on a $20/month tech stack
#426Earlier quoted context omitted.
> SQLite on the same machine is akin to calling fwrite. Actually 35% faster than fwrite [1]. > This is also a system constraint as it forces a one-database-per-instance design You can scale incredibly far on a single node and have much better up time than github or anthropic. At this rate maybe even AWS/cloudflare. > you need to serve traffic beyond your local region Postgres still has a single node that can write. S…
May be an "out" there question, but any tech book suggestions you'd recommend that can teach an average dev on how to build highly performant software with minimal systems? I feel like the advice from people with your experience is worth way way way way more than what you'd hear from big tech. Like what you said yourself, big tech tends to recommend extremely complicated systems that only seem worth maintaining if yo…
Your reading/learning material can spin out of those constraints.
So for me my recent constraints were:
1. Multiplayer/collaborative web apps built by small teams.
2. Single box.
3. I like writing lisp.
So single box pushes me towards a faster language, and something that's easy to deploy. Go would be the natural choice here, but I want a lisp so Clojure is probably the best option here (helps that I already know it). JVM is fast enough and has a pretty good deployment story. Multiplayer web apps, pushed me to explore distributed state vs streaming with centralised state. This became a whole journey which ended with Datastar [1]. Thing is immediate mode streaming HTML needs your database queries to be fast and that's how I ended up on SQLite (I was already a fan, and had used it in production before), but the constraints of streaming HTML forced me to revisit it in anger.
Your constraints could be completely different. They could be:
1. Fast to market.
2. Minimise risk.
3. Mobile + Web
4. Try something new.
Fast to market might mean you go with something like Rails/Django. Minimise risk might mean you go with Rails because you have a load of experience with it. Mobile + web means you read up on Hotwire. Try something new might mean you push more logic into stored procedures and SQL queries so you can get the most out of Postgres and make your Rails app faster. So you read The Art of Postgresql [2] (great book). Or maybe you try hosting rails on a VPS and set up/manage your own postgres instance.
A few companies back mine were:
1. JVM but with a more ruby/rails like development experience.
2. Mobile but not separate iOS/Android projects.
3. Avoid the pain of app store releases.
4. You can't innovate everywhere.
That meant Clojure. React native. Minimal clients with as much driven from the backend as possible. Sticking to postgres and Heroku because it's what we knew and worked well enough.
- [1] https://data-star.dev
- [2] https://theartofpostgresql.com
There's no right answer. Hope that's helpful.
Re: I run multiple $10K MRR companies on a $20/month tech stack
#427Earlier quoted context omitted.
Nothing would happen, ssh is designed to be open to the world. Using tailscale or a vpn to hide your IP is fine, but using tailscale ssh maybe not.
Well continuous attempts definitely bogged down my desktop pretty bad. Also, getting OOM on a 64gb machine multiple times a day is quiet annoying. And one simple mistake, and we're screwed
Re: I run multiple $10K MRR companies on a $20/month tech stack
#428Earlier quoted context omitted.
There was always tech content. I'd say it was even a more important part back in the days, and it was more diverse. There were always some trends (Ruby on Rails, Rust, etc.) but it was never like these days with LLM-related content which is almost all of the tech content. Because of that I've gone back to Reddit like two years ago, and now spend even more time there than here, which hadn't been the case in almost 15…
Where on reddit? It's even more LLM heavy than HN.
Re: I run multiple $10K MRR companies on a $20/month tech stack
#429I 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.
Re: I run multiple $10K MRR companies on a $20/month tech stack
#430Earlier quoted context omitted.
> for inserts only into singe table with Actually, there are no inserts in this example each transaction in 2 updates with a logical transaction that can be rolled back (savepoint). So in raw terms you are talking 200k updates per second and 600k reads per second (as there's a 75%/25% read/write mix in that example). Also worth keeping in mind updates are slower than inserts. > no indexes. The tables have an index on…
Thank you for clarification, I was wrong in my prev comment. > - [1] An interactive transaction is a transaction where you intermingle database queries and application logic (running on the application). could you give specific example why do you think SQlite can do batching and PG not?
So, if you have a network server that does BEGIN TRANSACTION (process 1000 requests) COMMIT (send 1000 acks to clients), with sqlite, your rollback rate from conflicts will be zero.
For PG with multiple clients, it’ll tend to 100% rollbacks if the transactions can conflict at all.
You could configure PG to only allow one network connection at a time, and get a similar effect, but then you’re paying for MVCC, and a bunch of other stuff that you don’t need.