MurphyA/hacker-news huggingface dataset:
Show HN: SlopScore – Contributor Reputation for GitHub PRs
by hanzili | 2026-01-13 05:09:58+00:00
Open source maintainers are drowning in low effort PRs.

Someone sees a help wanted issue, pastes it into an AI, submits without testing, loops through review comments without understanding the code. The PR looks plausible at first glance but falls apart under review. Maintainers waste 30 minutes before realizing it's garbage.

This is happening at scale now. And it's worst in projects with bounty programs or GSoC where there's incentive to “contribute.”

GitHub tells you if someone is a first-time contributor to your repo. It doesn't tell you anything about their history elsewhere.

I built a Chrome extension that shows contributor reputation right on the PR page: merge rates across repos, spray-and-pray patterns, red flags.

Not sure I got the signals right. Would love feedback from maintainers.
by grimblee | 2026-01-13 05:10:43+00:00
White men are the most privileged and protected class oh prople in the accident, all this is bullshit.

You have no idea what people outside of it are saying because you don't talk to them, you've just been endoctrined by the media playing on your fears of the unknown and of losing some of those privileges.

But the thing is, the most privilegied losing privileges isn't something horrible, it's simple justice, restoring the balance.
Show HN: Drizzle ORM schema to DBML/Markdown/Mermaid documentation generator
by rikeda71 | 2026-01-13 05:11:21+00:00
Hi HN,

I built a CLI tool that generates documentation from Drizzle ORM schema definitions.

The problem: Drizzle ORM doesn't have built-in schema documentation or ER diagram
generation. While drizzle-dbml-generator exists for DBML output, I needed something
that could also extract JSDoc comments and generate human-readable documentation.

What it does:
- Extracts JSDoc comments from your schema and includes them in the output
- Generates DBML (compatible with dbdocs.io and dbdiagram.io)
- Generates Markdown documentation with Mermaid ER diagrams
- Supports PostgreSQL, MySQL, and SQLite
- Works with both Drizzle v0 (relations()) and v1 beta (defineRelations()) APIs
- Watch mode for development

Example:
drizzle-docs ./src/db/schema.ts -o schema.dbml
drizzle-docs ./src/db/schema.ts -f markdown -o ./docs

The key differentiator is JSDoc extraction. If you document your schema like this:

/** User account information */
export const users = pgTable("users", {
/** Unique identifier */
id: serial("id").primaryKey(),
/** User's email address */
email: varchar("email", { length: 255 }).notNull(),
});

These comments become Notes in DBML or descriptions in Markdown output.

Built with TypeScript, uses the TS Compiler API for comment extraction.
MIT licensed.

Would love feedback on what output formats or features would be most useful.
by JumpCrisscross | 2026-01-13 05:11:24+00:00
> if someone makes lifestyle changes after taking drugs its 100% the drugs

Multi-variate causation doesn't losslessly or deterministically reduce to a single dimension. Particularly when the causes aren't independent.

The drugs facilitate behaviour change. Changed behaviour helps the drugs work. Both done together are stronger than independently, and the strength of that interaction (and the overall effect) is mediated by other inputs.
by incr_me | 2026-01-13 05:12:20+00:00
Let's assume that you can. For disaster recovery, this is probably acceptable, but it's unacceptable for basically any other purpose. Reverting the whole state of the machine because the AI agent (a single tenant in what is effectively a multi-tenant system) did something thing incorrect is unacceptable. Managing undo/redo in a multiplayer environment is horrific.
by hdjrudni | 2026-01-13 05:12:44+00:00
> though it probably goes down less than something you self-manage, unless you're a full-time SRE with the experience to back it.

I wonder how true that is. This went down because of a bad update, which is probably like 99.99% of outages. The other 0.01% is cosmic rays causing hardware failures.

My server was up for 3.5 years with no outages because I just didn't touch it. I had to take it offline a couple days ago to move it which made me a little sad. Took a snapshot and moved it to a new droplet, brought it back up as-is and it's running great again.

Anyway, emergencies are less emergy if things go down while you're upgrading and shuffling things around yourself. You expect hiccups if you're the one causing the hiccups. It's when someone else is tinkering on the other side of the country/planet and blows something up that suddenly you have an emergency.
by skar8147 | 2026-01-13 05:13:13+00:00
Hi HN — we built Rebly as a privacy-first, ad-free alternative to Bitly.

Rebly focuses on:
- End-to-end HTTPS
- No ads, no trackers, no link hijacking
- Optional self-hosting
- Rate-limited APIs and abuse protection

Tech stack:
- React + Node.js
- PostgreSQL + Redis
- Deployed on Render
- Stripe for subscriptions

We built this because most URL shorteners today monetize clicks and data.
Rebly is designed to stay simple, fast, and secure.

Feedback is very welcome.
Ask HN: How can we make use of AI agents with existing GitLab CI/CD pipelines?
by tbharath | 2026-01-13 05:13:47+00:00
We currently utilize GitLab CI/CD pipelines to deploy our Kubernetes clusters. I am planning to integrate AI agents to gather cluster-related data and automate the deployment process. I am considering two primary approaches:

Replacing GitLab CI/CD with Agentic Workflows: Is this a reliable strategy? With GitLab, we can easily rerun a pipeline from the point of failure after fixing an issue. I am concerned that agentic workflows might lack this granular state management and retry capability.

Invoking GitLab CI/CD via Agents: In this scenario, the agent would trigger the GitLab API to start a pipeline or job. However, this seems to add more complexity than simply triggering them manually. How can I implement this efficiently?

Ultimately, my goal is to use agents to eliminate manual pre-pipeline preparation and to have them autonomously analyze and fix errors when a pipeline fails. Has anyone successfully implemented AI agents for this purpose?
by userbinator | 2026-01-13 05:13:54+00:00
It's also for a rather unbelievable reason --- if your GPU is not "powerful enough", you don't get rounded corners by default.

You read that right: apparently rounded corners are so resource-intensive that if you don't have or disable GPU acceleration, they'll disappear.

As much as I absolutely hate rounded corners in general, it's astonishing the apparent inefficiency with which MS have implemented them. Then again, mediocrity seems to be par for the course with their developers: https://news.ycombinator.com/item?id=28743687
by eru | 2026-01-13 05:14:24+00:00
I just looked it up, and apparently health care costs for pets has gone up in price even faster than for humans.

Pets typically don't have medical insurance, and any insurance that does exist there has a radically different regulatory regime than for humans.

Since 1980 for the US:

CPI has gone up by 3.16% on average per year (x4.17 in total). Human healthcare costs by 4.9% per year (x8.96 in total). And pet healthcare costs by 6.49% (or x17.87 in total).
by eichin | 2026-01-13 05:17:20+00:00
> Except when playing a sound (when a cat is detected) PawSense occupies less than 120K of RAM.

Maybe add a 1999 or 2000 datestamp to this (it won the https://en.wikipedia.org/wiki/List_of_Ig_Nobel_Prize_winners... Ig Nobel prize in Computer Science in 2000...)
by cush | 2026-01-13 05:18:21+00:00
> Isn’t its voice the ui? It should respond using the same context of the request. Voice and natural language.

Yeah it’s an interesting idea, but visuals are required sometimes. Even the simple task of “List the highest rated Mexican restaurants near me” works perfectly well enough with old crappy Siri. You’ll get a list of the highest rated Mexican restaurants near you. But as soon as you open the first restaurant, Siri closes and the list is gone. You can’t view the second restaurant. To get the list back you need to ask Siri again.

There’s no world in which that user experience makes a viable product. It’s a completely broken user experience no matter how smart the Gemini model is.
by throwaway17_17 | 2026-01-13 05:19:50+00:00
There are two distinct constructs that are referred to using the name variable in computer science:

1) A ‘variable’ is an identifier which is bound to a fixed value by a definition;

2) a ‘variable’ is a memory location, or a higher level approximation abstracting over memory locations, which is set to and may be changed to a value by an assignment;

Both of the above are acceptable uses of the word. I am of the mindset that the non-independent existence of these two meanings in both languages and in discourse are a large and fundamental problem.

I take the position that, inspired by mathematics, a variable should mean #1. Thereby making variables immutably bound to a fixed value. Meaning #2 should have some other name and require explicit use thereof.

From the PLT and Maths background, a mutable variable is somewhat oxymoronic. So, I agree let’s not copy JavaScript, but let’s also not be dismissive of the usage of terminology that has long standing meanings (even when the varied meanings of a single term are quite opposite).
by Nextgrid | 2026-01-13 05:19:52+00:00
> could you do better yourself

For this particular failure mode absolutely - this is amateur-level stuff that shouldn't have happened.

You know how to make something that works keep working? Not messing with it. Of course, this doesn't pay salaries if your entire career is based on "fixing" things that work until they don't.

There is no reason to hurry a Postgres upgrade - the thing shouldn't be internet accessible anyway, so no risk of security issues.

If you do want to update, it's best to test the update on a test/staging system. Which I'm sure they would have if they didn't have to pay a 10-90x markup on the compute price.

Finally, when you do the update, you'd do it manually during a time where you are present and outside of business hours to further minimize the impact of something going wrong, instead of the upgrade happening out of the blue at a random time.
by defrost | 2026-01-13 05:21:55+00:00
> "Nadir Point" has a nice ring to it...

Mine Camps .. with a Long S ( https://en.wikipedia.org/wiki/Long_s ) once appealed, but I fear getting cancelled.

There was always something happening, whether it was shipboard fires in the disputed parts of South China Sea or India / Pakistan engaging in cross border nuclear tests in our survey zone.

That last one followed several of us about for years, anytime we crossed a US controlled border they got interested in how we knew what they didn't ...

* https://www.nytimes.com/1998/05/13/world/nuclear-anxiety-the...

.. look, we just happened to be there with a 42 litre doped Sodium Iodide crystal pack and 256 channel gamma ray spectrometer just as the tests kicked off ...
by cookiengineer | 2026-01-13 05:22:40+00:00
Loosely related: my new hobby project is growing and nuturing sourdough that's optimized for gluten free bread, and I'm cultivating a couple of different kinds to find out which taste I like the most.

It kind of escalated a bit once I realized that different mixtures of bacteria cultures produce differently tasting dough/bread and that you can strengthen the grow rate by optimizing the external variables.
by rmunn | 2026-01-13 05:24:18+00:00
Yes, and if you ask any midwife, OB/GYN, or other person who routinely delivers babies, I'm sure you'll hear about plenty of born-on-different-days twins. One of my in-laws is a doctor who delivers babies; she has lots of stories, some of which she's restricted by HIPAA from sharing. But once a baby is born, the baby's birth date is public knowledge so she can share that info. So she often will tell her husband, "My patient is going into labor, I have to go to the hospital" without naming the patient. Then after the baby is born she'll say "Mrs. Smith's baby was born at 11 PM last night" because now it's a matter of public record who the mother was, whereas before it was protected by HIPAA. Next time I talk to her, I'll ask her if she's ever personally delivered any twins with different birthdays.

The timezones thing, of course, is just a way to have the younger twin be born "a year ahead" of the older twin by having their births be in two different timezones. Only practical way that would happen would be aboard a ship, because 1) babies born aboard an airplane would probably end up using the time zone of departure or of destination for their birth, and so twins would not be counted as being born in different time zones. And 2) any land-based transportation such as a car or a train would likely pull over (or in the case of a train, let the pregnant woman off at the nearest station) so that the woman giving birth doesn't have to do so in a moving vehicle. So a ship is the only moving vehicle where this kind of thing could likely happen, as there's no option of getting off in the middle of the ocean. It could happen while crossing time zones east-to-west, but crossing the International Date Line west-to-east makes more of an interesting thought experiment.

Yes, I've given this silly joke scenario way more thought than it really deserves. :-)
by akoboldfrying | 2026-01-13 05:25:25+00:00
I find this surprising, but I suppose it must be more efficient overall.

Presumably parsing text into tokens is done in some deterministic way. If it is done by greedily taking the longest-matching prefix that is a token, then when generating text it should be possible to "enrich" tokens that are prefixes of other tokens with additional constraints to force a unique parse: E.g., if "e" is a token but "en" is too, then after generating "e" you must never generate a token that begins with "n". A text generated this way can be deterministically parsed by the greedy parser.

Alternatively, it would suffice to restrict to a subset of tokens that are a prefix code. This would be simpler, but with lower coding efficiency.
by __loam | 2026-01-13 05:25:53+00:00
Comparing something to a public utility is not me saying it's literally a public utility. Google runs a monopolistic service that is essential to a lot of our public life, in a segment that has high cost of entry and infrastructure cost. They make the service worse to make more money. It should be a regulated utility like electricity or railroads, we should have a public alternative like the post office is to UPS, or it should be nationalized. The situation gets more dire when you consider their browser monopoly.
by hdjrudni | 2026-01-13 05:26:29+00:00
As a solo dev who just started his second cluster a few days ago... I like it.

Upfront costs a little higher than I'd like. I'm paying $24 for a droplet + $12 for a load balancer, plus maybe $1 for a volume.

I could probably run my current workload on a $12 droplet but apparently Cilium is a memory hog and that makes the smaller droplet infeasible, and it seems not practical to not run a load balancer.

But now I can run several distinct apps running different frameworks and versions of php, node, bun, nginx, whatever and spin them up and tear them down in minutes and I kind of love that. And if I ever get any significant amount of users I can press a button and scale up or horizontally.

I don't have to muck about with pm2 or supervisord or cronjobs, that's built in. I don't have to muck about with SSL certs/certbot, that's built in.

I have SSO across all my subdomains. That was a little annoying to get running, took a day and a half to figure out but it was a one time thing and the config is all committed in YAML so if I ever forget how it works I have something to reference instead of trying to remember 100 shell commands I randomly ran on a naked VPS.

Upgrades are easy. Can upgrade the distro or whatever package easily.

Downsides are deploys take a minute or two instead of sub-second.

It took weeks of tinkering to get a good DX going, but I've happily settled on DevSpace. Again it takes a couple minutes to start up and probably oodles of RAM instead of milliseconds but I can maintain 10 different projects without trying to keep my dev machine in sync with everything.

So some trade-offs but I've decided it's a net win after you're over the initial learning hump.
by throwaway17_17 | 2026-01-13 05:27:46+00:00
I’d say that the point of async/await is to create a syntax demarcation between functions which may suspend themselves (or be suspended by a supervisory system) and those functions that process through completely and cannot be suspended (particularly by a supervisory system). The means to enable the suspension of computation and allow other computations to proceed following that suspension are implementation details.

So, having an async function run on a separate thread from those functions that are synchronous seems a viable way to achieve the underlying goal of continuous processing in the face of computations that involve waiting for some resource to become available.

I will agree that inspired by C#’s originating and then JavaScripts popularization of the syntax, it is not a stretch to assume async/await is implemented with an event loop (since both languages use such for implementation).
by ashishb | 2026-01-13 05:29:06+00:00
6 months back I started dockerizing my setup after multiple npm vulnerabilities.

Then I wrote a small tool[1] to streamline my sandboxing.

Now, I run agents inside it for keeping my non-working-directory files safe.

For some tools like markdown linter, I run them without network access as well.

1- https://github.com/ashishb/amazing-sandbox
by nextaccountic | 2026-01-13 05:30:25+00:00
> From the Facebook blog post, it seems like the key issue was Facebook's internal filesystem monitoring tool (Watchman) was easier to integrate with Mercurial than with Git:

> https://engineering.fb.com/2014/01/07/core-infra/scaling-mer...

That link is from 2014, is there any more recent work to make Git use a file watcher rather than scan the whole tree?
by virgildotcodes | 2026-01-13 05:31:28+00:00
I'm long term traveling, mostly through the developing world, where something like 84% of humanity resides.

All around me, people's houses, the roads, the infrastructure, food cultivation and preparation, furniture, vehicles, it goes on and on, the tendency is towards loose approximation, loose standards. Things are constantly breaking, the quality is low, people are constantly being poisoned by the waste seeping into their water, air and soil, by the plastic they burn to cook their food, by the questionable chemicals in the completely unsafe industrial environments they work in to produce toxic products consumed by the masses.

There is no uniform size of steps. Yet the majority of humanity lives this way, and not just tolerates it but considers it a higher standard of living than we've had for the majority of human history.

I don't think people in the first world are a different species, so we will also adapt to whatever shitty environment we regress into as our standards fall. We'll realize that the majority of the areas we may consider sacrosanct are in fact quite negotiable in terms of quality when it comes down to our needs.

All this is to say that yeah, I think people will generally tolerate the quality of software going down just fine.
by learningstud | 2026-01-13 05:32:19+00:00
This was the sentiment for programmers well-versed in assembly languages (counting cycles, self-modifying code, story of Mel) when compilers came out, yet the advances in compiler technology enabled the creation of OCaml and Coq. What I think will actually happen is that a new breed of programmers with extensive mathematical background will start designing unprecedented software (or even digital circuits through high-level synthesis) that are almost correct by construction at a much faster rate with the combination of formal specification and AI coding. The field of computer aided design (CAD) will likely explode, and we will witness spaceships, nanobots, etc. being churned out at the rate of React websites. The whole computing field will become so high level that applied mathematics like optimal control, optimal transport, information geometry, etc. will become bread and butter for any programmer.

At the same time, there will be a new breed of artists that starts making games, movies, etc. with AI alone. We will witness a whole new form of artistic expression.
by NoLinkToMe | 2026-01-13 05:35:19+00:00
I don't understand the point. Supermarket food is cheaper than restaurant food, virtually without exception.

But the 'routine of supermarket shopping' creates 'noise' that makes you want to eat more / more often? How does that work.

I tend to go to the supermarket once a week and make this buying decision on a full stomach. I've not bought snacks or soda during this type of shopping since I was a teenager, I simply refuse to buy these things, like cigarettes or alcohol. There is no decision fatigue, the decision was made once and stuck to.

The discipline required is about 30 minutes a week. The rest of the time I'm not at the supermarket, and travelling to the supermarket to buy a snack just isn't worth the trouble. This way sticking to the decision becomes easy: I only shop once a week.

Then I have to cook the food (I only buy ingredients). I'm not a big fan of cooking, so I wouldn't go out of my way to cook more often than I need or want, and overspend in this way.

This seems like a lot less noise or fatigue than going out for food 3 times a day and being presented with ready-made menu's of tens or even more than a hundred food options per day, and making a healthy and budget-friendly decision 21 times a week, on an empty stomach -- there's no way I could ever spend less at restaurants than cooking.

I get eating out, I've been doing it solely for the last months due to travel and I love it. But I'm absolutely not spending less or eating more healthy.
by Nextgrid | 2026-01-13 05:36:11+00:00
Nobody that uses Kubernetes and random shit from Github would sign such an agreement if they actually had to pay out and could not weasel their way out of it. That would be signing up for a near-unlimited liability and business suicide.

Let's assume an incident costs you (the customer) ~5k, just assuming the time it takes to get a professional on very short notice to debug (since the whole promise of managed services is that you no longer need technical staff at all). That's also ignoring the actual cost to your business (lost sales, reputational risk, or missing your own SLAs).

For the provider to be willing to pay out something like this they'd need to charge you monthly several times that amount (otherwise just one incident and they're forever underwater on the LTV). Yet such a monthly amount would make the service unaffordable to all but the most deep-pocketed customers... for whom the impact of an outage on their business would cost even more meaning they'd want the payouts to be even bigger, leading to a catch-22.

High-availability good enough for the provider to put 5-figure sums on the line is actually really hard (there's a reason actual critical stuff like stock exchange order processing or card transactions don't run on the "cloud", nor on Kubernetes for that matter), so the next best thing is make-believe "high availability" where everyone (except the occasional poor soul like you that actually believed the marketing) understands the charade and plays along (because their own SLAs are often make-believe too).

See also: the recent Cloudflare or AWS outages.
by shawnz | 2026-01-13 05:36:49+00:00
Regarding the first part: that's an interesting idea, although I worry it would bias the outputs in an unrealistic way. Then again, maybe it would only impact scenarios that would have otherwise been unparsable anyway?

Regarding the second part: you'd effectively just be limiting yourself to single character tokens in that case which would drastically impact the LLM's output quality