HNHacker News
TopNewBestAskShowJobs

tomxor

10,500 karma · joined January 23, 2017

submissionscomments
tomxor··on Why haven't local-first apps become popular?
> 1. Unreliable Ordering

If you think this is only a problem for distributed systems, I have bad news for you.

tomxor··on Why is Venus hell and Earth an Eden?
> There’s plenty of places on Earth to terraform

I'm going to steal this.

tomxor··on Frying Eggs and Air Quality Tests
I wonder what the difference between PM2.5 from cooking oil or fat vs PM2.5 from combustion engines is on the lungs.

My instinct is that it should be less toxic from vegetable oil, if it's just vaporised... past the smoke point maybe the chemistry changes enough to make it more toxic. The body has mechanisms to remove foreign matter from the lungs, but how easily and how much it clogs up your lymph nodes seems to depend on what it's made of.

tomxor··on NPM debug and chalk packages compromised
Finally validated for writing my own damn ANSI escape codes.
tomxor··on Purposeful animations
> Could the user have trouble perceiving the change in state that just occurred? If so, then use an animation to help them visualize what happened

I think this is the only justified use of animation in UI, however I wasn't satisfied with the dilemma of increasing perceived transition while increasing perceived UI latency.

I found it's possible to get the best of both for event triggered state changes i.e clicking on stuff, by sticking to ease-out based transitions, where the start of the transition is instant and the end decelerates.

This makes it feel just as snappy as no animation, while still helping to communicate a transition, because we are more sensitive to the latency of the start of the transition when it's an event - since we are anticipating a reaction, which is satisfied as soon as it starts to react.

tomxor··on The issue of anti-cheat on Linux (2024)
Good point, there's also sound. I suppose ultimately only server side rendering could solve that... although that is a thing now.
tomxor··on The issue of anti-cheat on Linux (2024)
> What is a videogame cheat? [...] an external program that somehow manipulates the game or reads information from the game to provide you with an advantage over others.

This has always interested me when it comes to the need for anti-cheat to exist... For instance with wallhacking, the way most FPS style game engines have always been written means the server sends all player location information to all clients, so it's all there in memory if you can get to it.

But what if your server engine instead only sent relevant player location data to each client, it would be more work, the server would have to do occlusion tests for each player pair, but a bounding box and some reasonable spatial partitioning should make that reasonably efficient. To prevent occlusion lag, e.g players not smoothly appearing around corners, the server can make reasonable predictions with some error margins based on a combination of current player velocities and latencies.

I know this is just one part of cheating, but it seems like all the other ones (manipulating input) is a losing battle anyway. I mean ultimately you can't stop people hooking up the input and display to a completely independent device with computer vision.

tomxor··on How Not to Buy a SSD
Spinrite is for HDDs, sure you can use it on SSDs but that's fairly useless in the best case and actively destructive in the worst case. The whole point of Spinrite is exploiting the magnetic nature of HDDs for recovery, that's the only thing that distinguishes it from other generic block device analysis and data recovery software. For SSDs there are plenty of open source software that will work just as well for reading raw data (but what you get for unallocated blocks is at the whim of proprietary SSD controllers anyway).

Spinrite had utility for combating data loss inherent to the HDD medium... I don't like the idea of ValidDrive because it's a paid user tool to fight fraud, that's a bad incentive, you don't want to benefit from that, it should be free and open.

tomxor··on AOL to discontinue dial-up internet
> Dial-up internet speeds average about 56 kilobytes a second

Nope, that would be considered crazy fast back in the day, it was 56 kilobits per second. That's about 6.8 kilobytes, but realistically and with overhead it was usually around 5KB/s.

tomxor··on Mexico to US livestock trade halted due to screwworm spread
Meat especially grass fed beef, is not just protein, it's an incredibly dense source of nutritients. You have to eat far higher quantities and ranges of plant based alternatives to acquire the same nutritional value, and they are usually less bioavailable. So from the perspective of the person consuming it, it's very efficient source of nutrients, and also the most satiating food you can eat, so you won't feel the urge to overeat.

Abstractly, using land for crops is around an order of magnitude more efficient when considering only calories per unit area, but when considering the total system i.e the humans consuming it, there's an argument to be had that more livestock could be more efficient when considering all the side effects of a huge population of malnourished humans overeating refined hyper-paletable carbs.

For either side of this argument, the real issue is industrial agriculture producing both crops and livestock in unsustainable and nutritionally devoid ways, that are incredibly bad for the environment and humans consuming it.

tomxor··on Ozempic shows anti-aging effects in trial
> The underlying mechanisms (reduced inflammation, improved fat distribution, better metabolic health) aren't unique to that group

Those are causes, you can't just invert it (again) and call them mechanisms for anti-aging... Those things are side effects of obesity and diseases causing obesity, there is no evidence or reasonable basis here to suggest there would be any "anti-aging" effect in healthy people without those problems.

Similarly "Ozempic shows anti-gravity effect in humans!#11"... assuming you have unhealthy excess fat to lose.

tomxor··on Ozempic shows anti-aging effects in trial
I find it amusing that a pretty large group of people need to believe it's some kind of elixir of youth.

Did you read the abstract? It "reduces aging" in a highly selective group of people with accelerated aging from secondary effects of obesity.

> people with HIV-associated lipohypertrophy disease, a condition characterized by excess fat accumulation and accelerated cellular aging

What's next? "Ozempic shows anti-gravity effects in humans"?

Yes it makes you less hungry, no that's not a solution to the underlying issue of economically induced, nationwide shit nutrition and the enevitble overeating and health issues that ensue.. it's a dodgy crutch.

tomxor··on East Asian aerosol cleanup has likely contributed to global warming
> Whether in 2 decades or 10, billions of human beings are going to die from the direct or indirect effects of climate change. And that is... Incomprehensible.

Just for some perspective... at the current global death rate, 2.4 billion die in two decades, and 12 billion die in 10. So it's not that incomprehensible.

We have short lifespans, it seems more likely the human population will shrink to match loss of habitable land mass and ecological damage through simply expiring, rather than suddenly through some kind of dooms day event (granted I'm certain climate change will hurry it along).

I'm going to use this bleak comment to suggest anyone reading make sure they go outside and smell the fresh air, life is short man, really short.

tomxor··on If the moon were only 1 pixel: A tediously accurate solar system model (2014)
Actually I couldn't fit Pluto, I sacrificed everything I could, but to fit it would require sacrificing the precision of Mars, Earth and Mercury (dropping the decimal), but I wanted to maintain enough precision to be able to tell them apart by size (which you just about can at full screen due to antialiasing)... Otherwise I definitely would have included it for that very sentiment ;)

The reason there are 10 radi is for 8 planets + sun + drawing the black backdrop (2e3): [24,25,58,69,3.4,6.4,6,2.4,696,2e3]

tomxor··on If the moon were only 1 pixel: A tediously accurate solar system model (2014)
You mean technically? I should have posted the beta dwitter link which has the "compress" toggle, because most dweets are unicode packed. https://beta.dwitter.net/d/26521

Here's the js anyway:

  for(i=10;i--;x.fillStyle=R(i-8||255),x.beginPath(x.fill()))x.arc(960+[45,29,14,8,2,1.5,1,.6,0,0][i]*1e5*S(t/5e3/[165,84,29,12,2,1,.6,.2,1,1][i]),540,[24,25,58,69,3.4,6.4,6,2.4,696,2e3][i],0,7)
This one is actually relatively simple to explain, it loops over the 10 planets (i), and draws a circle for each, with the position and size all being defined in the x.arc method. Planets are differentiated by the arrays of values selected by [i]. The X position is calculated as the orbital distance multiplied by the sine of time / orbital period... d x sin(t/p). But d and p are substituted for the value for each planet using the arrays [1,2,3][i].

Surprisingly the precision used in those encoded values is enough at 1000km per pixel (I checked).

tomxor··on If the moon were only 1 pixel: A tediously accurate solar system model (2014)
Shameless plug: Accurate solar system in 192 Bytes:

https://www.dwitter.net/d/26521

The red bit is the sun. 1000 kilometers per pixel, and 1000 seconds per second.

They all fit onto the screen by looking through the orbital plane, as if through a telescope from a distant world, i.e effectively an orthographic projection. The orbits are accurate in terms of mean orbital distance (in reality there is slight perturbance) and sidereal periods.

tomxor··on They Asked an A.I. Chatbot Questions. The Answers Sent Them Spiraling
Except

1. It's neither a human nor a qualified therapist.

2. It is superhuman only in scale, not intelligence.

3. If they truly believed they could fly "with every ounce of their soul", they wouldn't be seeking someone else's affirmation.

4. Even if you asked a random human, it may be immoral, but it's not illegal to answer misleadingly, random people have no legal obligation... LLMs are a statistical model based on data of random people from the internet of evil, aka - the internet.

I'm not an LLM proponent but blaming LLMs for not making the world into a padded cell is just a variant of "won't somebody think of the children".

tomxor··on How we decreased GitLab repo backup times from 48 hours to 41 minutes
Yup, once you've used snapshots for backups once, doing any kind of filesystem level backup just seems absurd. I now use it as the basis for every piece of infrastructure I add that holds valuable data. The only place it doesn't really fit is distributed databases.
tomxor··on How we decreased GitLab repo backup times from 48 hours to 41 minutes
Gitea, i can't recommend it enough. Lightening fast compared to the proprietary offerings, clean simple UI like an older Github, and super simple to self host.
tomxor··on How we decreased GitLab repo backup times from 48 hours to 41 minutes
One of the many reasons I moved to self hosting. I use ZFS to backup every 15 minutes, ... could do it even more frequently but that seems a little pointless.

Also moved away from Gitlab because it's so damn slow.

tomxor··on What you need to know about EMP weapons
> EM radiation is either reflected or absorbed

By interfaces yes, but it can also be cancelled out through destructive interference as a side effect of reflection, which is my theory of how a "big ball of crumply aluminium" is so effective compared to less chaotic solutions.

tomxor··on What you need to know about EMP weapons
> wrap that in aluminium foil, making sure that the ends are folded over and pressed down hard to provide good inter-layer contact

I've tried this many times, it's impossible to prevent gaps without welding it shut. Obviously I wasn't testing with an EMP or nuke, but trying to block 2.4GHz WiFi... But that is well within the E1 range the author states.

I think the problem with folding is it's too uniform, it's still too easy for waves to propagate through the humanly imperceptible gaps with only a few reflections.

The only method I found that worked consistently was to wrap many layers randomly overlapping and crumpling previous layers. My theory as to why this works is through self interference due to creating a long signal path with highly randomised reflections... No idea if that would help cancel out EMP.

tomxor··on Mullvad Leta
Yup, I found a shortcut to determining this is to use the audio option, which will instantly admit you are blocked due to "suspicious network activity" rather than make you solve stuff - i guess because of accessibility?
tomxor··on Mullvad Leta
Yes, it only works better because the obscurity to IP ratio is good. It could easily be as bad as mullvad if they became more popular. But as I understand it the really popular VPNs address this with huge pools of servers and IP cycling?

One other issue I had with Mullvad that put the nail in the coffin for me was randomly laggy DNS resolvers, they would get fixed just by the time I start investigating it, but it kept happening... I say this as a mostly happy user for probably 7 years, but then found myself having to turn it off more than on to be able to access most sites.

tomxor··on Mullvad Leta
I had to switch to iVPN last year (similar ethos), because Mullvad became pretty much unusable due to blacklisting and laggy DNS servers.

I'm assuming it has something to do with the push in recent years to expand their userbase, but they don't seem to be able to keep a clean enough pool of IPs like the big popular ones to cope. I know all VPNs struggle with this but it was getting ridiculous, where every single server in a country would receive infinite re-captcha.

tomxor··on Does Earth have two high-tide bulges on opposite sides? (2014)
Splashy complicated water is an accurate but imprecise description, which is exactly what you want for an introduction. It's a complex chaotic system.

Computers are a terrible analogy for this type of minimal explanation of natural phenomena because computers are layers of designed complexity built by exploiting an understanding of multiple distinct natural phenomena... At the composite scale computers are a very unatural human construct, not something emergent that can be accurately expressed informally.

tomxor··on Does Earth have two high-tide bulges on opposite sides? (2014)
> So it's a bunch of complicated splashy water that is excited by the moon moving past

This explanation is so much better.

If people want to use big words they can say fluid dynamics, but yeah, it's a complex system with a big orbiting body pulling on it regularly, that gives the complex system rhythm but not order.

tomxor··on Ancient law requires a bale of straw to hang from Charing Cross rail bridge
Similar to how people will read a temporary hand written sign on a door, but filter out a (newly placed) professionally made sign, because the latter looks too permanent.

If something has changed, using something out of place or temporary in appearance seems to be the most effective way of getting human attention... A bale of straw feels like it fits the bill.

tomxor··on WebTUI – A CSS Library That Brings the Beauty of Terminal UIs to the Browser
> Not everyone's work life revolves around GUIs just because yours does.

FTFY

They both have their place, pros and cons, that fit different purposes differently. The mistake is in trying to assign superlatives.

Two things can be true at the same time, TUIs are superior to GUIs, and GUIs are superior to TUIs, but in different contexts.

tomxor··on How University Students Use Claude
> I think the issue is that it's so tempting to lean on AI.

This is not the root cause, it's a side effect.

Student's cheat because of anxiety. Anxiety is driven by grades, because grades affect failure. To detect cheating is solving the wrong problem. If most of the grades did not directly affect failure, student's wouldn't be pressured to cheat. Evaluation and grades have two purposes:

1. Determine grade of qualification i.e result of education (sometimes called "summative")

2. Identify weaknesses to aid in and optimise learning (sometimes called "formative")

The problem arises when these two are conflated, either by combining them and littering them throughout a course, or when there is an imbalance in the ratio between them i.e too much of #1. Then the pressure to cheat arises, the measure becomes the target, and focus on learning is compromised. This is not a new problem, student's already waste time trying to undermine grades through suboptimal learning activities like "cramming".

The funny thing is that everyone already knows how to solve cheating: controlled examination, which is practical to implement for #1, so long as you don't have a disruptive number of exams filling that purpose. This is even done in sci-fi, Spok takes a "memory test" in 2286 on Vulkan as a kind of "final exam" in a controlled environment with challenges from computers - it's still using a combination of proxy knowledge based questions and puzzles, but it doesn't matter, it's a controlled environment.

What's needed is a separation and balance between summative and formative grading, then preventing cheating is almost easy, and student's can focus on learning... cheating at tests throughout the course would actually have a negative affect on their final grade, because they would be undermining their own learning by breaking their own REPL.

LLMs have only increased the pressure, and this may end up being a positive thing for education.

← PreviousPage 3 of 34Next →