MurphyA/hacker-news huggingface dataset:
by foresto | 2025-06-07 21:26:32+00:00
> It is also certified for Particulate Class 1, which is a surrogate for microplastics.

Based on a web search, it looks like Particulate Class 1 means particles in the 0.5 to 1 micron range. Several carbon block filters are rated at 0.5 µm, so I guess they're meant to handle those microplastics, but it leaves me wondering:

Do any smaller microplastics exist? Are they likely to be present in municipal water supplies?

All the filter cartridges that I've seen, and almost all the housings and tubes that hold them and the water, are made at least partly of plastic. Given that water typically sits in these filtration systems for hours or days at a time when the tap is closed, could it be that microplastics are leaching into the water from them?
by al_borland | 2025-06-07 21:27:23+00:00
I was just watching an interview with Andy Hertzfeld earlier today and he said this was the main challenge of the Macintosh project. How to take a $10k system (Lisa) and run it on a $3k system (Macintosh).

He said they drew a lot of inspiration from Woz on the hardware side. Woz was well known for employing lots of little hacks to make things more efficient, and the Macintosh team had to apply the same approach to software.
by alephnerd | 2025-06-07 21:28:42+00:00
Vote banks and patronage politics has always been a thing in the US, especially at the local and state level. The main difference is a significant portion of governance was temporarily de-politicized in the 1960s-90s period as leadership on both sides of the aisle had formative unifying experiences during the World Wars and the Korean War, but has been re-politicized now that activism on both sides of the aisle has resurged and social polarization has taken root.

The expansion of executive powers also played a role in this erosion, as both the judicial and legislative branch increasingly devolved their prerogative to the executive, leaving it much more open to political tampering and reducing the power of checks and balances.

There's a reason LKY in SG, Yoshida Shigeru and Sato Eisaku in Japan, and François Mitterrand in France tried to decentralize power to a semi-independent civil service.
by singhrac | 2025-06-07 21:28:55+00:00
I spent too long looking into this and settled on restic. I'm satisfied with the performance for our large repo and datasets, though we'll probably supplement it with filesystem-based backups at some point.

Borg has the issue that it is in limbo, i.e. all the new features (including object storage support) are in Borg2, but there's no clear date when that will be stable. I also did not like that it was written in Python, because backups are not always IO blocked (we have some very large directories, etc.).

I really liked borgmatic on Borg, but we found resticprofile which is pretty much the same thing (it is underdiscussed). After some testing I think it is important to set GOGC and read-concurrency parameters, as a tip. All the GUIs are very ugly, but we're fine a CLI.

If rustic matures enough and is worth a switch we might consider it.
by pron | 2025-06-07 21:29:13+00:00
> But it turns out that a C compiler will give you the "perfect" code directly while the comptime Zig version is fairly complicated.

In this case both would (or could) give the "perfect" code without any explicit comptime programming.

> I just realized at some point that it isn't actually all that useful.

Except, again, C code often uses macros, which is a more cumbersome mechanism than comptime (and possibly less powerful; see, e.g. how Zig implements printf).

I agree that comptime isn't necessarily very useful for micro optimisation, but that's not what it's for. Being able to shift computations in time is usedful for more "algorithmic" macro optimisations, e.g. parsing things at compile time or generating de/serialization code.
by Jach | 2025-06-07 21:29:26+00:00
Yeah. Pretty much agree with everything here. I'd rather encourage starting with the book Thinking Forth, though. It's not written by Moore but has some commentary from him included in it.

I'd even suggest learning a little Forth to people even if it didn't have its interactive nature (which again I don't actually find useful in my own limited embedded work, there's really no "explore" phase as the problems are all straightforward -- contrary to software I write in CL or even Java). I had a friend in college who for a project made his own language and got it working on an embedded system (I think via compiling to C, but I don't recall exactly), but it was just a boring Algol-like somewhat inspired by Ruby. That pattern has shown up again and again around the world though. Forth is one of the handful of languages that shows what expressive options there are that aren't just transparently Algol-like.
by dataflow | 2025-06-07 21:31:17+00:00
> The Grandparent's point about that "it double-dings open source developers" is still correct and poignant even with this clarification.

I feel like I'm missing what subset of people this is, exactly. We're talking about businesses here that would struggle with these tax rules. Which I guess is, mainly, contractors or startups. How common is it for such businesses to release their software as open-source, vs. as closed-source? I would've (naively) expected most paid OSS developers to be funded by large organizations/businesses that have plenty of money to fund them, not small businesses/contractors that would be severely impacted by this law. Is this actually a large set of people?
by elcritch | 2025-06-07 21:31:23+00:00
Not that both the Republicans and Democrats are very pro large business. Remember Harris raised at least _twice_ as much money from billionaires than Trump.

They're just pro different big businesses, largely based on their demographics.

Personally I'm still annoyed that Obama's administration had the DOE take over servicing federal student loans to "protect students" only for them to somehow be sold to a private company based in Chicago from what I can tell.
by int_19h | 2025-06-07 21:34:04+00:00
If you don't happen to come across some task that implies a data model that Rust is actively hostile towards (e.g. trees with backlinks, or more generally any kind of graph with cycles in it), borrow checker is not much of a hassle. But the moment you hit something like that, it becomes a massive pain, and requires either "unsafe" (which is strictly more dangerous than even C, never mind Zig) or patterns like using indices instead of pointers which are counter to high performance and effectively only serve to work around the borrow checker to shut it up.
by zemvpferreira | 2025-06-07 21:34:25+00:00
Fair and I'll run with it. Where I live (Lisbon) it's very very easy to get to unprotected highways with no fences. No trouble at all, maybe a 15-minute walk from my home. No epidemic of kids being run over. We still fence them, where we want to pretend highways don't exist. Also a good analogy.
by al_borland | 2025-06-07 21:35:00+00:00
I actually had an experience like this yesterday. After reading Gruber talk about how Markdown was never meant for notes, I started to rethink things. I wanted plain text, to be future proof, then stumbled across CotEditor as a means to edit. Inside I was able to use the code highlighting and outline config to define my own regex and effectively create my own markup language with just a dash of regex and nothing more. I then jumped over to Shortcuts and dragged and dropped some stuff together to open/create yearly and daily notes (on either my computer or phone), or append to a log with a quick action.

It is a custom system that didn’t require any code (if you don’t count the very minor bits of regex (just a lot of stuff like… ^\s- .).

Is it a good system, probably not, but we’ll see where it goes.
by ThinkBeat | 2025-06-07 21:35:40+00:00
I dont yet understand this attack.

The WP article says:

"" Millions of websites contain a string of computer code from Meta that compiles your web activity. It might capture the income you report to the government, your application for a student loan and your online shopping. ""

If I read that correctly then they are capturing all https web content you access in clear text and uploads it all to Meta? Then Meta

I thought the exploit was used to track where you visited, not the full data of each webpage.
by pessimist | 2025-06-07 21:35:44+00:00
Low-level corruption at the local/state level is related but its effects are different though. In fact even today low level corruption in the US is extremely low by global standards - you can't bribe your way to a drivers license openly, for example. I'm sure it happens but it's not common or openly boasted about (parts of CA or DC could be an exception).

Here the corruption is openly displayed as a kind of peacock-tail to the beneficiaries.
by southernplaces7 | 2025-06-07 21:36:00+00:00
Oh get over yourself with this contrived bit of supposed offense. Aside from it being nonsense, are you yourself homeless, a representative of a group of homeless people, someone who interviewed a number of them and asked if they're "offended" by anyone who doesn't absolutely have to live outside also using the phrase "i'm living homelessly"?

Also, by your invented criteria for language monitoring, many homeless people in many cities would themselves no longer be considered homeless.

Quite a few of them could somewhere, under some circumstances, find a place to stay even though it cost them just a bit too much to like, just like the guy who created this clever and interesting post.
by rsync | 2025-06-07 21:37:10+00:00
You can achieve append-only without exposing a rest server provided that 'rclone' can be called on the remote end:

rclone serve restic --stdio

You add something like this to ~/.ssh/authorized_keys:

restrict,command="rclone serve restic --stdio --append-only backups/my-restic-repo" ssh-rsa ...

... and then run a command like this:

ssh user@rsync.net rclone serve restic --stdio ...

We just started deploying this on rsync.net servers - which is to say, we maintain an arguments allowlist for every binary you can execute here and we never allowed 'rclone serve' ... but now we do, IFF it is accompanied by --stdio.
by mwkaufma | 2025-06-07 21:37:16+00:00
> I am definitely no luddite - the opposite in fact, I am a child of science fiction and have always been a techno-optimist.

Maybe learn who the Luddites were, and what economic grievances motivated them, before repeating this canard. They didn't object to technology in principle, but to the way capital deployed it. They claimed their children and grandchildren would be reduced to poverty - they were 100% correct.
by FergusArgyll | 2025-06-07 21:38:56+00:00
> by the time Trump is through America will lie in ruins

If you had to make that concrete, what would that look like?

GDP growth under 2% annually for >3 years? Dollar losing >50% of its value against a basket of major currencies? Credit rating downgrade below AA- by major agencies? Loss of reserve currency status (measured by <40% of global reserves in USD)? Interstate commerce disruption lasting >30 days? Mass emigration of >2 million Americans annually?

I'd happily take the other side on any of those, name your price.
by 9d | 2025-06-07 21:39:21+00:00
Andrew has so many wrong takes. Unused variables is another.

Such a smart guy though, so I'm hesitant to say he's wrong. And maybe in the embedded space he's not, and if that's all Zig is for then fine. But internal code is a necessity of abstraction. I'm not saying it has to be C++ levels of abstraction. But there is a line between interface and implementation that ought to be kept. C headers are nearly perfect for this, letting you hide and rename and recast stuff differently than your .c file has, allowing you to change how stuff works internally.

Imagine if the Lua team wasn't free to make it significantly faster in recent 5.4 releases because they were tied to every internal field. We all benefited from their freedom to change how stuff works inside. Sorry Andrew but you're wrong here. Or at least you were 4 years ago. Hopefully you've changed your mind since.
by AngryData | 2025-06-07 21:39:54+00:00
The problem with disability in the US is it is very easy to get kicked off of it, so nobody risks earning or saving too much money (I think you must maintain under $2000 at all times?) or pursuing a potentially viable career unless it is a 100% guarantee, because you can't go back on disability later for something you had when you were kicked off it, even if it is a progressive disease. You need to show new symptoms that by themselves are disabling or another qualifying ailment.

And also getting on disability in the first place is such a huge pile of bureaucratic nonsense and bullshit to start with that you have to learn how to "game" the system just to get approval. It isn't setup to try and help people who need it, it is setup to disincentivize everybody as much as possible, even if you have serious brain damage, are nearly blind, and only have 3 fingers.
by int_19h | 2025-06-07 21:41:15+00:00
I rather suspect that the pendulum will swing rather strongly towards more verbose and explicit languages in general in the upcoming years solely because it makes things easier for AI.

(Note that this is orthogonal to whether and to what extent use of AI for coding is a good idea. Even if you believe that it's not, the fact is that many devs believe otherwise, and so languages will strive to accommodate them.)
by yhavr | 2025-06-07 21:41:39+00:00
Not every source of pleasure is equally addictive by its nature.

However, I'm not talking about _addiction_, but messing with the dopaminergic system. It's, I'd say a specific kind of "pleasure" with particular mechanisms to trigger.

The problem here is not that a person "is not having control over doing, taking or using something to the point where it could be harmful to them" (https://www.nhs.uk/live-well/addiction-support/addiction-wha...). The problem is that the reward system gets broken. If a person is actually addicted to instagram scrolling, like people are addicted to smoking, it just adds another layer of complexity. As I observing from myself, "checking stuff on my phone" looks like a bad habit rather than an addiction.
by holoduke | 2025-06-07 21:42:44+00:00
I spend quite some years with linux systems, but i am using llms for configurating systems a lot these days. Last week i setup a server for a group of interns. They needed a docker kubernetes setup with some other tooling. I would have spend at least a day or two to set it up normally. Now it took maybe an hour. All the configurations, commands and some issues were solved with help of chatgpt. You still need to know your stuff, but its like having a super tool at hand. Nice.
by constantcrying | 2025-06-07 21:43:16+00:00
Interesting article about alternative living, I understand why you would do this for fun, but obviously the risk vs. reward calculation makes no sense.

The convenience of a place with electricity, running water, a table and chair, you are legally allowed to sleep there, etc. Seems easily worth 450 Dollars a month. In the end he says he saved 2k, but that is not a relevant amount of money to save over months if you become a software developer in America.
by ozim | 2025-06-07 21:43:33+00:00
Self hosting at home - what is higher risk? Your HDD dying or losing Gmail account?

Oh now you don’t only self host, now you have to have space to keep gear, plan backups, install updates, oh would be good to test updates so some bug doesn’t mess your system.

Oh you know installing updates or while backups are running it would be bad if you have power outage- now you need a UPS.

Oh you know what - my UPS turned out to be faulty and it f-up my HDD in my NAS.

No I don’t have time to deal with any of it anymore I have other things to do with my life ;)
by tptacek | 2025-06-07 21:43:34+00:00
Some writers I know are convinced this is true, but I still don't think the comparison is completely apt, because deliberately rote code with modulated expressiveness is often (even usually) a virtue in coding, and not always so with writing. For experienced or enthusiastic coders, that is to say, the effort is often in not doing stupid stuff to make the code more clever.

Straight-line replacement-grade mid code that just does the things a prompt tells it to in the least clever most straightforward way possible is usually a good thing; that long clunky string of modifiers goes by the name "maintainability".
by alephnerd | 2025-06-07 21:43:45+00:00
I'd rather not have a whole discussion over this atm (I'm out rn - maybe later), but I recommend reading Yuen Yuen Ang's paper on "Unbundling Corruption" - there are different typographies of what "corruption" is, and some nations have always had a similar type of corruption compared to others.

In addition, low level corruption is orthogonal to grand corruption as can be seen in Singapore, Japan, South Korea, and the US.

Finally, Indian public discourse around corruption is non-targeted, and fails to contextualize significant institutional differences in how local, state, and federal governments operate in India compared to other states (be they democratic like the US or authoritarian like China).

[Feel free to add questions or points of contention, but I won't be able to reply quickly]
by duskwuff | 2025-06-07 21:43:45+00:00
Caddies were fairly common in early CD-ROM drives. Tray-loading (and, even later, slot-loading) drives were a later development.

One theory I've seen is that caddies were developed in part to protect valuable data CDs from accidental damage, and faded in popularity as software became more affordable. Early multimedia software could be quite expensive, with some titles running into the hundreds of dollars.
by giovannibajo1 | 2025-06-07 21:44:38+00:00
There were far fewer abstraction layers than today. Today when your desktop application draws something, it gets drawn into a context (a "buffer") which holds the picture of the whole window. Then the window manager / compositor simply paints all the windows on the screen, one on top of the other, in the correct priority (I'm simplifying a lot, but just to get the idea). So when you are programing your application, you don't care about other applications on the screen; you just draw the contents of your window and that's done.

Back at the time, there wouldn't be enough memory to hold a copy of the full contents all possible windows. In fact, there were actually zero abstraction layers: each application was responsible to draw itself directly into the framebuffer (array of pixels), into its correct position. So how to handle overlapping windows? How could each application draw itself on the screen, but only on the pixels not covered by other windows?

QuickDraw (the graphics API written by Atkinson) contained this data structure called "region" which basically represent a "set of pixels", like a mask. And QuickDraw drawing primitives (eg: text) supported clipping to a region. So each application had a region instance representing all visible pixels of the window at any given time; the application would then clip all its drawing to the region, so that only the visibile pixels would get updated.

But how was the region implemented? Obviously it could have not been a mask of pixels (as in, a bitmask) as it would use too much RAM and would be slow to update. In fact, think that the region datastructure had to be quick at doing also operations like intersections, unions, etc. as the operating system had to update the regions for each window as windows got dragged around by the mouse.

So the region was implemented as a bounding box plus a list of visible horizontal spans (I think, I don't know exactly the details). When you represent a list of spans, a common hack is to use simply a list of coordinates that represent the coordinates at which the "state" switches between "inside the span" to "outside the span". This approach makes it for some nice tricks when doing operations like intersections.

Hope this answers the question. I'm fuzzy on many details so there might be several mistakes in this comment (and I apologize in advance) but the overall answer should be good enough to highlight the differences compared to what computers to today.
by johnea | 2025-06-07 21:44:39+00:00
Nice article!

It's heartening in the new millennium to see some younger people show awareness of the crippling dependency on big tech.

Way back in the stone ages, before instagram and tic toc, when the internet was new, anyone having a presence on the net was rolling their own.

It's actually only gotten easier, but the corporate candy has gotten exponentially more candyfied, and most people think it's the most straightforward solution to getting a little corner on the net.

Like the fluffy fluffy "cloud", it's just another shrink-wrap of vendor lockin. Hook 'em and gouge 'em, as we used to say.

There are many ways to stake your own little piece of virtual ground. Email is another whole category. It's linked to in the article, but still uses an external service to access port 25. I've found it not too expensive to have a "business" ISP account, that allows connections on port 25 (and others).

Email is much more critical than having a place to blag on, and port 25 access is only the beginning of the "journey". The modern email "reputation" system is a big tech blockade between people and the net, but it can, and should, be overcome by all individuals with the interest in doing so.
by hermitcrab | 2025-06-07 21:45:21+00:00
>Trump is a deal maker

Is he though?

He didn't write the book 'The art of the deal'.

He is a terrible businessman. I read that most of his properties are loss making. How many other people have lost money on a casino?

He didn't end the Russian invasion of Ukraine in 24 hours, as he said he would.

What good deals has he made?
by sunshine-o | 2025-06-07 21:45:43+00:00
I self-host most of what I need but I recently faced the ultimate test when my Internet went down intermittently.

It raised some interesting questions:

- How long can I be productive without the Internet?

- What am I missing?

The answer for me was I should archive more documentation and NixOS is unusable offline if you do not host a cache (so that is pretty bad).

Ultimately I also found out self-hosting most of what I need and being offline really improve my productivity.
by SpicyLemonZest | 2025-06-07 21:45:54+00:00
Present circumstances in America are very different. When Putin took power, Russia's economy had been declining rapidly for a decade; then over his first decade, the GDP dectupled. If the US were to somehow achieve $600,000 GDP per capita by the end of Trump's current term, yeah, Americans would probably want to reevaluate their conventional wisdom about what good governance looks like. But I'm pretty confident that won't happen.