MurphyA/hacker-news huggingface dataset:
by roody15 | 2025-05-06 17:34:30+00:00
My mother got a tick bite and felt off and the doctor told her she had allergies and sinus infection due to high pollen. Luckily my younger brother is a physician and told her to go back and ask for a Lyme disease test. They said okay but said Lyme disease is really rare and wasn’t necessary. Long story short she was positive but was caught early enough that 30 days Doxy was all she needed.

That same year I was bitten and had a super itchy spot near my private regions. It was crazy itch and made a bullseye rash. I went to a clinic and they said they had never seen the bullseye rash and it was textbook Lyme disease (or one other common tick disease). Same was treated with Doxy and was fine. It’s an strange disease because if caught early super cheap antibiotics work well… but if has spread through your body it can take years to recover and be quite serious!
by johnisgood | 2025-05-06 17:34:32+00:00
To be honest, I have not yet written Rust seriously, so I cannot comment as much on it. I mostly use C, OCaml, Lua, at times Perl, these days. I do not know how much the language would feel like it is getting in the way of "expressing" my thoughts.

https://github.com/serprex/nobox/blob/master/nobox.c is definitely terse. :D I get lost just by looking at it; a little bit of refactoring (indentation-wise) would help though.
by esafak | 2025-05-06 17:34:47+00:00
I suggest caching and enabling the sharing of results. I am not signed in so I don't know if that is feature I am missing.

I searched for "alternatives to jq with a functional API" and one of the criteria it came up with was "Provides technical details or comparisons relevant to the alternatives" but the table only listed the repo's url and description. And the description was truncated with ellipses with no way for me to resize the columns. Also, it missed the opportunity to tell me that some shells can replicate jq's functionality. Finally, it would have to be faster to be a daily driver. At this speed, it is something I would reserve for backup, for when the workhorse fails. Which means I would not want to pay $49/month.

Hope that helps. Interesting idea.
by siscia | 2025-05-06 17:35:25+00:00
This problem have been solved by LSP (language server protocol), all we need is a small server behind MCP that can communicate LSP information back to the LLM and get the LLM to use by adding to the prompt something like: "check your API usage with the LSP"

The unfortunate state of open source funding makes buildings such simple tool a loosing adventure unfortunately.
by kasey_junk | 2025-05-06 17:35:38+00:00
You are engaging in romanticism right now. You’ve made a bunch of qualitative statements that are based on a history that likely isn’t real. In what ways do you think it was easier to raise children when the west was settled, why do you believe that trust levels were higher? Why do you think the status quo is worse for more people now?

You need to make some of that quantitative to even have a reasonable discussion about it or we are just talking about mental images, whether that be little house on the prairie or the artful dodger.
by immibis | 2025-05-06 17:35:50+00:00
The traditional third value is actually FileNotFound: https://thedailywtf.com/articles/what_is_truth_0x3f_

but in Haskell, yes, it's undefined. Which isn't a real value! For example, infinite loops are undefined. Theorists like to call it a value of every type, but in practical terms, it's more like a computation that never produces a value. The builtin "undefined" can be written as an infinite loop ("undefined = undefined") and many other pure infinite loops can also act as undefined values. The runtime is able to catch some and crash instead of hanging, but not others.
by Phlebsy | 2025-05-06 17:37:00+00:00
To me the point of the saying is more that the assumptions and environment that the software was written with are almost always going to change. Meaning the business and requirements rather than the technical implementation choices. Software doesn't exist in a vacuum, but rather to solve a certain set of business requirements that have the potential to shift out from under you depending on the industry, legislation, and your leadership. The things that you have negligible control or foresight over, rather than knowing that there's going to be another major framework update next quarter.

There are certainly horizontal slices of every stack that can be written to remain stable regardless of the direction the business takes, but those are rarely the revenue drivers that the business cares about beyond how much they have the potential to cause instability.
by jug | 2025-05-06 17:37:16+00:00
I’ve seen benchs on hallucinations and OpenAI has typically performed worse than Google and Anthropic models. Sometimes significantly so. But it doesn’t seem like they have cared much. I’ve suspected that LLM performance is correlated to risking hallucinations? That is, if they’re bolder, this can be beneficial? Which helps in other performance benchmarks. But of course at the risk of hallucinating more…
Show HN: White Smoke, a game of papal politics
by xqueenofswordsx | 2025-05-06 17:38:36+00:00
White Smoke is a dark satire of Vatican politics where you play as an ambitious Cardinal trying to secure enough Pope Points to claim the papacy.

Engage in subtle undermining of rivals, form strategic alliances, and perhaps even perform the occasional good deed (though virtue rarely advances one's career).

Will the white smoke rise for you? Will the cost of claiming the title be worth it?

That's up to you.
by ninalanyon | 2025-05-06 17:39:42+00:00
In Norway a pregnant woman over forty is offered genetic counselling because of the risk of Downs syndrome. These risks are definitely quantifiable and no liability is generated by providing them. The counsellor (a doctor) explains the risks and the syndrome and apart from this appointment is not otherwise involved.

This could surely be done for other situations, especially surgical procedures as the statistics should be collected and associated not only with the procedure but also the hospital and surgeon.
by joshstrange | 2025-05-06 17:39:54+00:00
I think it might be a good idea to give some kind of indication that work is being done in the background (or perhaps mine stalled out?).

The initial search/experience is good but then I got dumped here [0] and it's not clear to me if things are still happening or if it broke (it's been at least 5 min with no UI updates.

I can't see the full results yet but this is very interesting and a task I ask OpenAI's Deep Research to attempt periodically. It makes a good show of doing the work but the results are not great IMHO (for asking it generate lists/tables of data like this). I can see this tool being incredibly useful for lead generation (how I am testing it out).

[0] https://cs.joshstrange.com/dySqK1mb
by rafram | 2025-05-06 17:39:59+00:00
I think it’s legitimate to ask why these dependencies are necessary. LLMs have created whole new classes of vulnerabilities, and things like a GitHub client (which downloads arbitrary data/code) and a templating engine (which executes it) expose an even larger attack surface.

If someone’s going to get RCE on my machine, I don’t want it to be through the silly Clippy LLM UI, you know?
by duped | 2025-05-06 17:40:36+00:00
> Tell me you don't work on live audio without telling me you don't work on live audio.

This is pretty rude, I'm among the (probably small) subset of HN users who has developed real professional audio software.

All I can talk about is my experience, which is that in the plugin market a plurality of your revenue will be from MacOS users. My last job in this market had zero Windows/Linux users.

Now I have done a good bit of live work on Windows machines with ASIO, but I also do a bit of work there myself from time to time in venues with musicians - and I don't really know any musicians that are carrying around Windows laptops. 100% of them are using Mainstage and Ableton on Macbooks.
by moralestapia | 2025-05-06 17:41:08+00:00
Sure, but,

* What about simulating the simulator? Or something like that.

and

* Einstein famously showed that space and time are the same structure and it is only an illusion (to us) to perceive them as separate things. Which means "I will only simulate a second of the universe" is akin to saying "I will only simulate 1 cm3 of the universe", both are incomplete simulations of the universe but the latter makes it more evident.
by immibis | 2025-05-06 17:41:25+00:00
C-H isn't useful to programmers at all. The programs that represent proofs end up being useless programs, most of the time, and the proofs represented by real-world programs end up being useless proofs, most of the time.

Most programs deal with several objects of the same type - your program probably contains more than one integer (shocking, right?). Since C-H maps each unique type to a unique proof term, the same type maps to the same proof term. A function that calculates greatest common factor of two numbers proves that (A∧A)→A, or "(A and A) implies A" which is... uninteresting.

In the reverse direction, the program generated by (A∧A)→A is either the first or second entry selector from a tuple, and doesn't calculate the greatest common factor of two integers. (A∨A)→A is slightly more interesting, taking Either<int, int> and returning int.

It's true that C-H of logical disjunction gives you Either types, conjunction gives you tuple types, and implication gives you function types. Kinda fascinating, enough to write a blog post about, but still without any practical purpose.

Practical types with additional requirements (such as non-empty lists) have nothing to do with C-H and could exist even if C-H were false. Same for dependent types. As I said, C-H is completely useless in actual programming.

I do wish we had more formal methods though. Formal methods of programming have nothing to do with C-H either. Static typing has nothing to do with C-H. The Rust borrow checker has nothing to do with C-H. Complete formal verification (as in seL4) has nothing to do with C-H.
by willbryk | 2025-05-06 17:41:34+00:00
Not a pivot - Websets is just a new product!

Mission of Exa has always been to build much better web search. The evolution has been:

- 2022: Consumer-facing embeddings search (back when we were known as Metaphor)

- 2023: Web search for AIs - once the AI ecosystem heated up, we made a business out of web search + crawling API. This is still our primary business.

- Now: Websets, a useful product built on top of our search tech

If you're curious, our company right now is fully devoted to:

1. Dramatically improving Websets quality

2. Building the best general search engine in the world
by rbanffy | 2025-05-06 17:41:40+00:00
> By letting cloud services that use GPL software stay closed source it actively encourages development of cloud based tooling

This is why AGPL was invented. You might use my AGPL code in your cloud service, but you need to provide the source code you are running to your clients. You are not allowed to keep any secret sauce secret from your users.

MIT and BSD (and plain GPL) don’t protect users again abuses like this.
by wkat4242 | 2025-05-06 17:42:15+00:00
One a month is not a lot if you compare it to the total number of flights. And there's different grades of near misses. Some are not all that near.

The big ones like that JFK incident make the news but most don't.

I don't think it's really a partisan issue either. The FAA and especially the NTSB are pretty impartial and just care about the truth, what went wrong and how this can be avoided in the future.

Of course Trump makes it political by screaming DEI every time something happens, before there's even a preliminary investigation. But I wouldn't take that seriously. He does that with everything.
by _DeadFred_ | 2025-05-06 17:42:29+00:00
Imagine giving someone a chess board where there are no negative consequences. Where both players win and no one loses any pieces ever. Would that game serve a purpose?

Which has a better outcome, a mom/dad that gives their child everything and protects them from all exposure to the world, or parents that introduce their children to difficult/frustrating learning situations? As C.S. Lewis put it, what you want is a potential higher being to be a grandparent not a parent.
by johnnyjeans | 2025-05-06 17:42:30+00:00
My problems start long before the special APIs come into play. When we supported Mac, I just wrapped the APIs like you do for any other system. The problem is I don't use Mac, so building software for Macs is inherently troublesome. I can build and test for Windows just fine from Linux and OpenBSD. I can't for Mac.

Now you might say this is problematic, Apple doesn't want third-party developers locking their platform behind some conditionally compiled set of abstractions that ruin everything they've worked for. Putting aside how ridiculous that is given system APIs are often wrapped for normal abstraction reasons anyways, that's totally fine. But then, it's also not my problem because I'm not Apple. I don't mind supporting their platform, I'll even turn a blind eye to the audacity of charging a developer fee while offering abysmal documentation and support. But I'm not going to crawl and beg for the privilege.

> Do you want them to use cross platform frameworks that are not optimized for their system?

Just like everybody else, because it hardly matters. Outside of Apple-land, Intel, AMD and Nvidia all get along just fine with rewriting SPIR-V to their microarchitectures. CPUs get along just fine rewriting abstract instruction sets like AMD64 and the various ARMs to their microarchitectures. Code is by-default compiled for instruction compatibility. APIs like CUDA and ROCm explicitly exist for vendor lock-in reasons. There's absolutely no reason why the throughput of these APIs can't be generically applied to compute shaders. None at all. The hardware vendors just want to capture the market.

Apple isn't exactly working with exotic hardware. The M1 is yet another ARM chip, not some crazy graph-reduction machine. These standards are fine and used across a wide-derth of hardware to no real detriment. I would suggest you may over-estimate how much they actually care about this idea of "specially optimized APIs." Consider that Apple pushes Swift as the primary language you Should be Using to ship software on OSX, and yet garbage collection is still handled in software. That's not what vertical integration for engineering purposes looks like.

Again, it all hardly matters. I wouldn't mind just wrapping these APIs, they're not particularly special or exotic any more than their hardware is. But the fact of the matter is that as a non-mac user, they go through a lot of effort to ensure putting software on their platform is as unattractive as possible.
by Onavo | 2025-05-06 17:42:33+00:00
Their devtools team is surprisingly competent when they choose to be. Pre-2015, people used Sublime Text, Atom, Textmate, Notepad++, Light Table, Brackets, Emacs/Vim, Intellij. VS code single handedly crushed all of them with code completion and language servers that require zero configuration. Emacs/Vim lost share, Jetbrains (and also Eclipse) were forced to release their own "lightweight" code editors, and everybody else became mostly irrelevant (except perhaps Sublime Text since it has the best native performance out of all editors).
by ajross | 2025-05-06 17:42:36+00:00
> Are we sure they know these things as opposed to being able to consistently guess correctly?

What is the practical difference you're imagining between "consistently correct guess" and "knowledge"?

LLMs aren't databases. We have databases. LLMs are probabilistic inference engines. All they do is guess, essentially. The discussion here is about how to get the guess to "check itself" with a firmer idea of "truth". And it turns out that's hard because it requires that the guessing engine know that something needs to be checked in the first place.
by JoshuaDavid | 2025-05-06 17:43:29+00:00
The training loop asked the model to one-shot working code for the given problems without being able to iterate. If you had to write code that had to work on the first try, and where a partially correct answer was better than complete failure, I bet your code would look like that too.

In any case, it knows what good code looks like. You can say "take this code and remove spurious comments and prefer narrow exception handling over catch-all", and it'll do just fine (in a way it wouldn't do just fine if your prompt told it to write it that way the first time, writing new code and editing existing code are different tasks).
by jacksnipe | 2025-05-06 17:43:31+00:00
Something that really frustrates me about interacting with (some) people who use AI a lot is that they will often tell me things that start “I asked ChatGPT and it said…” stop it!!! If the chatbot taught you something and you understood it, explain it to me. If you didn’t understand or didn’t trust it, then keep it to yourself!
What are we doing wrong with our International IT Forum?
by admonaut | 2025-05-06 17:43:31+00:00
Hello,

I have a question for the IT User here: In addition to our successful German forum (administrator.de), we also have an English forum with the domain https://rootdb.com/ We have translated the most important German instructions and moved all previous English content from administrator.de to rootdb.com. The portal went live in early February 2025. Unfortunately, we have only had four new user registrations since then, and no one wants to ask a question or post anything on the site. The German version, which is identical to the portal software, works very well.

Although we have many IT experts, especially in the areas of security and firewalls, neither Google nor international IT users seem to like us. We are not native English speakers, but we thought we had translated everything correctly. We also ran everything through a language AI to check everything.

Perhaps someone could take a look at the site and tell us what we are doing wrong or where our mistake lies. I would be very grateful. I don't know what else to do at the moment. Thanks in advance.

Many Thanks Frank
by mopsi | 2025-05-06 17:44:08+00:00
> What isn't disputed is that George W. Bush opened the door to Ukraine joining NATO [2]. Now this was never going to happen. Germany (for one) would veto it. Having NATO on the border with Russia is a recipe for disaster.

It will happen. It is inevitable. That Russia has lost the war against Ukraine has been obvious for some time, and sooner or later the war will end with the frontlines remaining roughly where they are now, if not farther east. After that, NATO membership for Ukraine will be one of the few realistic options to prevent renewed Russian aggression.

As for the claim of "NATO on Russia's doorstep", a former Russian foreign minister has for decades described NATO as an organization that offers free security to Russia. This is because NATO binds its members together and stabilizes each individual country. This dynamic is evident in the current support for Ukraine: NATO countries consult extensively with one another before making decisions, because poorly thought out initiatives could endanger all allies. As a result, their actions are proportional, measured and clearly communicated well in advance. For a country allegedly concerned about its security, such neighbors would be a godsend.

But the truth is that NATO and other forms of international cooperation turns invasions of neighboring countries from winnable small wars into unwinnable quagmires, and that's what truly bothers the Russians. Foreign support has turned Russia's war against Ukraine into one of the greatest failures in Russian military history. In a month or two, the casualties will exceed one million, with very little to show for it.
by hnlmorg | 2025-05-06 17:44:21+00:00
The limitations here aren’t due to Go. You can define forked processes gpid and ctty, which are the two key pieces you need to define to “correctly” support job control.

And in fact Go actually makes it very easy to both catch job control signals raised by the kernel and set those aforementioned parameters when calling the fork syscall.

The real problem here is that we don’t actually want to POSIX compliant job control because that would mean builtins inside hot paths would perform significantly worse and we lose the ability to easily and efficiently share data between commands, such at type annotations, localised variables, etc.

The lack of type annotations is a particularly hard problem to solve and also the main reason to use an alternative shell like Murex or Elvish. In fact I’d say having type annotations work across commands is more important than job control.

So the end result is having to replicate a lot of what you would normally get for free in POSIX kernels, except this time running inside your shell. In places you’re basically writing kludge after kludge. But whenever I despair about the ugliness of the code I’ve written, I remind myself that this is all running on 40 year old emulation mechanical teletypes. So the whole stack is already one giant hot ball of kludges.
by overtone1000 | 2025-05-06 17:44:36+00:00
I suspect there are few capabilities compose possesses that quadlets lack. Certainly, there are many capabilities that quadlets possess that compose lacks because you're really making systemd services, which exposes a host of possibilities.

Services are conceptually similar to pods in podman. Volumes and mounts are the same. Secrets or mounts can do configs, and I think podman handles secrets much better than docker. I searched for and found examples for getting traefik to work using quadlets. There are a few networking wrinkles that require a bit of learning, but you can mostly stick to the old paradigm of creating and attaching networks if that's your preference, and quadlets can handle all of that.

Quadlets use ini syntax (like systemd unit files) instead of YAML, and there is currently a lack of tooling for text highlighting. As you alluded, quadlets require one file per systemd service, which means you can't combine conceptually similar containers, networks, volumes, and other entities in a single file. However, podman searches through the quadlet directories recursively, which means you can store related services together in a directory or even nest them. This was a big adjustment, but I think I've come to prefer organizing my containers using the file system rather than with YAML.
by impresburger | 2025-05-06 17:45:00+00:00
Agree. We've designed a mechanism to enable any of the agents to ask for input from the user, but we haven't implemented it yet. Especially for more complex use cases, or use cases where the datasets are large and training runs are long, being able to interrupt (or guide) the agents' work would really help avoid "wasted" one-shot runs.

Regarding more complicated models and demanding users, I think we'd need:

1. More visibility into the training runs; log more metrics to MLFlow, visualise the state of the multi-agent system so the user knows "who is doing what", etc. 2. Give the user more control over the process, both before the building starts and during. Let the user override decisions made by the agents. This will require the mechanism I mentioned for letting both the user and the agents send each other messages during the build process. 3. Run model experiments in parallel. Currently the whole thing is "single thread", but with better parallelism (and potentially launching the training jobs on a separate Ray cluster, which we've started working on) you could throw more compute at the problem.

I'm sure there are many more things that would help here, but these are the first that come to mind off the top of my head.

What are your thoughts? Anything in particular that you think a demanding user would want/need?