4 ms·
I Rewrote My Back End in Go in 72 Hours and Cut My AWS Bill by 94%
- odilelof 23d agoTuesday, October 3rd, 9:17 AM. I'm sipping my coffee, opening the AWS console like I do every morning. Except this time, I almost spat it all over my keyboard.
- seki285 23d ago[dead]
- deleted 23d ago[deleted]
- abdullah2993 23d agoYou never mentioned what is this BE for?
- odilelof 23d agoBE = Advertisement banner (abbreviation for "Banner")
- pjmlp 23d agoWell, another one discovering strongly typed compiled languages. Apparently Tiger Beetle also started in node, before the founder reached out for Zig. Meanwhile all JavaScript tooling is being rewritten in Go and Rust. Maybe it is time to finally grasp it should be left to the browser?
- odilelof 23d ago[flagged]
- jdboyd 23d agoOr maybe that it should be replaced in the browser with something better as well?
- aeve890 23d agoMS had VBS. Just sayin
- lmz 23d agoMS(IE) had ActiveScript, of which VBS was just one implementation (although it was the bundled one that always existed). People have built integrations for stuff like Tcl, Python, or Perl, making them available to the browser. Example: https://perlhacks.com/2026/07/remember-perlscript-when-internet-explorer-could-run-perl/ https://perlhacks.com/2026/07/remember-perlscript-when-inter...
- phlogisticfugu 23d ago1990s calling: there's a language which is strongly typed, and will compile to bytecode that runs both on your server and in your browser as a sort of universal binary. It's named after a type of coffee...
- mitxela 22d agoJavaScript? WASM? Browsers don't run Java any more
- zem 23d agoaddressing the category error rather than the specifics of whether js belongs in the backend - just because a language is theoretically general purpose, it doesn't mean it's the best tool for the job. in the case of language tooling in particular, the operations involved are fairly well understood, and they do not really play to the strengths of javascript (or indeed of any of the currently popular dynamic languages), because what you want is optimised performance rather than exploration of ambiguous business rules, or runtime adaptation to the shape of user data, or consuming untyped blobs from a remote API, or any of the range of other problems backend js is indeed decently useful for.
- mywittyname 23d agoDid you keep RDS Postgres?
- exabrial 23d agoA rewrite is always better... I bet you could rewrite in bash with fastcgi and get an improvement
- saejox 23d agoanother good target for ai rewrite: getting out of serverless cost hell. it used to be a gigantic endeavor. now a few days work.
- WesolyKubeczek 23d agoWhat stood out for me was that a complete rewrite of the backend application took 72 hours. Even pulling all-nighters. Especially pulling all-nighters. If I did it even 20 years ago, back when I was young, I'd expect the quality of my code to nosedive. If it indeed took this little time, I strongly suspect the backend wasn't doing too much in the first place. Usually you can rewrite those quickly and demonstrate speedups. Some real big software that had a misfortune to have been written in something interpreted and inferior, might be more problematic, especially if you can't afford downtime or are unsure about all important corner cases, and when the program itself is your only documentation. Another thing that was very jarring was that the article as a whole sounded very LLMese. Or PowerPointy? Take your pick. This little example screams that an LLM might likely have writen it: > I'm not going to give you a lecture. Here are the concrete numbers: > RAM — the real deal > > Node.js, on my latest version, was using 1.4 GB of RAM just to boot the app on one instance. > > Go? 48 MB. I'm not kidding. When talking to LLMs, I cannot now unsee how often they feel a need to assert something is real and they are not making things up. When I see this much LLM-like writing, I'm asking myself, maybe this all is made up? A plausible story, but maybe it never happened? Why would I spend my time reading it?
- nhumrich 23d agoThe real cost savings was from realizing the infrastructure needing nuking. Probably could have gotten almost the same savings keeping it in node and refactoring. Go doesn't seem to be the real hero of this story.
- maipen 23d agoAgree 100%. Also changing express to deno or bun would decrease resource usage and improve overall performance with very little changes to the codebase. 2000 req per minute is pretty low. This was nothing but an example of overengineering.
- CodeWriter23 23d agoLooks like you hit paste 2x bro. : )
- cluckindan 23d agoCame here to say this, the entire article is duplicated on the page.
- jezek2 23d agoGood, now you can cut your bill again by 94% by renting a normal VPS with unlimited traffic. The traffic is about 100x more expensive on "the cloud" and it killed all the ideas I had for cloud usage. Clouds are not worth it, even for scaling you can always rent more VPSes (or dedicated servers for heavy projects).
- peter_d_sherman 23d ago>"Why Go saved my a* I'm not going to give you a lecture. Here are the concrete numbers: RAM — the real deal Node.js, on my latest version, was using 1.4 GB of RAM just to boot the app on one instance. Go? 48 MB. I'm not kidding. On the first test I ran, I launched a 15 MB Go binary on a t3.micro. The API responded in 20ms. I thought I'd measured wrong. I checked three times. It wasn't a mistake." There is definitely something to be said for a self-contained high-performance server in 48 MB...
- mitxela 23d agoThis is AI slop
- chmod775 23d agoIn a sane world this would still pass as satire. In our world I'm not sure whether a human even read the entire thing before publishing it. There's absolutely nothing of substance in here.
- amatecha 23d agoit's AI slop, same as everything posted by that user (look at their comments)... :\
- smokey5000 22d agoThe site redirected/presented me with a full screen "Your phone has been wiretapped, click here" type ads/scam
- malinono 22d ago[flagged]