MurphyA/hacker-news huggingface dataset:
by crote | 2025-08-06 22:43:51+00:00
> They would be resolved by just picking the version 'closest to root', as explained in the article.

Which is going to lead to horrible issues when that library isn't compatible with all your other dependencies. What if your app directly depends on both L1 and L2, but L1 is compatible with L3 1.2 ... 1.5 while L2 is compatible with L3 1.4 ... 1.7? A general "stick to latest" policy would have L1: "L3==1.5", L2: "L3==1.7" (which breaks L1 if L2 wins). A general "stick to oldest compatible" policy would have L1: "L3==1.2", L2: "L3==1.4" (which breaks L2 if L1 wins).

The obvious solution would be to use L3 1.4 ... 1.5 - but that will never happen without the app developer manually inspecting the transitive dependencies and hardcoding the solution - in essence reinventing the lock file.

> It is, the app developers can just put in a direct dependency on the fixed version of L2. As mentioned earlier, this is the version that will be resolved for the project.

And how is that going to work out in practice? Is that direct dependency supposed to sit in your root-level spec file forever? Will there be a special section for all the "I don't really care about this, but we need to manually override it for now" dependencies? Are you going to have to manually specify and bump it until the end of time because you are at risk of your tooling pulling in the vulnerable version? Is there going to be tooling which automatically inspects your dependencies and tells you when it is safe to drop?

> This is the same even if you use a lockfile system. When you update dependencies you are explicitly updating the lockfile as well, so a bunch of transitive dependencies can change.

The difference is that in the lockfile world any changes to transitive dependencies are well-reasoned. If every package specifies a compatibility range for its dependencies, the dependency management system can be reasonably sure that any successful resolution will not lead to issues and that you are getting the newest package versions possible.

With a "closest-to-root" approach, all bets are off. A seemingly-trivial change in your direct dependencies can lead to a transitive dependency completely breaking your entire application, or to a horribly outdated library getting pulled in. Moreover, you might not even be aware that this is happening. After all, if you were keeping track of the specific versions of every single transitive dependency, you'd essentially be storing a lockfile - and that's what you were trying to avoid...
by esseph | 2025-08-06 22:44:40+00:00
I don't understand why this is Amazing, Russia has 4x the population of Ukraine and they've been conscripted since the beginning.

What is amazing is that we've been at this point for years and Russia has only made teeny tiny amounts of progress.

Winter Bear? Paper tiger.

They never would have stood a chance directly against the US in a peer conflict.
by potato3732842 | 2025-08-06 22:44:40+00:00
The average/median/typical recipient of EBT or welfare or whatever only receives it transitionally for less than a year. Yet at any one time the system is 90% lifers or at least long term users. Because anyone who isn't a lifer is in and out quick. Same problem mental institutions have.

I pulled those numbers out of my ass and you can play with the numbers to change the proportions but the problem still stands. At any one time the system is going to be somewhat saturated with the "problem people".

Now, I don't think that's a problem. If someone thinks they can develop and profitably run SRO housing with a bunch of those people then good for them. But that makes some people feel icky about it.
by throwaway89201 | 2025-08-06 22:45:10+00:00
On a slightly different subject (and it seems to be massively under reported): the European Parliament has already voted in favor of a law that mandates age verification for pornography with a one year prison sentence. It was included at the last minute as an amendment into this bill [1]. Search for "Amendment 186".

The full accepted amendment reads: "Disseminating pornographic content online without putting in place robust and effective age verification tools to effectively prevent children from accessing pornographic content online shall be punishable by a maximum term of imprisonment of at least 1 year."

[1] https://www.europarl.europa.eu/doceo/document/TA-10-2025-011...
by grmartinez | 2025-08-06 22:45:21+00:00
Thatch | www.thatch.ai | Remote (US) | Software Engineer (full-stack and backend)

Thatch is a startup on a mission to build a healthcare system people love. We're combining the latest innovations in fintech with recent legislation in the healthcare space to take a new approach to health benefits. We're seeing traction with companies of all sorts of shapes and sizes across the country, so we're scaling up our team to meet the increasing demand. We're also lucky to be backed by world class VCs (a16z, Index, General Catalyst, and more). We've built up a particularly talented group of engineers who've been drawn to our high trust, high autonomy culture, and I think you might be a great fit!

Check out the open roles here: https://thatch.ai/jobs

Feel free to email us at jobs@thatch.ai or drop a comment if you have questions – happy to chat!
by keeda | 2025-08-06 22:45:39+00:00
You're missing a third option, which is actually closer to the role of managing coding agents: being a "senior engineer / architect / what-have-you". IME the more senior engineering roles (staff, principal, fellow, etc) in most companies, especially Big Tech companies, involves coordinating large projects across multiple teams of engineers. It is essentially a necessity to achieve the scale of impact required at those levels.

At that level, you almost never get to be hands-on with code; the closest you get is code reviews. Instead you "deliver value" through identifying large-scale opportunities, proposing projects for them, writing design and architecture docs, and conducting "alignment meetings" where you convince peers and other teams to build the parts needed to achieve your vision. The actual coding grunt work is done by a bunch of other, typically more junior engineers.

That is also the role that often gets derided as "architecture astronauts." But it is still an extremely technical role! You need to understand all the high-level quirks of the underlying systems (and their owners!) to ensure they can deliver what you envision. But your primary skills become communication and people skills. When I was in that role, I liked to joke that my favorite IDEs are "IntelliJ, Google Docs, and other engineers."

You'll note that is a very different role from management, where your primary responsibilities are more people-management and owning increasingly large divisions of the business. As a senior engineer you're still a leaf node in the org-chart, but as a manager you have a sub-tree that you are trying to grow. That is where org-chart climbing (and uncharitably, "empire-building") become the primary skillset.

As such, the current Coding Agent paradigm seems very well-suited for senior engineers. A lot of the skillsets are the same, only instead of having to persuade other teams you just write a deisgn doc and fire off a bunch of agents, review their work, and if you don't like their outputs, you can try again or drop down to manual coding.

Currently, I'm still at the "pair-program with AI" stage, but I think I'll enjoy having agents. These days I find that coding is just a means to an end that is personally more satisfying: solving problems.
by tkgally | 2025-08-06 22:47:24+00:00
One has to be aware of the possibility of hallucinations, of course. But I have not encountered any hallucinations in these sorts of interactions with the current leading models. Questions like "what does 'embedding space' mean in the abstract of this paper?" yield answers that, in my experience, make sense in the context and check out when compared with other sources. I would be more cautious if I were using smaller models or if I were asking questions about obscure information without supporting context.

Also, most of my questions are not about specific facts but about higher-level concepts. For ML-related topics, at least, the responses check out.
by OutOfHere | 2025-08-06 22:47:35+00:00
I can try a dynamic intermediate stop-loss point, with the intended goal that is not too early where it triggers often, and not too late where the loss mounts geometrically. This is intended to greatly limit the max loss per trade, which is good, but it still has significant risk of being triggered unnecessarily. I am highly skeptical that this will work, because I even see in the chart that it doesn't, but it's worth an actual test.
by crazygringo | 2025-08-06 22:48:31+00:00
A response to your comment could fill a book.

In short: it's complicated. Nobody minds about the technically "criminal fraud" when somebody brings home a couple dollars' worth of office supplies for private use. Everybody agrees that embezzling a million dollars should send you to jail. Meanwhile, something like grabbing a second lunch from the free company cafeteria and taking it home to eat as dinner will result in a lot of disagreement as to how bad that really is. But it also probably doesn't have a whole lot to do with whether you can trust that person's code reviews, because people are multifaceted and use different moral standards in different areas.

> so we'd like to know what we can and can't trust from each other.

Alas, we can't know. There are the things that are obviously fine, the things that are obviously not, and a GIGANTIC gray area in the middle which nobody is going to agree on, and companies will try to make policies that will always go too far in some parts and employees will always evade some of the policies they think are bad or unimportant.

And I think that when a company has a bad policy of overreaching in trying to claim ownership over things you do on your own time, and employees respond by falsely claiming that something they made predated their employment, that it's a fascinating example of that gray area.
by no_carrier | 2025-08-06 22:48:55+00:00
> Then came the SQLModel problems. The author pushes it very hard in the FastAPI docs

No it doesn't? The front page for FastAPI contains a pretty lengthy tutorial with no mention of SQLModel. The only time SQLModel gets a significant mention is on a page explaining connecting a relational DB, but it makes it clear that any DB at all can be used. Something has to be chosen for the tutorial, so it makes sense the author would choose their own.

If SQLModel isn't right for you then you're the only person to blame. I've been through that tutorial before and settled on plain old SQLAlchemy.
by throwaway89201 | 2025-08-06 22:49:24+00:00
It seems enormously underreported that the European Parliament has already voted in favor of a law that mandates age verification for pornography with a one year prison sentence. It was included as a last minute amendment into this bill [1]. See "Amendment 186".

The full accepted article reads: "Disseminating pornographic content online without putting in place robust and effective age verification tools to effectively prevent children from accessing pornographic content online shall be punishable by a maximum term of imprisonment of at least 1 year."

It's not law yet, as the first reading is now sent back to the Council of the European Union, but I don't think it's very likely it will get a second reading.

[1] https://www.europarl.europa.eu/doceo/document/TA-10-2025-011...
by jmyeet | 2025-08-06 22:49:35+00:00
An interstellar ship is indistinguishable from a generational colony ship because there's no way to realistically travel between stars in timelines that don't span generations unless we extend human lifetimes to centuries or longer. That's possible but doesn't change the trael times. It just means you live to the destination rather than your descedants do.

And let's aside the serious ethical issue of you choosing to board such a ship vs the offspring you have who definitely did not consent, some of whom may not even make it to the destination.

So a generational colony ship looks a lot like an O'Neil Cylinder [1]. It can spin to create 1g gravity and support enough people to make it to the destination.

The issue is energy. An orbital can support itself with solar power when around a star and doesn't need a form of propulsion. An interstellar ship will need an alternative energy source and also have a propulsion system that can sufficiently accelerate and decelerate. The energy budget for the propulsion is so large that the life support energy budget is a rounding error.

The only realistic policy I see is solar sails. This avoids the reaction mass issue. You need to decelerate at the other end. Part of that you get from drag in the interstellar medium. You either carry reaction mass for the rest or you go ahead and use automated systems to build the solar sail equivalent on the other end to decelerate you.

[1]: https://en.wikipedia.org/wiki/O%27Neill_cylinder
by abdullahkhalids | 2025-08-06 22:49:59+00:00
Indeed, debt is simply a tool that can be used in the good or bad ways. I think we agree that this tool is sometimes used poorly in general by countries, often because voters/politicians don't listen to prescriptions by economists.

What I am saying is that poor use of this tool leads to not only economic problems, but it is fundamentally at odds with democracy. If you vote to take on large debts that the future generation have to "pay" [1], you have taken away their democratic right, in a way that is distinct from other economic tools.

The current generation can vote to have low taxes or high taxes, but that doesn't have much impact (modulo infrastructure maintenance) on future generations ability to exercise their democratic rights.

Debt is unique in this regard.

[1] Pay in quotes because future generations might pay directly via taxes, or indirectly via higher inflation or by working hard to make gdp larger etc.
by spwa4 | 2025-08-06 22:49:59+00:00
You know as well as I do that when Marx discussed "capitalists" he did not mean the rich. He meant what we now call the middle class. Managers. Engineers. Store owners. (Small) company owners. Factory owners. Smaller landlords. Perhaps upper middle class, but not the real rich, the families. He saw what everyone else in their time (correctly) saw: that larger land owners were mostly outside of cities, and were well on the way to inevitable bankruptcy. That the uber-rich are very different, and aren't rapidly bankrupting themselves is not something Marx foresaw.

Only the governments themselves, who are of course also very, very, rich would retain their wealth. And quite a few governments in his time were individuals or families, but he didn't see them as the enemy, kind of, but not as the "source" of the evil of capitalism. Of course, communists aren't against a very, very rich government. The Soviets initially offered to make Tsar Nicolas II the leader of international socialism. Only when he kept refusing did he become the enemy.

And then the "that wasn't true communism" argument! Thank you. I kind of agree: most other communists were MUCH worse than the Soviets, and especially lacked most of the redeeming qualities the Soviets retained from imperial Russia.

In fact, I miss that about the Soviets. The Soviets were going to conquer Europe, provide housing and jobs for everyone, and get everyone to work and back each day on rocket powered trams. Seriously. Today's socialists just seem to want to destroy everything, which will then encourage Gaia to save the world and care for everyone. The Soviets were very much going to exploit nature to make everyone rich.

Never mind that even the ancient Greeks knew better: the godess Gaia is a Titan who massacred, and then ate people. Men, women, children. Especially children. She was the embodiment of natural disasters, of the primal, absolute force of nature. She killed to save nature, true. But also just for fun, because it is her nature. Especially children. Especially lost children. She was like almost all Titans: considered completely amoral, not necessarily evil, but she needed to be fought, even destroyed, not for fun, because otherwise a LOT of people would die.
by nerdix | 2025-08-06 22:50:11+00:00
There are 3 kinds of developers.

1. Those that are motivated by "building things". The actual programming is just a means to an end.

2. Those that are motivated by the salary alone and either hate the work or are indifferent to it.

3. Those that are motivated by the art of programming itself. Hands on keyboard, thinking through a problem and solving it with code.

Developers that fall into category 1 and 2 love AI. Its basically a dream come true for them ("I knocked out 3 sides projects in a month" for #1 and "You're telling me that all I have to do is supervise the AI and I still get paid?" for #2).

Its basically a living nightmare for developers in category 3.

I've noticed that founders seem to be way higher on AI than non-founders. I think a lot of founders fit into category 1.
by rpdillon | 2025-08-06 22:50:14+00:00
I think he's referring to the fact that, while everyone jokes about "year of Linux on the desktop":

In the last 30 years, we moved overwhelmingly from local workloads to internet workloads

We moved overwhelmingly away from desktop and to mobile

Android is the dominant mobile OS, and it's hand-in-hand with Linux at the kernel level

The internet, meanwhile, is powered overwhelmingly by Linux

So I tend to agree that just because normal folks think of "computing" as the Windows or Mac machine sitting in front of them, the world is now predominantly powered by Linux.
by mananaysiempre | 2025-08-06 22:50:17+00:00
It’s not often that you see O(E + V log V) Dijkstra with Fibonacci heaps, either, the O((E + V) log V) version with plain binary heaps is much more popular. I don’t know if that’s because the constants for a Fibonacci heap are worse or just because the data structure is so specialized.
by AlotOfReading | 2025-08-06 22:51:36+00:00
The original meaning of byte was a variable number of bits to represent a character, joined into a larger word that reflected the machine's internal structure. The IBM STRETCH machines could change how many bits per character. This was originally only 1-6 bits [1] because they didn't see much need for 8 bit characters and it would have forced them to choose 64 bit words, when 60 bit words was faster and cheaper. A few months later they had a change of heart after considering how addressing interacted with memory paging [2] and added support for 8 bit bytes for futureproofing and 64 bit words, which became dominant with the 360.

[1] https://web.archive.org/web/20170404160423/http://archive.co...

[2] https://web.archive.org/web/20170404161611/http://archive.co...
by brudgers | 2025-08-06 22:51:53+00:00
I'm writing this on a four-year-old Macbook Pro and it only has 16 GB of RAM. Server-class machines would still need to address more memory than that, but they're usually running specialized software or virtualizing; databases and hypervisors are already tricky code and segmentation wouldn't be the end of the world.

Because, I have a ten year old Dell laptop with 40GB of RAM, 16GB seems like an arbitrary limitation, an engineering compromise, or something like that.

I don’t see how it is a result of 8 bit bytes because 64bits has a lot of address space.

And because my laptop is running Windows 10 currently and ram Ubuntu before that, ordinary operating systems are sufficient.

—-

Also ECC RAM is 9 bits per byte.
by sam_goody | 2025-08-06 22:51:55+00:00
In my anectodotal experience, PHP is much, much more performant, even before I moved to Frankenphp - which is so much better than Express, it isn't even a joke.

And PHP is much easier to read and handle when the project gets larger. And more secure, as you aren't forced to rely on all these NPM packages (we use Composer, but nothing like the way we used NPM. PHP really comes with almost anything you need built in - and even if you use Laravel its still not a pyramid).

I have read through all the comments, and I really don't get it - I use Node and PHP a lot, and quite a bit of Python. Not to much experience with Go or Rust, but some with Java.

IMO, There is nothing that competes with PHP in speed, security (for web stuff at least), or ease of writing for the web.
by rcxdude | 2025-08-06 22:51:57+00:00
> So, what is your net-worth, in that you fight for freebies to corporations? What net worth should I strive towards so I can be nonchalant and passe about money?

I've seen people with un-stressed about money with net-worths that are orders of magnitudes below those that seem to obsess about it.

Your motivations are your motivations, if you don't like the idea of someone using your work to make money without giving you a cut, you can do you, but why is it hard to understand that other people might just not care that much about it (or, gasp, even find their work being used more rewarding than the potential monetary compensation)
by niho | 2025-08-06 22:52:08+00:00
Many in this community already know the value of framing — thanks to thinkers like Paul Graham, or through direct startup experience. This essay builds on that idea, but pushes it further.

It asks: What if framing isn’t just the first step of building, but a kind of building in itself? What if ideas — when clarified — are a form of infrastructure?

I’ve spent years working at the intersection of engineering, strategy, and design. I’m now formalizing that practice under a new project called The Philosopher-Maker, where I write and consult around the idea that strategic clarity is a creative act, not just a prelude to one.

This first essay is an attempt to articulate that position — especially in a time when AI is reshaping what it means to execute, and when thinking well is arguably becoming the last real moat.

It’s not a manifesto. It’s a serious, long-form essay for people who care about the structure of ideas, not just the speed of shipping. If that sounds like you, I’d love your thoughts.
by kyralis | 2025-08-06 22:52:43+00:00
"We've guessed wrong historically on data sizes, and if we had 9 bit bytes those guesses (if otherwise unchanged) would have been less wrong, so 9 bit bytes would be better!" is an extremely tenuous argument. Different decisions would have been made.

We need to be better at estimating require sizes, not trying to trick ourselves into accomplishing that by slipping in an extra bit to our bytes.
by rmonvfer | 2025-08-06 22:52:57+00:00
Thank you! I’m actually pretty happy with what I’ve built tbh and how far has FastAPI taken us but this repo is proof that you have to reinvent the wheel if you want to build something serious.

In any case, that’s a treasure trove right there!, I actually had no idea Polar was open source, much less that it’s built on FastAPI!

It’s such a shame that the actual documentation doesn’t even scratch the surface, I would’ve saved so much time if they just included a disclaimer along the lines of “Hey, this architecture we are showing here it’s only valid for toy projects, you will need much more work to build a real production system” but again, I guess I’m the only one to blame.
by 8n4vidtmkvmk | 2025-08-06 22:54:02+00:00
A few people will use said new tool. If they start writing software that is sustainably better for half the cost, eventually others will take notice. Early adopter sort of thing. Switching takes energy, yes, so many will be resistant. But when you find yourself the last person doing things the old way and it's taking more time and effort... It might be time to spend the effort and get with the times.

Not necessarily saying this AI is worth switching to yet. It could fizzle out, we'll see. But I'm saying if it's truly worth it's salt, it'll take off because it's good, rather than die despite being good.

Things that this aren't true for are things that are only marginally better. if A is 5% better but B is 95% more popular.. A might yet die because it's not worth switching to. AI is claiming a lot more than 5% gains though