15 ms·
I run multiple $10K MRR companies on a $20/month tech stack
- osigurdson 5mo agoLots of debate about SQLite vs Postgres. One thing to note is you can certainly run Postgres (Kubernetes even if you want) and your app for $20 / month.
- cryptonym 5mo agoA $20 k8s sounds like adding the overhead without the benefits.
- osigurdson 5mo agoIt's about 300MiB and maybe 5% of a core if the cloud provider offers a free managed control plan. If you want / like Kubernetes it isn't a deal breaker.
- tradertef 5mo agoNot my website. I found this interesting.
- codemog 5mo agoA 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.
- gls2ro 5mo agoWhy 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.
- trick-or-treat 5mo agoFor 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.
- saltmate 5mo agoBut then you don't get the benefits of having the DB locally, with in-process access.
- trick-or-treat 5mo agoIt's local to the worker? I don't understand what you mean.
- sgarland 5mo agoUnless your Cloudflare worker and the DB are scheduled onto the same physical server, they are not local to one another. I don’t know much about D1, but the overwhelming majority of cloud infra makes no such guarantees, nor are they likely to want to architect it in that manner.
- kentonv 5mo agoCloudflare's Durable Objects puts your Worker and SQLite DB on the same physical server (and lets you easily spawn millions of these pairs around the world). D1 is a simplified wrapper around DO, but D1 does not put your DB on the same machine. You need to use DO directly to get local DBs. https://developers.cloudflare.com/durable-objects/ https://developers.cloudflare.com/durable-objects/ (I am the lead engineer for Cloudflare Workers.)
- sgarland 5mo agoVery cool, thanks for the response!
- chrismorgan 5mo agoPython will take you a long way, but its ceiling (both typical and absolute) is far lower than the likes of Go and Rust. For typical implementations, the difference may be a factor of ten. For careful implementations (of both), it can be a lot more than that. Does the difference matter? You must decide that. As for your dismissing SQLite: please justify why it’s a bad idea. Because I strongly disagree.
- mattmanser 5mo agoWhat a load of nonsense.
- danhau 5mo agoWhy is it nonsense? Sounds reasonable to me.
- blitzar 5mo ago> its ceiling (both typical and absolute) is far lower If you plan to remaining smaller than instagram, the ceiling is comfortably above you.
- jasdfwasd 5mo agoI plan to remain smaller than two VMs
- pdimitar 5mo agoThere are a myriad middle states in-between "frupid" (so frugal that it's stupid) and "Instagram scale". Python requires much more hand-holding that many don't want to do for good reasons (I prefer to work on the product unimpeded and not feeling pride having the knowledge to babysit obsolete stacks carried by university nostalgia). With Go, Rust, Zig, and a few others -- it's a single binary. In this same HN thread another person said it better than me: https://news.ycombinator.com/item?id=47737151 https://news.ycombinator.com/item?id=47737151
- 5mo ago
- cenamus 5mo agoI think the point is that your Python webapp will have more problems scaling to let's say 10,000 customers on a 5$ VPS tham Go. Of course you can always get beefier servers, but then that adds up for every project
- harvey9 5mo agoAt 10,000 paying customers I don't think it is frivolous to move to a 10/month vps, or maybe a second 5/month one for fail-over.
- tkcranny 5mo agoThere’s a lot to be said about his approach with go for simplicity. Python needs virtual environments, package managers, dependencies on disk, a wsgi/asgi server to run forked copies of the server, and all of that uses 4x-20x the ram usage of go. Docker usually gets involved around here and before you know it you’re neck deep in helm charts and cursing CNI configs in an EKS cluster. The go equivalent of just coping one file across to a server a restarting its process has a lot of appeal and clearly works well for him.
- berkes 5mo agoYes. It strikes me as odd how many people will put forward Python with the argument of "simplicity". It is not. Simple. It may be "easy" but easy != simple (simple is hard, I tend to say). I'm currently involved in a project that was initially layed out as microservices in rust and some go, to slowly replace a monolyth Django monstrosity of 12+ years tech debt. But the new hires are pushing back and re-introducing python, eith that argument of simplicity. Sure, python is much easier than a rust equivalent. Esp in early phases. But to me, 25+ years developer/engineer, yet new to python, it's unbelievable complex. Yes, uv solves some. As does ty and ruff. But, my goodness, what a mess to set up simple ci pipelines, a local development machine (that doesn't break my OS or other software on that machine). Hell, even the dockerfiles are magnitudes more complex than most others I've encountered.
- wanderlust123 5mo agoI am not following the difficulties you have mentioned. Setting up a local dev environment in Python is trivial with UV. The only major downside of Python is its got a bit poor module system and nothing as seamless as Cargo. Beyond that the code is a million times easier to understand for a web app.
- berkes 5mo agoAgain, "easy" is not the same as "simple". "trivial" falls in the "easy" category. So it may not be hard to do. But what UV makes "easy" is managing something very complex under the hood. Better example: FROM python:3.9-slim WORKDIR /app COPY requirements.txt . RUN pip install -r requirements.txt COPY . . CMD ["python", "app.py"] While "easy" it is nowhere near simple. Aside from the entire complexity of the stack of docker, that `python:3.9-slim` it itself is very complex. It installs over 20 "dev" packages (from bluetooth via tk to xz), it downloads source files, builds a python runtime, (patches that?), installs pip, setuptools, does some (to python people probably familiar?) "wheel" stuff, etc¹. Point being: what you end up with, while easy to get, is very complex. uv manages a runtime, some virtual environment to hot-swap that with other runtimes, it hooks into a package manager, manages additional tools (linter, typechecker, lsp, etc) and so on. What lies under that is very complex. ¹ I am well aware that node, ruby, php are quite similar.
- komat 5mo agoCool but missing the Claude Code or Coding Agent part imo
- PhilippGille 5mo agoHe specifically mentions that he is using GitHub Copilot because of how Microsoft bills per request instead of token.
- hackingonempty 5mo ago> If you need a little breathing room, just use a swapfile. You should always use a swap file/partition, even if you don't want any swapping. That's because there are always cold pages and if you have no swap space that memory cannot be used for apps or buffers, it's just wasted.
- berkes 5mo agoI always thought I had to add a swap file to avoid crashing with OOM. I wasn't aware of the cold pages overhead. Sometimes that crashing is what I want: a dedicated server running one (micro)service in a system that'll restart new servers on such crashes (e.g. Kubernetes-alike). I'd rather have it crash immediately rather than chugging along in degraded state. But on a shared setup like OP shows, or the old LAMP-on-a-vps, i'd prefer the system to start swapping and have a chance to recover. IME it quite often does. Will take a few minutes (of near downtime) but will avoid data corruption or crash-loops much easier. Basically, letting Linux handle recovery vs letting a monitoring system handle recovery
- mixmastamyk 5mo agoPeople seem to be using zram today. Maybe not on servers.
- p4bl0 5mo agoJust in case, if there are others like me who where wondering what does "MRR" means, it seems to be "monthly recurring revenue".
- weird-eye-issue 5mo agoI'm just curious but is it the case that you signed up here 16 years ago and you didn't know what MRR means?
- chii 5mo agoNot everybody who reads HN is well versed in business/entrepreneur oriented jagon.
- weird-eye-issue 5mo agoYes. Clearly. But is the irony really lost on you?
- vasco 5mo agoHN means HackerNews btw, for those 15 year accounts that don't know the jargon
- deleted 5mo ago[deleted]
- toong 5mo agoI was about to say: welcome to HN
- p4bl0 5mo agoHaha ^^'. Honestly, yes. I'm on HN for tech content, I don't really care about startups and the business side of things, even though sometimes there are interesting reads on this side as well. Also, it may very well be the case that I rediscover the meaning of MRR for the second or third time in sixteen years :).
- thibaultmol 5mo agoPretty sure this is just written by AI... Why else would someone call "Sonnet 3.5 Sonnet and gpt 4o' high end models.
- vxsz 5mo agoI 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.
- carabiner 5mo agoI 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.
- gobdovan 5mo agoUsually when there's "on a [low] $/mo" you'll hear basic advice. You'd be surprised to find out many folks are not aware of this!
- senko 5mo agoWell, there's also the "How we saved $10M/mo by actually paying attention to indexes" trope.
- mettamage 5mo agoIf you feel like it: start a blog! You have knowledge that you consider basic and a certain other subset of the population is interested in it and doesn't know it exists.
- Aerolfos 5mo agoNot only that, his whole business model seems to be "profit off the AI bubble and get the big techs to indirectly subsidize you" Which obviously works, it's not like there aren't tons of multi-million startups ultimately doing the exact same thing, and yet. It feels a bit... trite?
- anana_ 5mo ago> Sometimes you need the absolute cutting-edge reasoning of Claude 3.5 Sonnet or GPT-4o Dead giveaway
- brador 5mo agoYou already have and had everything you need to scale the business to max and it hasn’t happened so more money won’t help. What do you want VC to do? You didn’t bring a plan.
- berkes 5mo agoI was wondering this as well: Why did OP look for VC? In my case, I've used a similar strategy of keeping costs under €100/month. (But have sold, or stopped my ventures before hitting such MRRs as OP reports). I raised some capital to pay my own bills during development. But mostly to hire freelancers to work on parts that I'm bad at, or didn't have time for: advertising, a specific feature, a library, rewrite-in-rust (wink) or deep research into functional improvements.
- dnnddidiej 5mo agoIs infra where investors money is going? I imagined salaries would be it. Marketing costs maybe.
- swiftcoder 5mo agoFor single-person companies infra can be the single largest expense (especially if you aren't paying yourself yet!). The day you bring a full-time employee onboard, I have a hard time seeing infra costs ever exceeding salaries for most shops
- gobdovan 5mo agoNice 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 practice either way, but cloud instances seem more reliable to hardware faults. Also avoid their object store. You are responsible for security. I saw good devs skipping basic SSH hardening and get infected by bots in <1hr. My go-to move when I spin up servers is a two-stage Terraform setup: first, I set up SSH with only my IP allowed, set up Tailscale and then shutdown the public SSH IP entrypoint completely. Take care and have fun!
- selcuka 5mo ago> 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.
- gobdovan 5mo agoYep, it literally is a one-file backup. And runtime it's so much faster for apps where write serialisation is acceptable.
- t_mahmood 5mo agoAbout security, wall of shame story, Once I had Postgresql db with default password on a new vps, and forgetting to disable password based login, on a server with no domain. And it got hacked in a day, and was being used as bot server. And that was 10 years ago. Recently deployed server, and was getting ssh login attempts within an hour, and it didn't had a domain. Fortunately, I've learned my lesson, and turned of password based login as soon as the server was up and running. And similar attempts bogged down my desktop to halt. Having an machine open to the world is now very scary. Thanks God for service like tailscale exists.
- firefoxd 5mo agoI was writing about this recently [0]. In the 2000s, we were bragging about how cheap our services are and are getting. Today, a graduate with an idea is paying $200 amounts in AWS after the student discounts. They break the bank and go broke before they have tested the idea. Programming is literally free today. [0]: https://idiallo.com/blog/programming-tools-are-free https://idiallo.com/blog/programming-tools-are-free
- aleda145 5mo agoGreat stack! I'm doing a similar approach for my latest project (kavla.dev) but using fly.io and their suspend feature. Scaling to zero with database persistence using litestream has cut my bill down to $0.1 per month for my backend+database. Granted I still don't have that many users, and they get 200ms of extra latency if the backend needs to wake up. But it's nice to never have to worry about accidental costs!
- afro88 5mo agoThis is a really nice setup for side projects and random ideas too. Thanks for sharing!
- globalnode 5mo agonice article, validates some of the things i already thought. although im sure things like aws and database servers etc are still useful for big companies
- trick-or-treat 5mo agoLMFAO at Linode / Digital Ocean as lean servers. Hetzner / Contabo maybe. Cloudflare workers definitely. This guy is not at my level and multiple $10k MRR is possible but unlikely.
- sailingcode 5mo agoAI has solved the "code problem", but it hasn't solved the "marketing problem"…
- hackingonempty 5mo ago> 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.
- jampekka 5mo ago> 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. Isn't this idea to spend a bit more effort and overhead to get YAGNI features exactly what TFA argues against?
- Jolter 5mo agoI mean, you’re not wrong about the facts, but it’s also pretty trivial to migrate the data from SQLite into a separate Postgres server later, if it turns out you do need those features after all. But most of the time, you don’t.
- pdhborges 5mo agoI bet that takes more time than the 5 extra minutes you take to setup Postgres in the same box upfront.
- SpaceNoodled 5mo agoTo export a database? Probably even faster. And that's ignoring the difference in performance.
- raincole 5mo agoSo what's the $10K MMR product, exactly? The lede is buried into nonexistence. Is it this one: https://www.websequencediagrams.com/ 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?
- nesk_ 5mo ago>Really? Lol. If it's true why would you publish it? To ensure Microsoft will patch it up and fuck up your workflow? It's true and it's their official pricing, so talking about it won't change anything. People are spending way too much money with Claude Code while they could simply pay for GitHub Copilot and fire up OpenCode to get the same results but way cheaper.
- faangguyindia 5mo agoIt's already known. The trick is ms has very small context size. So it won't be much useful.
- raincole 5mo agoSo in other words the author is plain lying? > Even if the agent spends the next 30 minutes chewing through my entire codebase How can a 'very small context size' do that?
- cagz 5mo agoNice tech read, but without information about which companies, doing what, just feels way too click-baity.
- jstanley 5mo agoThe most interesting thing in here is https://github.com/smhanov/laconic 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.
- andai 5mo agoYeah, came here to mention that too! From the article: >To manage all this, I built laconic, an agentic researcher specifically optimized for running in a constrained 8K context window. It manages the LLM context like an operating system's virtual memory manager—it "pages out" the irrelevant baggage of a conversation, keeping only the absolute most critical facts in the active LLM context window. The 8K part is the most startling to me. Is that still a thing? I worked under that constraint in 2023 in the early GPT-4 days. I believe Ollama still has the default context window set to 8K for some reason. But the model mentioned on laconic GitHub (Qwen3:4B) should support 32K. (Still pretty small, but.. ;) I'll have to take a proper look at the architecture, extreme context engineering is a special interest of mine :) Back when Auto-GPT was a thing (think OpenClaw but in 2023), I realized that what most people were using it for was just internet research, and that you could get better results, cheaper, faster, and deterministically, by just writing a 30 line Python script. Google search (or DDG) -> Scrape top N results -> Shove into LLM for summarization (with optional user query) -> Meta-summary. In such straightforward, specialized scenarios, letting the LLM drive was, and still is, "swatting a fly with a plasma cannon." (The analog these days would be that many people would be better off asking Claw to write a scraper for them, than having it drive Chromium 24/7...)
- ianpurton 5mo agoWhen 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/ https://stack-cli.com/ where you can specify a Supabase style infra on a low cost VPS on top of K3s.
- Jolter 5mo agoI think his argument is that the functionality is unnecessary. You don’t need dynamic service scaling because your single-instance service has such high capacity to begin with. I guess it’s all about knowing when to re-engineer the solution for scale. And the answer is rarely ”up front”.
- ianpurton 5mo agoDynamic scaling is not really even available on a single node kubernetes. I was thinking more of Running multiple websites. i.e. 1 application per namespace. Tooling i.e. k9s for looking at logs etc. Upgrading applications etc.
- sgarland 5mo agoNamespaces exist in Linux [0], they weren’t invented by K8s. You can view application logs with anything that can read a text file, or journalctl if your distro is using that. There are many methods of performing application upgrades with minimal downtime. 0: https://www.man7.org/linux/man-pages/man7/namespaces.7.html https://www.man7.org/linux/man-pages/man7/namespaces.7.html
- ianpurton 5mo agoThats true. The reason I like k8s is once you've gone up the learning curve you can apply that knowledge to cloud deployments, on prem, or in this case VPS. The authors stack left me thinking about how will he re-start the app if it crashes, versioning, containers, infra as code. I've seen these articles before... the Ruby on Rails guys had the same idea and built https://kamal-deploy.org/ https://kamal-deploy.org/ Which starts to look more and more like K3s as time goes on.
- prakhar897 5mo agoDo these things actually work? I've seen way too many gurus on twitter claiming to make 10K+ MRR every month. And then they quietly start applying for jobs. or selling courses instead of cashing in.
- wasmainiac 5mo agoRight? I’m not buying it. Seems like personal PR post. Why care so much about so little operating costs when your earning so much?
- deleted 5mo ago[deleted]
- zmmmmm 5mo agoCan anybody validate this Github Copilot trick for accessign Opus 4.6? Sounds too good to be true.
- specproc 5mo agoI'm not what I'd call a heavy user, but I've also mainly been using Copilot in VS Code on the basic sub. You do get Opus 4.6, and it's really affordable. I usually go over my limits, but I'm yet to spend more than 5 USD on the surcharges. Not seen a reason to switch, but YMMV depending on what you're doing and how you work.
- nesk_ 5mo agoIt is true, it's the official pricing of GitHub Copilot.
- rzzzt 5mo agoWhy is GitHub sticking to per-request pricing when other providers switched to per-token for the high performing models?
- sumedh 5mo agoMaybe MS wants people to use Co Pilot.
- Supermancho 5mo agoMore likely loss leader to market capture. Not unusual for MSFT. XBox One, Razor and Blade, etc.
- brushfoot 5mo agoLongtime happy Copilot user here. It's true. The pricing is so good that it's the only way I do agentic coding now. I've never spent more than $40 in a month on Opus, and I give it large specs to work on. I usually spend $20 or so.
- f311a 5mo agoThere are zero reasons to limit yourself to 1GB of RAM. By paying $20 instead of $5 you can get at least 8gb of RAM. You can use it for caches or a database that supports concurrent writes. The $15 difference won’t make any financial difference if you are trying to run a small business. Thinking about on how to fit everything on a $5 VPS does not help your business.
- jampekka 5mo ago$15 is not exactly zero, is it? If you don't need more than 1GB, why pay anything for more than 1GB? I recall running LAMP stacks on something like 128MB about 20 years ago and not really having problems with memory. Most current website backends are not really much more complicated than they were back then if you don't haul in bloat.
- bdelmas 5mo agoIt is. With 10k MRR it represents 0.15% of the revenue. Having the whole backend costing that much for a company selling web apps is like it’s costing zero.
- jvuygbbkuurx 5mo agoYou probably don't make 10k MMR on day one. If you make many small apps, it can make sense to learn how to run things lean to have 4x longer runway per app.
- deleted 5mo ago[deleted]
- mlyle 5mo agoThe runway is going to be your time and attention span, not $10/mo. I don't know what you value your time or opportunity cost as... but the $10/mo doesn't need to save very many minutes of your time deferring dealing with a resource constraint or add too much reliability to pay off. If resource limitations end up upsetting one end user, that costs more than $10.
- t_mahmood 5mo agoSQLite is fine, but I have ran Postgresql on a $20 server without any issues, and I would suggest if you have to deal with concurrent users and tasks, Postgresql is the way to go. SQLite WAL works, but sometimes it caused some issues, when you have a lot of concurrent tasks running continuously. And, not sure I'm correct, but I felt Postgresql has more optimized storage if you have large text data than SQLite, at least for me I had storage full with SQLite, but same application on Postgresql never had this issue
- bornfreddy 5mo agoPlus, if/when you start caring about HA, it will be easier.
- La-Douceur 5mo agoYou can also absolutely run Postgres on your vps, the setup is slightly more complicated than sqlite, but it's a matter of 15 minutes vs 5 minutes.
- 44za12 5mo agoI read it as an article in defence of boring tech with a fancier/clickbaity title. Here’s the more honest one i wrote a while back: https://aazar.me/posts/in-defense-of-boring-technology https://aazar.me/posts/in-defense-of-boring-technology
- dvfjsdhgfv 5mo agoWhile I agree with your points, this one could be more nuanced: > Infrastructure: Bare Server > Containers > Kubernetes The problem with recommending a bare server first is that bare metal fails. Usually every couple of years a component fails - a PSU, a controller, a drive. Also, a bare metal server is more expensive than VPS. Paradoxically, a k3s distro with 3 small nodes and a load balancer at Hetzner may cost you less than a bare metal server and will definitely give you much better availability in the long run, albeit with less performance for the same money.
- sgarland 5mo agoIn 5 years of running 3x Dell R620s 24/7 - which were already 9 years old when I got them - I had two sticks of RAM have ECC errors, and one PSU fail. The RAM technically didn’t have to be replaced, but I chose to. The PSU of course had a hot spare, so the system switched over and informed me without issue. IME, hardware is much more reliable than people think.
- deleted 5mo ago[deleted]
- petesergeant 5mo agoYou can get all the advantages and almost none of the constraints by buying a bigger base server for $50/m
- petesergeant 5mo agoIf you can’t articulate what you need funding for, don’t be surprised if nobody will give it to you?
- Madmallard 5mo agoSo is the slopaclypse gonna destroy HN too? 2nd from the top AI written non-proofread article
- ponco 5mo agoAlways good to challenge the narrative - but I don't pay for RDS Postgres because of the WAL, replication, all the beauty of pg etc. I pay RDS because it's largely set and forget. I am gladly paying AWS to think about it for me. I think at a certain scale, this is a really good tradeoff. At the very beginning it could be overkill, and at the top end obviously its unsuitable - but for most of us those tradeoffs are why it's successful.
- prabal97 5mo agoYou can use stuff like Litestream to continuously back up your SQLite DB to a cheap storage bucket. It's practically set and forget too.
- 6stringmerc 5mo agoWhat a fascinating article. I especially love the part about writing extremely detailed requests which only cost $0.04 versus the token approach most “vibe code” devs use. Fortunately his tactic is almost impossible to emulate for 90% of the YCombinator audience / HN commentators. Why do I know this? Because there had to be a declaration here to stop using ChatGPT and other Agents to write YOUR OWN GODDAMN POSTS. Thinking isn’t your strong suit, Greed is, and taking the time to learn the power of English doesn’t satisfy the latter, so you minimize it to your own detriment. Don’t get mad at me. Go punch a mirror.
- ValtteriL 5mo ago>The feedback was simply: "What do you even need funding for?" Not clear from the text, but what was your plan using the funding on? If you did not have a plan, what did you expect? VCs want to see how adding more money results in asymmetric returns.
- deleted 5mo ago[deleted]
- senko 5mo agoIf this sounds like basic advice, consider there are a lot of people out there that believe they have to start with serverless, kubernetes, fleets of servers, planet-scale databases, multi-zone high-availability setups, and many other "best practices". Saying "you can just run things on a cheap VPS" sounds amateurish: people are immediately out with "Yeah but scaling", "Yeah but high availability", "Yeah but backups", "Yeah but now you have to maintain it" arguments, that are basically regurgitated sales pitches for various cloud platforms. It's learned helplessness.
- ramraj07 5mo agoApparently the phrase cargo cult software engineering is not common anymore. Explains these things perfectly.
- throwatdem12311 5mo agoHeh, I was gonna say cargo cult might mean something different in today’s programming landscape but then I thought about it for a second and it actually reinforces th meaning.
- rcbdev 5mo agoI end up explaining this term to every junior developer that doesn't know it sooner or later, the same way I explain bike shedding to all PMs that don't know it... often sooner, rather than later. It seems to really help if you can put a term to it.
- conductr 5mo ago> It seems to really help if you can put a term to it. It’s sad this whole group of people only respond to what amounts to filler slide deck material. Defined business vocabulary, acronyms, etc.
- InfraScaler 5mo agoI don't know what to say. People keep saying these engineers exist and here I am not having seen a single, and I follow many indie hackers communities.
- brkn 5mo agoThe text feels incoherent to me and lacks some nuance. It starts about cutting costs by the choice of infrastructure and goes further to less resource hungry tools and cheaper services. But never compares the cost of these things. Do I save actually the upgrade to a bigger server by using Go and sqlite over let's say Python and postgres? Or does it not even matter when you have just n many users. Then I do not understand why at one point the convenience of using OpenRouter is preferred over managing multiple API keys, when that should be cheaper and a cost point that could increase faster than your infrastructure costs. There are some more points, but I do not want to write a long comment.
- stephbook 5mo agoIt actually starts with a completely unrelated anecdote: "What do you even need funding for?" I agree. The author claims to have multiple $10K MRR websites running on $20 costs. I also don't understand what he needs money for — shouldn't the $x0,000 be able to fund the $20 for the next project? It doesn't make any sense at all. Then the author trails off and tells us how he runs on $20/month. Well, why did you apply for funding? Hello?
- kukkeliskuu 5mo agoThe author says he wants funding to grow the businesses. Presumably he wants funding and the help from investors to enable quicker growth than what is possible organically.
- stephbook 5mo agoYes, "presumably." That's exactly the problem..
- kukkeliskuu 5mo agoNo disgreement from me. He does not say what kind of funding he has been trying to get, but if my presumption is right, then some kind of Y-Combinator style hypergrowth. I think the response he got is sensible if he was approaching "Excel investors" who are risk averse, not targeting hypergrowth.
- mstaoru 5mo agoWhile I applaud the acumen, this reads like watching a kid standing on the 3rd floor balcony shouting "look what I can do!" $20/month. Yeah. Great, but why? You get a lot of peace of mind with "real" HA setup with real backups and real recovery, for not much more than $20, if you are careful. Another half of article is about running "free, unlimited" local AI on a GPU (Santa brought it) with, apparently, free electricity (Santa pays for it).
- gloomyday 5mo agoI 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.
- alentred 5mo agoStrongly agree. Forget the savings. Learning the basic tools and understanding how and why the complexity is added (what problems does it solve) is a big one.
- jmward01 5mo agoThe basic premise, try to be lean, is a good one. The implementation will clearly be debated with everyone having their own opinion on it but the core point is sound. I'd argue a different version of this though: keeping things lean forces simplicity and focus which is incredibly important early on. I have stepped into several startups and seen a mess of old/broken/I don't know what it does so leave it/etc etc. All of that, beyond the cost, slows you down because of the complexity. Regular gardening of your tech stack matters and has a lot of benefits.
- jofzar 5mo agoI decided to look at their website halfway through the post, https://imgur.com/a/7M4PdO6 https://imgur.com/a/7M4PdO6 This is really what 10k mrr can get you? A badly designed AI slop website that isn't even mobile correctly compatible. The logo is white background on black website like a university project. I can't believe that people are willingly spending money on this.
- yakshaving_jgt 5mo agoYou'd be surprised at the amounts household name companies spend on broken software. I've personally seen multiple companies spend tens of thousands paying just for the opportunity to evaluate the broken software. And I don't mean the time taken for their own employees to spend doing the evaluation. I mean that plus forking over large piles of cash.
- Capricorn2481 5mo agoI have worked with healthcare clients paying gobs of money to completely broken sites that they have to call support about twice a week. I don't pretend to know why people spend money on things anymore.
- KronisLV 5mo ago> I use Linode or DigitalOcean. Pay no more than $5 to $10 a month. 1GB of RAM sounds terrifying to modern web developers, but it is plenty if you know what you are doing. If you get one dedicated server for multiple separate projects, you can still keep the costs down but relax those constraints. For example, look at the Hetzner server auction: https://www.hetzner.com/sb/ https://www.hetzner.com/sb/ I pay about 40 EUR a month for this: Disk: 736G / 7.3T (11%) CPU: Intel Core i7-7700 @ 8x 4.2GHz [42.0°C] RAM: 18004MiB / 64088MiB I put Proxmox on it and can have as many VMs as the IO pressure of the OSes will permit: https://www.proxmox.com/en/ https://www.proxmox.com/en/ (I cared mostly about storage so got HDDs in RAID 0, others might just get a server with SSDs) You could have 15 VMs each with 4 GB of RAM and it would still come out to around 2.66 EUR per month per VM. It's just way more cost efficient at any sort of scale (number of projects) when compared to regular VPSes, and as long as you don't put any trash on it, Proxmox itself is fairly stable, being a single point of failure aside. Of course, with refurbished gear you'd want backups, but you really need those anyways. Aside from that, Hetzner and Contabo (opinions vary about that one though) are going to be more affordable even when it comes to regular VPS hosting. I think Scaleway also had those small Stardust instances if you want something really cheap, but they go out of stock pretty quickly as well.
- compounding_it 5mo agoWhat do you do about ipv4 ? Do you also use a routing VM to manage all that ? It’s very interesting how people rent large VMs with a hypervisor. I’m wondering if licenses for VPS have any clauses preventing this for commercial scale.
- KronisLV 5mo agoHetzner has some docs: https://docs.hetzner.com/robot/dedicated-server/ip/additional-ip-adresses/ https://docs.hetzner.com/robot/dedicated-server/ip/additiona... Since I only needed about 3 VMs (though each being a bit beefier, running containers on them, a web server sitting in front of those with vhosts as ingress), I could give each VM its own IPv4 address and it didn’t end up being too expensive for my use case. Would be a bit different for someone who wants many small VMs.
- sanghyunp 5mo ago[dead]
- pelorat 5mo agoThis is how every website used to be run before everyone fell four the cloud trap.
- pdimitar 5mo agoLove your username and how it relates to your comment -- and the topic at hand.
- Myzel394 5mo agoDoes anybody know a good service to self host Ai? My graphics card is shit, I want to rent hardware to run my own models
- deleted 5mo ago[deleted]
- deleted 5mo ago[deleted]
- Gooblebrai 5mo agoI know this article is about the stack, but I'd like to point out that the success of the author has probably more to do with their marketing/sales strategy than their choice of technical infrastructure. Something to remind to many tech folks on HN
- chiefalchemist 5mo agoTrue. But he’s able to do marketing because he has the money, time and sense of priorities to do so. The moral of the story is: Don’t be (another) fool, your tech stack is not your priority.
- fcatalan 5mo ago100% true. I ran a top 10 most visited Spanish language site on a Pentium III server. I have the technical chops to do all the articles says. But 10k MRR sounds to me like travelling to Mars. I have 0 ideas and 0 initiative to push them ahead.
- lamasery 5mo agoYeah, 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.
- jebarker 5mo agoWhat 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.
- fcatalan 5mo agoFor me it has been just saying "yes" when I was offered a job and when that one was getting a bit annoying someone happened to offer me another and I said "yes" too. I have ended up a bit underemployed and underpaid, but life's comfortable and safe and I have ample time to stress over hobbies instead of work. So comfortable that lately I have declined offers for interesting and much much better paid work, because I can no longer be bothered to take any risks or alter my lifestyle. But sometimes I wish I could have been the guy managing to get 10k MMR using knowledge I've got in spades.
- blurb2023 5mo agowell, the guy runs what he runs and can't complain
- m00dy 5mo agoI think making is the easiest part, would be really cool if you also reveal how you distribute what you are making for $20/mo.
- ronbenton 5mo agoI want to know how he’s identifying and monetizing businesses
- esskay 5mo agoIt always make me both roll my eyes and smile a little when i see someone daft enough to think they need some obscene setup - you dont. You never have. You are not Amazon, Microsoft, Google, etc. If you get to the point where you need that kind of setup you're already employing a dev ops team thats telling you that. Stick whatever you're working on onto a ~$5/mo cheapo vps from someone like Hetzner, Digitalocean, etc and just get on with building your thing.
- WolfOliver 5mo ago20$ vs 300$ does not really matter if you have multiple 10K MRR.
- elAhmo 5mo agoExactly. Deciding on some very expensive subscriptions that can cost 1k per month or so might be worth thinking about, but this is just meaningless optimisation.
- em-bee 5mo agonot at all meaningless. unless you have money to invest, at the beginning you don't have an income. i could not afford to spend $300 a month to host a new product that doesn't make any money yet. i can afford the $20 however, but then once the product does make money, why should i change it if it works?
- elAhmo 5mo agoAs a student you might be living in a 6sqm dorm with shared bathroom and a kitchen for 400 USD a month. You get a job paying you 200k afterwards. Why would you change where you live if it works?
- em-bee 5mo agothat's a strange argument. living in a dorm doesn't work the same way than living on my own. so actually if i like it, yeah, why would i change it until i need to? i would change it to have more privacy or to be closer to my new workplace. those are qualitative differences that matter. moving from self hosting to a hosted service gives me other advantages. whether those matter depends on the specific situation. the reality is that in many cases the hosting costs rise faster than the costs for self hosting would, and big companies save lot of money by moving back. switching from $20 a month to $300 a month is only worth it if i save at least a day of work per month. but that's often not the case. and the more you scale up the less work per revenue/profit you have. the one big advantage of paid services is that they lets you scale up faster. if that is what you need, then sure. OP does not scale fast.
- turdfergusonsr 5mo agoeh the super low cost only comes from low complexity. If complex, people pay more, features cost more, infra costs aren’t that big of a cost compared to dev time.
- taffydavid 5mo ago> I bought a GitHub Copilot subscription in 2023, plugged it into standard VS Code, and never left. I tried Cursor and the other fancy forks when they briefly surpassed it with agentic coding, but Copilot Chat always catches up. > 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. > The optimal strategy is simple: write brutally detailed prompts with strict success criteria (which is best practice anyway), tell the agent to "keep going until all errors are fixed," hit enter, and go make a coffee while Satya Nadella subsidizes your compute costs. Wow. I'll definitely be investigating this!
- taffydavid 5mo agoThanks for the downvote kind stranger. Not sure what I said to qualify
- jodrellblank 5mo agoYou copypasted three paragraphs from the article and you contributed "wow".
- estetlinus 5mo agoThe author refers to gpt 4o and sonnet 3.5 as SOTA. I’d take the AI tips with a grain of salt tbh. But I’d love it if it’s true
- pontussw 5mo agoIt works with all models, some have a cost multiplier like Opus 4.6 ”charges” 3 requests per prompt, but its still only for the prompts you send yourself - even if it works on the issue for hours. GPT-5.4 has no multiplier i.e. costs 0.04$ per prompt. Worth noting however that they are starting to introduce rate limits lately so you might struggle to run multiple concurrent sessions, though this is very inconsistent for me. Some days I can run 3-4 sessions concurrently all day, other times I get rate limited if I run one non-stop..
- iamflimflam1 5mo agoWould be handy to actually see what these companies do…
- hirako2000 5mo agoVery interesting insights on long running Llms locally. Edited.
- wg0 5mo agoAnyone doing per tenant database with SQLITE + Litestream? Please share your experiences and pain points. I know migrations are one. The other challenge is locating the correct database from incoming request. What else?
- satvikpendem 5mo agoCtrl-F Litestream leads me to this person also using it. https://news.ycombinator.com/item?id=47737167 https://news.ycombinator.com/item?id=47737167
- stavros 5mo agoForget about the tech stack, how do I get multiple $10k MRR companies?
- nickpsecurity 5mo agoRead sites like this to see how profit-based businesses (bootstrappers) do it. https://www.indiehackers.com/ https://www.indiehackers.com/
- stavros 5mo agoThat's very interesting, thanks!
- podlp 5mo agoI love SQLite and have ran it even on networked drives with queued writes for read-heavy applications. It’s an incredibly robust piece of software that’s often cost me pennies per month to serve 100k+ monthly users. But there’s definitely a time and place for solid, dedicated database servers like Postgres.
- krypttt 5mo agoWe have gone full circle haven't we?
- joongix 5mo ago[flagged]
- xxxxxxxx 5mo agoThis is similar to what I do. Linode, Debian, Go, HTMX, SQLite (with modernc.org/SQLite so I have no CGO dependency) and Caddy. If I have apps that need a lot of storage, I just add an S3 bucket.
- ornornor 5mo agoThat’s neat. How do you handle the rest: - backups - upgrades to the os packages (and downtime from reboots) - updates to container images (if you run any) - monitoring and alerting (logs, http 500 increase, http 200 drop, etc) Asking because I’m looking for pointers on how to solve this myself when deploying to a VPS rather than AWS alphabet soup or a PaaS
- xxxxxxxx 5mo agoI don't use containers. I just use systemd / systemctl to run the go apps. I manually update Debian on a schedule I keep. For logs I just ship them to my own app I developed that send messages to a discord server - but I might switch that over to something better one day but it's okay for now. I pay a little extra for Linode backups and have had to use it once, any anything important I backup to S3 and/or locally. I also forgot to say I also use SQLC - so I never have any issues with SQL being wrong or out of sync with the data model.
- sourcecodeplz 5mo agoI do it even more simpler: build in PHP and webhosting from Hetzner. All managed: email, sub-domains, name-servers, OS updates/patches etc. I really started to enjoy managed servers/instances.
- yoaso 5mo agoI'm taking the opposite approach - managed services all the way, and my monthly infrastructure costs are higher than what's described here. No regrets. Infrastructure isn't the problem I'm trying to solve. The problem is: who's actually going to pay for this? Optimizing infrastructure before you have customers is like designing a kitchen before you've written the menu. I launched within 72 hours of starting development and went straight to customer validation. The market feedback started coming in immediately. Infrastructure costs show up in your bill. The cost of slow customer validation doesn't show up anywhere - until it's too late. That's the number I watch.
- sgarland 5mo agoIt doesn’t sound like OP was optimizing anything; it sounds like they just knew how to use that stack, and so are able to get customer validation while also spending very little per month.
- yoaso 5mo agoFair point. Stack selection is mostly about what you already know. I chose managed services not because I optimized for it, but because that's the stack I'm comfortable with. That said, my real point was simpler: whatever stack you pick, figure out who's going to pay for it before you spend time on infrastructure decisions.
- em-bee 5mo agowhich approach works better depends on your financial situation and your existing setup. if you have money you can invest, then your approach works. if you have more time than money then invest the time instead. when you have built up your servers over the years, when building a new product, you can also do it quickly because the services you need are already running, and firing up a new database or a new server takes just as long as it takes to set up a managed service. but it doesn't add any cost.
- jon-wood 5mo agoSome of this will depend on what experience you’ve got. Someone with lots of experience running Linux servers can probably stand up the sort of thing described in this article in a couple of hours from a starting point of being given the Go application source and a credit card.
- pdimitar 5mo agoI do appreciate the technical simplicity argument and I'm always advocating for it. And the few neat tricks i.e. Copilot. That being said, I'd much rather read a few ideas for good recurring passive income. Instead, the author kind of flexes on that, then says "I get refused VC money because they don't see how their money would be useful for me" -- which is one more flex -- and moves on to the technical bits. It's coming across as bragging to me.
- cmiles8 5mo agoThe biggest risk to cloud revenues is that everyone wakes up and realizes they could slash their cloud bills by 60+% quite quickly with just some minimal leaning.
- nullorempty 5mo agoEh-trade.ca eh? The name spells the exit strategy this is seeking. Awesome idea and a great execution. Vertical scaling will take this simple setup far and probably far enough.
- BobBagwill 5mo agoModern tech stacks always remind me of this cartoon: https://www.toontales.net/short/lumber-jerks/ https://www.toontales.net/short/lumber-jerks/ Acme Toothpicks
- mixmastamyk 5mo agoCute, thought I’d seen them all but I guess not.
- jjjggggggg 5mo agoWhere do you get your eh-trade.ca stock price data? Given the licensing fees, that seems like one of the greater challenges of bootstrapping anything with market data.
- shireboy 5mo agoThis is my life goal right now. I have a bajillion ideas, know how to code them (even faster now), and just not enough time due to day job. A few questions: How do you market them? Is customer support an issue? Do you see risk since ai makes it so easy to build/copy?
- nerder92 5mo agoThis is supposed to be a contrarian opinion yet this is a retoric yapped non-stop in the “build in public” community. Of course lean is a good approach, it makes sense, and most engineers know this. Is not a new concept, we’ve been doing this for years in every branch of engineering. The invented “people start with a k8s cluster for 5 users” doesn’t really exist. This is just a story repeated ad nauseam to fit a narrative that help them justify their choices. This position is just as dogmatic, if not more, than the alleged dogma it attempts to disrupt. Smart technical leaders knows that technical decisions only matter in context never in absolutes. The right answer is always “it depends”. I can agree that there is a tendency to prematurely optimize infra, as a direct consequence of lack of measuring especially in young busy startups. One could argue that premature optimization might be the smart choice when you don’t have enough data, as in the best case scenario (your startup do well) you’ve saved some time, worst case scenario you’ve lost some money that depending on the situation might be less valuable than time spent in maintaining, and later refactoring, infra.
- abujazar 5mo agoI've seen A LOT of public sector projects starting out with loads of Azure services and >$3000 montly bills for applications that could've easily run on a single VM.
- nerder92 5mo agoThis a structural problem not an awareness one. Is not like they don’t know they can run it on a 5$ VPS, the problem is that there are no incentives to do so. You’d be surprised to know how much of engineering is there to address organisational challenges rather than technical ones (ie: micro-services)
- deleted 5mo ago[deleted]
- icedchai 5mo agoSame. They've been sold a bill of goods by big cloud tech and company.
- ilikestarcraft 5mo agoOne thing that I noticed was the mention of Claude 3.5 Sonnet or GPT-4o when the blog was written 25 days ago. This sadly makes me suspect that this was written by a LLM instead of a person...
- ilikestarcraft 5mo agoOne thing that I noticed was the mention of Claude 3.5 Sonnet or GPT-4o as cutting-edge models when the blog was written 25 days ago. This sadly makes me suspect that this was written by a LLM instead of a person...
- skeeter2020 5mo agoI get that the focus of this article is on the tech portion, but I don't know anyone pitching today (aside from OpenAI) who is asking for big funding for the tech costs. It doesn't really matter if you built a system that costs you $200/month or $20/month if your lifetime value is $1000 and CAC is only $10 but you've got no money. That's what people want to fund. VC funding is gasoline you pour on a fire (or fuel for you rocket if you're being charitable) - it makes you go faster; a pitch that focuses on "slightly lower monthly op costs" is not attractive.
- the__alchemist 5mo agoI concur with some of the commenters that this read as a bit of a brain dump. It has a thread connecting several loosely-related topics. Observation #1: You can also solve the tech stack problem with Heroku. I think the author's stack probably has a steeper learning curve, but is a cheaper option. I think it's a bit of an odd comparison (I won't say straw-man, as I don't doubt some people do this) to go from a fully-controlled simple setup to using AWS with a pile of extra crap. You can also, for example, run something similar to what he or she is describing on AWS, Heroku etc. (I.e. without the things in the AWS diagram he indicated like kubernetes and load balancers.) Observation #2: I have not found WAL mode is an antidote to SQLite locks during multiple concurrent writes. (This is anecdotal) I think regarding Go vs Python/Ruby etc. I completely get that. I would now like to check out Go on web. I use Rust for most of my software writing, but am still on Python for web servers, because there is nothing I can use for Rust that is as powerful and easy as Django.
- AlexSalikov 5mo agoSimilar approach here. I run a side project on Next.js + Vercel (free tier) + Neon Postgres (free tier). Total hosting cost: $0/month. The one place I'd push back on SQLite: if your app has any write concurrency from external processes (cron jobs, webhooks), WAL mode helps but you still hit lock contention. I have data collection scripts running every 30 minutes that write to the same DB the web app reads from. Postgres handled that cleanly from day one. Neon's free tier is 512MB with connection pooling — more than enough for a side project with real data.
- operatingthetan 5mo agoI guess it depends on what it is, but the Vercel free tiers don't allow commercial projects. I have no idea if they actually check though.
- AlexSalikov 5mo agoYes, the free tier is for hobby projects. But even if I upgrade to Pro, it still fits the $20/month tech stack from the original post.
- peter_retief 5mo agoAWS is not value for money, I do have a DO account that is great but my development is mostly hosted locally with tunnels from cloudflare, it is remarkable how far you (I) can get with that setup.
- lamasery 5mo agoLast I saw, AWS has way better peering agreements than DO. Lots of problems with terrible throughput and lots of dropped packets for various clients (in several cities in North America, not just overseas or in the middle of nowhere) that vanished instantly on switching to AWS (including overseas ones that were also having problems) Unfortunately, this isn’t something that shows up on spec sheets when you’re choosing a service. :-/
- Capricorn2481 5mo agoWell where does it show up? This is the first I've heard of this. Any source?
- lamasery 5mo agoSource was we used it, and that's what we saw, ~20% of clients on three continents (about half in North America) consistently had terrible connectivity to DO (not none, but it was really bad) and we spent a lot of time trying to fix it. Vanished through nothing but shifting that to AWS. It was clearly DO's peering network. You probably won't see this unless both the following are true for your situation: 1) You have a workload that makes this issue noticeable. Long-lived connections and large transfer sizes make it more likely you'll notice. Loading 20kb of static html over the connection likely won't seem to have any problems (unless you run repeated trials and network analysis tools). Of course, modern websites can be pretty large... 2) Your users are long-term enough and in communication with you so these issues can even be noticed in the first place. Also helps if they're technical. If you're not hearing the story and aware of the situation on the other end of the line, all you see is a slow connection, could be anything causing it, and there are plenty of them for reasons that have to do with things closer to the client's end. So all e.g. an e-commerce site might see is a somewhat higher bounce rate than necessary (due to some fraction of their users experiencing the site like it's on a somewhat-jittery ISDN line) without even knowing they're leaving money on the table because they likely have no way of even being aware of the problem. [EDIT] Yes, we tried shifting around a bunch of ways on DO's side trying all kinds of ways to fix this, I'm quite sure it wasn't that we were unlucky with our hardware draw there or just one of their datacenters had this problem. It was something past the edge of their network.
- plomme 5mo agoThe biggest cost when bootstrapping always seemed to be your salary to me, not infra costs. How long can you pay your mortgage and feed your kids off what should be your retirement or rainy day funds?
- diebillionaires 5mo agoAgree with a lot of this except sqlite, and the fact that if I commit to building something I typically put it in the cloud with basic scaling from the start for efficiency.
- sadeed08 5mo agoVery good article for a beginner starting newly to keep things lean and simple.
- niedbalski 5mo agoTruth has been told.
- mperham 5mo agoSQLite? Luxury! My servers use CSV files for the database. (It’s actually true)
- ZeWaren 5mo agoI run a dozen PHP (Laravel) / MySQL / Redis apps on a single server which cost 45€ per month. Applications each have their own FreeBSD jails, so they're isolated. ZFS incremental replication on top of regular app backups provide a quick recovery process should the hardware of that machine fail. Moving those apps to the cloud would cost orders of magnitude more, for benefits I don't need.
- dwa3592 5mo ago>>The optimal strategy is simple: write brutally detailed prompts with strict success criteria (which is best practice anyway), tell the agent to "keep going until all errors are fixed," hit enter, and go make a coffee while Satya Nadella subsidizes your compute costs. 100% agreed.
- nickandbro 5mo agoPieter levels would love this.
- jimmypk 5mo ago[flagged]
- zkmon 5mo agoHow do you connect back from VPS to local LLM?
- phendrenad2 5mo agoThis seems extremely spartan. Live a little, splurge on the 2GB server and MariaDB instead of SQLite!
- Leomuck 5mo agoI do agree that the overall tendency towards cloud has made things much more complicated and expensive than they need to be in many cases. Cloud has its place, but so do simple server instances. Many projects won't reach any kind of scale that would exceed the capabilities of a medium-sized VPS. We're running a page with 600k users at work that could easily fit on a 30€ VPS. Instead, we moved to AWS and are now paying 800€ for it. No benefits whatsoever. So yea, stick with what worked for decades if you don't see a reason not to. Also, I remember reading that StackOverflow runs on a bunch of super powerful root servers?
- leaves83829 5mo agoI quite like the websequencediagram. looks like a cool product! He's mainly talking about the tech implementation which is the easy part. the hard part of creating a business is finding a problem valuable enough to solve and reaching the users who need that problem solved. that's where the real value is.
- geetee 5mo agoThis is the most frustrating problem I have. I do my 40 hours per week, play with my kids, relax with the wife, and play some video games. I don't really have any other problems besides not enough time in the day. And yet when I learn about some domain specific problem, it is blindingly obvious.
- coolThingsFirst 5mo agoYeah also pretty sure this product has tons of competitors like exaclidraw.
- elias1233 5mo agoWith the Oracle Cloud Free Tier you can do this for a whopping $0/month. They give you a 4 core ARM CPU and 24 GB RAM for free, plus 200 GB storage.
- arc_light 5mo ago[dead]
- pipeninja 5mo agoDude you are my spirit animal. Ive been building lean like this forever and thought I was the only nutcase out there...I too have had the same pitch problems as you, when a platform is hella efficient and there is no spending to be had on fixed assets, its not very appealing to investors.
- elwebmaster 5mo agoCan OP write another article focusing on the revenue side, how to actually bring in $10K MRR, forget about the tech stack, AI can solve that.
- dehrmann 5mo agoA job in tech will get you $10k MRR. At least from this blog post, I wouldn't take his advice on MRR. He's optimizing in the wrong places; he'd be better off spending $100 per month on hosting and focusing on MRR than focusing on bringing hosting costs down to 0.2% of revenue. There's a middle ground without K8S where you use your cloud's autoscaling app hosting and a small, replicated DB. He strawmaned the enterprise approach, and he's trading off a lot of toil for uptime.
- nodesocket 5mo agoI run a python flask app on Docker on AWS EC2. Including Dozzle (logs), Beszel (monitoring) and Unami (analytics). Runs on three t4g instances. One being a dedicated caddy exposed to the internet, one being a NAT gateway (self managed) and the main Docker worker host (private). All in cost is $35 a month. You’re splitting hairs and being the typical overly frugal developer instead of founder mode if you optimizing dollars when you have $20k / mo revenue. What 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.
- deleted 5mo ago[deleted]
- hedayet 5mo agoAll the title is telling me is that [M|A]RR has been so abused, they stopped making any sense. A company selling dollar for cents would have infinite MRR, doesn't make it a "business", let alone a good business. Instead, tell us how much do you make in profit/month, not your gross MRR.
- mercatop 5mo agoThe real insight here isn't SQLite vs Postgres or VPS vs cloud – it's that for most indie/small SaaS, your bottleneck is never infrastructure. It's finding customers, keeping them, and shipping fast enough to stay relevant. I've seen teams spend weeks setting up Kubernetes for an app that serves 50 requests per minute. The infrastructure complexity doesn't just cost money – it costs cognitive load that could go into product work. The one thing I'd add to the article: this approach works brilliantly until you need a second engineer. The moment you're not the only person deploying, you need at least some reproducibility – even a simple Makefile and a documented deploy process goes a long way.
- sudb 5mo agoLooks like this may be on the wrong parent post!
- coolThingsFirst 5mo agoFor his GPU he needs to have special permission from the ISP for incoming connections correct?
- ewams 5mo agoHow do you handle billing / payment processing?
- dh1011 5mo ago> If you have a graphics card sitting somewhere in your house, you already have unlimited AI credits. I tried running a local LLM, and it’s actually cheaper to use AI credits when you factor in electricity costs. Only use a local LLM if data privacy is your priority.
- ornornor 5mo agoI don’t get the copilot part. Opus 4.6 is a 3x multiplier as per GH pricing (https://docs.github.com/en/copilot/concepts/billing/copilot-requests?utm_source=perplexity#model-multipliers https://docs.github.com/en/copilot/concepts/billing/copilot-...) so each request costs 0.12$ not 0.04$, and if using the fast mode opus 4.6 then it’s 30x so 1.20$/request. How does the author get 0.04$ per?
- adamgoodapp 5mo agoI found Cloudflare's offering to be more than enough and get multi regional deployment.
- firemelt 5mo agogranted my mmr is not 10k but I also run my apps on $6 digital ocean up until I need a background job which I raise it to $12 server
- hamuraijack 5mo agoWhile this may be true that MOST projects don't need the complexity that the internet proselytizes, if you want a job in tech, you'll have to learn the teachings of the internet and what the "industry" agrees are "best practices".
- otterley 5mo agoI'm curious as to what these $10k MRR companies are.
- mertguvencli 5mo ago[dead]
- lasgawe 5mo ago> 1GB of RAM sounds terrifying to modern web developers, but it is plenty if you know what you are doing. If you need a little breathing room, just use a swapfile. I agree. I usually spend about $60 per project (= startup). On the frontend, I stick to vanilla JavaScript with direct DOM manipulation using Bun.js. For the backend, I use Go, relying mostly on standard libraries. it’s incredibly fast. Many developers underestimate how much they can optimize when they go closer to the fundamentals.
- Lord_Zero 5mo agoOn your website https://eh-trade.ca/ https://eh-trade.ca/ at the bottom it says "These opportunities are now closed, but they show the power of our momentum algorithm." and the total return is negative lol