MurphyA/hacker-news huggingface dataset:
by csb6 | 2025-06-18 04:05:27+00:00
> Every moral duty is owed to a real, identifiable someone. You can’t have a duty to “a possible person” who does not yet exist.

This doesn’t hold up. It is effectively denying that people will be born in the future, which of course they will be since antinatalism is not universal and fertility rates are above zero. There are valuable things that can be done today that will help those people but not anyone alive today (e.g. preservation of media that is well-known and widely distributed today but may not be in the future when it is more historically valuable).

It is safe to assume that new people will be born at some point in the future (given current conditions) and will then be “identifiable”, so you have to account for their future existences when making moral decisions with future consequences.
by ChuckMcM | 2025-06-18 04:06:00+00:00
I literally applied to work at McDonnell Douglas when I heard about DC-X! It went against my choice to NOT work for a defense contractor, but it was a really cool project. They were amenable to hiring me but a program manager told me in confidence that the project had lost support because the Strategic Defense Initiative's cancellation meant there was no money to continue the project. The demo flights were the last deliverable in the contract and after that the project was dead. It made me sad.
by rattray | 2025-06-18 04:06:42+00:00
Copying what I viewed as the key parts:

> The majority of workloads on our Cloud product aren’t time-series. Companies are running entire applications on us... So we are now “TigerData.” We offer the fastest PostgreSQL. ... Our cloud offering is “Tiger Cloud.” Our logo stays the same: the tiger, looking forward, focused and fast... Our open source time-series PostgreSQL extension remains TimescaleDB. Our vector extension is still pgvectorscale. Why “Tiger”? The tiger has been our mascot since 2017, symbolizing the speed, power, and precision we strive for in our database.

Given the logo (and internal company culture around the tiger mascot), I understand where they're coming from, but with the name conflicts (TigerBeetle, WiredTiger, etc) I do wish they'd chosen something else -- like maybe TiScaleDB and give a titanium sheen, do triple duty with the tiger and the Timescale heritage?
by cpard | 2025-06-18 04:07:30+00:00
> Let's start with what I see as the biggest problem that the introduction of LLMs is presenting to language design: everything is easier in Python.

This is so true.

A couple months ago I was trying to use LLMs to come up with code to parse some semi-structured textual data based on a brief description from the user.

I didn't want to just ask the LLM to extract the information in a structured format as this would make it extremely slow when there's a lot data to parse.

My idea was, why not ask the LLM to come with a script that does the job. Kind of "compiling" what the user asks into a deterministic piece of code that will also be efficient. The LLM just has to figure out the structure and write some code to exploit it.

I also had the bright idea to define a DSL for parsing, instead of asking the LLM to write a python script. A simple DSL for a very specific task should be better than using something like Python in terms of generating correct scripts.

I defined the DSL, created the grammar and an interpreter and I started feeding the grammar definition to the LLM when I was prompting it to do the work I needed.

The result was underwhelming and also hilarious at some times. When I decided to build a loop and feed the model with the errors and ask to correct the script, I ended up sometimes having the model returning back python scripts, ignoring completely the instructions.

As the author said, everything is easier in Python, especially if you are a large language model!
by usr1106 | 2025-06-18 04:07:37+00:00
Apple, Google, AWS, Microsoft, ... I would call it criminal neglect using hobby software like libxml2 written in a memory-unsafe language (to cite the maintainer) to process untrusted input in systems that need to protect personal data or are even safety-relevant.

So what's the alternative? Microsoft has a longer history than many open source components. Nobody could see the source, but it was proven continuously that it was highly insecure. Less than hobbyist quality, but closed source so nobody could see the (lack of) quality explicitly. Some might claim 20 years later they would produce better software. Maybe marginally, but not fundamentally I'd dare to claim.
by bawolff | 2025-06-18 04:08:46+00:00
I kind of suspect this is more a desperate regime on the brink of (at least military) collapse grasping at straws.

Potentially they might be worried about anti-regime activists organizing on whatsapp and want to push people to more easily monitoriable alternatives.

If iran knew meta was doing this for a long time, then it raises the question of why they are just asking people to delete it now. One would presume that such a serious opsec issue would require immediate action.

If they just figured this out right now, its a bit hard to imagine how that happened given how disruptive the bombing campaign has been.

The timing just seems really suspicious to me.
by yjftsjthsd-h | 2025-06-18 04:09:56+00:00
> Wayland is fundamentally broken in many ways down at the architectural level, but the sunk cost fallacy keeps them working on it.

> Everybody forgets that Wayland predates Vulkan. A "real" replacement for X11/Wayland probably needs to restart from "Vulkan support is the base layer" and build up from there.

I wonder if you could point me in the right direction to learn more about this?
by adalacelove | 2025-06-18 04:10:19+00:00
I'm a developer and: - I hate ORMs, they are the source for a lot of obscure errors behind layers and layers of abstractions. - I prefer analytical APIs for technical reasons, not just the language.

Reasons: - I can compose queries, which in turn makes them easier to decompose - It's easier to spot errors - I avoid parsing SQL strings - It's easier to interact with the rest of the code, both functions and objects

If I need to make just a query I gladly write SQL
by amy_petrik | 2025-06-18 04:12:30+00:00
The universe... what a concept. You know, the universe is a little bit like the human hand. For example, you have Growmann's Center right here and then you have undiscovered worlds and and Sector 8 and up here is Tittleman's crest so you can kinda picture it's a little bit like a leaf or, well, it's not a bowl. The universe is beautiful. Put all the stars, the hundreds of stars that there are in the universe into a bag and put the inverse into a bag and all of a sudden they become, well, when i was a child there was thought to be 9 planets but there are now ninety planets you know the ultimate fate of the universe is so dark and mysterious that it generates butterflies in my stomach and that goes to tickles in my spine and that creates goose pimples and then that penetrates my mind and then the whole big bang explos - BWOOO BWOO BWOO BWOOO BWOOOOOOOOOOOOOO
by RichMiller6 | 2025-06-18 04:12:55+00:00
Perl is a great language to have in your toolbox! It lets you create functionality with surprising speed compared to Algol-style languages (C/C++, Fortran, etc.), and runs quickly enough to handle a wide variety of problems. You can learn enough Perl in a few days to write powerful tools; unlike, say, C++, the stuff you don't know won't hurt you. For manipulating text - something programmers do all the time - Perl is unsurpassed.

Perl supports reflection so well that the perl debugger is just another perl script; if you need to override core functions, you can. CPAN - the Comprehensive Perl Archive Network (https://www.perl.org/cpan.html) has 25,000 modules for download.

Most importantly, given the question about whether it's a good idea to learn Perl for a young developer: Perl feels different from the other languages you'll encounter. It gets lots of power from a small set of core features, and these are generally designed to be orthogonal in the sense that you can combine them in obvious ways and get what you expect. I've heard many people say things like, "Perl put the fun back into programming."
by yjftsjthsd-h | 2025-06-18 04:14:38+00:00
> Since Ubuntu has adopted Wayland exclusively for its new LTS release, I've noticed over the past few days that much of the criticism comes from Windows users who rely on RDP to configure Red Hat or CentOS with a GUI, or something similar. These users have become accustomed to the lack of security in Xorg to perform their tasks. Now, they must reconsider how they maintain their Linux machines.

I don't follow? If folks are using RDP, they don't need Xorg's less-secure remote access options, they can just use RDP? And Wayland has VNC and RDP servers, including GNOME having built-in RDP, so if people are using that then it shouldn't matter whether GNOME happens to have replaced X with Wayland.
by chamomeal | 2025-06-18 04:15:15+00:00
Unfortunately indeed. I lament the necessity of microservices at my current job. It’s just such a silver bullet for so many scaling problems.

The scaling problems we face could probably be solved by other solutions, but the company is primed and ready to chuck functionality into new microservices. That’s what all our infrastructure is set up to do, and it’s what inevitably happens every time
by usefulcat | 2025-06-18 04:15:34+00:00
I might be misunderstanding, but it sounds like you're claiming that the 95% of the S&P that is not Amazon "follows what AMZN does"? If so, I'd like to hear more about exactly how that works because it sounds very unintuitive, to say the least.

In any case, my point was that objectively, AMZN suffered less today than many other stocks, including many other large cap tech (QQQ) and non-tech (S&P) stocks. Considering those facts, it seems like a stretch to claim "the market clearly thought it was strange as well".
by _wire_ | 2025-06-18 04:15:45+00:00
Want to see media hell?...

See youtube/shorts

Tiktok brain by youtube; just endless AI amplified ASMR.

Now add war and you have the MSM in full flower.

Of course people are being driven over the cliff and killing themselves and others.

But it's not like there are teams of psychologists and linguists pushing this stuff...

Right?!
by Uehreka | 2025-06-18 04:16:50+00:00
> Supercharge Your

I’m totally fascinated by AI coding stuff, but please don’t have an LLM write marketing copy and then shovel the first draft onto the internet. Particularly in a README which should be primarily technical.

The use of “Supercharge” and “Leverage”, the bulleted lists and the reams of non-information (glad to know this is good for “developers working on complex projects”) are all dead giveaways this is unedited LLM-generated content. More to the point, this writing style makes it difficult to tell which parts of the README have actually useful information and which parts of the README are just padding that’s there to waste my time.

As a result I’m gonna have to pass on this. Most LLM-generated READMEs I’ve seen have hallucinated installation guides and usage instructions, and I don’t have time to waste figuring out if that’s the case here. If you rewrite the README from scratch I’ll take another look.
by kinduff | 2025-06-18 04:17:06+00:00
There is a filter for `createFilter` [1] and there is a throw if the index of the array doesn't exist for `createSelector` [2]. Maybe this is what the author refers to as hallucination-free, but falls pretty short.

[1]: https://github.com/montyanderson/incant/blob/master/mod.ts#L...

[2]: https://github.com/montyanderson/incant/blob/master/mod.ts#L...
by __rito__ | 2025-06-18 04:17:45+00:00
Only things I use SMS for are purely utility: OTP, CC spend notice, bill payment, insurance premium, etc.

Only time I need SMS, i.e. when a family member or a friend travels to a remote area, internet, and hence, RCS don't work anyway. So, I had to switch to good old SMS. Since I deleted all RCS stuff, I use Signal/WApp/Telegram 99.99% of the times, and good old SMS for the rest of the situations.
by strken | 2025-06-18 04:18:53+00:00
I understand that you explained some exceptions to the rule, but I disagree with two things: the assumption of incompetence on the part of geophile to not make logging conditional in some way, and adding the label of "anti-pattern" to something that's evidently got so much nuance to it.

> the non-trivial cost implications of voluminous log output

If log output is conditional at compile time there are no non-trivial cost implications, and even at runtime the costs are often trivial.
by vineyardmike | 2025-06-18 04:19:29+00:00
> building tools for governments to mass-export data based on their queries

While I can totally imagine that governments would mass-export data, and I don’t doubt your friends claim, I can also imagine more innocent interpretation of this work.

I once worked on a large company’s GDPR data-export project. It was a large enough company that it also had a dedicated team to handle legal requests regularly from government(s). GDPR exporting needs to work “at scale” for all accounts, without human-in-the-loop work, and without causing any load issues to running services. The same system also handled legal requests, where the legal team could get an export for a user (almost) identically to the process of a user getting their own data. The legal team had tools set up to work with warrants, subpoenas and similar (internationally) legal data requests from courts and law enforcement. It looks like a “mass export” system, because it was, but it wasn’t used in “bulk requests” from the legal system.
by squircle | 2025-06-18 04:19:44+00:00
Of course. Source materials are critical. I used to be diligent about this. Way back when a friend told me I read for pleasure (this was never true, escapism at best but more likely an adaptation), which I naturally took as an affront and a challenge... The past 5 or 6 years or so I've made a conscious decision to firehose myself and study the effect on my consciousness. It has been fun and interesting to say the least but, non plus ultra.
by pama | 2025-06-18 04:21:18+00:00
Pricing is a hard problem. Theoretically, if companies occasionally raise prices dramatically once something is useful, they sometimes can create early demand and more testers for future product releases. Ofc they have to be careful to avoid annoying regular users too much. When you sell the harm is limited to late users, but when you rent it is harder to figure out the optimal strategy.
by zahlman | 2025-06-18 04:24:38+00:00
Yes, I recognize that I can click on it to see a menu.

No, I never have any idea whatsoever what items that menu will contain.

Because there realistically is no way to know.

Which is more than enough reason to hate the concept.

Another reason is that I'm being exposed to them, despite not having a smartphone. I'm being exposed to them in a desktop environment, where the screen space savings are simply irrelevant. Including in applications that target the desktop. Thank you, GNOME.

> With hamburger icons, position has a major impact on interpretation. Users generally understand the icon to mean "categories hidden here" as long as it appears in the expected spot: the top-left corner of the screen.

I think this more likely represents users learning "you can click in the top-left corner of the screen to get a menu", without necessarily even thinking about the graphic rendered there.
by koito17 | 2025-06-18 04:25:19+00:00
> Most shells take less space than that!

Most shells dynamically link to a runtime your OS provides "for free". The 4.3 MiB binary in question is bundling the Rust runtime and its dependencies.

For reference, a statically-compiled C++ "Hello, World" is 2.2 MiB after stripping.

% cat hello.nix { pkgs ? import <nixpkgs> { crossSystem = "aarch64-linux"; } }: pkgs.stdenv.mkDerivation { name = "hello-static"; src = pkgs.writeText "hello.cpp" '' #include <iostream> int main() { std::cout << "Hello, World!" << std::endl; return 0; } ''; dontUnpack = true; buildInputs = [ pkgs.glibc.static ]; buildPhase = "$CXX -std=c++17 -static -o hello $src"; installPhase = "mkdir -p $out/bin; cp hello $out/bin/"; } % nix-build hello.nix ... % wc -c result/bin/hello 2224640 result/bin/hello
by boulos | 2025-06-18 04:26:45+00:00
You're not wrong.

The early 2000s splatting from point-based rendering is what George Drettakis and his students realized could be applied in this new NeRF domain.

Basically, all the reasons that point splats didn't work for regular surface rendering nearly 25 years ago (holes, inefficient, can't edit them like meshes) are less of an issue in a light field capture setup.
by baobun | 2025-06-18 04:26:57+00:00
Might be something to this. I relied heavily on IDE debugger and was integral part of my workflow for a while as a yungin and but very rare that I bother these days (not counting quick breaks in random webapps).

Perhaps been underappreciating the gap in mental intuition of the runtime between then and now and how much the debugger helped to bridge.
by gsf_emergency_2 | 2025-06-18 04:28:33+00:00
If I read you correctly:

Every public-private interaction needs to be obviously infoflow symmetric..

previous example of putrescence was https://news.ycombinator.com/item?id=44231879

Where the author was not responsive to interesting comments that do not obviously provide direct utility to his social-protocol proposal

(Def of DU here: https://archive.fo/I0nO4#selection-1307.122-1307.226 )

https://wardenprotocol.org/blog/build-your-first-ai-agent-wi...

What could Wave have done better? explain why they need invites? Even better, expose their reasoning, eg they don't need to ease server pressure but they need quality signups? Anything fun I'm missing? Like skin-in-the-game moves from the private side, for macroscopic values of skin?

For Wave, I'd imagine they needed to publish data on which fun parts keep the new users returning ---there were MANY!

(So, we're both clearly not wishing to see their bugs from swiftly tilting these parts :)
by jauntywundrkind | 2025-06-18 04:29:18+00:00
Ignorance is a beautiful shield Against rationality & understanding, little green grasshopper (8 hour old account).

The world has no ability to make Nvidia's drivers good. If Nvidia can't build drivers that work, there's nothing we can do about it. Defending a situation where hackers have no ability to improve or work a situation is unhackerly, dumb. Consumers are free to remain ignorant, but this situation of where we go and what we do has consequences & meaning to the hacker, and the facts and technics ought matter.
by luuio | 2025-06-18 04:29:29+00:00
Happy to continue :)

Where our conversation is at, it's not about RDBMS vs. NoSQL.

On the Redis INCR operation example (or an equivalent operation in any database, even in an RDBMS). In short, you don't always have the guarantee to know the result of the operation. This is part of what the 99.9% means when services advertise their reliability. 99.9% of the time you'll get an acknowledgement back, but not 100%.

The question comes to, what happens if I miss an INCR, or if I accidentally double INCR when I retry? For some use cases, it's acceptable: like counting the number of views on a Youtube video. For others, say a financial system counting money or making a payment, that's not OK. That's where idempotency really matters (btw this is why many redis operations have the NX option).

Let's go completely off track for a little bit, say you're Strava. You let devices and users upload workouts to your service. What happens when a phone sent you the workout, then disconnected due to bad receptions? In this case, the phone doesn't know if the operation succeeded so it's forced to retry. How do we make sure the workout isn't created and counted twice on Strava? Well, each workout has a unique UUID generated by the device. Strava uses this UUID to dedup when it receives an upload. The UUID is the idempotency "checkpoint".

In this case, it doesn't matter what kind of database Strava is using. The idempotency problem is the same.
by DangitBobby | 2025-06-18 04:30:05+00:00
Same for me. I've been using Gemini 2.5 Pro for the past week or so because people said Gemini is the best for coding! Not at all my experience with Gemini 2.5 Pro, on top of being slow and flaky, the responses are kind of bad. Claud Sonnet 4 is much better IMO.
by rsch | 2025-06-18 04:30:18+00:00
Auckland has an almost finished through running project in its city centre, which will greatly improve its railway network. It currently has only one terminus in the city, but trains from one side (the west) have to do an awkward dog leg around the city centre, including a reversal.

Brussels got its through running project in 1952, a 6 track tunnel under its city centre between North and South (aka Midi) stations. That was back when disruption and demolishing things were just things that happened, and it is one of the reasons why ‘brusselization’ is a word. By now operates near its max capacity of 96 trains per hour.
by yjftsjthsd-h | 2025-06-18 04:31:06+00:00
> Also PipeWire is an audio interface. A replacement to PulseAudio. That has nothing to do with accessing screens.

No, it's a general audio/video system, including video from cameras and virtual video streams from screen capture; see https://wiki.archlinux.org/title/PipeWire#WebRTC_screen_shar... for some discussion.
by carlosjobim | 2025-06-18 04:31:10+00:00
The difference between display and real world will be at most slight to a trichromat, while it would be extraordinarily obvious to a tetrachromat.

It's not very uncommon for people to be colour blind, dichromats. If media on screens would be dichromatic while the world around me is trichromatic, I would certainly notice at once.
by MangoToupe | 2025-06-18 04:31:59+00:00
> Breaking on an interesting line of code during a test run and studying the call stack that got me there is infinitely easier than trying to run the code forwards in my head.

I really don't get this at all. To me it is infinitely easier to iterate and narrow the problem rather than trying to identify sight-unseen where the problem is—it's incredibly rare that the bug immediately crashes the program. And you can fit a far higher density of relevant information through print statements over execution of a reproduced bug than you can reproduce at any single point in the call stack. And 99% of the information you can access at any single point in the call stack will be irrelevant.

To be sure, a debugger is an incredibly useful and irreplaceable tool.... but it's far too slow and buggy to rely on for daily debugging (unless, as you indicate, you don't know the codebase well enough to reason about it by reading the code).

Things that complicate this:

* highly mutable state

* extremely complex control or data flow

* not being able to access logs

* the compiler lying to you or being incorrect

* subtle instruction ordering issues
by fingerlocks | 2025-06-18 04:33:11+00:00
Seems to be the opposite for me. Usually I can pretty quickly figure out how to garden hose a bunch of print statements everywhere in a completely unfamiliar domain and language.

But the debugger is essential for all the hard stuff. I’ll take heap snapshots and live inside lldb for days tracking down memory alignment issues. And print statements can be either counterproductive at best, or completely nonexistent in embedded or GPU bound compute.
by koito17 | 2025-06-18 04:35:32+00:00
By switching to e.g. musl, you can go down to a single megabyte ;)

But in all seriousness, my example is quite cherrypicked, since nobody will actually statically link glibc. And even if they did, one can make use of link-time optimization to remove lots of patches of unused code. Note that this is the same strategy one would employ to debloat their Rust binaries. (Use LTO, don't aggressively inline code, etc.)