MurphyA/hacker-news huggingface dataset:
by Archit3ch | 2025-12-07 19:46:34+00:00
While this is the "standard" macOS App structure, it is not the only one that works.

IIRC, you can put stuff in arbitrary subfolders as long as you configure the RPATHs correctly. This works and passes notarization. I came across libname.dylib in the nonstandard location AppName.App/Contents/Libraries . Not to be confused with /Library or the recommended /Frameworks location. However, there are basically no benefits compared to using the recommended directory structure, and none of the 100+ macOS apps installed in my system have a /Libraries directory.
by 1718627440 | 2025-12-07 19:47:19+00:00
I guess you wouldn't install wget in that installation and patch programming languages to follow the executive bit or also remove them.

Also you can't make it physically impossible for employees to not e.g. screenshot things and take them home. You can forbid it and try to enforce it, but some amount of trust is needed.

Willing action needs to be taken for what it is, an deliberate action by that user. If that user is allowed to access that data, than I don't see what is wrong with him doing that in an automated way.
by js8 | 2025-12-07 19:47:38+00:00
What the article suggests is basically Kanban. It's the most effective SW development method, and similar scheduling system (dispatch queue) is used by operating systems in computers. However, management doesn't want Kanban, because they want to promise things to customers.

You can make good estimates, but it takes extra time researching and planning. So you will spend cycles estimating instead of maximizing throughput, and to reduce risk, plan is usually padded up so you lose extra time there according to the Parkinson's law. IME a (big) SW company prefers to spend all these cycles, even though technically it is irrational (that's why we don't do it in the operating systems).
by toast0 | 2025-12-07 19:47:39+00:00
Are 20 year unmaintained weapons an effective deterent? Would there have been capacity to resist occupation if it wasn't? Would Ukraine have been coerced into some form of union through economic means and would that be better or worse for the people of Ukraine than the invasions?

All sorts of questions to ask. Yes, if our timeline was otherwise unchanged, but the nukes were kept and maintained, it seems unlikely that invasion in 2014 would have happened... But it's a big change to the timeline to keep the weapons, and there's too many unknowns to predict the resulting changes. I do strongly suspect few countries will accept similar assurances in the future, unless under duress, but then Ukraine wasn't exactly free from duress at the time either.
by jonathaneunice | 2025-12-07 19:47:46+00:00
Perl's decline was cultural in the same way VMS's decline was. A fantastic approach and ecosystem—just one overtaken by a world that was moving on to a different set of desires and values.

PHP emerged as a separate language and community and "ate Perl's lunch" when it came to the dominant growing app style of the Aughties... web pages and apps. Had PHP instead been a Rails-like extension of Perl for the web, sigils would have reigned for many years more. But there was never a WordPress, Drupal, or similar in Perl, and no reason for anyone who wasn't already highly connected to the Unix / sysadmin community to really give Perl another look.

By 2005 if you weren't already deep into Perl, you were likely being pulled away to other communities. If you were into Perl, you were constantly lamenting why newbies and web devs weren't using your language, just like the DECUS and VMS crowd did a decade earlier as Unix and Windows consumed all the oxygen and growth opportunities in the room.
Show HN: MemCloud – Pool unused RAM across LAN devices (Rust, zero-config)
by vibhanshugarg | 2025-12-07 19:47:48+00:00
Hi HN,

I’ve been working on a small project called MemCloud — a distributed, in-memory data store written in Rust. It lets multiple machines on a LAN pool their RAM and act like a shared, ephemeral storage cloud.

Why I built it

I often have multiple devices around me (Mac + Linux laptop + home server) that sit mostly idle. I wanted these machines to behave like one big RAM cache for local development, ML experiments, and data processing — without installing heavy systems or configuring clusters.

So I built a lightweight daemon that:

auto-discovers peers via mDNS

exposes a simple local RPC API

pools memory across devices

supports raw block storage and a Redis-style key-value interface

works offline on macOS and Linux

has a CLI + Rust SDK + JS/TypeScript SDK

What it does

Store a block on any peer and load it from another in <10ms over LAN

Offload large streams (logs, datasets) without spiking local RAM

Build small distributed workflows without running Redis/Memcached clusters

Experiment with P2P memory systems in a simple way

Repo

https://github.com/vibhanshu2001/memcloud

Architecture (short version)

Each device runs a small Rust daemon ("memnode"):

mDNS → discovers peers

Peer Manager → handles connections

Block Manager → stores/loads blocks in local RAM

RPC API → CLI/SDK communication

Optional KV store → set(key, value) / get(key)

SDKs talk only to the local daemon, which routes requests to the correct peer.

Benchmarks (on M1 Mac)

SET: ~25k ops/sec (1KB payloads)

GET: ~16k ops/sec (Not optimized — curious what others get on their machines.)

Looking for feedback on:

architecture & safety

networking design

memory model & eviction strategies

real-world use cases

potential pitfalls I might not be aware of

This is still early-stage/alpha and definitely not production-ready, but I’d love to hear your thoughts or suggestions.

Happy to answer questions!

https://memcloud.vercel.app/

— Vibhanshu
by stackghost | 2025-12-07 19:47:49+00:00
No I'm not joking at all. The Autocode feature generates code that has high fidelity to the model in simulink, and is immensely more reliable than a human.

It is impossible for a simulink model to accidentally type `i > 0` when they meant `i >= 0`, for example. Any human who tells you they have not made this mistake is a liar.

Unless there was a second uncommanded acceleration problem with Toyotas, my understanding is that it was caused by poor mechanical design of the accelerator pedal that caused it to get stuck on floor mats.

In any case, when we're talking about safety critical control systems like avionics, it's better to abstract away the actual act of typing code into an editor, because it eliminates a potential source of errors. You verify the model at a higher level, and the code is produced in a deterministic manner.
by verdverm | 2025-12-07 19:48:27+00:00
We give AI access to our machines, so they have a critical security flaw...

In a sense yes, and in a sense no, because this is by design

I'm close to having my custom coding assistant extension always working in a container, yet keeping the same IDE experience. More people will do this, it makes sense, and mainly requires plumbing and wiring, not new tech
Show HN: SmokeRand: a new test suite for pseudorandom number generators
by Dig386 | 2025-12-07 19:48:45+00:00
Hello! I've created SmokeRand: a new cross-platform test suite for pseudorandom number generators written in C99 (MIT license). It combines ideas from TestU01, PractRand and gjrand, supports multi-threading, includes four predefined general purpose batteries, ~250 PRNG examples and several pre-defined heuristic scoring for tested PRNGs. Two interfaces for generators are supported: either stdin/stdout or plugins. An easy integration with TestU01 and PractRand is also supported.

It seems that sensitivity of SmokeRand full battery is comparable to TestU01, but it has a native support for both 32-bit and 64-bit generators. Also SmokeRand sometimes finds artefacts not detected by TestU01 and PractRand: e.g. in upper bits of 128-bit LCGs, additive lagged Fibonacci generators with huge lags, absence of 64-bit duplicates in SplitMix64 and DES-CTR output.
Show HN: My super fast circular imports checker for TypeScript in Go
by jayu_dev | 2025-12-07 19:48:54+00:00
I've recently been working on refactoring my static analysis tool from JavaScript to Go to improve performance.

Once I had module resolution implemented, I decided to add a new feature: circular dependency detection—a notoriously slow task in the projects I work on.

To my surprise, it turned out to outperform all available tools. It's 12 times faster than the fastest alternative!

I didn’t do anything particularly extraordinary, other than implementing everything from scratch, including the imports parser and module resolver.

Running circular check on project with 6034 source code files and 518862 lines of code takes below 400ms while other tools needs at least 5 seconds to execute.
by codingdave | 2025-12-07 19:49:18+00:00
This is why I push for Kanban whenever I am a PO. If we can ballpark an estimate, I can prioritize it. If we cannot ballpark an estimate, I can prioritize the research to clear out some of the unknowns. But most importantly, we set an expectation of rolling feature rollouts, not inflexible release dates. We communicate both internally and externally the next few things we are working on, but no hard dates. The article correctly identifies that hard release dates communicated to customers are the root cause of problems, so I simply don't give such things out.
by rendaw | 2025-12-07 19:49:32+00:00
A constraint like "make the top of this 20px below the top of the screen" should be no more computationally expensive than "margin-top: 20px". I'm not familiar with Apple's Auto-layout but why is it so slow? Maybe you have an example of what you're thinking of.

My guess is provides the power to do layouts that are difficult to do in CSS and also more computationally expensive, so it's not that constraints are slower, but that doing more complex layout requires more computation.

Edit: https://microsoft.github.io/apple-ux-guide/Layout.html (FWIW, by Microsoft?) seems to confirm this. Performance for normal layouts is normal, doing complex things with lots of chained, dependent constraints that modify many things is slow.

So, I don't think this is a good argument against constraint systems. People can do crazy things with more power. In fact, they already do crazy things because they can use Javascript which is ultimately powerful. Adding one more powerful system isn't going to change things. Companies do have limits for loading/rendering times for websites they publish, as loose as they are.
by skydhash | 2025-12-07 19:49:38+00:00
Giving an estimate is not hard and shouldn't be a pain if if was truly an "estimate" PMs were asking for. But after a while you learn that when they say "What's the estimate for feature F?", they're in fact saying "What deadline you wish to impose on yourself for feature F?". Then the next interaction is most likely to be "Are you done yet?" and not "Is the estimate holding up?".
by WWWWH | 2025-12-07 19:50:27+00:00
Surely this is gross professional misconduct? If one of my postdocs did this they would be at risk of being fired. I would certainly never trust them again. If I let it get through, I should be at risk.

As a reviewer, if I see the authors lie in this way why should I trust anything else in the paper? The only ethical move is to reject immediately.

I acknowledge mistakes and so on are common but this is different league bad behaviour.
by senshan | 2025-12-07 19:50:49+00:00
As many pointed out, the purpose of peer review is not linting, but the assessment of the novelty and subtle omissions.

Which incentives can be set to discourage the negligence?

How about bounties? A bounty fund set up by the publisher and each submission must come with a contribution to the fund. Then there be bounties for gross negligence that could attract bounty hunters.

How about a wall of shame? Once negligence crosses a certain threshold, the name of the researcher and the paper would be put on a wall of shame for everyone to search and see?
by barfoure | 2025-12-07 19:51:02+00:00
> Wait wait wait OMEN MAX 16z-ak000 has a lot of capital letters, that one must be the best, right? But there’s also an HP EliteBook, Elite sounds like the best, do I still want a ZBook?

To be fair the names chosen are usually cringe and towards a specific market. To posit:

“Pro”, “Elite”, etc: professional audience.

“Epic”, “Fury”, etc: teen gamers.

“Yoga”, “Zen”, etc: you can guess.

You get the idea. The garbled names with an a, z or i suffix for slightly different SKUs is obnoxious and as hotz mentions confusing. But more to the point their marketing departments suck and lose to the Apple gorilla.

Reminds me how Porsche sells one car in a hundred configurations and they all cost a lot and yet they all suck.
by vkou | 2025-12-07 19:51:03+00:00
> Do other PR reviewers not do this?

No, because this is usually a waste of time, because CI enforces that the code and the tests can run at submission time. If your CI isn't doing it, you should put some work in to configure it.

If you regularly have to do this, your codebase should probably have more tests. If you don't trust the author, you should ask them to include test cases for whatever it is that you are concerned about.
by zkmon | 2025-12-07 19:51:42+00:00
A couple of decades back PMs used to look at historical data to guide the estimates for a new project. If a similar coding work took 2 weeks on average in the past, that gives some basis.

So, I think the issue is about whether it is a routine workflow work which has well-tested historical timelines or not.

Nevertheless, estimates are needed at some granularity level. When you order something on Amazon, would like an estimate on when the item would be delivered to you?

Even if coding work can't be estimated, the overall project requires estimation. Someone need to commit to timelines and come under pressure. Distribution of that pressure is only fair.
by antonvs | 2025-12-07 19:51:45+00:00
I agree that image is as fake as can be. I reported it. Nitpick though:

> None of the Hawaiian islands are close enough to each other to generally be visible from one another!

Of the Hawaiian islands usually identified as "major", Molokai, Lanai, and Kaho‘olawe are all visible from Maui, and vice versa.

Many people would probably limit the list of major islands to four. Interestingly there doesn't seem to be any official term for that grouping, other than perhaps the "main islands".
by ls612 | 2025-12-07 19:52:03+00:00
There’s plenty of pre-AI automated tools to create and manage your bibliography. So no I don’t think using automated tools, AI or not, is negligent. I for instance have used GPT to reformat tables in latex in ways that would be very tedious by hand and it’s no different than using those tools that autogenerate latex code for a regression output or the like.
by Lerc | 2025-12-07 19:52:12+00:00
The problem is that CSS is serving multiple masters. It is specifying how the designer is wanting a page to be laid out while doing do in a way that conforms to the way the receiver wants it to be laid out.

I think there is an opportunity for pages to have regions of priority. I thing there would be merit in something where client devices have freedom to decide some parts of the layout but others are ridgidly controlled by designers.

You can kind of do this already with CSS with absolute and relative positioning and calc() for control and flex for, well, flexibility. It's not in a form that particularly facilitates it though. I'd like a better ability to choose whether elements to push the bounds of their containers or whether containers squeeze their content, and what to do when in conflict. scrolling, clipping, exceeding bounds, scaling to fit are all options.
by ninth_ant | 2025-12-07 19:52:31+00:00
> With a purely Open Source strategy, you'll have to pay multiple external consultants to take care of part of this, and/or cover these roles in-house. And suddenly, you've taken up a lot of tasks completely foreign to your business domain, such as new infrastructure and its maintenance, documentation requirements, software development, and so on.

Yes, this is what I’m talking about. Hiring people and developing expertise instead of paying expensive consultants is a preferred use of my tax dollars.

> But it's still a high-risk wager and I'm afraid it'll turn out like the LiMux project in Munich, which was eventually (and cleverly so) framed as the origin of all problems in the municipal digital infrastructure.

While this may be true, there are also quite prominent cases where the massively expensive foreign consultant solutions have also lead to disastrous project overruns.
by vodou | 2025-12-07 19:52:48+00:00
Need to check it out. I guess you mean these:

- C++ Exceptions Reduce Firmware Code Size, ACCU [1]

- C++ Exceptions for Smaller Firmware, CppCon [2]

[1]: https://www.youtube.com/watch?v=BGmzMuSDt-Y

[2]: https://www.youtube.com/watch?v=bY2FlayomlE
by TheTaytay | 2025-12-07 19:53:30+00:00
Hasn’t the definition of autism in the DSM changed to the point of requiring only a single characteristic to be “technically” on the spectrum, whereas it used to require many more criteria? I think it’s literally “not what it used to be”.

It seems like a diagnosis that would benefit from more distinguishing words so as not to conflate people at different ends of that spectrum.

It must be infuriating or Bewildering to see someone knowingly nodding along saying, “oh yeah. I’m autistic too,” when other autistic people you know literally aren’t capable of doing that.
by mikewarot | 2025-12-07 19:54:12+00:00
If you're looking at this as someone who enjoys technology and what it allows on a personal level, it's never been better. The recent arrival of 3d printers and desktop CNC mills means that you can build almost anything.

Even with the recent price hikes, compute power of even a small machine dwarfs that of large organizations 50 years ago for less than a day's wages.

We've got persistent global internet, mostly. You can build your own community without relying on the tech bros, if you want.

It's scary in the short run, but I think the future is still bright.
by mananaysiempre | 2025-12-07 19:54:34+00:00
I recently installed NT4 (including Plus!) in an emulator with a VESA video driver, and was greatly surprised when about half of the icons that I thought of as “Windows 2000” (including the memorable “My Computer” one with the bulbous sky-blue screen) turned out to be available even there, provided a non-indexed mode. The rest were the more familliar 16-color-compatible 95/NT4 ones, making for an incongruous result overall. I guess what I want to say is that 16-color compatibility is a large part of the 95/NT4 look from which 2000 very carefully departed.
by EliRivers | 2025-12-07 19:55:14+00:00
I worked on the same for many years; same deal - playout system for broadcast, years of uptime, never miss a frame.

The C++ was atrocious. Home-made reference counting that was thread-dangerous, but depending on what kind of object the multi-multi-multi diamond inheritance would use, sometimes it would increment, sometimes it wouldn't. Entire objects made out of weird inheritance chains. Even the naming system was crazy; "pencilFactory" wasn't a factory for making pencils, it was anything that was made by the factory for pencils. Inheritance rather than composition was very clearly the model; if some other object had function you needed, you would inherit from that also. Which led to some object inheriting from the same class a half-dozen times in all.

The multi-inheritance system given weird control by objects on creation defining what kind of objects (from the set of all kinds that they actually were) they could be cast to via a special function, but any time someone wanted one that wasn't on that list they'd just cast to it using C++ anyway. You had to cast, because the functions were all deliberately private - to force you to cast. But not how C++ would expect you to cast, oh no!

Crazy, home made containers that were like Win32 opaque objects; you'd just get a void pointer to the object you wanted, and to get the next one pass that void pointer back in. Obviously trying to copy MS COM with IUnknown and other such home made QueryInterface nonsense, in effect creating their own inheritance system on top of C++.

What I really learned is that it's possible to create systems that maintain years of uptime and keep their frame accuracy even with the most atrocious, utterly insane architecture decisions that make it so clear the original architect was thinking in C the whole time and using C++ to build his own terrible implementation of C++, and THAT'S what he wrote it all in.

Gosh, this was a fun walk down memory lane.
by logifail | 2025-12-07 19:55:19+00:00
> I don't see why it isn't possible

(In good faith) I'm trying really hard not to see this as an "argument from incredulity"[0] and I'm stuggling...

Full disclosure: natural sciences PhD, and a couple of (IMHO lame) published papers, and so I've seen the "inside" of how lab science is done, and is (sometimes) published. It's not pretty :/

[0] https://en.wikipedia.org/wiki/Argument_from_incredulity
by Nasrudith | 2025-12-07 19:55:47+00:00
One important detail which is missing from it. Masking is far from free. I have at least met several people who are capable of masking but just grow so resentful of it that they outright refuse to do it for the barking-mad neurotypical society any more. The reason for the harsh references to mental health? Because most common doesn't equate to not being deeply irrational and dysfunctional. Keeping up with the Joneses to the point of keeping oneself in debt? 'Normal' behavior but frankly belongs on a diagnostics list for something.
by louthy | 2025-12-07 19:56:05+00:00
> A couple of decades back PMs used to look at historical data to guide the estimates for a new project. If a similar coding work took 2 weeks on average in the past, that gives some basis.

Even that doesn’t work because the time taken isn’t just about similarity to other work, it’s about how your new feature interacts with the current state of the codebase which is not the same as when the similar feature was implemented before.

Ultimately, it’s a complexity problem that’s borderline impossible for our feeble human brains to properly understand. And we consistently misunderstand the nature of that complexity
by nicoburns | 2025-12-07 19:56:34+00:00
It's constraints like "line up the left side of widget A with the right side of widget B" that can be slow. In this case no width is provided for each widget, so the constraint solver has to find one (which likely involves calling into the widgets to size themselves, adjusting the sizes according to some algorithm and then laying out those widgets again with the final size).

These are also the kind of cases where CSS layout ends up being slow. But a constraint solver based layout gives you more power to shoot yourself in the foot with.

> but that doing more complex layout requires more computation.

It's exactly this. The question is whether that makes for an ergonomic system to use for the developer. My assertion is that if there is no feedback when you create a slow layout, then it is not actually an easy system to use, and you're better off with something more constrained that guides you into the pit of success.
by toast0 | 2025-12-07 19:56:41+00:00
I feel like networking at events is valuable, but networking events are less so with some exceptions. You ideally want to bump into someone with a high value network, but most of the people going to networking events are going to the events because they don't have a high value network.

An exception would be mixers for interns and juniors; few people have a developed network at that point, so even those with a couple good contacts are interested in expanding, and there's a lot of potential.
by thecr0w | 2025-12-07 19:57:03+00:00
We should check the Wayback Machine, but in my memory this was built with an image map. Maybe like, 10 years ago or something. I was googling around when writing this post and saw that there are folks still tasked with making sure it's up and running. I wonder if they migrated it to tables at some point in the last decade.