MurphyA/hacker-news huggingface dataset:
by iLemming | 2025-05-16 17:37:42+00:00
> short identifiers in Clojure tend to be pretty standard things

No it's not. There's no style-guide rule, or PEPx, or core team recommendation to use short or long names. Clojurists are pragmatists to the core — they use whatever makes sense in the context. If `m` and `f` feels like a reasonable choice instead of `map` and `function` — that's how they'd name the vars, but it's not a universal rule.

Clojure's syntax (and Lisp's in general) is very flexible, you may encounter names like `bar->foo` — for transforming, or `bar+foo` — for data combining functions. For uninitiated these kind of names may look cryptic — when you encounter a function name like that for the first time, you'd think it's some kind of special language construct. Matter of fact, because Lisp syntax is so minimal, the overhead of learning mental parsing of the code is also (relatively) small. No one after a few months of writing Clojure conceives it as a atypically "cryptic language", but of course, there are programmers capable of writing cryptic code in any language, no matter how generally terse or verbose it is.
by andy_xor_andrew | 2025-05-16 17:37:51+00:00
They are talking a lot about this new engine - I'd love to see details on how it's actually implemented. Given llama.cpp is a herculean feat, if you are going to claim to have some replacement for it, an example of how you did it would be good!

Based on this part:

> We set out to support a new engine that makes multimodal models first-class citizens, and getting Ollama’s partners to contribute more directly the community - the GGML tensor library.

And from clicking through a github link they had:

https://github.com/ollama/ollama/blob/main/model/models/gemm...

My takeaway is, the GGML library (the thing that is the backbone for llama.cpp) must expose some FFI (foreign function interface) that can be invoked from Go, so in the ollama Go code, they can write their own implementations of model behavior (like Gemma 3) that just calls into the GGML magic. I think I have that right? I would have expected a detail like that to be front and center in the blog post.
by karaterobot | 2025-05-16 17:37:59+00:00
Well, I'm responding to someone who said one of the purposes of the coin was to make money to pay for infrastructure, which the article specifically says is not true.

It sounds like you're making a separate accusation, which I have no opinion about. There's nothing in that statement about them owning a significant part of the token supply, though it may be true for all I know. Do you have any evidence for it, or is it just your expectation of what will happen?
by rednafi | 2025-05-16 17:38:02+00:00
I agree about using other languages that have better concurrency support if concurrency is your bottleneck.

But changing the language in a brownfield project is hard. I love Go, and these days I don’t bother with Python if I know the backend needs to scale.

But Python’s ecosystem is huge, and for data work, there’s little alternative to it.

With all that said, JavaScript ain’t got shit on any language. The only good thing about it is Google’s runtime, and that has nothing to do with the language. JS doesn’t have true concurrency and is a mess of a language in general. Python is slow, riddled with concurrency problems, but at least it’s a real language created by a guy who knew what he was doing.
by Ancapistani | 2025-05-16 17:38:05+00:00
There are definitely a few with UX problems, and there are a few apps completely missing - like ProtonMail - but overall bringing iOS and iPadOS apps into visionOS feels pretty natural.

If visionOS is to succeed, that's how it will do it. visionOS and iOS/iPadOS will continue to be developed in parallel, with new UX conventions slowly making their way to the traditional devices. Over time, apps built using Apple's platform will "just work" in visionOS as well.

In fact, while I hadn't thought about it until now, that's probably exactly why they're doing a visual refresh of iOS 19. Reporting seems to emphasize the "visionOS style" widgets, and it's apparent to me at least that that's going to lead to deeper and more complete integration between the platforms.

I don't think Apple is done with Spatial Computing. I wish the Vision Pro had done a bit better, especially its native software ecosystem, but I don't think it has been a failure at all. There were likely lots of reasons they launched it: to test the market's readiness for the product, to introduce new UX conventions, to get direct user feedback, to allow developers onto the platform, etc. They didn't have to make money on the Vision Pro (though, I think they did).

People here are always saying how hard it is to build a hardware startup; how just _shipping the product_ is a milestone that most of them never reach. Hardware is hard. I see the Vision Pro as Apple applying Agile to hardware. They shipped an MVP. It's not a "VR headset", it's a "Spatial Computing device". That lets them see how people actually use it, refine, and iterate.

The only reason you don't see this approach more often is that most companies have neither the capital nor the risk tolerance to do it. Apple spent $30B on R&D in FY2023.
Ask HN: Where are the open source JavaScript PDF rendering libraries?
by SamCoding | 2025-05-16 17:38:36+00:00
I'm trying to add a PDF viewer into my Svelte app, but there are very few libraries that seem to facilitate this in Node.js without linking from a CDN-hosted script.

Any resources that may have these functionalities, e.g. PDF.js have very limited Node.js documentation.

What does everyone recommend?
by techpineapple | 2025-05-16 17:38:59+00:00
This is a weird statement from Microsoft. It seems to sort of imply that it acknowledges there is something that the Israeli military is doing that is unethical/outside strictly national defense, and that if their software was say managing the missile control systems that might be bad, but that managing the payroll for the HR department paying the people operating those missile control systems is fine.
by viccis | 2025-05-16 17:39:00+00:00
It's not hard. Just go on Zillow and look at the relative costs of a 3 bedroom place in Atlanta's central neighborhoods (Midtown, O4W, Virginia Highlands, Edgewood, etc.) and compare it to the cost of a 3 bedroom in Alpharetta or Tucker. Last time I was there, I saw shitty little 1200 sqft condos in areas that were barely walkable going for upper $500k prices.
by ckemere | 2025-05-16 17:39:37+00:00
The work outlined in the actual paper is quite remarkable. Within this 6 month period they generated transgenic mice with the precise mutations (paternal and maternal) this baby had in order to test treatment for functionality and toxicity as well as a doing a toxicity study in monkeys.

To those thinking about commercialization opportunities, these two steps seem the most labor intensive and time consuming, but also the most necessary in order to actually have confidence to inject completely customized gene editing therapy in a kid.

(Also worth highlighting for folks opposed to animal research.)
by bionhoward | 2025-05-16 17:39:42+00:00
What about privacy, training opt out?

What about using it for AI / developing models that compete with our new overlords?

Seems like using this is just asking to get rug pulled for competing with em when they release something that competes with your thing. Am I just an old who’s crowing about nothing? It’s ok for them to tell us we own outputs we can’t use to compete with em?
by evantbyrne | 2025-05-16 17:39:42+00:00
It makes sense that some kinds of schema optimizations are fairly esoteric, because the services most devs work on don't need them. An ORM is something you import on day one to speed up development; while rearranging tables to remove joins may not be needed (or even justifiable based on metrics) for another five years. I would hope that the ORM is flexible enough to be irrelevant to the trade-off between schemas though. Your comment about not having a database in CI brings back nightmares! Reminds me of how at my first job they had us running SQLite in CI and then shipping to Postgres, which worked about as well as you can imagine haha
by Towaway69 | 2025-05-16 17:39:53+00:00
> Could you sort the JSON before saving so the output is more stable and diff-able?

Jsons are definitely diff-able but it's the difference between a change that changes the logic of the flow or a change that is purely visual and has no affect on the logic of the flow that is hard to distinguish by just diffing the JSONs.

Remember the Json contains location of nodes and labels of nodes as well as logic of nodes - if a label of a node changes it doesn't affect the flow logic or how it works.

So if the value of an 'x' changed, that means the node moved along the x-axis. Did the value of 'func' (function value for a function node) change, then that is a logically change. Now what change is important if you only looking at the JSON. So you need to remember that 'x' and 'y' are visual, 'func', 'tmpl', 'rules' are logical. And what is important for each node isn't the same across all possible nodes ...

> this type of control flow logic doesn't work well with text line

Exactly that's why places like GitHub would need a lot work to support visual coding in proper way. Diffs would have to become like image comparisons that line-by-line diffs.

And that is partly why visual coding has taken off - the tooling isn't available.
by pcwalton | 2025-05-16 17:40:15+00:00
When I was first developing early versions of rustc I was really fascinated with Clang's effort at good error messages, which was helping it gain traction vs. GCC at the time, and I tried to start the Rust compiler project off on the right foot. I'm really glad that the Rust compiler dev community has continued to value great error messages: they're the UX of a compiler, and are every bit as important as UX of any other app.
by foxyv | 2025-05-16 17:40:36+00:00
Guns are designed to make split second decisions into life changing consequences. There is nothing I hate more than poorly trained firearms owners that flag people with their weapons, load weapons when they aren't ready to fire, and just generally fuck around with the things.

Adult human beings acting like children and holding deadly firearms. It's a recipe for disaster. Idiots can turn perfectly normal situations into decades long prison sentences.
by jcalvinowens | 2025-05-16 17:41:15+00:00
> But a thread can still crash in its own due to unhandled oom, assertion failures or any number of other issues

That's not really true on POSIX. Unless you're doing nutty things with clone(), or you actually have explicit code that calls pthread_exit() or gettid()/pthread_kill(), the whole process is always going to die at the same time.

POSIX signal dispositions are process-wide, the only way e.g. SIGSEGV kills a single thread is if you write an explicit handler which actually does that by hand. Unhandled exceptions usually SIGABRT, which works the same way.

** Just to expand a bit: there is a subtlety in that, while dispositions are process-wide, one individual thread does indeed take the signal. If the signal is handled, only that thread sees -EINTR from a blocking syscall; but if the signal is not handled, the default disposition affects all threads in the process simultaneously no matter which thread is actually signalled.
by grep_it | 2025-05-16 17:42:08+00:00
> Why Not Redis? I have a single VPS, so I can get by with a simple SQLite database. If I had many instances of my API on separate servers

Just to push against this a bit. Redis can be very low memory cost and is very easy to run (I give it 5mb). I have a small single server with a few instances of my API that let's me cache pretty much everything I need.
by noodlesUK | 2025-05-16 17:42:32+00:00
In order for U.S. citizens to pass on their citizenship to children born abroad, they need to have resided in the U.S. for a certain period prior to the birth of the child.

The amount of time the parent has to have lived in the U.S. varies but usually it’s 5 years with at least 2 years after the age of 14.

If they don’t automatically pass it on and they want to move back to the U.S., they need to apply for green cards for their kids.

Since 2001, anyone under 18 who has a green card and lives with a U.S. citizen parent becomes a citizen automatically by process of law, under INA 320. Unfortunately documenting this is not automatic. A lot of people who came before 2001 don’t even know that they’re citizens. The application for a certificate costs a lot of money, so often parents tend to skip it if they don’t feel it’s necessary.

See below for the residency criteria.

https://travel.state.gov/content/travel/en/legal/travel-lega...

INA 320: https://www.uscis.gov/policy-manual/volume-12-part-h-chapter...
by deepdarkforest | 2025-05-16 17:42:48+00:00
Very cool. 1) How do you deal with timings? If a step includes clicking on a link or something that needs loading, then if you just fire off the generated playwright code at at once, some steps might fail because the xpath is not there yet. So to be safe, i'm guessing you would have to wait using the difference in the timestamps in the json. 2. For self healing, we worked on something similar, and we found it's very easy to get off the rails if one step fails because if your assertions of if the fix was correct are off, then the next and next steps will also fail etc. The most stable way was to just regenerate all steps if a step fails in 2 attempts (2 runs of the flow) consecutively. If the xpath is broken for a step, very likely the subsequent ones won't be worth healing individually.
by pcwalton | 2025-05-16 17:43:17+00:00
My recollection is that Brian Anderson, who came from the C# world, was an early advocate of the easily-googlable error codes that Microsoft compilers use a lot, and pushed to get them in. That was a good call. (In general Brian had a lot of behind-the-scenes positive influence on Rust: my favorite brson-ism is "if the code doesn't have a test it doesn't exist".)
by seadan83 | 2025-05-16 17:43:34+00:00
Could you explicitly explain that second question, regarding how we would experience a large scale extinction event from a different timeline?

I'm also curious about this assumption: "It's the assumption that in our world, a machine civilization is an almost certain end"

Let's say machine civilization is an intractable problem, NP complete, requires a million fold difficulty more than the travelling salesman problem - it might not be a good assumption. We are assuming therefore that the compute power will grow enough to solve the required problem. It's also a question too what a machine civilization would look like. Might it decide to just power itself off one day (or accidently?).

The Fermi paradox relies on some assumptions (I'm pulling these from wikipedia):

- Some of these civilizations may have developed interstellar travel, a step that humans are investigating.[12]

- Even at the slow pace of envisioned interstellar travel, the Milky Way galaxy could be completely traversed in a few million years.[13]

- Since many of the Sun-like stars are billions of years older than the Sun, the Earth should have already been visited by extraterrestrial civilizations, or at least their probes.[14]

These assumptions could readily not hold up. Perhaps interstellar travel is actually impossible. Or, it's not feasible. If it takes a million years to travel to the nearest star, let alone one that is inhabited - why do it? We would really have to assume a machine civilization at that point - which leads to another assumption that machines would care and/or be motivated enough to explore.

The last assumption, perhaps Earth was visited by a probe, but just 200 years ago. Even today, we don't detect nearly all asteroids, let alone something that might be relatively small. The assumption that we have not detected a visitation from another species is a pretty big assumption too.
by upofadown | 2025-05-16 17:44:18+00:00
If you can make it possible for the user to verify identities in a way they can relate to, then you have also solved the key management problem. The identity problem is not just tough for messaging, it pops up any time an attempt is made to apply cryptographic identities to stuff in the real world.

I couldn't wish for a better example than SignalGate. So I wrote an article:

* https://articles.59.ca/doku.php?id=em:sg
by Animats | 2025-05-16 17:45:45+00:00
This is not new ground. See Cybernetics: Or Control_and Communication in the Animal and the Machine (1948) by Norbert Wiener. Wiener wrote a popular version, "The Human Use of Human Beings".[2] There's a whole history of cybernetics as a field. This Wikipedia article has a good summary.[3] The beginnings of neural network work came from cybernetics. As with much of philosophy, areas in which someone got results split off to become fields of their own.

[1] https://en.wikipedia.org/wiki/Cybernetics:_Or_Control_and_Co...

[2] https://en.wikipedia.org/wiki/The_Human_Use_of_Human_Beings

[3] https://en.wikipedia.org/wiki/Cybernetics
by Ancapistani | 2025-05-16 17:46:00+00:00
Now there's a space that's ripe for disruption. TVs.

I love having apps for streaming services on my TV - but I hate smart TVs. I hate them because their UX is always slow and clunky, they have more bloat installed than a contract smartphone in 2010, and they run a custom, closed OS that will stop getting updates three months after it's released.

Well, that's not true. They'll push and update a year or so later that puts ads on your homescreen that you can't remove.

I won't pay $1,400 for a new 60" Samsung QLED smart TV, but I'd spend $3k on a TV with the same specs and no smart features. I'd just do what I do now, and plug an Android TV box into it.

I've used AppleTV a bit, both their app and the hardware device. I honestly prefer the Android TV boxes I have, but it's more than adequate. More importantly, it's fast and flexible enough to support multiple providers in one app.

If Apple were to build a TV with AppleTV built-in, with the same specs as the Samsung, I'd probably buy it at $3k. I'd definitely buy it at $2k. I'd consider it at $4k or above, depending on whether Apple improves and expands AppleTV.
by MarkusQ | 2025-05-16 17:46:22+00:00
> An argument against it is that there are clearly people driven by the desire for "more", with no visible upper bound.

The real problem is that the distinction is meaningless. These people could just be described as "minimizing the risk of running out of money" (or paperclips, or whatever). Any "maximizing system" is isomorphic with a "minimizing system" using the inverse of the metric.
by toolslive | 2025-05-16 17:46:45+00:00
as a general tip: X^-1 doesn't mean you have to inverse the matrix. It's often a notational shorthand for "you can solve the system". Same remark for X^t. It doesn't mean you have to build a new matrix. It just means you have to use the one you have in a different way. I've have seen this being butchered by scientists and then they complain their performance sucks.
by ptx | 2025-05-16 17:47:11+00:00
Although keep in mind that the callback will be "called in a thread belonging to the process" (say the docs), presumably some thread that is not the UI thread. So the callback needs to post an event to the UI thread's event queue, where it can be picked up by the UI thread's event loop and only then perform the UI updates.

I don't know how that's done in Pyside, though. I couldn't find a clear example. You might have to use a QThread instead to handle it.
by duderific | 2025-05-16 17:47:23+00:00
> Having a full discussion or conversation using a phone virtual keyboard is such a user hostile experience to me.

Same - when I'm scrolling Reddit I often feel like I want to add a comment, but then think about having to "type" a few paragraphs on my phone, and just pass on it. However, I'm definitely on the older side, and I do understand that the younger generations have no such qualms.
by blovescoffee | 2025-05-16 17:47:40+00:00
First, understand that Mexicans are a diverse group of people, some with very “Spanish” lineages. Second, the Spanish intentionally erased very large portions of indigenous culture. The Spanish colonizers absolutely did not “respect” the old culture except for very specific and unique instances. I’m not sure how you can possibly say as much? It’s essentially genocide erasure.

Anyways, the Mexican government currently communicates in a variety of indigenous languages on official forms and so they’re certainly trying to reinvigorate those traditions now.

Could you explain where you got the idea that the Spanish as a whole respected indigenous culture in mesoamerica ?
by xp84 | 2025-05-16 17:49:22+00:00
I'm around that age. In poorer areas we just had whatever cast-off computers. Circa 1995, my grammar school featured:

- A Franklin ACE (Apple ][ Clone) with an amber screen and two floppy drives

- An Atari ST with a daisywheel printer (Letter quality!)

The newest additions to the school were:

- A Compaq 386 with an amber screen - this is where we had WordPerfect

- A Tandy 1000, 8086 with DOS and a color monitor. Not sure if it could do VGA, definitely CGA was a thing. We ran Where in The World Is Carmen Sandiego and a paint program on that. Because it was in my classroom, this was really the first computer I learned exhaustively. I read its MS-DOS manual cover to cover and enjoyed writing batch files, building launcher menus, etc.
by 16bytes | 2025-05-16 17:49:41+00:00
Can you recommend another comprehensive design system? As an engineer, that's the most valuable thing about MD3: the figma design kit and per component design guidelines. It lets me offload a ton of workload I'd otherwise have to do myself (poorly) or outsource to a designer.

I haven't seen another design system that is as comprehensive to material. Express seems like an evolutionary refresh with some things I could use right away, but otherwise most of the content is MD3. It's valuable to me as part of the larger ecosystem.
by godmarco | 2025-05-16 17:50:05+00:00
We just launched a tool that helps you understand how your website is seen by AI bots like ChatGPT, Claude, and others.

It tracks whether your site is mentioned or used in AI answers, analyzes your visibility across different LLMs, and gives actionable insights to help you grow organic traffic from AI platforms—not just search engines.

Think of it like SEO, but for LLMs.

You can start for free and instantly see how your site ranks in AI responses.

Would love your feedback: https://www.xseek.io/
by profchemai | 2025-05-16 17:50:11+00:00
I've read this book, I don't think this was the case. I think the name was made in good-faith. It's "transformer" because it involves transformations of molecules involved in life (reactions, enzymes, metabolism). The author has used this term before 2022.

The same argument could be made for the transformer paper: hijacking a nostalgia pop-culture name to name a deep learning bi-linear operator. Many papers are guilty of this, some just become very influencial.
by mynameisash | 2025-05-16 17:50:11+00:00
I don't remember where, but I once heard someone talk about "error-message-driven-development" in Rust -- that is, using the error messages provided by rustc to guide you in your development process by way of fixing bugs in naively-written code. I even did a talk to several dozen engineers in my previous group about how fantastic it is: a newbie can write what they think is reasonable code, the compiler will reject the program but provide useful information, and the user can iteratively apply changes to the point where you can almost get things exactly as you want it. A lot of people who knew nothing about Rust were super impressed by the messages reported.

Many thanks to you and others that have toiled at this incredible UX!