MurphyA/hacker-news huggingface dataset:
by gorgoiler | 2025-05-03 17:24:22+00:00
Is it a thing for angels to exit in the early rounds?

Instead of being shoved down the cap table by a giant tranche of series A preferred stock, might it not be appropriate to give the angel a payday instead?

I guess some angels want to keep their fingers in the pie? And, more likely, it’s just not a reasonable expectation to see an exit like that way before anyone else does?
by _heimdall | 2025-05-03 17:24:26+00:00
Oh sure, I didn't actually mean to describe it being idle as in sitting and literally doing nothing. I more meant idle in comparison to how much people work today and how much they think about or stress over work.

Take 7 hours out if the day because an LLM makes you that much more productive and I expect people wouldn't know what to do with themselves. That could be wrong, but I'd expect a lot more societal problems than we already have today if a year from now a large number of people only worked 4 or 5 hours a week.

That's not even getting to the Shopify CEOs ridiculous claim that employees will get 100x more work done [1].

[1] https://x.com/tobi/status/1909251946235437514
by snowflakeandrey | 2025-05-03 17:24:53+00:00
Thanks for chiming in with your experience. Would you attribute the doubt to a DevOps person without Security experience, or someone with ulterior motives? Has CISA determined the lost credentials to be password stuffing or endpoint compromise? Seems plausible that DOGE staff had infostealers on their endpoints and the automated validation of those credentials did not include a review of where they got them or whether it will be noticed.

The (under oath) claims of extraction of data seem strange for the reasons you mentioned but so do the threats as well as the NLRB PR rep stating that DOGE was never there, I think there's more to be discovered that could clarify what happened.
by scsh | 2025-05-03 17:24:54+00:00
I like the idea of having vuln reporting in the installation step. Looking at the examples provided though, I think the vulnerability reporting could use a bit more information.

Using the fastapi example, it points to CVE-2024-24762 which, if you're looking at the NIST or CVE pages for it, doesn't give the clearest info for how to resolve.

Maybe consider linking to advisories in the Python Packaging Advisory Database when possible, like pip-audit does. https://osv.dev/vulnerability/PYSEC-2024-38 is a lot clearer that fastapi is affected and which version fixed the vulnerability.
by hajile | 2025-05-03 17:25:02+00:00
If you don't understand what the copy/paste is actually doing, you shouldn't be script-kiddying it in your project. If you do understand, then the AI is just quickly writing what you already intended.

If you are having to understand something you didn't understand, it's probably taking a bunch of time to read and verify what the script does. This can be a good learning experience and reveal unknown unknowns, but probably isn't a massive speedup.
by Feynmanix | 2025-05-03 17:25:09+00:00
Thanks! Good question. I think the main downsides are:

- installation takes a few more seconds to do the checks

- you need to trust me, a random person from the internet

- if there are any subtle differences between pip versions, the checks may be done for different versions than will be actually installed (I've done my best to prevent this for pip versions 22.2 to current latest), or if I missed any bugs, you may get an error you wouldn't get with pip

The current version is also interactive only - requires user confirmation, though I'm open to adding a non-interactive mode in the future.
by bccdee | 2025-05-03 17:25:10+00:00
Getting stuck in traffic is a terrible experience because you're almost entirely helpless. The only choice you have is whether or not to complain. Complaining can be very cathartic, but it can also get you down. If you can't help but complain—or won't let yourself complain—your single degree of freedom is lost, and you become totally helpless.

I wouldn't say "don't complain"—just be mindful about complaining. It's a choice worth thinking about.

> There is, for example, a common sentiment among younger generations that their ability to purchase a home is completely out of their hands. [...] Some of those talking points might be true. But are they useful?

This is an unfortunate type of anti-politics. It actually does matter whether this is true—it affects how we run our society. Dwelling on unpleasant truths is not good for you, but ignoring them is bad for all of us.
by mdaniel | 2025-05-03 17:26:12+00:00
Wow, that's just about the dumbest licensing clause I've ever seen in my life:

> Content of branches other than the main branch (i.e. "master") are not licensed

How the fuck do pull requests work in that setup? Or presumably tags aren't licensed?! Holy shit

Anyway, seems to be some rando made up license https://github.com/n8n-io/n8n/blob/master/LICENSE.md#sustain...
by wltr | 2025-05-03 17:26:45+00:00
I never thought of this, the excessive mouse movements, like top left to bottom. What I thought of is that it killed this silly minimise and full screen option, even when everyone and their granny trained for those three buttons.

I like they ditched all the unnecessary things from the settings. I think all the pro-level settings must be dealt with via terminal. That way, it’s both of two worlds. Me, I don’t mind it. But if I manage the computer for someone, I want them to have only the minimum things, so they won’t be overwhelmed. That’s very wise, and unfortunately all these Win3.1 geeks are complaining it’s bad. Yeah, okay, keep using your favourite XFCE then, or whatever.

I’d install Gnome for elderly, even if they have some previous Windows experience. Because they can afford to just ignore it. My mum, she has no computer, and last time she used Windows was like, idk, a decade ago. Explaining Gnome to her is easy: here is the Windows (or CMD) button, you press it once, you have this iPad like interface. Here is the Dock, you have all the necessary apps in there. More of them if you press that Windows button one more time. But actually you don’t need it 99% of the time, so you can survive with top left corner pressed once. Two times press is for me. Closing the app is that X button. What else does she need?

Now, try to explain the [any other DE basically] to elders the same way. Considering most of these people have iPads. And if they’re not, well, I don’t really get why, they should. My guess is that their interface appeal to that audience. And to me that’s a great thing, that’s most of non-tech people now.

However, I’m (being an obviously pro user) able to use the default Gnome productively. Almost as productively as I use SwayWM. To me, that’s very impressive.
by runeblaze | 2025-05-03 17:26:56+00:00
While I agree with the boredom premise (I was also bored!), the practicality of Clojure was also very important. In fact if I were to deploy something to prod today that is FP, then I either use Scala or Clojure.

Fintech benefits from concurrency, immutability and all, so obviously there is much more nuance to "why fintech uses Clojure".
by throwaway98465 | 2025-05-03 17:27:23+00:00
The hyperscalers will always own the best models, and even if you're willing to excuse that, requiring organization-levels of funding to run a decent model locally hardly makes the tech "democratized". Sure, you'll always be able to run ${LOCAL_MODEL} on your personal hardware, but that might be akin to programming using Notepad if the gap with the best models in the market is wide enough.
by humbledrone | 2025-05-03 17:27:41+00:00
I plan to write a devlog post about this at some point, but at one time I wondered the same thing. It turns out that starting in 2D, when there is more than 1 spring, things get more complex than you expect: it turns non-linear. If the mass is moved exactly along the axis of the 2 springs in the demo you linked, then it's just a simple harmonic oscillator. But if it's moved OFF axis, the force from the springs is constantly changing direction. The force orthogonal to the spring's resting axis increases with the sine of the angle that the spring has been pulled off to. So along the off-axis it is not a harmonic oscillator.

If this doesn't make sense it's entirely my fault for explaining it poorly -- I really want to write this up properly with some diagrams because it's a surprising thing and quite interesting, at least to me.

(BTW that demo has other things going on like mic isotropy and analog oscillators attached to vibrate two of the masses, so my spring tangent is not the only thing producing harmonics.)
by dimal | 2025-05-03 17:27:57+00:00
This isn’t programming. It’s transclusion[0]. Essentially, iframes and images are already forms of transclusion, so why not transclude html and have the iframe expand to fit the content?

As I wrote that, I realized there could be cumulative layout shift, so that’s an argument against. To avoid that, the browser would have to download all transcluded content before rendering. In the past, this would have been a dealbreaker, but maybe it’s more feasible now with http multiplexing.

[0] https://en.m.wikipedia.org/wiki/Transclusion#Client-side_HTM...
by Balgair | 2025-05-03 17:29:12+00:00
Yeah, I was a little credulous about what Zuck said there too.

Like, if AI is so good, then it'll just eat away at those jobs and get asymptotically close to 100% of the calls. If it's not that good, then you've got to loop in the product people and figure out why everyone is having a hard time with whatever it is.

Generally, I'd say that calls are just another feedback channel for the product. One that FB has thus far been fine without consulting, so I can't imagine its contribution can be all that high. (Zuck also goes on to talk about the experiments they run on people with FB/Insta/WA, and woah, it is crazy unethical stuff he casually throws out there to Dwarkesh)

Still, to the point here: I'm still seeing Ai mostly as a tool/tech, not something that takes on an agency of it's own. We, the humans, are still the thing that says 'go/do/start', the prime movers (to borrow a long held and false bit of ancient physics). The AIs aren't initiating things, and it seems to a large extent, we're not going to want them to do so. Not out of a sense of doom or lack-of-greed, but simply as we're more interested in working at the edge of the fractal.
by Feynmanix | 2025-05-03 17:29:28+00:00
Ideally, you should use lockfiles for your CI/CD or docker. To create or update the lockfile, a developer needs to install dependencies manually first (as in `pip install X` -> `pip freeze`), at which point the checks would be executed and the user would consent.

That said, it's pretty uncommon to use lockfiles with pip, so I'm considering creating something like a plugin for poetry or uv, if there is demand?
by formerly_proven | 2025-05-03 17:31:08+00:00
True! On the other hand, performance appears to be quite bad and there seem to be tons of very obvious visual glitches with transparent objects, foliage etc.

It using the UE5 renderer of course means the usual reservations of that engine also apply - it will most likely never run smoothly, as Unreal Engine games invariably have more or less severe stuttering.
by hdjrudni | 2025-05-03 17:31:13+00:00
I've never really used Github's PR system, always something else, but once in awhile I stumble in there in there from an opensource repo and they seem impossible to read with the individual commits.

Why doesn't Github just flatten/squash the stack of commits visually? Like I don't care what they're doing inside .git, can't they just diff the latest commit against the base commit and display that? So it's visually merged even if it's not merged in git's log?

---

At my work we do single commit. I find it annoying to work that way, I sometimes try to make clones of certain commits so I can restore to that point if I need to, but for reviewing, having everything in one neat little bundle, it's nice.
by spectralqa-team | 2025-05-03 17:31:18+00:00
Hi HN,

We’re a small team working on SpectralQA, a platform for testing Discord bots by simulating real user behavior — slash commands, button interactions, role-based access, etc.

Our motivation came from personal pain: deploying bots that passed local tests but broke in production due to things like role changes, permission quirks, or timing issues. Most tools either mock commands or test in isolation, but we wanted something that behaved like an actual user.

Right now we’re in the early-access stage — just a landing page for now. We're validating interest and shaping the final solution based on community feedback.

Questions we’re wrestling with:

- Would developers actually use a cloud-based testing tool for Discord bots?

- Does it solve a real problem you’ve faced, or are existing testing strategies "good enough"?

We’d love to hear from you — especially if you’ve built or deployed Discord bots. Brutally honest takes welcome.

Thanks!
by franga2000 | 2025-05-03 17:31:27+00:00
Including another document is much closer to a markup operation than a programming operation. We already include styles, scripts, images, videos, fonts...why not document fragments?

Markdown can't do most of those, so it makes more sense why it doesn't have includes, but I'd still argue it definitely should. I generally dislike LaTeX, but about the only thing I liked about it when writing my thesis was that I could have each chapter in its own file and just include all of them in the main file.
by thesz | 2025-05-03 17:31:39+00:00
> Well, I've encountered this use case a few times in Lisp:... > ...where a callback is used to collect various items.

This can be and is achieved by simple SQL-like query. Filter (flat) set of nodes by integerness and you even do not need a push_back.

Despite that, I find article interesting. It shows that Tcl can truely be multiparadigm programming language.

Myself, I've implemented pattern matching [1] over algebraic-type-like values and used that here and there.

[1] https://wiki.tcl-lang.org/page/Algebraic+Types
by seadan83 | 2025-05-03 17:32:10+00:00
Very cool how the last sentence you leave off with always has to be a personal attack. It's breaking the rules of the discussion, irrelevant. Stop trying to win points. Let's focus on the substance.

> This appears to be a link that contains zero support for your sentence. Neither the comment you linked nor the response below it features such an interpretation.

It's interesting, because there is a disagreement about whether there is a paradox or not. There is a paradox if you take my perspective (that an equals relationship is being expressed), but none if an implication relationship is assumed.

These two sentences:

- "By that same logic you could also say that language is math"

- "Not quite, but the inverse is true."

The "not quite" says that "language is math" is not true. So we have "A = B", but "B != A", which is a paradox. OTOH it's not a paradox if what is actually being said is "A => B" but "B !=> A"

> You're in luck! I've already provided that material, and you responded to it.

Hello bad faith! I hope you are doing well today. Let's end the conversation here.
by GeneralMayhem | 2025-05-03 17:32:27+00:00
Christ, what a ghoul.

"The ends justify the means" is a horrific way to run a society in any case, but of course it skips over the question of whether the means actually caused the ends, let alone were the only way to do so. Even if torture did save lives, it isn't a great justification - but then pile on top that your only evidence that it actually does work is fiction and it starts to look like the means were what you really wanted in the first place.
by Feynmanix | 2025-05-03 17:32:33+00:00
Yes, the reason I had to fork pip was that the dependency resolution logic is too complex and I couldn't recreate it from scratch with fidelity.

You're right I don't vendor dependencies, and I hope to get away with it exactly because I don't have the bootstrapping problem. In practice, you want to install pipask with pipx so that the dependencies don't mess with your local environment.
by zahlman | 2025-05-03 17:32:59+00:00
Pip is "a proper dependency resolver". It just perhaps doesn't have the best heuristics for performance, but they're working on that.

What pip isn't is a workflow tool for developers, or "project manager" (terminology uv uses in its marketing; "package manager" seems to be not well enough defined to argue about). Pip doesn't install Python, create or manage virtual environments (or real ones for the separately installed Python versions), upload your packages to PyPI, view a lockfile as a way to keep track of an environment (although they have just added experimental support for creating PEP 751 lockfiles and are planning support for installing from them), do one-off runs of Python applications (by installing them in an ephemeral environment, possibly installing PEP 723 inline-specified dependencies), define or manage "workspaces", have its own `[tool.pip]` section in pyproject.toml, or possibly other things I forgot.

But it absolutely does determine the dependencies of the packages you're currently asking to install, transitively, attempt to figure out a compatible set of versions, and figure out which actual build artifacts to use (i.e., "resolve dependencies"). Its logic for doing so has even been extracted and made available as the `resolvelib` package (https://pypi.org/project/resolvelib/).

My own project, PAPER, is scoped to fix pip's problems and also do basic environment management (so as to install applications or do temporary runs). The point is to satisfy the needs of Python users, while not explicitly catering to developers. (I'll probably separately offer some useful developer scripts that leverage the functionality.)

I also, incidentally, intend to allow for this sort of prompt during the install procedure. (Although the planned default is to refuse sdists entirely.)
by Shorel | 2025-05-03 17:34:16+00:00
My own definition of mathematics for the sake of this comparison:

- If you can write a formal proof, starting from some assumptions and proving some result, it is mathematics. The assumptions are the axioms. Then you use logic, which is the same programming logic, and then you get to some result.

It can be an invariant in a programming function, it can be a more general result, if you can write a proof, it is mathematics. Most algorithms involve proofs, so they are mathematics.
by zozbot234 | 2025-05-03 17:35:11+00:00
Some outdated information about bare-metal use of the ANE is available from the Whisper.cpp pull req: https://github.com/ggml-org/whisper.cpp/pull/1021 Even more outdated information at: https://github.com/eiln/ane/tree/33a61249d773f8f50c02ab0b9fe... In short, the early (M1/M2) versions of ANE are unlikely to be useful for modern LLM inference due to their seemingly exclusive focus on statically scheduled FP16 and INT8 MADDs.

More extensive information at https://github.com/tinygrad/tinygrad/tree/master/extra/accel... (from the Tinygrad folks, note that this is also similarly outdated) seems to basically confirm the above.

(The jury is still out for M3/M4 which currently have no Asahi support - thus, no current prospects for driving the ANE bare-metal. Note however that the M3/Pro/Max ANE reported performance numbers are quite close to the M2 version, so there may not be a real improvement there either. M3 Ultra and especially the M4 series may be a different story.)
by cowmix | 2025-05-03 17:35:16+00:00
I use Windows 11. Podman/WLS2 works way better than I thought it would. And when Gitbash was finally ported (officially) - that filled other gaps I was missing in my workflow. Windows ARM Python still is lacking all sorts of stuff, but overall I'm pretty productive on it.

I pre/ordered the Snapdragon X Dev kit from Qualcomm - but they ended up delivering a few units -- to only cancel the whole program. The whole thing turned out to be a hot-mess express saga. THAT computer was going to be my Debian rig.
by dehrmann | 2025-05-03 17:35:22+00:00
You've seen publicized examples (Toys R Us) where it played out like that, but that narrative doesn't generally pass the smell test–no counterparty would keep making bad loans. There are cases where companies are mismanaged, their value is as a real estate holding company, etc. and PE improves operations and creates a more investable business.

The other thing is that like VC, PE has become saturated, so the good opportunities just aren't there anymore.
by Volundr | 2025-05-03 17:35:27+00:00
I have a number of home improvement projects that I had planned on tackling this year, but I've decided I prefer those funds liquid. Same with getting a newer car. While nothings harmed my economic situation yet my confidence in pretty much everything, the stability of the job market, the economy, the country itself it at an all time low.

Even here in red state territory that seems to be the general vibe.
by antirez | 2025-05-03 17:35:35+00:00
A bit less than 30 years ago my friend and I found an IBM AT in the trash, perfect conditions, with even the floppy disks nearby. We connected it with an RS232 cable to a Linux box, and made an IRC workstation using QMODEM, for the girlfriend of my friend. We were connecting via dialups, and the bill every month was high. With Linux NAT, we were already sharing between my and his apartment, using a coaxial cable, and with the IBM AT now we could share the Internet connection to three computers.
by spacedcowboy | 2025-05-03 17:36:18+00:00
FWIW, I think I was the first person to ever produce a unix-like distribution for the Atari ST/TT line in 1992. It installed MiNT (MiNT is Not Tos) on a free partition, with a minix filesystem and various optional disks (including make, ash, gcc, etc.)

The install-help docs were written using Calligrapher, an application I still think was way ahead of its time on the ST. There are postscript docs as well as ASCII ones at the link below.

[1] https://websites.umich.edu/~archive/atari/Mint/Distrib_kit/D...
by Feynmanix | 2025-05-03 17:37:01+00:00
It's not visible on the screenshot for some reason, but if you run the latest version, you'll notice a little underline under the CVE mention. It's actually a hyperlink (Cmd+click in iTerm2) that leads to https://osv.dev/vulnerability/CVE-2024-24762 where you can find out more.

Or are you saying you'd rather it leads to https://osv.dev/vulnerability/PYSEC-2024-38 rather than https://osv.dev/vulnerability/CVE-2024-24762 ?