MurphyA/hacker-news huggingface dataset:
by sethammons | 2025-12-27 10:27:41+00:00
I have experience that I think most don't. My experience says you are very, very incorrect.

In the past couple of decades I have been through a couple IPOs, a couple of acquisitions, and have been in engineering leadership roles and slinging code in half a dozen different shaped eng/dev cultures.

In every case, static typing makes teams faster and gradual typing was a pain with potential payoffs that were muddy. Gradual typing is a shitty bandaid and so are type annotations.

I have migrated no less than 30 systems from various languages to Go across different companies, divisions, and teams. Mostly PHP, ruby, perl, python. Didn't migrate the elixir but I would have if given the opportunity.

In every single case, the team started delivering software faster. Prototypes became faster with the sole exception of prototype admin crud panels which we have needed like twice out of the nearly three dozen services I have worked on migrating. And super dynamic json can be a pain (which I blame not on problem spaces but on less thought out dynamic typed solutions offloading their lack of design onto customers via randomish response bodies).

When programs/applications get larger, the complexity tries to combinatorially expand. It can quickly outgrow what newer team members can juggle in their head. Type systems take some of that away. They also take away tests that are there due to lacking types. "What if this is a string, or list, or number" isn't a question you ask, nor is it a test you write and maintain.

When everything fits in your head, dynamics types are freeing. When it doesn't fit in your head, tooling helps.

Even smaller programs benefit. The dozens of teams I have personally witnessed don't find adding a type as a slowdown - they see whole test cases they can ignore as impossible to compile.
by jononor | 2025-12-27 10:28:11+00:00
At the very least one must connect to people who would find it valuable (either inbound or outbound), and the value has to be communicated to the prospective buyers. People make their decisions based on how they perceive the product, not based on your view. And the value big enough to overcome friction involved in purchasing, including soft factors like people trusting you with their money. There might be habits and other pieces of inertia that has to be overcome also, and why would they pick your thing over the alternatives. And of course you must be able to charge enough to cover the costs of providing said value.
by BuckRogers | 2025-12-27 10:28:46+00:00
The Adguard extension on Edge works really well. It replaced UBlock Origin for me. They actually try to push the limits of mv3 with workarounds. Which uBO refuses to do out of some sort of principle, hence the lite version. I do still use uBO Lite in iOS though. I don’t care about the lack of options and customization on that platform.
Ask HN: What's your health/fitness/wellness routine?
by akhilnchauhan | 2025-12-27 10:29:18+00:00
I'm getting to an age where life is getting busier. Work, family, etc.

I don't have as much time as I used to when living alone without as many commitments.

I'm trying to lift weights, build cardio, be mindful, etc. but time feels more limited.

My ideal week that I rarely hit is
- 2x lifting (~40min)
- 2-3x runs (~60min)
- 2x V02max (~30min)

What's your protocol looking like?
by latexr | 2025-12-27 10:29:35+00:00
> I don't agree that the entire generative AI ecosystem deserves all of those fuck yous.

Yes, I’ve noticed. You are frequently baffled that incredibly obvious things happen, like this or the misuse of “vibe coding” as a term.

That’s what makes your actions frustrating, your repeated glaring inability to understand the criticisms of the technology refering to the inevitable misuse, the lack of understanding that of course this is what it is going to be used for, and no amount of your blog posts is going to change it.

https://news.ycombinator.com/item?id=46398241

Your deliberate provocation didn’t accomplish good. Agreed, it was not by any means close to the worst things humans do, but it was still a public dick move which accomplished nothing.

One day, as will happen to most of us, you or someone close will be bitten hard by ignorant or malicious use outside your control. Perhaps then you’ll reflect on your role in it.
by teddyh | 2025-12-27 10:30:26+00:00
Section 3 of GPL 2 states that the company must either give the source to the user alongside the product (in which case the user has the source already), or the company must give to the user a written offer of source code. Note that if the second option is taken, the company is not obligated by the GPL itself to give the source code to the user. It is then only the written offer which obligates the company to give the source code to the user; only the written offer gives the user the right to the source code. Not the GPL itself.
by Thorrez | 2025-12-27 10:30:31+00:00
That 1st link is the CA government, not an insurance company. Also, it doesn't seem to be a regulation requiring people to do something. It's something people can optionally do, and if so, get a discount on insurance. That's not insurance companies pushing for regulation, it's insurance companies offering a competitive price to both high-risk and low-risk houses, similar to how car insurance companies base their rate based on how risky of a driver they estimate the person to be.

But fire insurance is different from auto insurance. Insurance companies want uncorrelated risk. Insurance companies want a high rate of car crashes, but the exact same rate of car crashes each year, because that makes planning easy. If there's a risk that in a some years way more crashes will happen than other years, that's correlated risk and makes planning difficult; they don't want that.

For cars, there's not much correlated risk. For fire insurance, there is correlated risk due to wildfires. So to reduce correlated risk, insurance companies do likely want to reduce wildfires, while still wanting to increase non-wildfire fires.

Self-driving cars will increase correlated risk, because there could be some software update with a bug that's pushed out and causes a ton of crashes. (That risk does also exist with cars today, due to the various software in cars, but self driving increases the risk.)

The 2nd link is an insurance company, but it as well doesn't seem to be advocating for regulation.
by oefrha | 2025-12-27 10:31:42+00:00
For much of the ML/scientific ecosystem, you're lucky to get all your deps working with the latest minor version of Python six months to a year after its release. Random ML projects with hundreds to thousands of stars on GitHub may only work with a specific, rather ancient version of Python.

> Because otherwise this problem is trivially solved by anyone competent. In particular, building and installing Python from source is just the standard configure / make / make install dance, and it Just Works. I have done it many times and never needed any help to figure it out even though it was the first thing I tried to build from C source after switching to Linux.

I compiled the latest GCC many times with the standard configure / make / make install dance when I just started learning *nix command line. I even compiled gmp, mpfr, etc. many times. It Just Works. Do you compile your GCC every time before you compile your Python? Why not? It Just Works.
by aragilar | 2025-12-27 10:31:44+00:00
Because it broke backwards compatibility? It's worth noting that setuptools is in a similar situation to pip, where any change has a high chance of breaking things (as can be seen by perusing the setuptools and pip bug trackers). PEP 517/518 removed the implementation-defined nature of the ecosystem (which had caused issues for at least a decade, see e.g. the failures of distutils2 and bento), instead replacing it with a system where users complain about which backend to use (which is at least an improvement on the previous situation)...
by sponnath | 2025-12-27 10:32:49+00:00
Why do you think the models are AGI?

I also like to think that Einstein would be smart enough to explain things from a common point of understanding if you did drop him 2000 years in the past (assuming he also possesses the scientific knowledge humanity accrued in that 2000 year gap). So, your analogy doesn't really make a lot of sense here. I also doubt he'd be able to prove his theories with the technology of the past but that's a different matter.

If we did have AGI models, they would be able to solve our hardest problems (assuming a generous definition of AGI) even if we didn't immediately understand exactly how they got there. We already have a lot of complex systems that most people don't fully understand but can certainly verify the quality of. The whole "too smart for people to understand that they're too smart" is just a tired trope.
by esperent | 2025-12-27 10:33:54+00:00
> I've had times when I'm pressured to do a bug fix on a 5 year old project where I don't even remember how it works or review and merge an enthusiastic PR solving a problem I don't actually care about.

Also having spent years working in the OSS space, I wish it was normalized to have more nuance between "totally unmaintained" and "maintainer will literally miss their child's birthday to review your PR".

There's already all kinds of badges on GH readmes, couldn't we have a few more signifying "actively maintained, PRs welcome" or "security & critical bug fixes only" or "looking for new maintainers", etc.?
by vbezhenar | 2025-12-27 10:33:55+00:00
I want to add users via manifests, so these users could use logins/passwords/pubkeys, and that's out of the box, without installing dex, keycloak or delegating to other systems.

Think about Linux installation. I don't need to add IDP to create unix users for various people.

Right now it's super complicated in Kubernetes and even requires third-party extensions for kubectl.
by tarsinge | 2025-12-27 10:34:37+00:00
I don’t understand the urgency to replace human work with AI. Why is every organization so eager about skipping the AI as an assistant step? Here there are already massive productivity gains in using the AI to create the draft of the report, it makes little economical to make it do the final version compared to the risk, maybe it’s just plain laziness? Same with developers, why is very organization wanting to leapfrog from humans write all the code to they don’t even read the generated code?
by Anamon | 2025-12-27 10:35:28+00:00
I committed typing en-dashes and ellipses on Windows to muscle memory. Alt+0150, Alt+0133. Bam!

I'm sure there are easier ways this can be set up. But, as I said, muscle memory.

Although I'll have to admit that wanting to use proper typography in the first place probably started when I was typesetting a print magazine on a Mac, where it's super easy to do it the proper way.

(I'm also never going to let AI slop discourage me from trying to use proper punctuation.)
by fitzz | 2025-12-27 10:35:58+00:00
A friend of mine recently got his Stripe account banned due to card testing attacks. He thought he was safe because he had "Stripe Radar" enabled.

The Problem: Upon auditing his logs, we discovered that 30% of his transactions had no billing address. It turns out Stripe's default Checkout (especially with Apple Pay/Link) doesn't force address collection. Without an address, AVS (Address Verification Service) is skipped, and Radar rules based on location are completely bypassed. I call these "Ghost Transactions".

The Solution: I built GhostAudit to scan for this specific vulnerability.

How it works: It fetches your last 100 transactions (via a Restricted Read-Only Key) and calculates your "Ghost Rate".

Security: Keys are processed in-memory, never stored. The app is open about what permissions it needs (Read-only Charges).

Pricing: It's a one-time $29.9 audit (I hate subscriptions for simple tools). There is a free check to see if you are exposed.

Tech Stack: Next.js, Tailwind, Shadcn UI.

I'd love to hear your feedback on the "Terminal" UI and if you've encountered this AVS blindness before.

Link: https://ghostaudit.io
by pdyc | 2025-12-27 10:36:31+00:00
interesting approach, i solved similar problem by creating visual tool to generate ffmpeg commands but its not the same(it cant do conversion etc.)

I like that you took no AI approach, i am looking for something like this i.e. understanding intent and generating command without using AI but so far regex based approaches have proved to be inadequate. I also tried indexing keywords and creating index of keywords with similar meaning that improved the situation a bit but without something heavy like bert its always a subpar experience.
by anovikov | 2025-12-27 10:38:00+00:00
In wartime, drones shouldn't be a concern at all. They are a thing in Russo-Ukrainian war only because neither side has a viable air force. Theatre isolation facilitated by air superiority on either side makes a conflict like that much quicker and much less bloody.

In peacetime, for low-level harassment/asymmetric threats, sure it's a thing and it needs to be countered.
by noosphr | 2025-12-27 10:38:18+00:00
They work well for 1 dimensional data. When you have a 4000 dimensional space you go back to text.

At the ripe old age of 30 something I see the last 50 years of scientific adjacent software, like latex, as a complete waste of time.

We should have spend that time building a better text notation instead of trying to reimplement the happy accidents that let people with parchment and quil communicate with each other.
by esperent | 2025-12-27 10:38:28+00:00
This article is from 2016, and it should be noted that things have significantly increased since then. I no longer have to click traffic lights and motorcycles, I just have to wait a few seconds. I'm in Vietnam so my IP gets flagged for checks a lot, but they all pass automatically in a few seconds.

The only time I still get asked to click motorcycles is not Cloudflare, it's Google. They absolutely hate when you try to do a search in an incognito window and will give you an unpassable captcha until you give up and use DDG instead.
by crvdgc | 2025-12-27 10:38:38+00:00
> But let's hit the random button on wikipedia and pick a sentence, see if you can draw a picture to convey it, mm?

The inverse is also difficult. Pick a random 15 second movie clip, how to describe it using text without losing much of its essence? Or can one really port a random game into a text version? Can a pilot fly a plane with text-based instrument panel?

Text is not a superset of all communication media. They are just different.
by Thorrez | 2025-12-27 10:38:41+00:00
Good point that more miles driven might increase both accidents and premiums and thus increase insurance company profit.

However, how many more miles will they drive? Double? If there's a 90% reduction in accidents as KellyCriterion alluded to, then the total number of accidents will still go down. That means total premiums will go down, and total profit will go down.
by DarkSucker | 2025-12-27 10:39:46+00:00
The paper describes a split Alvarez (Lohmann) lens [1,2] with a phase modulator between them. I didn't do the math, but it looks like the phase modulator is optically equivalent to a mechanical shift of the Alvarez lenses over regions of the field of view. Alvarez lenses have higher aberrations, and are relatively bulky, compared to normal lenses. AR was referenced in the paper, but this lens will be hard to make compact, and have great image quality, over large fields of view.

1. https://www.laserfocusworld.com/optics/article/16555776/alva...
2. https://pdfs.semanticscholar.org/55af/9b325ba16fa471e55b2e49...
by teddyh | 2025-12-27 10:39:50+00:00
Maybe. Who can and cannot sue is irrelevant to my point. But I seriously doubt that anyone can sue for source code. Someone might sue for damages, and the company might offer to settle by offering source code. But IIUC, no company can be sued and forced to give up any source code, unless the company itself chooses to do this instead of paying damages.
by lysace | 2025-12-27 10:40:12+00:00
(The author runs a small ISP in an unspecified country in SEA and complains about many CF captchas.)

This may be one reason:

https://blog.cloudflare.com/ddos-threat-report-2025-q3/

Top 10 largest sources of DDoS attacks: 2025 Q3

1. Indonesia

2. Thailand

3. Bangladesh

Vietnam and Singapore also make it into the top 10.
by voidpointer | 2025-12-27 10:40:48+00:00
Why is this relevant for understanding how the IP works or even tweaking it? Whatever is relevant for that matter will most certainly not be a modification to the Linux kernel that the android system is running. It will not fall under the GPL that the kernel is licensed under. Can someone explain why this dispute is worth having beyond a theoretical legal debate on whether they should hand out the particular source tree from which their kernel was built (if they even built it)?
by BrenBarn | 2025-12-27 10:40:55+00:00
Certainly agreed on that. I think part of it is training but also part of it is just vetting. There are pretty clearly too many people who get into policing out of a desire to wield authority rather than a desire to help people. In many cases I think there is not much use in trying to "train" such people; they just need to be doggedly weeded out. But yes, we need action on both ends, ensuring the pipeline produces good officers going in, and then also regular monitoring to ensure they stay good.
by aidos | 2025-12-27 10:41:03+00:00
Makes sense. I agree that it’s probably a safe bet too. Not sure how customers would feel about it though.

It’s also funny how these tools push people into patterns by accident. You’d never consider sending a customer’s details to a 3rd party for them just to send them back, right? And there’s nothing stopping someone from just working more directly with the tool call response themselves but the libraries are setup so you lean into the LLM more than is required (I know you more than anyone appreciate that the value they add here is parsing the fuzzy instruction into a tool call - not the call itself).
by Lio | 2025-12-27 10:41:50+00:00
Whole lotta companies regret doing that.

Take a working system and rewrite it as a series of separted network services in a new, trendy language just because.

It was a fad that new broom CTO were keen on 5 years ago and I've seen a few companies killed by that decision.

There's so much unnecessary added complexity in running a distributed system of ts micro-services compared to a monolith. You need to be honest about that.
by rcbdev | 2025-12-27 10:42:08+00:00
China was the most populous country on earth for a very long time, that is common knowledge among educated people. It makes a difference in the story if they're struggling in an economy five times wealthier than India's.

That's why I looked it up. That's why some other people will look it up.

This is the population difference we're talking about:

1. India, 1,463,865,525

2, China, 1,416,096,094
by miroljub | 2025-12-27 10:43:23+00:00
Wow. Interesting. I just mentioned overrepresentation, which is a fact that even you can't deny, and you go to such lengths to frame me as a conspiracy theorist and gay hater. I can even read hate in your writing tone.

Why? What makes you so aggressive? What makes you hate someone who points out obvious facts? What is the reason for your denial and hate?
by adrian_b | 2025-12-27 10:43:41+00:00
The assumption that "find" performance is dominated by disk IOPS is not generally valid.

For instance, I normally compile big software projects in RAM disks (Linux tmpfs), because I typically use computers with no less than 64 GB of DRAM.

Such big software projects may have very great numbers of files and subdirectories and their building scripts may use "find".

In such a case there are no SSD or HDD I/O operations, everything is done in the main memory, so the intrinsic performance of "find" may matter.
by uplifter | 2025-12-27 10:44:33+00:00
> If you calculate the pure combinatorial distance between the DNA of 2 species, you must find that you can't just brute force your way from one to the other before the heat-death of the universe.

Can you expand on this? I'm not seeing why it is implausible for one genome to mutate into another, that seems like it could be accomplished in reasonable time with a small, finite number of mutations performed sequentially or in parallel. After all the largest genome is only about 160 billion base pairs, and the average is much smaller (humans are 3 billion base pairs). So what's the difficulty in imagining one mutating into another?
by polandia94 | 2025-12-27 10:46:12+00:00
Hi HN,

Many projects already contain a huge amount of knowledge in their README, issues, docs, and merged PRs — but when using Claude Code, this knowledge still has to be manually distilled into a CLAUDE.md file.

I’m experimenting with the idea that an agent should be able to generate and improve that file automatically.

Auto-improvement explores a workflow where an agent:
1. Investigates a repository and generates an initial CLAUDE.md
2. Reads project context (README, issues, docs)
3. Time-travels to before a merged PR
4. Attempts to solve the same problem
5. Compares its solution to the human PR
6. Updates its own instructions (CLAUDE.md / rules / skills) based on the diff

The goal isn’t better code completion, but agents that adapt to:
- A project’s conventions
- Domain-specific decisions
- Past mistakes captured in real PRs

This is early and opinionated — more a design exploration than a finished product.
I’m especially interested in feedback on:
- Whether this feedback loop makes sense
- Failure modes you see
- Similar systems or prior art I might be missing

Repo: https://github.com/Polandia94/auto-improvement

Thanks!
by thomashabets2 | 2025-12-27 10:46:13+00:00
I'm merely the grandparent commenter, not the one you replied to directly, but I can tell you what I do for checkpointing some exploratory work or "I'll continue this next week".

I usually put it on a branch, even if this project otherwise does all its development on the main branch. And I commit it without running precommits, and with a commit message prefix "WIP: ". If it's on a branch you can even push it to not lose work if your local machine breaks/is stolen.

When it's time to get it into the main branch I rebase to squash commits into working ones.

Now, if my final commit history of say 3 commits all actually build at each commit? For personal projects, no. Diminishing returns. But in a collaborative environment: How fun will it be for future you, or your team mates, to run bisect if half the commits don't even build?

I have this workflow because it's so easy to add a feature, breaking 3 tests, to be fixed later. And formatting is bad. And now I add another change, and I just keep digging and one can end up in a "oh no, how did I end up here?" state where different binaries in the tree need to be synced to different commits to even build.

> I feel like insisting on atomic commits in your local checkout defeats the entire purpose of using a tool like git.

WIP commits is hardly the only benefit of git or other DVCS over things like subversion.
by thaumasiotes | 2025-12-27 10:47:35+00:00
Your argument is total nonsense. Parasites are ubiquitous in all animals, and plants, right now, today. When did they abandon their hunter-gatherer way of life?

> for most of mankind’s existence, [parasites] were not part of our life.

This is not something you should have been able to say with a straight face. It proves nothing other than that nobody should ever take you seriously.
by nicbou | 2025-12-27 10:47:42+00:00
I have the same setup and I like it, but traditional media is just much more pleasant.

In any case, practice. Keep drawing, and try drawing the same thing multiple times. Don't just start over, fix your mistakes. Step back and take time off to let the mistakes come out.

Above all, remember to have fun. Mistakes are an integral part of learning, and if you take yourself too seriously, you will never make any. Waste as much paper as you need, if it means that you will keep practicing.