HNHacker News
TopNewBestAskShowJobs

kees99

1,024 karma · joined July 3, 2016

submissionscomments
kees99··on The Dangers of SSL Certificates
Exactly. It's not like backup certificate have validity starting at a future date.
kees99··on 250MWh 'Sand Battery' to start construction in Finland
> heat pumps themselves are much more efficient.

For electricity-to-heat conversion, heap pumps are indeed much more efficient relative to resistive heating, yes. About 4 times more efficient.

In absolute terms, though - that is still only 50% of "Carnot cycle" efficiency.

https://en.wikipedia.org/wiki/Coefficient_of_performance

Similarly, heat-to-electricity conversion is about 50% efficient in best case:

https://en.wikipedia.org/wiki/Thermal_efficiency

So, in your scenario (heat->electricity conversion, then transmission, then electricity->heat conversion), overall efficiency is going to be 50% * 50% = 25%, assuming no transmission losses and state-of-art conversion on both ends.

25% efficiency (a.k.a. 75% losses) is pretty generous budget to work with. I guess one can cover a small town or a city's district with heat pipes and come on top in terms of efficiency.

kees99··on 250MWh 'Sand Battery' to start construction in Finland
Larger storage structures are easier to (thermally) insulate. Because geometry.

But going with larger structures probably means aggregation (fewer of them are built, and further apart). Assuming homes to be heated are staying where they are, that requires longer pipes. Which are harder to insulate. Because geometry.

kees99··on Migrating the main Zig repository from GitHub to Codeberg
> bloated, buggy JavaScript framework

Isn't that the unfortunate status quo? At least hard requirement for JS, that is.

Google's homepage started requiring this recently. Linux kernel's git, openwrt, esp32.com, and many many others now require it too, via dreaded "Making sure you're not a bot" thing:

https://news.ycombinator.com/item?id=44962529

If anything, github is (thankfully) behind the curve here - at least some basics do work without JS.

kees99··on Google tells employees it must double capacity every 6 months to meet AI demand
> So now I am wondering what will be available once the AI investment implodes.

Memory/RAM. See also:

https://news.ycombinator.com/item?id=45934619

kees99··on Arduino Terms of Service and Privacy Policy update: setting the record straight
Also, didn't early Arduino heavily borrow from another open-source project, "Processing"?

Processing was/is graphics-centered, so that's where Arduino's term "sketch" come from, if you ever wondered.

https://en.wikipedia.org/wiki/File:Processing_screen_shot.pn...

https://en.wikipedia.org/wiki/File:Arduino_IDE_-_Blink.png

kees99··on Samsung's 60% DRAM price hike signals a new phase of global memory tightening
> produce more mature technology ... DDR3/4

...except current peak in demand is mostly driven by build-out of AI capacity.

Both inference and training workloads are often bottlenecked on RAM speed, and trying to shoehorn older/slower memory tech there would require non-trivial amount of R&D to go into widening memory bus on CPU/GPU/NPUs, which is unlikely to happen - those are in very high demand already.

kees99··on Show HN: 32V TENS device from built from scratch under $100
Most cell OEMs will specify safe discharge (low threshold) voltage in a datasheet. 2.75V is quite common [1].

That being said, system designer might choose higher cut-off point, since:

1) charge/discharge curve is S-shaped. There is very little energy in that last few millivolts;

2) battery (protection) circuit, and/or battery itself probably have some small leakage current. However minuscule, over months/years on a shelf, even some nano-amps of leakage will add up. If you want device to survive that, you have to factor this in, so that rest cell voltage still stays above safety threshold even after storage.

Also, "Li-ion" is quite a wide category. Don't use arbitrary voltage as a fast rule. Look up datasheet, or characterize actual cell you use. For some[2], disconnecting at 3.6V would mean leaving 50% of capacity unused. For other[3], that would be a reasonable, if somewhat conservative threshold.

[1] https://docs.rs-online.com/080b/A700000007848112.pdf

[2] https://www.murata.com/-/media/webrenewal/products/batteries...

[3] https://ntrs.nasa.gov/api/citations/20140005830/downloads/20... (page 4)

kees99··on DNS Provider Quad9 Sees Piracy Blocking Orders as "Existential Threat"
> eBPF & XDP would be much faster than netfilter.

Netfilter is plenty fast, when configured sensibly. You'd probably want script to populate a "hash:net" ipset instead, and have just one iptables rule:

  -A INPUT \
    -m set --match-set geoblock \
    -j DROP
(where "geoblock" is aforementioned set)
kees99··on YouTube Removes Windows 11 Bypass Tutorials, Claims 'Risk of Physical Harm'
> 2$ and 15$

That estimate is way to high. More like 90 eurocents (~$1) for the whole thing, assembled. That's retail price:

https://www.action.com/de-de/search/?q=lesebrillen

kees99··on Notes by djb on using Fil-C
My impression is - rust fares a bit better on RAM footprint, and about as badly on disk binary size. It's darn hard to compare apples-to-apples, though - given it's a different language, so everything is a rewrite. One example:

Ubuntu 25.10's rust "coreutils" multicall binary: 10828088 bytes on disk, 7396 KB in RAM while doing "sleep".

Alpine 3.22's GNU "coreutils" multicall binary: 1057280 bytes on disk, 2320 KB in RAM while doing "sleep".

kees99··on Notes by djb on using Fil-C
> disadvantages are speed, and garbage collection.

And size. About 10x increase both on disk and in memory

  $  stat -c '%s %n' {/opt/fil,}/bin/bash
  15299472 /opt/fil/bin/bash
   1446024 /bin/bash

  $ ps -eo rss,cmd | grep /bash
  34772 /opt/fil/bin/bash
   4256 /bin/bash
kees99··on Hard Rust requirements from May onward
> Please show me a project where you believe you "effectively require containers" just to run the code

I guess GP meant "containers" broadly, including things like pipx, venv, or uv. Those are, effectively, required since PEP 668:

https://stackoverflow.com/questions/75608323/how-do-i-solve-...

kees99··on Raspberry Pi Pico Bit-Bangs 100 Mbit/S Ethernet
> 1Gbit uses easily reachable 125MHz clock

RGMII uses 4-bit bus, so that would be 250M state transitions per second.

Clock signal is 125MHz, yes. But data is sent/sampled at both edges (DDR), so PIO state machine has to be clocked at 250MHz.

That's still reachable with mild overclocking, I guess?

kees99··on Diamond Thermal Conductivity: A New Era in Chip Cooling
Would that >1000°C reach the surface though?

There are some heady boundary-layer effects and temperature/temp-conductivity gradient physics involved here. For simplicity sake, consider a plastic [1] bag full to the brim with water, held over open flame. Will bag melt (oxidize, erode)?

[1] polyethylene melts around 120-ish °C and ignites around 220-350 °C (sources vary)

kees99··on Diamond Thermal Conductivity: A New Era in Chip Cooling
Why? Diamond has very low thermal expansion, so no risk of stress/embrittlement/cracks from uneven heating.

Or you mean it'll catch fire? Also not a concern. That is supposed to happen at a temperature well above anything useful for cooking.

kees99··on Debian Technical Committee overrides systemd change
Yep. And for good measure, first open with O_CREAT as tempfile with random name, then rename() it to predictable "foo.lock".
kees99··on Debian Technical Committee overrides systemd change
Genuinely curious - why would world-writeable directory be bad for security? Assuming of course, it's on a separate filesystem mounted with sensible options. Here's what I see from "grep /run/lock /proc/mounts" in sid:

  rw,nosuid,nodev,noexec,size=5120k
kees99··on Debian Technical Committee overrides systemd change
I use GNU screen for that. Looking at cu, it looks to be just as tiny and has ssh-like tilda-escapes, including "~." to disconnect. Nice, gotta try it out, thanks!
kees99··on Beliefs that are true for regular software but false when applied to AI
Having too much parameters in your model, so that all of sample/training data is preserved perfectly, is usually considered a bad thing (overfitting).

But you're right - if dataset is exhaustive and finite, and model is large enough to preserve it perfectly - such overfitted model would work just fine, even if it's unlikely to be a particularly efficient way to build it.

kees99··on Migrating from AWS to Hetzner
Did you "preheat" during those tests? It is very common for cloud instances to have "burstable" vCPUs. That is - after boot (or long idle), you get decent performance for first few minutes, then performance gradually tanks to a mere fraction of the initial burst.
kees99··on FSF announces Librephone project
...and packaging my app as a PWA is going to help with cantankerous bank/ditigal-id apps, how, exactly?
kees99··on DDoS Botnet Aisuru Blankets US ISPs in Record DDoS
Correct.

Also, most 1Gbit/s and faster routers have hardware-accelerated packet forwarding, aka "flow offloading", aka "hardware NAT", where forwarded packets mostly don't touch software at all.

Some routers even have internal "CPU" port of packet core with significantly slower line rate than that of external ports'. So traffic that terminates/originates at the router is necessarily quite a bit slower, regardless of possibly extra-beefy processor, and efficient software. Not really a problem since that traffic would normally be limited to UI, software updates, ARP/NDP/DHCP, and occasional first packet of a forwarded network connection.

kees99··on ESP32 and Termux
It is possible to write native code for Android using Native Development Kit. Typical NDK use would be to develop a library that is then called into by java code. But one can make whole app with it, 100% java-free:

https://github.com/cnlohr/rawdrawandroid

kees99··on My first contribution to Linux
That's the spirit! :-)

By the way, delving into obscure and hardware-specific kernel code, sometimes yields quite interesting generally-applicable problems. For example, @dougg3 did an (excellent!) series of articles about his work on bringing mainline kernel support to "Chumby 8", a somewhat obscure, but historically significant piece of hardware, and as a side-quest he stumbled into this:

https://www.downtowndougbrown.com/2024/04/why-is-my-cpu-usag...

...which is applicable to quite a few other machines.

kees99··on Self-hosting email in 2025 is easy actually (apart from M365)
O365 and gmail should be honorably mentioned as places that will deliver both inbound and outbound to/from an IPv6-only MX.

A lot other servers will not play ball here. Your self-hosted mail server, if it lacks IPv4, will not get inbound from mailgun, mailjet, github; neither will it be able to send outbound to cisco/iphmx, as well as about 90% of small servers from what I see in my logs.

kees99··on GNU Midnight Commander
> Ctrl+O in MC will switch to a normal prompt

Better yet! (one-line) shell prompt is always available and has some nifty integrations via <Ctrl+X>. For example, one has a bunch of files visually tagged (selected) on current panel, and wants to tar them up as "/tmp/foo.tgz". Well...

   tar czf /tmp/foo.tgz <Ctrl+X><T>
kees99··on Shai-Hulud malware attack: Tinycolor and over 40 NPM packages compromised
I agree other repos deserve a good look for potential mitigations as well (PyPI too, has a history of publishing malicious packages).

But don't brush off "special status" of NPM here. It is unique in that JS being language of both front-end and back-end, it is much easier for the crooks to sneak in malware that will end up running in visitor's browser and affect them directly. And that makes it a uniquely more attractive target.

kees99··on AMD Turin PSP binaries analysis from open-source firmware perspective
It's all about incentives. My laptop spends good five seconds after each power-on (or resume from suspend-to-disk), showing me giant vendor's logo and doing nothing else.

Surely, open firmware could skip that and boot faster - if vendor would allow an escape hatch from the "secure boot" hell. But why would they expend effort on something 99.9% of users don't care about, and give up free ads in the process, too?

kees99··on Half an year on Alpine: just musl aside
Binary executable format is the same. But libc and dl (dynamic loader) libraries are different. You can install musl-specific versions of both on Debian, for example, like so:

  apt install musl
Binaries that don't use libraries, i.e. complied with "-static" option on GNU/Linux run just fine on musl/Linux (and vice versa).
← PreviousPage 3 of 9Next →