MurphyA/hacker-news huggingface dataset:
Google Cloud Run cost me $4,676 in 6 weeks with zero traff
by creativesage | 2025-12-24 18:43:15+00:00
Dear HN,

I’m a solo operator with no paying customers yet. I wanted more predictable baseline costs while iterating on a side project, so I migrated from App Engine to Cloud Run.

I fed my setup, budget, and constraints as context into Gemini CLI, asked it to search official documentation and best practices, and followed that guidance.

I removed –min-instances=1, expecting autoscaling to reduce idle spend. The commit message claimed “60% cost savings.” The actual outcome was roughly an 1,800% increase and a surprise decline message when I went to buy coffee on my credit card.

From Nov 2 to Dec 14, Cloud Run accrued ~$4,676. There was no traffic spike, no abuse, no application bug. The services were mostly idle.

What compounded: CPU and memory were over-provisioned (4 CPU, 16Gi) from earlier experimentation. Each deploy created a new revision, and I deployed frequently while iterating. Those revisions must have stayed warm longer than expected. Autoscaling plus revision sprawl meant more active resources than intuition suggested, even without traffic.

The billing alert failure: I had alerts enabled at $50. I received one early notification, then silence as spend climbed another $4,600. There were no clear signals that my cost profile had materially changed.

I contacted Google Cloud Billing Support looking for clear guidance or partial relief. After review, they declined any adjustment and closed the case. As a solo dev without an account team, there was no escalation path beyond accepting the charges.

Where it stands now: After right-sizing resources and cleaning up revision sprawl, daily costs dropped from ~$200 to under $5 on my billing dashboard. I’m cautiously optimistic but not certain it’s fully resolved.

For those running Cloud Run longer term: How do you actually cap downside as a solo dev? Do you set hard budget caps and accept downtime? Are there deployment patterns that avoid revision sprawl? Is App Engine still preferable purely for cost predictability? What guardrails work that don’t depend on constant manual billing checks?

I wasn’t chasing scale. I was trying to be careful with money while building alone. I’d appreciate hearing what others would do differently.
by could-of | 2025-12-24 18:43:31+00:00
> A few months ago a few keys of the keyboard stopped working, specifically the 5, 6, -, = and Delete keys. Sometimes I can get it working again by mashing one of them for a while, but it's not consistent.

I had the same problem on my X1 Carbon generation 6 and managed to fix it simply by disconnecting and reconnecting the keyboard ribbon cable. It's a very easy fix, the only thing you have to unscrew is the bottom cover.
by nymanjon | 2025-12-24 18:44:22+00:00
HTMX and related libs work just fine as offline apps. I've been doing it with my personal apps I make for myself for a long time.

Also, morphdom/idiomorph get you a long way even when you have highly interactive pages, especially if you have to hit the back end anyways. If you don't need to hit the back end then a front end lib is fine. But even then, the simpler pattern of hypermedia-driven applications can be better.

See https://github.com/jon49/Soccer as an example of this.
by derefr | 2025-12-24 18:44:22+00:00
> I'm not sure of what "production ready" is supposed to mean here

Given this text at the bottom:

> The high-performance HTML to PNG engine. Built for developers, agents, and automation. Completely free to use. All generated assets are public and ephemeral.

...I assume the implications are that:

1. this service will scale to meet request load without QoS degradation (i.e. it's probably running on FaaS infra), rather than being a fixed-size slowly-elastic cluster that would get choked out if your downstream service got popular and flooded it with thousands of concurrent requests

2. you can directly take the URLs the service spits out, and serve them to your downstream service's clients, without worrying much about deliverability, because there's an object store + edge CDN involved.

In other words, it's not just a single headless-chromium instance running on a box somewhere; you could actually use this thing as an upstream dependency and rely on it.

> the demo image is not optimized, `optipng` command decreases its size by 53.21%

Given that the author's imagined use-case is giving non-multimodal LLMs a way to emit visuals (the prompt at the bottom of the page starts "When asked to create visuals, charts, or mockups"), I think their idea is that the resulting rendered images would more-likely-than-not only be requested once, immediately, to display the result to the same user who caused the prompt to be evaluated.

Where, in that case, the metric of concern isn't "time+bytes cost for each marginal fetch of the resulting image from the CDN"; but rather "end-to-end wall-clock time required to load the HTML in the headless browser, bake the image, push it to the object store, and serve it once to the requesting user."

OptiPNG would slightly lower that last "serve it once" cost, but massively inflate the "bake the image" time, making it not worth it.

(I suppose they could add image optimization as something you could turn on — but "image optimization at the edge" is already a commodity product you can get from numerous vendors, e.g. Cloudflare.)
by hugs | 2025-12-24 18:44:30+00:00
it's a good questionn! i partially addressed this in the "why vibium" section of the v1 announcement: https://github.com/VibiumDev/vibium/blob/main/docs/updates/2...

to save a click, i'll post it here, too:

-----------

why vibium?

there are dozens of "ai-powered browser" tools now. so why this one?

the selenium ecosystem is massive: millions of tests, thousands of companies, decades of investment. but there's no obvious bridge to the ai future. many have moved to playwright — and for good reason: it's fast, easy to use, has popular features like auto-waiting, integrated video recording, and a ton of other batteries included.

vibium takes the same approach. batteries included. great dx. but built for where the industry is going: ai agents that need to drive browsers.

when i did those interviews in september, the response wasn't just "cool idea." it was relief. the community trusts us to build this bridge because we built the last two: selenium in 2004, appium in 2012.

community and ecosystem are the moat.
by otikik | 2025-12-24 18:45:58+00:00
It makes sense when you look at how the numberic for loop looks in Lua.

In Lua you specify the “beginning” and “end” of the iteration, both included. It doesn’t work like in C, where you have an initialization and an invariant. What makes it short in C would make it longer in Lua, and viceversa.

You could argue “why not make loops like C”, then. But that can be extended to the limit: “why have a different language at all?”.
by randerson | 2025-12-24 18:46:49+00:00
I see no reason not to believe them. This is the company that invented the seat belt and made the patent free to all other manufacturers. They seem genuinely passionate about reducing road deaths regardless of make.

Volvo is technically capable of making a car that drives 250 kph. That was the top speed of the Volvo 850 T-5R way back in 1995, so its a bold claim to suggest that lowering their top speeds is because they're incapable.

But "250 without issues" is easy to achieve under perfect conditions, but it is far from safe. The driver only has to sneeze at that speed, or hit a puddle of oil or some debris dropped by another car, and it is game over. They're right that safety tech won't save you at those speeds.

Volvo doesn't want anyone dying in their cars, regardless of whether its the driver's fault. Nobody needs to drive that fast and "people who will drive at >180 on the autobahn" is not a common enough use case worldwide to be worth optimizing for.
by nymanjon | 2025-12-24 18:46:55+00:00
I took that idea and made it actually usable.

https://github.com/jon49/htmz-be

It's amazing how much further you can go when you flip the server as the one deciding where what should be updated on the page.

This was originally conceived by datastar and nomini also implements it this way. And HTMX 4.0 will have this as a first class citizen.
by liuliu | 2025-12-24 18:47:16+00:00
I hope you finish this one though. It starts strong (I particularly liked how you looked into ncu and shows what each recommendation means, this is very helpful for beginners), but ends with something not satisfying. You didn't explore tensor core (particularly, fp16 / tf32 / bf16), and swizzling (which is the right way to solve the K transpose issue, especially giving Triton itself provides a few ways to do this), and / or async loading (pipelining).

Do you have problem to access H100 or similar chips? Wondering if there anything can help to finish this write-up.
by choraria | 2025-12-24 18:48:15+00:00
Not a joke (I'm taking this in the spirit intended) but I can see there are TONS of things I need to be improving on:

1. latency: my original goal was to make it sub-10s but with checking for auth, cold starts, the actual lookup, couldn't get it to do better than 2-300ms. I need to improve this though and I will.
2. increased list size: currently, the lookup happens across 1.7million records (will go up to 2.5m in the next days/weeks) BUT I don't think that would ever cover ALL scenarios.
3. better categorisation
by fallingfrog | 2025-12-24 18:48:57+00:00
My favorite excerpt so far:

Case ID #: 50D-NY-302757

Witness Information

First Name: Donald

Middle Name:

Last Name: Trump

Age: 70

DOB:

Additional Info: Again, just trying to find out the NYPD detective on the FBI sex trafficking task force that called me a couple of weeks ago and spoke to me about some of these issues.

How is Contact Known: He participated regularly in paying money to force
me to ‐----- with him and he was present when my uncle murdered my newborn child and disposed of the body in Lake Michigan.

Type: Business

Address:

City: Washington DC

State: District of Columbia

Zip: 20500

Country: United States
by grishka | 2025-12-24 18:49:05+00:00
That а/о thing is taught extensively in schools. There are formal rules for everything, but of course I don't remember any. What I do remember is these are called "безударные гласные" (unstressed vowels), and "проверочные слова" (test words?) are used to figure out whether it's о or а. The idea is iirc that you find a word with the same root in a different form where that syllable is stressed. Except sometimes there isn't one ¯\_(ツ)_/¯
by dmos62 | 2025-12-24 18:49:22+00:00
> Agent Framework offers two primary categories of capabilities:

> AI agents: Individual agents that use LLMs to process user inputs, call tools and MCP servers to perform actions, and generate responses. Agents support model providers including Azure OpenAI, OpenAI, and Azure AI.

> Workflows: Graph-based workflows that connect multiple agents and functions to perform complex, multi-step tasks. Workflows support type-based routing, nesting, checkpointing, and request/response patterns for human-in-the-loop scenarios.
by OneMorePerson | 2025-12-24 18:49:46+00:00
I'm trying to understand this cause it sounds fascinating but I don't get it. I don't have an advanced understanding of compression so that might be part of why.

If you compare an image to another image, you could guess by compression what is under the blocked part, that makes some sense to me conceptually, what I don't get is for the PDF specifically why does it compressing the black boxes I put have any risk? It's compressing the internal image which is just the black box part? Or are you saying the whole screenshot is an internal image?
by adrianmonk | 2025-12-24 18:49:53+00:00
This also produces carbon nanotubes, which they claim can be used in construction.

Given that construction currently uses a huge amount of concrete, and given that concrete emits huge amounts of CO2[1], if this could partially replace concrete in construction, it might actually be clean. At least compared to what we're doing now.

I doubt foundations are going to be made out of carbon nanotubes, but they might be useful for the structure (columns, beams, etc.).

---

[1] "4-8% of total global CO2" according to https://en.wikipedia.org/wiki/Environmental_impact_of_concre...
Show HN: Santa Saves Xmas; Android Game in Google Play Console Closed Testing
by abionic | 2025-12-24 18:50:04+00:00
Need help with Closed Testing of my first Game on Play Console "Santa Saves Xmas".

It's a fun, casual, free game where Santa snowballs monsters to turn them into Christmas Gifts.

Step.1: Join Google Group that has access to Testing, at: https://groups.google.com/g/luminousdecibels

Step.2: Install Game via Play Console at: https://play.google.com/apps/testing/app.abionic.santa_saves...
by MarkusQ | 2025-12-24 18:50:19+00:00
Right, that's what I'm objecting to. With tidal forces that strong, there should be no rotation parallel to the axis of tidal stretching. In the two-body reference frame the axis of rotation should be identical to the axis of rotation (tidal locking). So it should keep one pole towards the star.

The terminator is only secondarily significant here, but since it lies in a plane perpendicular to this axis, any bands should be parallel to it. But since this means that there will be a "hot side" and a "cold side" and convective cells between these will probably eliminate any banding.
by choraria | 2025-12-24 18:50:35+00:00
My take on latency in general is this: You may just use the API to flag (not act) in an async way. This way, you can just alert/monitor and decide later whether or not to take any actions while keeping the flow non-blocking. Another approach would be to run it against existing handles to see what opportunities exist (ex: premium usernames, impersonators etc.).
by Y_Y | 2025-12-24 18:50:44+00:00
Cheney on the MTA is a great paper/algorithm, and I'd like to add (for the benefit of the lucky ten thousand just learning about this) that it's pun on a great old song: Charlie on the MTA ( https://www.youtube.com/watch?v=MbtkL5_f6-4 ). The joke is that in both cases it will never return, either because the subway fare is too high or because you don't want to keep the call stack around.
by Groxx | 2025-12-24 18:50:52+00:00
I think this is fair... but the security of the bugs does vary quite a lot, both on a technical level and a personal level.

E.g. technical (not PEBKAK) E2EE issues are rather common and can mean losing all of your messages at unpredictable and uncontrollable times. That's an instant, permanent deal-breaker for many and I've personally had it happen several times. I still get "verify your device" messages for things that haven't logged in in years, and I can't remove them because I just get error messages. So roughly every time I launch the app I have to dismiss multiple security UI things covering up the stuff I actually want to do.

I'm pretty confident I'm an outlier, probably partly because I have kept my account since early Riot days, and for the most part it does work just fine. I stick with it because there are some Matrix groups I jump in occasionally. But for normal personal use I've had a continual trickle of "there is no way I can recommend this to anyone"-level issues, many of them multiple years old now... and absolutely zero evidence that they'll stop coming.
by sidrag22 | 2025-12-24 18:50:55+00:00
Depending on how you categorize people into being a "brainless wastoid", that could potentially shrink some people's interactions with other humans to literal 0...

I see this type of sentiment reflected all over the internet as well, avoiding people because they don't fit whatever type of mold, I think this type of mentality is terrible. Not saying you gotta go out and find someone who has 14 hours of screen on time a day and hang out with them, but even just lumping people into the category of "brainless wastoid" feels to me very much like bordering on dehumanization.
by mannanj | 2025-12-24 18:50:59+00:00
Hi this looks really valuable, thanks for developing and sharing. Would you share some use cases and how you or your users use it personally? would love to see some examples and feel the aha "That's how I'd like to use it too!" and it would help me drive and se the problems I have as being solvable by this too rather than seeing a tool/solution looking for a problem. (not implying you're that, but without examples/use cases that's the default way I think)
by mrsmrtss | 2025-12-24 18:51:20+00:00
I’m not sure which .NET libraries you are referring to, but all the ones we use have nullable reference types enabled. If you configure warnings as errors (as you should), then it works exceptionally well. Even if you were to use a library where nullable reference types are not enabled, you only need to check for null once during the library call, rather than everywhere in your codebase.
by piskov | 2025-12-24 18:51:48+00:00
Given Microsoft’s track record, come back in a few years and see if it still lives.

> It brings together and extends ideas from Semantic Kernel and AutoGen projects, combining their strengths while adding new capabilities

… and giving a hint what will happen to the aforementioned projects.

—

It’s a shame when someone’s promotion is tied to how many new things they ship.

—

> To learn more about migrating from either Semantic Kernel or AutoGen, see the Migration Guide from Semantic Kernel and Migration Guide from AutoGen.

It seems the motto of Microsoft for the last 15 years: “You won’t have time for new features — all you’ll do is migrations.”
by fakedang | 2025-12-24 18:51:56+00:00
> Can we Europeans deal with each others as adults when the big USA stick has disappeared. And can we talk to a partner who seems to have gone mad temporarily but might come back ?

There's always a bigger bully for the EU for it to go back to bickering within itself. USA, Russia, later China, maybe Turkey and the rest of the MENA down the line....
by bpt3 | 2025-12-24 18:52:16+00:00
I get the argument in theory, but then I'll just register coca-cola (which is available), cocacola_furry (which is available), C0CAC0LA (which is available), etc.

You're signing up to play a game you can't win preemptively IMO.

As an aside, cocacola is also "available", despite being listed as an example of what you don't want to allow on the homepage and presumably would be flagged as a reserved brand name handle by this service.
by nialse | 2025-12-24 18:52:35+00:00
Maybe personal computing is entering a slow decline.

Rising RAM prices over the next couple of years will make new computers and phones harder to justify, so people will keep devices longer. At the same time, Microsoft and Apple (et alia) continue shipping more demanding software packed with features no users asked for. Software growth has long driven hardware upgrades, but if upgrades no longer feel worthwhile, the feedback loop breaks. The question is whether personal computing keeps its central role, or quietly becomes legacy infrastructure people replace only when forced? In that case: What is the next era?
by ramoz | 2025-12-24 18:53:26+00:00
If using Claude Code, a simple hook can govern `browser_navigate` (mcp)

A custom sh script or something for whitelists would take ~5min to setup.

For more robust governance (many policies), you can write Rego using https://github.com/eqtylab/cupcake

https://code.claude.com/docs/en/hooks#mcp-tool-naming
by WheelsAtLarge | 2025-12-24 18:53:44+00:00
I think new tech students in general are given false hope with these coding courses. My experience has been that tech is not a one time shot learning experience that automatically leads to a a great high paying career. The course is just a start of a never ending learning journey. 10 months will not do it. It's just a start.

It's happening with college CS degrees too. I suspect it will happen with a great percentage of the people that are jumping into the AI career path too.

The real failure is over hyping how easy it is to get into a high paying tech career. The reality is that you have to work hard to get that first job and continue to work hard to make it a career.
by dpark | 2025-12-24 18:53:47+00:00
Sure. In 2022, 672 pedestrians were killed by large trucks. How many of those do you believe happened and say New York City? And how many of those do you think you could eliminate with this hypothetical tunnel system? And how much will this hypothetical tunnel system cost?

New York has about 300 pedestrian deaths total from all vehicles every year. So my guesstimate is that if you eliminated all of the trucks from New York City, you might say 50 lives a year. I would also guesstimate that it would probably cost well north of $50 billion to create this tunnel system to connect all of the major buildings in New York City. So we’re looking at about $1 billion per life saved. I bet you could save more than one life pavilion if you put that money somewhere more useful.

> What do you think, ready to imagine such a comparison?

Your snarky tone and bad faith arguments are not as clever as you might imagine.
by steveklabnik | 2025-12-24 18:54:06+00:00
"Rust is a good language and we should use it to write software" is not the same thing as "lol C++ sucks and nobody should use it for anything ever."

Engineering is all about tradeoffs. Responding to perceived zealotry with more, but different, zealotry makes it harder to have actual discussions.

LLVM is best in class at what it does. Until someone else decides to make something like LLVM in Rust, it's not realistic to use something else. That's just engineering. The choices here directly refute these sorts of zealotry claims, that is, it's not incoherence in what's being done, it's that you are attributing something to a large group of people who have a wide variety of beliefs. Overall, people are more pragmatic than you're giving them credit for, that's why rustc uses LLVM.
by ekjhgkejhgk | 2025-12-24 18:54:30+00:00
Same. Also, see how cool Mastodon is. Sure, it has technical problems, for example discoverability is harder. But so what? Preventing centralization of control is more important than more mundane things like "discoverability".

And in fact, discoverability on Mastodon is only less immediate because you don't a central authority making these decision for you. Nothing prevents you from checking out someone who follows and see who follows them and who they follow. It's more work, but you end up with a better result.

People who says "discoverability on Mastodon is difficult" presumably also say "I don't want to have to decide who my friends are, I want a corporation to choose my friends for me"...?
by afavour | 2025-12-24 18:54:53+00:00
> For me, I can't remember the last time I used a hotel TV. When I travel, I want to do stuff at the place I'm visiting, the hotel room is just a place to sleep and shower.

Again, really depends on what kind of travel you’re doing. What you’re describing sounds like leisure travel, which is awesome. But travel for work is often very different. You’re exhausted from a days work and you’re also often staying in very uninspiring places with little to explore.
by throwaway17_17 | 2025-12-24 18:55:26+00:00
I’m not sure what I wrote to give the impression that Rust was unable to write a compiler, let alone implied it was impossible. Rust is certainly full featured enough to write a very well performing compiler. I find my comment more an indictment, and viewed uncharitably an accusation of hypocrisy, of the language org’s oversight that they are so heavily invested in LLVM (but if I was leveling such an accusation it would not be just because it’s a C++ project)

My comment was focused on the fact that Rust is not using a Rust compiler and therefore is relying on deep and complex C++ infrastructure while working to supplant the same at the lowest levels of the computing stack.

I was also commenting, up the thread, in a chain of comments about a perceived shortcoming of Rust’s implementation (i.e. it’s not being bootstrapped) and why some people view that as a negative.