HNHacker News
TopNewBestAskShowJobs

vanderZwan

19,330 karma · joined February 4, 2013

submissionscomments
vanderZwan··on Nebula Sans
I suspect that 50% at no risk of demonetization is quite a bit more than 55% with it for quite a significant chunk of those content creators.
vanderZwan··on Stalking the Wily Hacker: 40 years later – Cliff Stoll [video]
You know, it just occured to me that technically we're all inside all of his Klein bottles. Or all Klein bottles, really.
vanderZwan··on Apple introduces M6 and M5 Ultra
I dated someone studying at a conservatory (the music kind) around that time. IIRC the Zune was quite popular with the students - even if most of them had an iMac - because it had one of the best microphones for recording live performances in an affordable package.
vanderZwan··on New EU-wide product repair rules come into force
Not everything has to be a business. Our local library has "repair café Sundays", and most of the people involved in it are volunteers. There are some "pensionados" among them (and they are cherished for their institutional knowledge), but they are definitely not the majority. There is a strong community of interested tech nerds that like to help each other out and learn how to fix things themselves, and who also want to learn from the previous generation.
vanderZwan··on OpenLogi
> I had a high-end webcam that flickered. There should be switch in the software to switch from 50hz to 60hz that'd fix it but it was nowhere to be found.

Similar issue, although I'm not sure if it's the Logitech webcam or just how webcams are automatically configured on Linux these days in general: if I use a really bright LED lamp, the automatic exposure time goes down to the point that it doesn't matter if the webcam is set to 50hz or 60hz, it's going to catch flickering from other subtle frequencies affecting light output. I've also had situations where I wanted to use it to film a white piece of paper that I'm writing on, but it automatically adjusts exposure to make it gray instead.

It took me forever to find something with a straightforward GUI that lets me manually override this behavior on Linux. I ended up settling for cameractrls.

https://github.com/soyersoyer/cameractrls

vanderZwan··on Supersonic Trebuchet [video]
(too late to edit my comment, but I obviously meant increasing the spool size near the end, not reducing)
vanderZwan··on Supersonic Trebuchet [video]
I think the idea is that at the end the sling starts to unwind too, increasing the effective arm-length (that non-linearity is one of the reasons trebuchets are so efficient to begin with). As a result it's possible that decreasing the spool to near zero is like putting the gears of your car too high. Reducing the spool size ensures there's enough torque left to put more power into the final swing.
vanderZwan··on Meta's blockbuster trial draws parallels to big tobacco
I've never seen a NAXALT fallacy used for the concept of engagement metrics before.

It's not relevant to this discussion that in certain contexts, useful engagement metrics exist that supposedly aren't toxic, because it doesnt apply to the current context. We're clearly talking about the larger systemic issue of companies maximizing all engagement at all costs, and the consequences of such a policy.

vanderZwan··on Olo (Color)
Are you sure that wasn't referencing "grue" from this philosophical thought experiment? https://en.wikipedia.org/wiki/New_riddle_of_induction
vanderZwan··on eigendrum
Perhaps the "hits like an x on a y" family is larger than any of us thought?
vanderZwan··on eigendrum
Could be a regional thing. I've heard the pliers-on-a-pig version too, might be more common.
vanderZwan··on Show HN: Eigendrum - Draw any shape and hear what it sounds like as a drum
So in Dutch one expression for "that makes no sense" is "dat slaat nergens op", which literally translates to "that doesn't hit (slap, beat) anything".

A ruder variation of that is "dat slaat als een … op een drumstel", or "that hits like a … on a drum set".

For some reason I felt like sharing this trivia.

vanderZwan··on We're not done with point clouds
From what I've seen from the outside looking in, I feel like game development has it's own variation of Wirth's Law where level designers push game engines to their limit faster than the people making the engines can optimize them.
vanderZwan··on We're not done with point clouds
Especially your soul, I bet.
vanderZwan··on Ordinary Abundance
> In Jenner’s century it killed an estimated four hundred thousand Europeans a year.

I don't think that number is correct…

https://ourworldindata.org/smallpox#all-charts

vanderZwan··on We're not done with point clouds
I think they meant it in the sense of coming back to the topic yet again after talking about it fairly exhaustively in an earlier blog post.
vanderZwan··on Tail-call optimization in C is relatively recent (2025)
Thanks to both of you for explaining, I thought Java and JavaScript would have similar behavior here and did not know .intern() had to be manually invoked in the former.

Just to clarify where I started from: JS has the notion of String Primitives and String Objects[0], and concatenating two string primitives results in another string primitive. It's as if it always calls .intern(). Except, since from a user perspective there is no option to not intern it, JS implementations are free to do optimizations that don't seem available to Java. Like avoiding heap allocation for provably short-lived strings in the first place, and not interning them if they are never compared (I don't actually know if it does those optimizations, but I imagine it shouldn't be too hard to prove these things with many short functions).

[0] https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...

vanderZwan··on Tail-call optimization in C is relatively recent (2025)
> requiring more instructions for string access

Wait, why would interned immutable strings require more instructions when doing regular string access? You can still point to the start of a zero-terminated C-string, it just requires storing extra metadata like lenght and a string hash somewhere. Which can be done at the negative indices of said pointer.

Or do you refer to the extra rolling-hash pass needed when concatenating two strings to verify if it would result in an already-interned one? Because yes, that's one extra rolling hast pass over the appended string the first time a string is constructed, but after that doing so again likely saves memory and construction time, because any concatenation that would result in an already interned string would avoid actual memory allocation and copying of the string's characters.

Plus string comparisons become cheap O(1) pointer comparisons this way, which is really nice in many use-cases.

And that's not even considering more advanced tricks like interning short strings in the 64-bit word of the pointer to the string itself, relying on the fact that modern memory allocators never return an address with the lsb set, so it can be used to flag it as such[0].

[0] https://squoze.org/

vanderZwan··on Parametron: 50s Japanese computer that uses neither transistors nor vacuum tubes
I don't know much about other quantum computers, so maybe this is a common feature of them, but isn't another interesting thing about this design that it would do reversible computing, making it potentially very low in energy consumption? Or is that what "adiabatic" is a shorthand for in this context?
vanderZwan··on Squeak 6.1
Bootstrapping a Forth in assembly is probably a better option, two birds with one stone.
vanderZwan··on Squeak 6.1
> If you're an unc with a background in Ruby or that era of webdev

Millennials catching strays I see.

vanderZwan··on Squeak 6.1
> Btw, almost all of Javascript's good parts come from Smalltalk.

That's E and Self erasure.

vanderZwan··on Mars Bar from 1991 found – and it's 20g bigger than today's
As your link points out, in Dutch this is also known as "komkommertijd" ("cucumber time"), and in German as "Sauregurkenzeit", ("pickled cucumber time").

The funny thing is that apparently "cucumber time" also existed as an expression in English for a while in the 18th century. One suggested etymological origin for the Dutch "komkommertijd" was as a loan work from the English around the same period, except ttat it survived after the English stopped using it. According to some sources cited on the Dutch wiki page the expression was mainly used by German tailors in London.

[0] https://nl.wikipedia.org/wiki/Komkommertijd

vanderZwan··on Taxi drivers rarely die of Alzheimer's
I do wonder if you can truly control for it in this case, or if doing so doesn't in and of itself introduce a survivar bias that masks a reversal of causality. That is: could the taxi drivers who are already predisposed to have a lower chance of developing Alzheimer for other reasons also be the ones who are more likely to live to be older than the average taxi driver?
vanderZwan··on Assembly Hall of Shame
Also came up with the original ..cantor.dust.. binary visualization tool, which is a tool I never used directly but Chris' presentation of it in 2012 is still one of the coolest talks I've ever seen.

[0] https://github.com/Battelle/cantordust

[1] https://www.youtube.com/watch?v=4bM3Gut1hIk

vanderZwan··on Painting with Gaussians
That's because Gaussian splats are ellipses without any texture of their own (more or less), missing any detail that an actual brush stroke would have. Because the ellipses are so elongated in the finer details it feels like layered brush-strokes, but in the coarse background the "flatness" of the splats dominates. Compare to my stippling notebook[0], an even more simplified image filter (it's "just" tiled circles) with a similar "problem". Turn on the fake vignetting or tilt-shifting, and really turn it up for a similar effect.

If the goal is to create a paintlery illusion then there are undoubtedly ways to mitigate this lack of texture though.

[0] https://observablehq.com/@jobleonard/a-fast-colored-stipple-...

vanderZwan··on Painting with Gaussians
I am very much looking forward to see the results of trying it out, regardless of whether it works in practice! (negative results are also educational after all)

And thank you for looking into the accessibility issue regarding links!

vanderZwan··on Painting with Gaussians
> Each layer is more translucent and specific than the one below it, augmenting the existing structure that's already been built up.

So interestingly, one distinguishing difference between oil paintings and acrylic paintings is that the former has more translucency, whereas the latter can be more easily layered on in a way that covers up the lower layers. This is what, according to one of my mentors in art school who was a painter, allows oil paintings to copy the feeling of real skin so well: it allows a painter who mastered the medium to create a similar subsurface scattering effect. That's also another reason why paintings in real life can look so different than images on a screen, aside from the much greater gamut than even the best color screens we have and the actual surface texture of the paint strokes. The downside is that any mistakes made on deeper layers will come through in higher layers. Especially if you paint using the techniques used by the old masters.

Anyway, this suggests your gaussian splats essentially are closer to "oil painting"-like. Makes me wonder if you could also encode this subsurface scattering and texture somehow, so that viewing the splats in 3D would recreate some of that missing effect of looking at a real painting!

Also, on the other end of the spectrum: do you think the algorithm could be modified to create SVG output? Then it might be useful as an artistic "upscaling" filter too.

(Also, speaking as someone with protanomaly, I'm guessing the links have some kind of turquise or light teal color to them, but it is effectively bright gray to me. And since they have almost the same brightness perception as the white text I genuinely cannot tell where the links are (except when the text calls them out). Since this is likely to affect anywhere between 5% to 10% of all men visiting your blog that might be worth changing.)

vanderZwan··on Painting with Gaussians
As someone with an arts degree (not in painting though, but still) it feels really really weird to see how that animation builds up the image. It feels less random than the old "simulated annealing with vector shapes" techniques, ending up somewhere that feels both similar and extremely far removed from how a human would do it at the same.

It's like… the way a trained human would paint feels kind of like how MSB radix sort makes an array look more ordered, going from crude to refined. The way your algorithm builds up an i|age feels like I'm looking at a radix sort that alternates between a stable MSB and LSB radix sort, which is weird as heck. It's fascinating, really.

vanderZwan··on Xbox goes down. You can't play games you own on disc
So where do either of you lie on the "human rights vs property rights" spectrum? Because that's the real discussion to be had here. To quote Cory Doctorow:

> But when it comes to a "post-politics that is neither right nor left," the definition I turn to most often comes from science fiction writer Steven Brust, who once told me:

> "Left" and "right" have had the same meaning since the French Revolution. If you want to know if someone is on the left or the right, ask them, "What is more important: human rights or property rights?" If they say "Property rights are a human right," then they are on the right.

> That's it. That's the crux. If you think that property rights are a tool for achieving human rights, then you're on the left. You might support the right of farmers to block attempts to expropriate them via eminent domain in order to build a data center, or the right of people to not have their homes or devices searched by cops, or a library's right to own and archive digital books, even if the publishers insist that ebooks are never "sold," merely "licensed."

https://pluralistic.net/2026/07/08/wilhoitian/#human-rights-...

← PreviousPage 2 of 34Next →