MurphyA/hacker-news huggingface dataset:
by mschuster91 | 2025-10-27 08:50:25+00:00
> Self-hosted video isn't that hard but no one makes a baby-monitor centric solution.

It's not that easy. The only usecase that is actually really fucking easy is when both the camera and the device trying to access it is in the same network - broadcasts for discovery, that's it. Although I've seen people turn on "client isolation" in their wifi back when I did computer repairs, so it's not a given that this works!

But as soon as that assumption goes out the window - and if it's just you going into the garden to check on some weeds where the wifi doesn't reach - the task suddenly becomes so, so much harder:

- the "easiest" case is an ISP that hands your wifi router a globally routed IPv4 address, allows UPnP to be configured, and the user has UPnP configured. All that the camera has to do here is to request a port opening and that's it. Still, you as manufacturer need a server to store a mapping between user, IP address and port. (And you need to hope that the user's mobile device or their ISP doesn't have a nasty firewall blocking non-standard ports)

- No UPnP? Now you as manufacturer either need some STUN/TURN server or explain to the user how to manually enable port forwarding.

- Worst case: the user's ISP either has IPv6 only, CGNAT, double/triple/... NAT or similar shit in play because they don't have enough IP addresses to supply to their customer base. That's pretty much impossible even with STUN/TURN, sooo many ways for things to go wrong along the path.

- even a theoretical fully IPv6 world where everyone has globally routed IPv6 addresses everywhere and all ISPs have their routing working still wouldn't solve the issue... because consumer ISP routers enable a firewall on IPv6 to avoid stuff like "online game cheaters 0wning their opponents running an outdated version of their game".

The sad reality is, running a cloud service is the only actually pain-free way for any given smart Thing to work as the customer expects it.

And on top of that, a NAS capable of storing video costs about 300-ish bucks with a HDD capable of running 24/7 and eats about 10-ish watts of electricity, which is quite the cost factor on its own.

Sure, the "nerd population" here on HN can rig something up that works in a matter of a few days, including some rudimentary AI to spot if the baby managed to escape the crib. But the 99% of people out there will crash at the "please open your router's config page to allow UDP port 65535 passthrough" step, if only because they forgot the password that they set five years ago.
by afro88 | 2025-10-27 08:50:34+00:00
> Self-hosted video isn't that hard but no one makes a baby-monitor centric solution

It sounds like they're not hosting it though. They are processing it, and storing it temporarily while it's queued.

A fully self hosted AI powered baby monitor that accurately detects sleep states and danger situations would be incredibly expensive today. Maybe not in a few years though.
by gspr | 2025-10-27 08:50:47+00:00
> Well, measles, in a rich country with good healthcare and healthy children is mostly (mostly!) an inconvenience.

… and to hell with the unhealthy children? This is what I mean. Incredibly selfish thinking.

> Wikipedia quotes death rate of 0.2% in the US in the period 1985-1992.

Oh, so just thousands and thousands of dead children then. "Just an inconvenience". Your comment is disgusting!
by john_minsk | 2025-10-27 08:51:05+00:00
Well, you can explain to a plant in your room that E=mc2 in a couple of sentences, a plant can't explain to you how it feels the world.

If cows were eating grass and conceptualising what is infinity, and what is her role in the universe, and how she was born, and what would happen after she is dead... we would see a lot of jumpy cows out there.
by jll29 | 2025-10-27 08:52:27+00:00
I use questions around this pipeline in interviews. As soon as people say they'd write a Python program to sort a file, they get rejected.

Arguably, this will result in a slower result in most cases, but the reason for the rejection is wasting developer time (not to mention time to test for correctness) to re-develop something that is already available in the OS.
by mrtksn | 2025-10-27 08:52:38+00:00
We used to share passwords but as the streaming services begin the crackdown started cancelling the services and just use pirated movie watching sites.

Funny enough, our TCL Smart TV has an UI that shows trending movies etc. and when you click on these it just does a web search with the relevant words to find pirate websites. The browser is also able to detect video streams and asks you if you want to just play the video in the video player. The overall experience is not too far away from the legal streaming platforms.

Most new films are a trash anyway, so I don't think I feel moral dilemma either. In fact, if the streaming services go away this will be a net win for the movie industry.
Losing Trust in the Internet
by vlan121 | 2025-10-27 08:53:38+00:00
The rise of AI websites and generated content pushes me rn to a point where I am not certain that a given fact is a fact itself and AI did not made it up. It becomes more and more indistinguishable and less trustworthy.

How can I be sure that things haven't been made up? The only thing left to do is consult books from before the AI boom. How do you do it?
by 10weirdfishes | 2025-10-27 08:54:48+00:00
There are very significant differences between biological and artificial neural networks. Artificial neural networks are mathematical attempts to replicating how the brain’s neurons work. They are not and were never meant to be 1 to 1 replications. There is the difference in scale, where the “parameters” of human neural networks absolutely dwarf the current LLMs we have today. There is also the fact that they are materially different. The underlying biology and cell structure affects biological neural networks in ways that artificial neural networks just simply dont have access to.

The idea of awareness being propagations through the NN is an interesting concept though. I wonder if this idea be proven through monitoring the electrical signals within the brain.
by mnmalst | 2025-10-27 08:54:53+00:00
It kinda IS a working solution tho. recall-for-linux.exe is just a bash script that does this in a loop. :)

grim - | tee ~/.recall/$(date "+%Y-%m-%dT%H-%M-%S").png | tesseract stdin stdout 2>/dev/null >~/.recall/$(date "+%Y-%m-%dT%H-%M-%S").log
by diogolsq | 2025-10-27 08:55:47+00:00
Not that I like Goodreads — I don’t even have an account — but I always check the rating. Anything above 4 out of 5 with thousands of reviews is usually worth reading.

It’s very easy to filter out the weeds: read the classics and any book that breaks through the noise with consistently high reviews. We don’t need to waste time on low-quality literature or AI-generated slop.
by gethly | 2025-10-27 08:56:09+00:00
I made my own S3 as well. I used two S3-compatible services before but there was always some issue(first one failed to upload certain file, no matter what and support was unhelpful; second one did not migrate with file metadata properly so i knew this would be ongoing problem). In the end, it is just a dumb file store, nothing else. All you need to do is to write a basic HTTPS API layer and some logic to handle database for the file metadata and possibly location. That is about it. Takes a few days with testing.

But then you also have to think about file uploads and file downloads. You cannot have a single server fulfilling all the roles, otherwise you have a bottleneck.

So this file storage became a private backend service that end-users never access directly. I have added upload services, whose sole purpose is to allow users to upload files and only then upload them to this central file store, essentially creating a distributed file upload queue(there is also a bit more logic regarding file id creation and validation).

Secondly, own CDN was needed for downloads. But only because I use custom access handling and could not have used any of the commercial services(though they do support access via tokens, it just was not working for me). This was tricky because I wanted for the nodes to distribute files between themselves and not always fetch them from the origin to avoid network costs on the origin server. So they had to find each other, talk to each other and know who has which file.

In short, rolling your own is not as hard as it might seem and should be preferable. Maybe to save time, use cloud at the beginning, but once you are up and running and your business idea is validated by having customer, immediately move to your own infra in order to avoid astronomical costs of cloud services.

btw, i also do video processing like mentioned in the blog post :)
by arkey | 2025-10-27 08:56:23+00:00
This is like saying food is good.

It is. But then you have ultra-processed food, junk food, food you might be allergic to...

Some medicines are good, some medicines are the lesser bad, some medicines will kill you if you take them when not needed, some medicines you might be allergic too, and some medicines are just a patch to have you feel well and keep you going.
by brazukadev | 2025-10-27 08:56:40+00:00
I guess you all were talking all weekend about this post in your own little group of harassers, right? Maybe even some theories about me, for standing against this mob attack?

Seriously, you guys need to move on. This is next level harassment. It's insane that you guys think it's ok to astroturf here. This forum wasn't created yesterday.
by Gasp0de | 2025-10-27 08:56:51+00:00
Exactly, my first thought was "Why in earth would anyone think that S3 was the right service to store millions of tiny ephemeral files?" and now it seems they have invented their own in-memory store instead of just using something like Redis. I also wonder what happens if their DIY thingy crashes, are the videos lost? Why not send to Kinesis or SQS in the first place?
by user2722 | 2025-10-27 08:57:08+00:00
I know this is satire, but there is actually one and one you actually control. May be useful to remember who said what and where. It can be useful. Just not the way a megacorp implements it.

Here it is [unaffiliated, untested by me, unvetted]: https://github.com/openrecall/openrecall
by cat-whisperer | 2025-10-27 08:57:33+00:00
Stackful coroutines make sense when you have the RAM for it.

I've been using Zig for embedded (ARM Cortex-M4, 256KB RAM) mainly for memory safety with C interop. The explicitness around calling conventions catches ABI mismatches at compile-time instead of runtime crashes.

I actually prefer colored async (like Rust) over this approach. The "illusion of synchronous code" feels magical, but magic becomes a gotcha in larger codebases when you can't tell what's blocking and what isn't.
by kelas | 2025-10-27 08:59:51+00:00
oh no, not really.

this is not writing in assembly, and definitely not in bytecode.

but if you are indeed an elite intel(R) assembly coder, and old enough for eax and rax to have taken too much toll on you, or your time away from your family, and of your career as a computer programmer in general - you should probably consider a more modern, more simple and elegant isa, which is now omnipresent, royalty-free, has a huge encoding margin for custom extenstions, and spares you from the childhood trauma of 16 GPRs. it is called riscv.

k family languages isn't asm. it doesn't expect you to hardly ever need anything other than x,y,z in terms of function arguments. this is why they are so conveniently implicitly auto-declared for you in your function - just reference them, done.

it is useful, man. it works.
by geocar | 2025-10-27 09:00:41+00:00
> I would actually be keen for something similar that is both open-source and totally local

Did you actually look at it? Or just look at it? Because it is actually open-source and totally local.

# ... nonsense while true; do grim - | tee ~/.recall/$(date "+%Y-%m-%dT%H-%M-%S").png | tesseract stdin stdout 2>/dev/null >~/.recall/$(date "+%Y-%m-%dT%H-%M-%S").log # ... other nonsense done

I think all the nonsense/emojis are supposed to be funny, but that actually does the thing. Replace "tesseract" with whatever local AI you want; replace grim with some other screenshotting tool if you like.

I've done something like this for over a decade (although I have a diff that deletes duplicate frames) and I like to partition by date (do that "T" becomes a "/") because that makes other things easier, but my script isn't much more complicated than that.
by jimnotgym | 2025-10-27 09:01:26+00:00
>Is the furniture I sit in every day made with harmful substances?

If I made you a chair out of wood and finished it with pure linseed oil, do you promise not to complain that it needs repainting regularly? If I make you a cushion out of horse hair and canvas, do you promise not to complain that it is uncomfortable and not flame retardant? Will you be ok that you can't wipe off stains like you could with your old one?

The convenience of modern materials is what drives this, as much as the profit motive
by Cthulhu_ | 2025-10-27 09:01:51+00:00
But also education; one major shift is that measures that were taken in the past (e.g. vaccination campaigns) were so successful that a generation or three of people have grown up without any of the vaccinated diseases, so now they're like "...why do we even need these?". Add some scaremongering of chemicals and demonizing of autism aaand there's epidemics of measles again.
by alokk001 | 2025-10-27 09:02:05+00:00
In today’s microservices-driven architectures, unit tests alone aren’t enough. This guide dives into integration testing, showing how to validate service-to-service communication, shared data flows, and real-world failure scenarios. We walk through practical strategies, hint at tooling (with open-source emphasis), and highlight how you can build resilient test suites in CI/CD pipelines.
by boomlinde | 2025-10-27 09:03:12+00:00
One thing I would consider "unclean" about the zio approach (and e.g. libtask) is that you pass it an arbitrary expected stack size (or, as in the example, assume the default) and practically just kind of hope it's big enough not to blow up and small enough to be able to spawn as many tasks as you need. Meanwhile, how much stack actually ends up being needed by the function is a platform specific implementation detail and hard to know.

This is a gotcha of using stack allocation in general, but exacerbated in this case by the fact that you have an incentive to keep the stacks as small as possible when you want many concurrent tasks. So you either end up solving the puzzle of how big exactly the stack needs to be, you undershoot and overflow with possibly disastrous effects (especially if your stack happens to overflow into memory that doesn't cause an access violation) or you overshoot and waste memory. Better yet, you may have calculated and optimized your stack size for your platform and then the code ends up doing UB on a different platform with fewer registers, bigger `c_long`s or different alignment constraints.

If something like https://github.com/ziglang/zig/issues/157 actually gets implemented I will be happier about this approach.
by twelvedogs | 2025-10-27 09:03:25+00:00
i kinda see where he's coming from, wear and tear on joints and such

however any kind of "pill" that would have anywhere near the same health effects as exercise is decades away at least.

hips and knees acls tend to be a failure point but the non-existance of said "pill" is probably a fairly big tick for the excercise side, and our tech for repairing those failure points continues to progress at speed
by Cthulhu_ | 2025-10-27 09:03:33+00:00
Counterpoint: yeah we do, we're already doing it.

Of course, not everything has to be tested every time, that's where certifications come in - get your stuff tested when you first want to import something, get a certificate, don't need to get it tested again every time. But if you fail a spot check you lose the certificate and import righs.
by tgv | 2025-10-27 09:03:46+00:00
> For a compute-intense task

The browser often runs on an immensely powerful computer. It's a waste to use that power only for a dumb terminal. As a matter of fact, my laptop is 6 years old by now, and considerably faster than the VPS on which our backend runs.

I let the browser do things such as data summarizing/charting, and image convolution (in Javascript!). I'm also considering harnassing it for video pre-processing.
by charcircuit | 2025-10-27 09:03:51+00:00
>how to do SQL injection, how to use rainbow tables to figure out hashes, how to use steganography to hide data in images, and more.

I feel like there are more practical and timeless topics that will still be relevant in 2040. Frameworks (abstraction) have largely solved SQL injection and bad cryptography.

Personally I would avoid a cybersecurity focused corriculum and just focus on regular software engineering. Being able to think like who you are attacking and knowing the common pitfalls is most of the battle.
by netsharc | 2025-10-27 09:04:03+00:00
I'm guessing the companies can make things go away by donating to someone with (R) suffixed to their name. Ha, someone's a magician, they can turn a democracy to a banana republic very quickly.

Is it (R) or (M) for MAGA.

I used to joke "Hello to the NSA analyst reading this!" when talking about "sensitive stuff" in private messages, but I guess that needs to be updated to "Hello to the LLM!"
by cat-whisperer | 2025-10-27 09:04:21+00:00
Started modding Android ROMs at 13. That age is perfect; old enough to understand consequences, young enough to not care about breaking things.

Hardware hacking tools have gotten more accessible since then. The Flipper Zero makes this easier now; 256KB RAM, open firmware, $200. Compare that to needing a full PC setup in the 2000s. Lower barrier, same curiosity-driven learning.

Guided challenges vs pure exploration; both work. The structure gets more people started. The ones who stick around will break out of the sandbox anyway.
by port3000 | 2025-10-27 09:04:39+00:00
I'm also inclined to overthink this stuff, but please try not to worry so much. You were outdoors, wearing a mask, for one day. This is very different from occupational exposure with no protection over decades.

There are a thousand things that can increase your risk of cancer by 0.001%. Heart disease kills >20X more people than asbestos related illnesses in the US. Focus on being healthy and happy.
by atoav | 2025-10-27 09:05:22+00:00
A bit over 70% of the world population has received covid vaccines as of April 2024. Over 13 billion doses. With the law of big numbers we can assume that nearly all of the worst things that could have happend with the vaccine have been already seen and widely known. The illness itself killed between 7 and 18 million people worldwide. For the vaccines we don't know exactly because it was so rare and that tells you something. Even if we assume lying medical professionals: Everybody knows somebody whose relative died from covid. Nearly nobody knows somebody whose relative died from the vaccine. I don't really see how this is tribal. Maybe it has been tribal to some people at some point, but the years have passed and we have better data now.

Given the biological mechanism of these vaccines, the risks are well-known at this point. The mRNA does not integrate into DNA and degrades within hours to days. We were extremely lucky we had years of science on the mechanisms when the pandemic broke out (+won the scientist who did it a Nobel price). The major serious (but rare) side effects are (1) myocarditis in young men with mRNA vaccines and (2) thrombosis with adenovirus-based vaccines. Both were either known already or identified quickly because of the mentioned huge number of doses given and the careful monitoring then. These risks are measurable, have clear incidence rates, and are lower than the same complications from infection (otherwise millions would have had them).

There is no plausible mechanism for any delayed catastrophic effects years down the line without any signal in the first billions of doses, neither for this vaccine nor for others. At this stage the vaccines are not exactly what I would call "experimental" anymore. They one of the most heavily observed medical interventions in history.

So if you believe there ought to be something wrong with the numbers (incompetence/grand conspiracy) or some weird thing is gonna happens with a delay of multiple years (black swan mechanism), the burden of proof IMO on your side.

I am not from the US, so I might not be up to speed with the tribal pandemic conflicts emerging in your culture. So you may call me tribal, but I prefer to mitigate real risks for my family and me, rather than hypothetical ones proposed by people who don't go into detail beyond a "who knows".
by jagrsw | 2025-10-27 09:05:34+00:00
> baby doesn't know anything about the world

That's wrong. It knows how to process and signal low carbohydrate levels in the blood, and it knows how to react to a perceived threat (the Moro reflex).

It knows how to follow solid objects with its eyes (when its visual system adapts) - it knows that certain visual stimuli correspond to physical systems.

Could it be that your concept of "know" is defined as common sense "produces output in English/German/etc"?
by minitech | 2025-10-27 09:05:44+00:00
> Even if that were the case, sorting a list that's already sorted is basically free. Any reasonable sort method (like the builtin one in a JS runtime) will check for that before doing anything to the list.

That’s n−1 pairs of elements that have to be compared with a a JS callback each time. (JavaScript’s combined language misfeatures that allow the array to be modified in many odd/indirect ways while it’s being sorted might add unusually high overhead to all sorting too – I’m not sure how much of a fast path there is.) Anyway, the code in question does include functionality to add new elements to the priority queue while it’s being processed.

> The overhead of creating a heap structure out of JS objects will dwarf any possible benefit of avoiding a couple of calls to Array.sort().

Not true even in general and with an unoptimized heap implementation, and in this case, there’s an array of JS objects involved either way. In fact, there’s no number of elements small enough for sorting to be faster in this benchmark in my environment (I have no idea whether it reflects realistic conditions in VS Code, but it addresses the point): https://gist.github.com/minitech/7ff89dbf0c6394ce4861903a232...
by philipp-gayret | 2025-10-27 09:05:47+00:00
What is "very very quickly"?

From Wikipedia:

> The reported half-life of glyphosate in soil varies from two to 197 days with a typical field half-life of 47 days being suggested.[56] Soil and climate conditions affect glyphosate's persistence in soil. The median half-life of glyphosate in water varies from a few days to 91 days.[56] At a site in Texas, half-life was as little as three days. A site in Iowa had a half-life of 141.9 days.[94] The glyphosate metabolite AMPA has been found in Swedish forest soils up to two years after a glyphosate application.

It has a lower half-life in water, and a lower half-life when it's warmer. I store my oats both dry and cold.

As for cancer, I don't know - but it certainly is giving everyone parkinsons.
by kace91 | 2025-10-27 09:05:50+00:00
“El hambre agudiza el ingenio”, we say in Spanish. Hunger sharpens the mind.

Growing up with fewer resources than others paradoxically leads to better outcomes sometimes, since you’re conscious of the barriers around you and that motivates you to overcome them.

If I had grown up with the latest iPhone I would never have cared about rooting and custom ROMs, for example.